s3dgraphy 1.6.0.dev18__tar.gz → 1.6.0.dev19__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {s3dgraphy-1.6.0.dev18/src/s3dgraphy.egg-info → s3dgraphy-1.6.0.dev19}/PKG-INFO +1 -1
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/pyproject.toml +1 -1
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em.ttl +99 -16
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_document_types.json +2 -1
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_extractor_types.json +2 -1
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_qualia_types.json +2 -1
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/s3Dgraphy_connections_datamodel.json +1528 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/s3Dgraphy_node_datamodel.json +22 -22
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device.svg +18 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_computer.svg +20 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_drone.svg +23 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_gnss.svg +20 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_optical.svg +19 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_scanner.svg +20 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_sensor.svg +20 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_station.svg +20 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/__init__.py +1 -1
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/api.py +57 -6
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/authorities/__init__.py +2 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/authorities/resolver.py +132 -11
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/authorities/snapshots/LICENSE +54 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/authorities/snapshots/chronontology.jsonld +37 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/authorities/snapshots/provenance.json +63 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/rdf_exporter.py +128 -9
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/base_importer.py +135 -11
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/importer/fmpxml_importer.py +150 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/pyarchinit_importer.py +6 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/rdf_importer.py +44 -7
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/mappings/authoring.py +227 -12
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/mappings/emdb/generic_specialfind_mapping.json +62 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/mappings/emdb/site_properties_mapping.json +181 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/mappings/emdb/usm_mapping.json +76 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/mappings/generic/excel_to_graphml_mapping.json +277 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/mappings/pyarchinit/pyarchinit_us_mapping.json +259 -0
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/mappings/source_list/source_list_mapping.json +49 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/mappings/template_emdb_mapping.json +8 -9
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/mappings/template_pyarchinit_mapping.json +8 -11
- s3dgraphy-1.6.0.dev19/src/s3dgraphy/tools/deliverable_report.py +402 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19/src/s3dgraphy.egg-info}/PKG-INFO +1 -1
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy.egg-info/SOURCES.txt +15 -0
- s3dgraphy-1.6.0.dev19/tests/test_attach_only.py +223 -0
- s3dgraphy-1.6.0.dev19/tests/test_authority_resolver.py +355 -0
- s3dgraphy-1.6.0.dev19/tests/test_fmpxml_importer.py +140 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_mapping_authoring.py +11 -8
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_mapping_csv_and_relations.py +35 -9
- s3dgraphy-1.6.0.dev19/tests/test_rdf_reverse_edges.py +218 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_rdf_roundtrip.py +23 -5
- s3dgraphy-1.6.0.dev19/tests/test_reverse_edges.py +276 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_rm_container_node_group.py +17 -7
- s3dgraphy-1.6.0.dev19/tests/test_shipped_mappings.py +185 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_visual_assets.py +94 -0
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/JSON_config/s3Dgraphy_connections_datamodel.json +0 -1516
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/authorities/snapshots/LICENSE +0 -22
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/authorities/snapshots/chronontology.jsonld +0 -23
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/authorities/snapshots/provenance.json +0 -41
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/mappings/emdb/generic_specialfind_mapping.json +0 -60
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/mappings/emdb/site_properties_mapping.json +0 -118
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/mappings/emdb/usm_mapping.json +0 -67
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/mappings/generic/excel_to_graphml_mapping.json +0 -197
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/mappings/pyarchinit/pyarchinit_us_mapping.json +0 -102
- s3dgraphy-1.6.0.dev18/src/s3dgraphy/mappings/source_list/source_list_mapping.json +0 -34
- s3dgraphy-1.6.0.dev18/tests/test_authority_resolver.py +0 -81
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/LICENSE +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/MANIFEST.in +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/README.md +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/setup.cfg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/acquisition_descriptor.schema.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/acquisition_mappings/ercolano.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/acquisition_mappings/fs.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/acquisition_mappings/uri.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/datamodel_translations.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_palette_icons.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_qualia_types_additions.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_visual_rules.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/hdto_extension.ttl +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/new_qualia_template.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/node_registry.generated.json +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/outdated_s3dgraphy.ttl +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/outdated_s3dgraphy_nomapping.ttl +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/s3Dgraphy_connections_datamodel.json.v155.bak +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/ActivityNodeGroup.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/EMNarrative.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/EMNarrative.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/EpochNode.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/ParadataNodeGroup.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/RSF.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/RSF.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/SE.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/SE_old.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/SE_old.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/SF.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/SF.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/TSU.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/US.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/US.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/USD.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/USD.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/USVn.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/USVn.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/USVs.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/USVs.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/UTR.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/VSF.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/VSF.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/author.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/author.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/author_ai.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/combiner.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/combiner.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/continuity.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/continuity.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/document.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/document.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/00_transformation.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/01_topographicnetwork.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/02_pointcloud.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/03_mesh.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/04_points.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/05_lines.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/06_polygons.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/07_DEM.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/08_ortophoto.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/09_photos.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/dtc/10_laserscanner.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/embargo.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/extractor.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/extractor.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/gcp_set.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/generic_node.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/geo_position.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/graph.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/license.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/link.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/narrative.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/play.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/property.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/property.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/registration_transform.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/representation_model.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/representation_model_doc.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/representation_model_sf.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/semantic_shape.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/serSU.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/serSU.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/serUSD.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/serUSV.png +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/serUSVn.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/2D/serUSVs.svg +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/RSF.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/SF.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/TSU.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/US.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/USD.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/USVn.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/USVs.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/VSF.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/combiner.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/continuity.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/document.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/extractor.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/property.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/serSU.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/serUSD.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/src/3D/serUSV.glb +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/acquisition/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/acquisition/acquire.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/acquisition/descriptor.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/acquisition/mapping.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/annotation/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/annotation/paradata.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/authorities/snapshots/getty_aat.jsonld +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/authorities/snapshots/getty_tgn.jsonld +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/authorities/snapshots/periodo.jsonld +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/classification.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/container.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/contract/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/contract/connector.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/contract/consumer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/contract/core.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/contract/reference.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/crdt.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/data/StratiMiner_Extraction_Prompt.md +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/diagnostics.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dissemination.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dtc/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dtc/corpus.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dtc/devices.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dtc/ingest.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dtc/neighbourhood.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/dtc/residency.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/edges/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/edges/connection_resolver.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/edges/connections_loader.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/edges/edge.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/editorial.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/docx_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/emjson_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/canvas_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/edge_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/epoch_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/graphml_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/graphml_patcher.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/group_node_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/node_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/node_registry.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/palette_resources.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/paradata_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/paradata_image_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/paradata_node_generators.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/table_node_generator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/graphml/utils.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/html_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/ipynb_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/json_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/latex_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/exporter/unified_xlsx_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/geometry/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/geometry/migrate.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/geometry/proxy.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/geometry/store_backed.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/graph.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/iiif.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/csv_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/emjson_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/import_graphml.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/mapped_xlsx_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/qualia_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/source_text.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/unified_xlsx_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/xlsx_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/importer/xml_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/indices.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/mappings/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/mappings/registry.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/merge/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/merge/graph_merger.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/multigraph/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/multigraph/multigraph.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/narrative/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/narrative/bake.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/narrative/generation.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/narrative/query.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/narrative/registry.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/narrative/site_story.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/annotation_region_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/author_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/base_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/combiner_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/document_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/dtc_acquisition_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/dtc_device_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/dtc_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/dtc_process_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/embargo_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/epoch_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/extractor_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/geo_position_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/georeferencing_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/graph_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/group_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/hdt_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/heritage_entity_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/license_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/narrative_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/paradata_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/project_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/property_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/representation_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/resource_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/semantic_shape_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/stratigraphic_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/nodes/study_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/photogrammetry/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/photogrammetry/delta.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/publication.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resolvers/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resolvers/builtin_rules.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resolvers/property_resolver.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resources/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resources/fs_backend.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resources/minio_backend.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/resources/resolver.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/rights.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/shelf/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/shelf/core.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/stamp/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/stamp/absorb.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/stamp/emit.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/stamp/hints.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/stamp/identity.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/study.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/_db_handle.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/_legacy_paradata_svgs.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/_workspace.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/conflict_resolver.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/edge_registry.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/graph_ingestor.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/graph_projector.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/graphml_writer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/group_projector.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/group_store.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/ingest_result.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/paradata_store.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/pyarchinit_pg_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/rapporti.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/uuid7.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/vocab_provider_core.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/vocab_types.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/yed_classifier.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/yed_detector.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/yed_group_walker.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/yed_import_pipeline.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/yed_rapporti_policy.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/sync/yed_table_parser.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/templates/em_data_template.xlsx +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/templates/em_palette_template.graphml +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/temporal/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/temporal/inference_engine.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/tools/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/tools/consumer_drift.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/tools/datamodel_i18n.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/tools/sync_node_datamodel.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/tools/wheel_drift.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/transforms/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/transforms/aux_tracking.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/transforms/compact.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/transforms/materialize_continuity.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/utils/__init__.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/utils/utils.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/utils/visual_layout.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/zero_hour.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy.egg-info/dependency_links.txt +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy.egg-info/requires.txt +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy.egg-info/top_level.txt +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_acquisition.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_acquisition_fs.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_api_surface.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_asset_dtc_protocol.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_authority_projection.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_blend_locator.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_canonical_document_rename.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_canvas_metadata_import.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_composite_node_name.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_connection_resolver.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_consumer_drift.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_container.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_contract.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_contract_consumer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_convert_command.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_crdt.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_datamodel_i18n.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_deterministic_ids.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_devices.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_dissemination_tombstones.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_dtc_corpus.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_dtc_ingest.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_dtc_neighbourhood.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_dtc_projection.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_dtc_residency.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_editorial.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_emjson_roundtrip.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_emjson_schema_version.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_epoch_undated_import.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_explicit_node_type_marker.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_filtered_import.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_fs_backend.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_functional_units.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_georeference_scene.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_graph_scope_migration.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_hdto_projection.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_header_key_aliases.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_iiif.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_importer_edge_hygiene.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_ipynb_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_latex_exporter.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_lossless_roundtrip.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_material_color.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_merge_conflicts.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_migrate_legacy_proxy.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_minio_backend.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_authorship.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_bake_docx.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_figures.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_generation.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_node.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_query.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_narrative_scaffolder.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_node_datamodel_registry.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_pg_importer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_photogrammetry_delta.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_promotion.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_pyarchinit_tier2.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_recompute_warnings.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_reproject.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_resource_layer.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_resource_tier.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_semantic_purity.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_shelf.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_shelf_facets.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_shelf_hatting.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_shelf_role_uri_table.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_source_list_mapping.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_source_text.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_stamp.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_stamp_hints.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_store_backed_geometry.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_stratiminer_api.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_study_metadata.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_ttl_roundtrip.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_wheel_drift.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_xlsx_importer_graph_init.py +0 -0
- {s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/tests/test_zero_hour.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: s3dgraphy
|
|
3
|
-
Version: 1.6.0.
|
|
3
|
+
Version: 1.6.0.dev19
|
|
4
4
|
Summary: 3D Stratigraphic Graph Management Library for archaeological and heritage applications
|
|
5
5
|
Author-email: Emanuel Demetrescu <emanuel.demetrescu@cnr.it>
|
|
6
6
|
Maintainer-email: Emanuel Demetrescu <emanuel.demetrescu@cnr.it>
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "s3dgraphy"
|
|
7
|
-
version = "1.6.0.
|
|
7
|
+
version = "1.6.0.dev19"
|
|
8
8
|
description = "3D Stratigraphic Graph Management Library for archaeological and heritage applications"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
14
14
|
|
|
15
15
|
# ============================================================================
|
|
16
|
-
# Extended Matrix (EM) Ontology — v1.6.
|
|
16
|
+
# Extended Matrix (EM) Ontology — v1.6.2
|
|
17
17
|
# ============================================================================
|
|
18
18
|
# Formal extension of the CIDOC-CRM family + HDT-O for the Extended Matrix
|
|
19
19
|
# stratigraphic + paradata + virtual-reconstruction modeling. Companion to
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
# Python inheritance (e.g. AuthorAINode → AuthorNode) is for code reuse.
|
|
32
32
|
# * "Maps to: Python ClassName" comments anchor each class to its
|
|
33
33
|
# s3dgraphy Python counterpart for round-trip verification.
|
|
34
|
-
# *
|
|
34
|
+
# * AP11_has_physical_relation_to discrimination uses subproperties (em:abuts,
|
|
35
35
|
# em:cuts, em:fills, em:overlies, em:bondedTo, em:physicallyEquals)
|
|
36
36
|
# rather than reified relations with E55_Type tags — this is the
|
|
37
37
|
# SPARQL-friendly pattern.
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
dcterms:creator "Emanuele Demetrescu" ;
|
|
45
45
|
dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
|
|
46
46
|
dcterms:issued "2026-05-23"^^xsd:date ;
|
|
47
|
-
owl:versionInfo "1.6.
|
|
48
|
-
rdfs:comment "Formal ontology for Extended Matrix (EM): a human-readable layout for knowledge graphs of archaeological stratigraphy and virtual reconstruction. Extends CIDOC-CRM, CRMarchaeo, CRMinf, CRMdig, CRMgeo, with PROV-O for agent provenance and HDT-O for digital-twin granularity. This file declares the em: classes and properties introduced in s3dgraphy v1.6.0."@en ;
|
|
47
|
+
owl:versionInfo "1.6.2" ;
|
|
48
|
+
rdfs:comment "Formal ontology for Extended Matrix (EM): a human-readable layout for knowledge graphs of archaeological stratigraphy and virtual reconstruction. Extends CIDOC-CRM, CRMarchaeo, CRMinf, CRMdig, CRMgeo, with PROV-O for agent provenance and HDT-O for digital-twin granularity. This file declares the em: classes and properties introduced in s3dgraphy v1.6.0. v1.6.2 (2026-09-21, CIDOC repair pass): the eight terms the datamodels cited and this file never defined are declared in section 12; em:NodeGroup and em:ParadataNodeGroup leave the undeclared crm:E78_Collection for crm:E73_Information_Object and crm:E89_Propositional_Object; em:SemanticShape leaves crmgeo:SP5 for crm:E73_Information_Object, provisionally; crmarchaeo:AP11_has_physical_relation becomes AP11_has_physical_relation_to, the name CRMarchaeo has used since 2.0; and em:RepresentationModel says what a representation model IS."@en ;
|
|
49
49
|
owl:imports <http://www.cidoc-crm.org/cidoc-crm/> ,
|
|
50
50
|
<http://www.cidoc-crm.org/extensions/crminf/> ,
|
|
51
51
|
<http://www.cidoc-crm.org/extensions/crmarchaeo/> ,
|
|
@@ -305,7 +305,7 @@ em:RepresentationModel
|
|
|
305
305
|
a owl:Class ;
|
|
306
306
|
rdfs:label "Representation Model"@en ;
|
|
307
307
|
rdfs:subClassOf crmdig:D1_Digital_Object ;
|
|
308
|
-
rdfs:comment "A 3D model or spatialized image representing some node in the graph. Abstract base. Specialized into em:StratigraphicRepresentation, em:DocumentaryRepresentation, em:SpecialFindRepresentation. Always linked to what it represents via crm:P138_represents."@en .
|
|
308
|
+
rdfs:comment "A 3D model or spatialized image representing some node in the graph. Abstract base. Specialized into em:StratigraphicRepresentation, em:DocumentaryRepresentation, em:SpecialFindRepresentation. Always linked to what it represents via crm:P138_represents. WHAT IT IS (E.D., 21 September 2026). A representation model is a DOCUMENT WITH A DATE: it was made on a day, by somebody, from something, and it is naturally anchored to an EPOCH rather than to a unit. It is also potentially PARTIAL — a photogrammetric survey can come back with an incomplete mesh, a facade recorded from one side only, a room whose ceiling nobody could reach. Both of those together have one consequence worth stating so nobody reasons past it: the ABSENCE of a link between a model and a stratigraphic unit IS NOT INFORMATIVE. It does not mean the unit was not represented, and it does not mean the unit is not there; it means this document does not reach that far. Queries must not read a missing link as a negative claim. The PROXY has a different statute and is not the same kind of thing: em:SemanticShape is CUMULATIVE and ARGUED — a quale synthesised from several sources, inheriting the extractor/combiner chain, so it can be more COMPLETE than any single model while being far less detailed. A model is one look at the thing; a proxy is what we have concluded the thing occupies. DATING AND PROVENANCE HAVE NO FIELD OF THEIR OWN ON THIS CLASS, and that is deliberate: they travel through has_linked_resource to a ResourceNode and back up through dtc_had_output to the DTC event that produced it, where the date, the device and the author already live and are already paradata. A `date` field MUST NOT be added to RepresentationModelNode: it would duplicate the DTC chain, drift from it, and turn a documented provenance into a typed-in string."@en .
|
|
309
309
|
|
|
310
310
|
em:StratigraphicRepresentation
|
|
311
311
|
a owl:Class ;
|
|
@@ -328,7 +328,12 @@ em:SpecialFindRepresentation
|
|
|
328
328
|
em:SemanticShape
|
|
329
329
|
a owl:Class ;
|
|
330
330
|
rdfs:label "Semantic Shape (proxy geometry)"@en ;
|
|
331
|
-
|
|
331
|
+
# PROVVISORIO — crmgeo:SP6_Declarative_Place è il candidato migliore,
|
|
332
|
+
# decisione rinviata da E.D. (21 set 2026). Era crmgeo:SP5_Geometric_Place_Expression,
|
|
333
|
+
# che NON è dichiarata nel documento servito a http://www.cidoc-crm.org/extensions/crmgeo/
|
|
334
|
+
# (CRMgeo 2.0 draft: SP1,2,3,4,6,7,10,11,12,13,14,15 — SP5 sopravvive solo nella scope
|
|
335
|
+
# note di SP6). crm:E73_Information_Object è la mossa sicura che non impegna.
|
|
336
|
+
rdfs:subClassOf crm:E73_Information_Object ;
|
|
332
337
|
rdfs:comment "3D proxy geometry (convex shapes or spheres, or a .glb via rdfs:seeAlso) representing the spatial extent of a node. Lighter weight than a full RepresentationModel: intended for spatial indexing and rough containment, not for visual rendering. SINCE 2026-08-11 IT IS A PAYLOAD: the proxy of a unit is a quale — a property of type 'geometry' — and this class is what that property points at through P138i (has_semantic_shape). The reason is paradata: a lone shape cannot say where it came from, while a property inherits the extractor/combiner chain, so one proxy can be synthesised from several sources (a photogrammetric mesh and a historical photograph). The class itself did not change; who points at it did. Maps to: Python SemanticShapeNode (node_type='semantic_shape')."@en .
|
|
333
338
|
|
|
334
339
|
em:convexShape
|
|
@@ -483,7 +488,7 @@ em:confidenceLevel
|
|
|
483
488
|
# ============================================================================
|
|
484
489
|
# 11. STRATIGRAPHIC PHYSICAL RELATIONS (AP11 subproperties)
|
|
485
490
|
# ============================================================================
|
|
486
|
-
# CRMarchaeo's
|
|
491
|
+
# CRMarchaeo's AP11_has_physical_relation_to is the generic relation between
|
|
487
492
|
# two stratigraphic units. We discriminate the specific type with named
|
|
488
493
|
# subproperties — the SPARQL-friendly pattern (queries can be specific
|
|
489
494
|
# OR fall back to the generic AP11 via subproperty inference).
|
|
@@ -491,7 +496,7 @@ em:confidenceLevel
|
|
|
491
496
|
em:abuts
|
|
492
497
|
a owl:ObjectProperty ;
|
|
493
498
|
rdfs:label "abuts"@en ;
|
|
494
|
-
rdfs:subPropertyOf crmarchaeo:
|
|
499
|
+
rdfs:subPropertyOf crmarchaeo:AP11_has_physical_relation_to ;
|
|
495
500
|
rdfs:domain crmarchaeo:A8_Stratigraphic_Unit ;
|
|
496
501
|
rdfs:range crmarchaeo:A8_Stratigraphic_Unit ;
|
|
497
502
|
rdfs:comment "Source stratigraphic unit abuts against the target. Non-symmetric: A abuts B does NOT imply B abuts A (B is_abutted_by A). Maps to: connections_datamodel edge 'abuts'."@en .
|
|
@@ -499,7 +504,7 @@ em:abuts
|
|
|
499
504
|
em:cuts
|
|
500
505
|
a owl:ObjectProperty ;
|
|
501
506
|
rdfs:label "cuts"@en ;
|
|
502
|
-
rdfs:subPropertyOf crmarchaeo:
|
|
507
|
+
rdfs:subPropertyOf crmarchaeo:AP11_has_physical_relation_to ;
|
|
503
508
|
rdfs:domain crmarchaeo:A8_Stratigraphic_Unit ;
|
|
504
509
|
rdfs:range crmarchaeo:A8_Stratigraphic_Unit ;
|
|
505
510
|
rdfs:comment "Source stratigraphic unit cuts (is incised into) the target. Non-symmetric. Maps to: connections_datamodel edge 'cuts'."@en .
|
|
@@ -507,7 +512,7 @@ em:cuts
|
|
|
507
512
|
em:fills
|
|
508
513
|
a owl:ObjectProperty ;
|
|
509
514
|
rdfs:label "fills"@en ;
|
|
510
|
-
rdfs:subPropertyOf crmarchaeo:
|
|
515
|
+
rdfs:subPropertyOf crmarchaeo:AP11_has_physical_relation_to ;
|
|
511
516
|
rdfs:domain crmarchaeo:A8_Stratigraphic_Unit ;
|
|
512
517
|
rdfs:range crmarchaeo:A8_Stratigraphic_Unit ;
|
|
513
518
|
rdfs:comment "Source stratigraphic unit fills the target (typically a deposit filling a cut). Non-symmetric. Maps to: connections_datamodel edge 'fills'."@en .
|
|
@@ -515,7 +520,7 @@ em:fills
|
|
|
515
520
|
em:overlies
|
|
516
521
|
a owl:ObjectProperty ;
|
|
517
522
|
rdfs:label "overlies"@en ;
|
|
518
|
-
rdfs:subPropertyOf crmarchaeo:
|
|
523
|
+
rdfs:subPropertyOf crmarchaeo:AP11_has_physical_relation_to ;
|
|
519
524
|
rdfs:domain crmarchaeo:A8_Stratigraphic_Unit ;
|
|
520
525
|
rdfs:range crmarchaeo:A8_Stratigraphic_Unit ;
|
|
521
526
|
rdfs:comment "Source stratigraphic unit overlies (covers) the target. Non-symmetric. Maps to: connections_datamodel edge 'overlies'."@en .
|
|
@@ -523,7 +528,7 @@ em:overlies
|
|
|
523
528
|
em:bondedTo
|
|
524
529
|
a owl:ObjectProperty , owl:SymmetricProperty ;
|
|
525
530
|
rdfs:label "bonded to"@en ;
|
|
526
|
-
rdfs:subPropertyOf crmarchaeo:
|
|
531
|
+
rdfs:subPropertyOf crmarchaeo:AP11_has_physical_relation_to ;
|
|
527
532
|
rdfs:domain crmarchaeo:A8_Stratigraphic_Unit ;
|
|
528
533
|
rdfs:range crmarchaeo:A8_Stratigraphic_Unit ;
|
|
529
534
|
rdfs:comment "Two stratigraphic units are physically bonded (e.g. masonry bonding). Symmetric. Maps to: connections_datamodel edges 'bonded_to' / 'is_bonded_to'."@en .
|
|
@@ -531,7 +536,7 @@ em:bondedTo
|
|
|
531
536
|
em:physicallyEquals
|
|
532
537
|
a owl:ObjectProperty , owl:SymmetricProperty ;
|
|
533
538
|
rdfs:label "physically equals"@en ;
|
|
534
|
-
rdfs:subPropertyOf crmarchaeo:
|
|
539
|
+
rdfs:subPropertyOf crmarchaeo:AP11_has_physical_relation_to ;
|
|
535
540
|
rdfs:domain crmarchaeo:A8_Stratigraphic_Unit ;
|
|
536
541
|
rdfs:range crmarchaeo:A8_Stratigraphic_Unit ;
|
|
537
542
|
rdfs:comment "Two distinct stratigraphic-unit ids refer to the same physical entity (e.g. across campaigns or archives). Symmetric. Maps to: connections_datamodel edges 'equals' / 'is_physically_equal_to'."@en .
|
|
@@ -612,13 +617,13 @@ em:UnknownNode
|
|
|
612
617
|
em:NodeGroup
|
|
613
618
|
a owl:Class ;
|
|
614
619
|
rdfs:label "Node Group (abstract)"@en ;
|
|
615
|
-
rdfs:subClassOf crm:
|
|
620
|
+
rdfs:subClassOf crm:E73_Information_Object ;
|
|
616
621
|
rdfs:comment "Abstract superclass of the EM grouping axes — activity (intention), paradata (justification), timebranch (alternative time), location (place), functional unit (architectural composition). A group is a Collection of nodes and never changes what its members ARE. Maps to: Python GroupNode (node_type='Group')."@en .
|
|
617
622
|
|
|
618
623
|
em:ParadataNodeGroup
|
|
619
624
|
a owl:Class ;
|
|
620
625
|
rdfs:label "Paradata Node Group"@en ;
|
|
621
|
-
rdfs:subClassOf em:NodeGroup , crm:
|
|
626
|
+
rdfs:subClassOf em:NodeGroup , crm:E89_Propositional_Object ;
|
|
622
627
|
rdfs:comment "All the paradata of one stratigraphic unit gathered as a unit, by EM convention named '[US_name]_PD'. Distinct class so the paradata groups are findable by type rather than by naming convention. Maps to: Python ParadataNodeGroup (node_type='ParadataNodeGroup')."@en .
|
|
623
628
|
|
|
624
629
|
em:LocationNodeGroup
|
|
@@ -635,5 +640,83 @@ em:GeoPositionNode
|
|
|
635
640
|
|
|
636
641
|
|
|
637
642
|
# ============================================================================
|
|
638
|
-
#
|
|
643
|
+
# 12. TERMS THE DATAMODELS CITE — declared here for the first time
|
|
644
|
+
# (added 2026-09-21, repair pass on the CIDOC mapping)
|
|
645
|
+
# ============================================================================
|
|
646
|
+
#
|
|
647
|
+
# These eight em: terms were named by s3Dgraphy_node_datamodel.json and
|
|
648
|
+
# s3Dgraphy_connections_datamodel.json and never defined here. An undefined
|
|
649
|
+
# term is not an error anywhere: it serialises as a perfectly well-formed IRI
|
|
650
|
+
# that no reasoner can place and no query can reach through its superclass.
|
|
651
|
+
# Domain, range and superclass below are READ OFF the datamodels
|
|
652
|
+
# (em_extension.subclass_of, mapping.cidoc, allowed_connections) — nothing is
|
|
653
|
+
# invented. Where the datamodel did not say, the field is absent and the
|
|
654
|
+
# comment says so.
|
|
655
|
+
|
|
656
|
+
em:FunctionalUnit
|
|
657
|
+
a owl:Class ;
|
|
658
|
+
rdfs:label "Functional Unit"@en ;
|
|
659
|
+
rdfs:subClassOf crm:E24_Physical_Human-Made_Thing ;
|
|
660
|
+
rdfs:comment "The stratigraphic units that together make up one recognisable functional or architectural component — the column made of its US, the wall made of its US (DP-72). Physical, not curatorial: it takes E24 rather than the collection class its em:NodeGroup parent carries, because a component is a whole made of parts and not a set somebody assembled. It is likewise not an em:WorkingUnit (an activity axis: why something was done) — this answers what a set of units IS. Since 2026-09-21 it is also a bearer of the temporal index: has_first_epoch and survive_in_epoch both accept it, and the asymmetry with ActivityNodeGroup (which takes has_first_epoch and never survive_in_epoch) is the point — an activity is an event and does not survive, a thing persists. Maps to: Python FunctionalUnitNodeGroup (node_type=\'FunctionalUnitNodeGroup\')."@en .
|
|
661
|
+
|
|
662
|
+
em:RepresentationModelNodeGroup
|
|
663
|
+
a owl:Class ;
|
|
664
|
+
rdfs:label "Representation Model Container"@en ;
|
|
665
|
+
rdfs:subClassOf em:NodeGroup , crm:E73_Information_Object ;
|
|
666
|
+
rdfs:comment "The representation models that form ONE named set published under a single Document — «Survey 2015» under D.01, «Reconstruction» under D.09 (EM16-RMNG, 2026-09-10). The one group subtype that does not override its parent class: a container of models is a conceptual set, not a physical thing and not an event. Membership is 1:1 — a mesh belongs to exactly one container — and the container sits BESIDE the direct Document→model edges, never in between. Maps to: Python RepresentationModelNodeGroup (node_type=\'RepresentationModelNodeGroup\')."@en .
|
|
667
|
+
|
|
668
|
+
em:GCPSet
|
|
669
|
+
a owl:Class ;
|
|
670
|
+
rdfs:label "Ground Control Point Set"@en ;
|
|
671
|
+
rdfs:subClassOf crm:E73_Information_Object ;
|
|
672
|
+
rdfs:comment "The set of ground control points a registration was (or will be) solved from: a documented list of measured places and, for each, where it was observed. An information object that CARRIES places and measurements without being either — it is not an E53 Place and not a crmsci:S21 Measurement. Named in the EM extension because «the control points behind this registration» is the unit archaeologists actually hand each other, and CIDOC has nothing above E73 for it. The individual observations stay payload literals in this version; exploding each point into an S21 Measurement of an E53 Place is declared as a refinement, not implied. Maps to: Python GCPSetNode (node_type=\'gcp_set\')."@en .
|
|
673
|
+
|
|
674
|
+
em:RegistrationTransform
|
|
675
|
+
a owl:Class ;
|
|
676
|
+
rdfs:label "Registration Transform"@en ;
|
|
677
|
+
rdfs:subClassOf crm:E73_Information_Object ;
|
|
678
|
+
rdfs:comment "The 7-parameter similarity (rotation, translation, positive scale) that places a produced model in a frame, carrying its own error bar (rms, residuals) beside the claim rather than in a log nobody keeps. It DESCRIBES a mapping between two crmgeo:SP4 spatial coordinate reference systems, which CIDOC and CRMgeo model individually but never as a parameterised map between two of them — hence E73 as the honest superclass. Deliberately NOT an event: the alternative, leaving the parameters as literals on the D7 acquisition, loses the ability to point at «the placement» as a thing that gets superseded, and being superseded is the whole reason the transform is a node. The three modes are the SHAPE of the graph, never a flag: a transform with a CRS that has_gcp_set points at = absolute; a transform with crs=null and no control set = a site-local frame; no transform at all = nobody placed it. Maps to: Python RegistrationTransformNode (node_type=\'registration_transform\')."@en .
|
|
679
|
+
|
|
680
|
+
em:Narrative
|
|
681
|
+
a owl:Class ;
|
|
682
|
+
rdfs:label "Narrative"@en ;
|
|
683
|
+
rdfs:subClassOf crm:E33_Linguistic_Object ;
|
|
684
|
+
rdfs:comment "A narrative over the EM graph: an ordered sequence of chapters, each anchored to a lane (epoch, activity, area) or standing outside the stratigraphy (introduction, geographic placement), composed of prose blocks and embed blocks. E33 because the narrative IS linguistic content about the heritage entity — and an E33 is already an E73 Information Object in CRM, so it is versionable, licensable and embargoable like the graph itself without a second assertion. The embeds are not content but references, and project as P67_refers_to. Endorsement is a separate act and a separate edge: see em:validatedBy. Maps to: Python NarrativeNode (node_type=\'narrative\')."@en .
|
|
685
|
+
|
|
686
|
+
em:NeutralSU
|
|
687
|
+
a owl:Class ;
|
|
688
|
+
rdfs:label "Neutral Stratigraphic Unit (USNt)"@en ;
|
|
689
|
+
rdfs:subClassOf crmarchaeo:A3_Stratigraphic_Interface ;
|
|
690
|
+
rdfs:comment "PROVISIONAL (datamodel extension_status: proposed_provisional — the class is declared so the IRI stops being undefined, NOT because the CIDOC placement is settled). A void that is part of the DESIGN and not the product of a destruction: the risparmi of masonry, a window or door opening, a niche, the empty volume of a room. The wall was built around it, so nothing was ever removed — which is what separates it from the negative unit, whose void is what a destructive act left behind. A3 Stratigraphic Interface is the better-informed placeholder; the genesis it wants is CONSTRUCTIVE (A4-flavoured), not the A5 destructive modification the negative unit takes. Consequence already enforced in the connections datamodel: USNt takes is_after / is_before and nothing else — a void cannot cut, fill, abut or bond. Maps to: Python NeutralStratigraphicUnit (stratigraphic subtype token \'USNt\' since POL6, 2026-08-04)."@en .
|
|
691
|
+
|
|
692
|
+
em:hasSubEpoch
|
|
693
|
+
a owl:ObjectProperty ;
|
|
694
|
+
rdfs:label "has sub-epoch"@en ;
|
|
695
|
+
rdfs:domain crm:E4_Period ;
|
|
696
|
+
rdfs:range crm:E4_Period ;
|
|
697
|
+
rdfs:comment "Splits an epoch into ordered sub-epochs (phases): the SUBJECT is the parent epoch, the OBJECT a phase, which is itself an epoch. Direction taken from the connections datamodel, which states it in words — «Source is the parent epoch, target a phase» — and from the edge\'s own name; the reverse edge is is_in_epoch. Phases partition the parent\'s time-span: when hidden the parent holds all the units, when shown the units are distributed across the phases. NO rdfs:subPropertyOf IS ASSERTED, deliberately. The edge\'s mapping.cidoc is crm:P10_falls_within, whose containment runs the other way (a phase falls within its parent, as that mapping\'s own _comment says) — so the CRM projection of this edge is currently written source-first on the wrong end, and the superproperty here would bake that in. crm:P10i_contains is the candidate; the decision is E.D.\'s and is recorded in the repair report of 2026-09-21. Maps to: connections_datamodel edge \'has_sub_epoch\'."@en .
|
|
698
|
+
|
|
699
|
+
em:validatedBy
|
|
700
|
+
a owl:ObjectProperty ;
|
|
701
|
+
rdfs:label "validated by"@en ;
|
|
702
|
+
rdfs:subPropertyOf prov:wasInfluencedBy ;
|
|
703
|
+
rdfs:domain em:Narrative ;
|
|
704
|
+
rdfs:range em:HumanAuthor ;
|
|
705
|
+
rdfs:comment "A HUMAN author endorses a piece of content: they have read it and put their name to it (EM Narrative N4, «Who Made This?»). Distinct from em:hasAuthor, and the distinction is the point: hasAuthor says who WROTE it, human or AI; validatedBy says who accepted RESPONSIBILITY for it. The range is em:HumanAuthor and never em:AIAuthor — a model endorsing a model would be a signature with nobody behind it. It is not a quality judgement and not a peer review. The absence of the property IS the unendorsed state, so a machine draft cannot claim an endorsement it never received. Superproperty and domain/range read off the connections datamodel (mapping.cidoc prov:wasInfluencedBy; source NarrativeNode, target AuthorNode). prov:wasInfluencedBy is the domain-neutral anchor because it is true and claims nothing more: endorsement has no exact term in CIDOC-CRM or PROV-O, and the datamodel records that an E13 Attribute Assignment reification is where this would change. Maps to: connections_datamodel edge \'validated_by\'."@en .
|
|
706
|
+
|
|
707
|
+
|
|
708
|
+
# ============================================================================
|
|
709
|
+
# CRMem v1.6.3 (2026-09-21) — the first of the four surviving CRMem properties
|
|
710
|
+
# Decided by E.D. in the CIDOC-EM branch chat, 21 September 2026.
|
|
711
|
+
# ============================================================================
|
|
712
|
+
|
|
713
|
+
em:isInActivity
|
|
714
|
+
a owl:ObjectProperty ;
|
|
715
|
+
rdfs:label "is in activity"@en ;
|
|
716
|
+
rdfs:domain crm:E1_CRM_Entity ;
|
|
717
|
+
rdfs:range crm:E7_Activity ;
|
|
718
|
+
rdfs:comment "An entity of any kind — a stratigraphic unit, a quale, a document, an extractor, a whole paradata group — is CLASSIFIED UNDER an activity-shaped grouping. This is the axis of INTENTION in the Extended Matrix, orthogonal to space (is_in_location) and to time (the epoch edges), and it is a curatorial grouping and not an event anyone attended. NO SUPERPROPERTY, deliberately, and the reason is the whole justification for the term: CIDOC can say that an actor PARTICIPATED in an event (P11i), that a thing WAS PRESENT (P12i), that an object WAS USED (P16i) — but it cannot say that an arbitrary entity is classified under an activity. P12i would even pass the type check, because E28 Conceptual Object reaches E77 through E71/E70, but it would be false: a PropertyNode attended nothing. P9i needs an E4 Period in the subject and the sources here are not periods; P129i needs an E89 in the object and E7 Activity is not one. Verified against CIDOC CRM 7.1.3 and CRMarchaeo 2.1.1: CRMarchaeo has specific archaeological activities (A9, A1, A6) but no generic activity class and none of its 32 AP properties expresses membership in one. The CLASS is not ours — crm:E7_Activity is CIDOC core and ActivityNodeGroup stays mapped to it — only the property is. NAMED isInActivity and NOT participatedInActivity (the dead CIDOC-S3D desideratum it replaces), because participation is a claim this model does not make. Maps to: connections_datamodel edge 'is_in_activity' (sources StratigraphicNode/ParadataNode/ParadataNodeGroup/DocumentNode/ExtractorNode/CombinerNode/PropertyNode, target ActivityNodeGroup); mapping.cidoc stays EMPTY on purpose, and the exporter emits this property on its own."@en .
|
|
719
|
+
|
|
720
|
+
# ============================================================================
|
|
721
|
+
# End of em.ttl v1.6.3
|
|
639
722
|
# ============================================================================
|
{s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_document_types.json
RENAMED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
"version": "2.0",
|
|
4
4
|
"last_updated": "2025-01-29",
|
|
5
5
|
"maintainers": ["Emanuel Demetrescu"],
|
|
6
|
-
"license": "CC-BY-4.0",
|
|
6
|
+
"license": "CC-BY-SA-4.0",
|
|
7
|
+
"license_note": "Share-alike per allinearsi agli strumenti terminologici da cui questo datamodel prende gli ancoraggi (ICCD CC BY-SA 3.0 IT) e perche' una derivazione resti aperta. Gli identificatori AAT/CIDOC citati nei `mappings` sono RIFERIMENTI, non contenuto incorporato: lo share-alike non si propaga ai vocabolari altrui, che mantengono i propri termini.",
|
|
7
8
|
"description": "Comprehensive document types definition for Extended Matrix"
|
|
8
9
|
},
|
|
9
10
|
"vocabulary_versions": {
|
{s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_extractor_types.json
RENAMED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
"version": "2.0",
|
|
4
4
|
"last_updated": "2025-01-29",
|
|
5
5
|
"maintainers": ["Emanuel Demetrescu"],
|
|
6
|
-
"license": "CC-BY-4.0",
|
|
6
|
+
"license": "CC-BY-SA-4.0",
|
|
7
|
+
"license_note": "Share-alike per allinearsi agli strumenti terminologici da cui questo datamodel prende gli ancoraggi (ICCD CC BY-SA 3.0 IT) e perche' una derivazione resti aperta. Gli identificatori AAT/CIDOC citati nei `mappings` sono RIFERIMENTI, non contenuto incorporato: lo share-alike non si propaga ai vocabolari altrui, che mantengono i propri termini.",
|
|
7
8
|
"description": "Extractors for deriving qualia from source documents"
|
|
8
9
|
},
|
|
9
10
|
"vocabulary_versions": {
|
{s3dgraphy-1.6.0.dev18 → s3dgraphy-1.6.0.dev19}/src/s3dgraphy/JSON_config/em_qualia_types.json
RENAMED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
"version": "1.6.1",
|
|
4
4
|
"last_updated": "2026-08-11",
|
|
5
5
|
"maintainers": ["Emanuel Demetrescu"],
|
|
6
|
-
"license": "CC-BY-4.0",
|
|
6
|
+
"license": "CC-BY-SA-4.0",
|
|
7
|
+
"license_note": "Share-alike per allinearsi agli strumenti terminologici da cui questo datamodel prende gli ancoraggi (ICCD CC BY-SA 3.0 IT) e perche' una derivazione resti aperta. Gli identificatori AAT/CIDOC citati nei `mappings` sono RIFERIMENTI, non contenuto incorporato: lo share-alike non si propaga ai vocabolari altrui, che mantengono i propri termini.",
|
|
7
8
|
"changelog": "v1.6.1: added the spatial qualia `geometry` — the PROXY as a quale. The geometry-without-material of a unit becomes a PropertyNode whose payload is a SemanticShapeNode (has_semantic_shape), so the proxy inherits the paradata chain a lone node could not have, and one proxy can be synthesised from several sources. CIDOC default crmgeo:SP5_Geometric_Place_Expression, flagged `confirm_with: Felicetti` (E36 is the alternative, to be decided together with em:AnnotationRegion). v1.6.0: version realigned to the EM language version (EM 1.6) — supersedes the standalone 4.x line (last was 4.2), so all EM JSON config files now share the 1.6.x scheme. Added optional `rationale` + `example` fields to qualia entries (a plain-language why + a concrete case), shown by the EMStudio vocabulary picker when creating a PropertyNode. Seeded for the temporal qualia (absolute_time_start / absolute_time_end / dating_method); to be filled in for the rest incrementally. Prior (4.x) history: v4.2 added rationale/example scaffolding; v4.1: expanded spatial elevation qualia for pyArchInit us_table quote (all E54_Dimension): elevation_relative, elevation_min_absolute, elevation_max_absolute, elevation_min_relative, elevation_max_relative, elevation_min_usm, elevation_max_usm (the generic 'elevation' = absolute MASL, used by quota_abs). Each pyArchInit quota column maps to its own qualia id so they don't collide on the single-PropertyNode-per-property_name rule. v4.0: verified all v3.0 CIDOC-CRM mappings (correct). Expanded with: volume, area, circumference in dimensional; color, texture, finish, patina, hardness, porosity in material; damage_type, fragility, completeness in state; tool_marks, joining_technique in technical; bounding_box, footprint_area in spatial; duration, terminus_post_quem, terminus_ante_quem, relative_chronology in temporal; ceremonial_function, ritual_function, defensive_function, domestic_function, symbolic_function in telic; school, workshop, period_attribution in stylistic. NEW subcategories: iconographic + semantic under cultural_interpretive (iconographic_subject, narrative_content, iconographic_program, aesthetic_value, religious_significance, monumental_status, attribution). Added provenance_history, exhibition_history, publication_history under administrative; NEW ownership subcategory (current_custodian, ownership_chain). NEW CATEGORY epistemic — meta-qualia central to EM paradata model (confidence_level, certainty_level, uncertainty_factors, methodology_used, validation_method, source_quality, primary_contributor, review_status, last_modified)."
|
|
8
9
|
},
|
|
9
10
|
"qualia_categories": [
|