diff --git a/lib/opencdd/exporters/json.rb b/lib/opencdd/exporters/json.rb index 6637cbc..88e9c22 100644 --- a/lib/opencdd/exporters/json.rb +++ b/lib/opencdd/exporters/json.rb @@ -57,6 +57,10 @@ def visit_list_of_unit(lou) @nodes << list_of_unit_node(lou) end + def visit_det_classification(det) + @nodes << det_classification_node(det) + end + # ───────────────────────────────────────────────────────────── # Public per-entity payload API # diff --git a/lib/opencdd/visitor.rb b/lib/opencdd/visitor.rb index 249498e..71da156 100644 --- a/lib/opencdd/visitor.rb +++ b/lib/opencdd/visitor.rb @@ -19,6 +19,7 @@ def visit_database(database) visit_relations(database) visit_view_controls(database) visit_list_of_units(database) + visit_det_classifications(database) self end @@ -60,6 +61,10 @@ def visit_list_of_units(database) each_sorted(database.list_of_units) { |l| visit_list_of_unit(l) } end + def visit_det_classifications(database) + each_sorted(database.det_classifications) { |d| visit_det_classification(d) } + end + # Single source of truth for sort-by-code traversal. Was # duplicated as `.sort_by { |x| x.code.to_s }` in 7 methods. def each_sorted(entities)