s3dgraphy 1.6.0.dev103__tar.gz → 1.6.0.dev104__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.
Files changed (656) hide show
  1. {s3dgraphy-1.6.0.dev103/src/s3dgraphy.egg-info → s3dgraphy-1.6.0.dev104}/PKG-INFO +1 -1
  2. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/pyproject.toml +1 -1
  3. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/__init__.py +1 -1
  4. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/pyarchinit_importer.py +37 -0
  5. s3dgraphy-1.6.0.dev104/src/s3dgraphy/importer/unit_numbers.py +144 -0
  6. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104/src/s3dgraphy.egg-info}/PKG-INFO +1 -1
  7. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy.egg-info/SOURCES.txt +2 -0
  8. s3dgraphy-1.6.0.dev104/tests/test_unit_numbers.py +139 -0
  9. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/LICENSE +0 -0
  10. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/MANIFEST.in +0 -0
  11. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/README.md +0 -0
  12. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/setup.cfg +0 -0
  13. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/acquisition_descriptor.schema.json +0 -0
  14. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/acquisition_mappings/ercolano.json +0 -0
  15. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/acquisition_mappings/fs.json +0 -0
  16. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/acquisition_mappings/uri.json +0 -0
  17. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/alternative_cases.json +0 -0
  18. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/datamodel_translations.json +0 -0
  19. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em.ttl +0 -0
  20. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_basemap_sources.json +0 -0
  21. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_document_types.json +0 -0
  22. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_extractor_types.json +0 -0
  23. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_palette_icons.json +0 -0
  24. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_qualia_types.json +0 -0
  25. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_qualia_types_additions.json +0 -0
  26. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_state_symbols.json +0 -0
  27. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/em_visual_rules.json +0 -0
  28. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/hdto_extension.ttl +0 -0
  29. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/new_qualia_template.json +0 -0
  30. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/node_registry.generated.json +0 -0
  31. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/outdated_s3dgraphy.ttl +0 -0
  32. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/outdated_s3dgraphy_nomapping.ttl +0 -0
  33. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/s3Dgraphy_connections_datamodel.json +0 -0
  34. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/s3Dgraphy_connections_datamodel.json.v155.bak +0 -0
  35. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/s3Dgraphy_node_datamodel.json +0 -0
  36. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/ActivityNodeGroup.svg +0 -0
  37. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/EMNarrative.png +0 -0
  38. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/EMNarrative.svg +0 -0
  39. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/EpochNode.svg +0 -0
  40. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/ParadataNodeGroup.svg +0 -0
  41. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/RSF.png +0 -0
  42. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/RSF.svg +0 -0
  43. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/SE.svg +0 -0
  44. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/SE_old.png +0 -0
  45. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/SE_old.svg +0 -0
  46. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/SF.png +0 -0
  47. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/SF.svg +0 -0
  48. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/TSU.png +0 -0
  49. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/US.png +0 -0
  50. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/US.svg +0 -0
  51. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/USD.png +0 -0
  52. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/USD.svg +0 -0
  53. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/USVn.png +0 -0
  54. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/USVn.svg +0 -0
  55. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/USVs.png +0 -0
  56. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/USVs.svg +0 -0
  57. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/UTR.svg +0 -0
  58. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/VSF.png +0 -0
  59. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/VSF.svg +0 -0
  60. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/author.png +0 -0
  61. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/author.svg +0 -0
  62. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/author_ai.png +0 -0
  63. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/author_ai.svg +0 -0
  64. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/bozze/UT.svg +0 -0
  65. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/bozze/UT0.svg +0 -0
  66. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/bozze/district.svg +0 -0
  67. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/bozze/site.svg +0 -0
  68. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/combiner.png +0 -0
  69. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/combiner.svg +0 -0
  70. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/container.svg +0 -0
  71. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/continuity.png +0 -0
  72. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/continuity.svg +0 -0
  73. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/document.png +0 -0
  74. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/document.svg +0 -0
  75. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/00_transformation.svg +0 -0
  76. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/01_topographicnetwork.svg +0 -0
  77. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/02_pointcloud.svg +0 -0
  78. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/03_mesh.svg +0 -0
  79. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/04_points.svg +0 -0
  80. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/05_lines.svg +0 -0
  81. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/06_polygons.svg +0 -0
  82. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/07_DEM.svg +0 -0
  83. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/08_ortophoto.svg +0 -0
  84. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/09_photos.svg +0 -0
  85. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/10_laserscanner.svg +0 -0
  86. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device.svg +0 -0
  87. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_computer.svg +0 -0
  88. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_drone.svg +0 -0
  89. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_gnss.svg +0 -0
  90. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_optical.svg +0 -0
  91. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_scanner.svg +0 -0
  92. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_sensor.svg +0 -0
  93. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/11_device_station.svg +0 -0
  94. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/12_gnss_survey.svg +0 -0
  95. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/13_field_drawing.svg +0 -0
  96. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/14_recording_sheet.svg +0 -0
  97. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/15_decimation.svg +0 -0
  98. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/16_georeferencing.svg +0 -0
  99. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/17_format_conversion.svg +0 -0
  100. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/18_classification.svg +0 -0
  101. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/dtc/19_vectorization.svg +0 -0
  102. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/embargo.png +0 -0
  103. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/embargo.svg +0 -0
  104. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/extractor.png +0 -0
  105. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/extractor.svg +0 -0
  106. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/gcp_set.svg +0 -0
  107. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/generic_node.svg +0 -0
  108. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/geo_position.svg +0 -0
  109. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/graph.svg +0 -0
  110. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/hdto/graph.svg +0 -0
  111. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/hdto/hdt.svg +0 -0
  112. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/hdto/heritage_entity.svg +0 -0
  113. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/hdto/project.svg +0 -0
  114. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/hdto/study.svg +0 -0
  115. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/landscape_surface.svg +0 -0
  116. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/license.png +0 -0
  117. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/license.svg +0 -0
  118. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/link.svg +0 -0
  119. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/narrative.png +0 -0
  120. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/narrative.svg +0 -0
  121. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/play.svg +0 -0
  122. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/property.png +0 -0
  123. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/property.svg +0 -0
  124. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/proxy.svg +0 -0
  125. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/registration_transform.svg +0 -0
  126. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/representation_model.svg +0 -0
  127. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/representation_model_doc.svg +0 -0
  128. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/representation_model_sf.svg +0 -0
  129. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/resource_file.svg +0 -0
  130. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/semantic_shape.svg +0 -0
  131. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/serSU.png +0 -0
  132. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/serSU.svg +0 -0
  133. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/serUSD.png +0 -0
  134. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/serUSV.png +0 -0
  135. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/serUSVn.svg +0 -0
  136. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/serUSVs.svg +0 -0
  137. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/tileset.svg +0 -0
  138. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/version_gltf.svg +0 -0
  139. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/version_mesh.svg +0 -0
  140. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/version_scene.svg +0 -0
  141. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/2D/version_tiles.svg +0 -0
  142. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/RSF.glb +0 -0
  143. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/SF.glb +0 -0
  144. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/TSU.glb +0 -0
  145. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/US.glb +0 -0
  146. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/USD.glb +0 -0
  147. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/USVn.glb +0 -0
  148. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/USVs.glb +0 -0
  149. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/VSF.glb +0 -0
  150. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/combiner.glb +0 -0
  151. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/continuity.glb +0 -0
  152. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/document.glb +0 -0
  153. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/extractor.glb +0 -0
  154. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/property.glb +0 -0
  155. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/serSU.glb +0 -0
  156. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/serUSD.glb +0 -0
  157. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/src/3D/serUSV.glb +0 -0
  158. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/version_for_cases.json +0 -0
  159. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/JSON_config/version_for_hardware_cases.json +0 -0
  160. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/__main__.py +0 -0
  161. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/acquisition/__init__.py +0 -0
  162. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/acquisition/acquire.py +0 -0
  163. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/acquisition/descriptor.py +0 -0
  164. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/acquisition/mapping.py +0 -0
  165. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/ai_validation.py +0 -0
  166. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/annotation/__init__.py +0 -0
  167. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/annotation/migrate_reading.py +0 -0
  168. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/annotation/paradata.py +0 -0
  169. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/annotation/reading.py +0 -0
  170. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/api.py +0 -0
  171. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/__init__.py +0 -0
  172. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/resolver.py +0 -0
  173. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/snapshots/LICENSE +0 -0
  174. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/snapshots/chronontology.jsonld +0 -0
  175. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/snapshots/getty_aat.jsonld +0 -0
  176. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/snapshots/getty_tgn.jsonld +0 -0
  177. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/snapshots/periodo.jsonld +0 -0
  178. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/authorities/snapshots/provenance.json +0 -0
  179. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/classification.py +0 -0
  180. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/container.py +0 -0
  181. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/contract/__init__.py +0 -0
  182. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/contract/connector.py +0 -0
  183. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/contract/consumer.py +0 -0
  184. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/contract/core.py +0 -0
  185. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/contract/reference.py +0 -0
  186. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/crdt.py +0 -0
  187. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/data/StratiMiner_Extraction_Prompt.md +0 -0
  188. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/datamodel.py +0 -0
  189. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/diagnostics.py +0 -0
  190. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dissemination.py +0 -0
  191. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/__init__.py +0 -0
  192. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/capture.py +0 -0
  193. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/corpus.py +0 -0
  194. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/devices.py +0 -0
  195. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/ingest.py +0 -0
  196. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/neighbourhood.py +0 -0
  197. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/dtc/residency.py +0 -0
  198. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/edges/__init__.py +0 -0
  199. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/edges/connection_resolver.py +0 -0
  200. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/edges/connections_loader.py +0 -0
  201. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/edges/edge.py +0 -0
  202. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/editorial.py +0 -0
  203. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/__init__.py +0 -0
  204. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/docx_exporter.py +0 -0
  205. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/emjson_exporter.py +0 -0
  206. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/__init__.py +0 -0
  207. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/canvas_generator.py +0 -0
  208. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/edge_generator.py +0 -0
  209. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/epoch_generator.py +0 -0
  210. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/graphml_exporter.py +0 -0
  211. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/graphml_patcher.py +0 -0
  212. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/group_node_generator.py +0 -0
  213. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/node_generator.py +0 -0
  214. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/node_registry.py +0 -0
  215. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/palette_resources.py +0 -0
  216. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/paradata_generator.py +0 -0
  217. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/paradata_image_generator.py +0 -0
  218. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/paradata_node_generators.py +0 -0
  219. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/table_node_generator.py +0 -0
  220. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/graphml/utils.py +0 -0
  221. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/html_exporter.py +0 -0
  222. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/ipynb_exporter.py +0 -0
  223. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/json_exporter.py +0 -0
  224. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/latex_exporter.py +0 -0
  225. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/rdf_exporter.py +0 -0
  226. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/exporter/unified_xlsx_exporter.py +0 -0
  227. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/__init__.py +0 -0
  228. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/aton.py +0 -0
  229. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/frame.py +0 -0
  230. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/gltf.py +0 -0
  231. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/migrate.py +0 -0
  232. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/proxy.py +0 -0
  233. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/reading_glb.py +0 -0
  234. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/registration.py +0 -0
  235. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/store_backed.py +0 -0
  236. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/transform.py +0 -0
  237. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/geometry/wkt.py +0 -0
  238. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/__init__.py +0 -0
  239. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/contours.py +0 -0
  240. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/crs.py +0 -0
  241. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/footprint.py +0 -0
  242. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/geojson.py +0 -0
  243. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/geopackage.py +0 -0
  244. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/geotiff.py +0 -0
  245. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/landscape.py +0 -0
  246. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/layer.py +0 -0
  247. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/shapefile.py +0 -0
  248. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/site.py +0 -0
  249. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/spatialite.py +0 -0
  250. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/gis/wkb.py +0 -0
  251. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/graph.py +0 -0
  252. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/graph_removal.py +0 -0
  253. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/hdto.py +0 -0
  254. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/iiif.py +0 -0
  255. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/__init__.py +0 -0
  256. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/base_importer.py +0 -0
  257. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/csv_importer.py +0 -0
  258. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/emjson_importer.py +0 -0
  259. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/fmpxml_importer.py +0 -0
  260. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/import_graphml.py +0 -0
  261. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/mapped_xlsx_importer.py +0 -0
  262. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/metashape_chain.py +0 -0
  263. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/metashape_project.py +0 -0
  264. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/pyarchinit_footprints.py +0 -0
  265. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/qualia_importer.py +0 -0
  266. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/rdf_importer.py +0 -0
  267. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/sheet_header.py +0 -0
  268. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/source_text.py +0 -0
  269. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/unified_xlsx_importer.py +0 -0
  270. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/xlsx_importer.py +0 -0
  271. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/importer/xml_importer.py +0 -0
  272. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/indices.py +0 -0
  273. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/labels.py +0 -0
  274. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/landscape.py +0 -0
  275. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/language.py +0 -0
  276. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/links.py +0 -0
  277. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/__init__.py +0 -0
  278. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/authoring.py +0 -0
  279. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/emdb/generic_specialfind_mapping.json +0 -0
  280. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/emdb/site_properties_mapping.json +0 -0
  281. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/emdb/usm_mapping.json +0 -0
  282. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/generic/excel_to_graphml_mapping.json +0 -0
  283. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/pyarchinit/pyarchinit_us_mapping.json +0 -0
  284. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/registry.py +0 -0
  285. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/source_list/em_sourcelist_it.json +0 -0
  286. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/source_list/source_list_mapping.json +0 -0
  287. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/template_emdb_mapping.json +0 -0
  288. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/mappings/template_pyarchinit_mapping.json +0 -0
  289. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/merge/__init__.py +0 -0
  290. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/merge/graph_merger.py +0 -0
  291. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/multigraph/__init__.py +0 -0
  292. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/multigraph/multigraph.py +0 -0
  293. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/narrative/__init__.py +0 -0
  294. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/narrative/bake.py +0 -0
  295. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/narrative/generation.py +0 -0
  296. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/narrative/query.py +0 -0
  297. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/narrative/registry.py +0 -0
  298. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/narrative/site_story.py +0 -0
  299. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/__init__.py +0 -0
  300. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/annotation_region_node.py +0 -0
  301. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/author_node.py +0 -0
  302. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/base_node.py +0 -0
  303. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/combiner_node.py +0 -0
  304. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/document_node.py +0 -0
  305. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/dtc_acquisition_node.py +0 -0
  306. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/dtc_device_node.py +0 -0
  307. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/dtc_node.py +0 -0
  308. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/dtc_process_node.py +0 -0
  309. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/embargo_node.py +0 -0
  310. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/epoch_node.py +0 -0
  311. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/extractor_node.py +0 -0
  312. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/geo_position_node.py +0 -0
  313. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/georeferencing_node.py +0 -0
  314. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/graph_node.py +0 -0
  315. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/group_node.py +0 -0
  316. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/hdt_node.py +0 -0
  317. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/heritage_entity_node.py +0 -0
  318. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/landscape_surface_node.py +0 -0
  319. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/landscape_unit_node.py +0 -0
  320. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/license_node.py +0 -0
  321. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/narrative_node.py +0 -0
  322. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/paradata_node.py +0 -0
  323. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/periodization_node.py +0 -0
  324. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/project_node.py +0 -0
  325. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/property_node.py +0 -0
  326. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/representation_node.py +0 -0
  327. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/resource_file_node.py +0 -0
  328. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/resource_node.py +0 -0
  329. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/semantic_shape_node.py +0 -0
  330. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/stratigraphic_node.py +0 -0
  331. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/study_node.py +0 -0
  332. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/nodes/translation_node.py +0 -0
  333. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/ownership.py +0 -0
  334. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/paradata_view.py +0 -0
  335. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/periodization.py +0 -0
  336. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/photogrammetry/__init__.py +0 -0
  337. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/photogrammetry/delta.py +0 -0
  338. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/project_tree.py +0 -0
  339. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/property_source.py +0 -0
  340. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/publication.py +0 -0
  341. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/rapporti.py +0 -0
  342. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resolvers/__init__.py +0 -0
  343. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resolvers/builtin_rules.py +0 -0
  344. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resolvers/property_resolver.py +0 -0
  345. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/__init__.py +0 -0
  346. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/addresses.py +0 -0
  347. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/alignment.py +0 -0
  348. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/alternatives.py +0 -0
  349. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/asset_list.py +0 -0
  350. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/blend_folder.py +0 -0
  351. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/blend_room.py +0 -0
  352. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/consolidate.py +0 -0
  353. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/detail.py +0 -0
  354. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/files.py +0 -0
  355. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/fs_backend.py +0 -0
  356. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/graph_compose.py +0 -0
  357. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/locate.py +0 -0
  358. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/master_stamp.py +0 -0
  359. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/moved.py +0 -0
  360. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/object_store.py +0 -0
  361. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/resolver.py +0 -0
  362. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/s3_backend.py +0 -0
  363. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/storage_rows.py +0 -0
  364. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/tiles3tz.py +0 -0
  365. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/tileset_fit.py +0 -0
  366. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/use_profiles.py +0 -0
  367. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/resources/versions.py +0 -0
  368. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/rights.py +0 -0
  369. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/__init__.py +0 -0
  370. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/access.py +0 -0
  371. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/engine.py +0 -0
  372. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/errors.py +0 -0
  373. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/inventory.py +0 -0
  374. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/node.py +0 -0
  375. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/pack.py +0 -0
  376. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/room_import/trust.py +0 -0
  377. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/shelf/__init__.py +0 -0
  378. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/shelf/core.py +0 -0
  379. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/spatiotemporal.py +0 -0
  380. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/stamp/__init__.py +0 -0
  381. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/stamp/absorb.py +0 -0
  382. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/stamp/emit.py +0 -0
  383. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/stamp/hints.py +0 -0
  384. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/stamp/identity.py +0 -0
  385. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/study.py +0 -0
  386. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/__init__.py +0 -0
  387. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/_db_handle.py +0 -0
  388. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/_legacy_paradata_svgs.py +0 -0
  389. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/_workspace.py +0 -0
  390. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/conflict_resolver.py +0 -0
  391. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/edge_registry.py +0 -0
  392. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/graph_ingestor.py +0 -0
  393. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/graph_projector.py +0 -0
  394. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/graphml_writer.py +0 -0
  395. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/group_projector.py +0 -0
  396. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/group_store.py +0 -0
  397. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/ingest_result.py +0 -0
  398. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/paradata_store.py +0 -0
  399. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/pyarchinit_pg_importer.py +0 -0
  400. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/rapporti.py +0 -0
  401. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/uuid7.py +0 -0
  402. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/vocab_provider_core.py +0 -0
  403. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/vocab_types.py +0 -0
  404. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/yed_classifier.py +0 -0
  405. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/yed_detector.py +0 -0
  406. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/yed_group_walker.py +0 -0
  407. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/yed_import_pipeline.py +0 -0
  408. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/yed_rapporti_policy.py +0 -0
  409. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/sync/yed_table_parser.py +0 -0
  410. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/templates/em_data_template.xlsx +0 -0
  411. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/templates/em_palette_template.graphml +0 -0
  412. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/temporal/__init__.py +0 -0
  413. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/temporal/inference_engine.py +0 -0
  414. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/temporal/relative_chronology.py +0 -0
  415. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/__init__.py +0 -0
  416. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/consumer_drift.py +0 -0
  417. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/datamodel_i18n.py +0 -0
  418. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/deliverable_report.py +0 -0
  419. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/glyph_sheet.py +0 -0
  420. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/glyphs_from_svg.py +0 -0
  421. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/node_finder.py +0 -0
  422. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/ontology_html.py +0 -0
  423. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/sync_node_datamodel.py +0 -0
  424. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/tools/wheel_drift.py +0 -0
  425. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/transforms/__init__.py +0 -0
  426. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/transforms/aux_tracking.py +0 -0
  427. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/transforms/compact.py +0 -0
  428. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/transforms/materialize_continuity.py +0 -0
  429. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/translation.py +0 -0
  430. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/utils/__init__.py +0 -0
  431. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/utils/utils.py +0 -0
  432. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/utils/visual_layout.py +0 -0
  433. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy/zero_hour.py +0 -0
  434. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy.egg-info/dependency_links.txt +0 -0
  435. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy.egg-info/requires.txt +0 -0
  436. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/src/s3dgraphy.egg-info/top_level.txt +0 -0
  437. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_acquisition.py +0 -0
  438. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_acquisition_fs.py +0 -0
  439. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_add_resource.py +0 -0
  440. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_ai_validation_nodes.py +0 -0
  441. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_alternative_labels.py +0 -0
  442. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_alternative_sets.py +0 -0
  443. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_alternatives_hat.py +0 -0
  444. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_anastylosis_document_type.py +0 -0
  445. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_api_surface.py +0 -0
  446. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_asset_dtc_protocol.py +0 -0
  447. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_asset_list.py +0 -0
  448. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_asset_versions.py +0 -0
  449. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_aton_shapes.py +0 -0
  450. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_attach_only.py +0 -0
  451. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_authority_projection.py +0 -0
  452. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_authority_resolver.py +0 -0
  453. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_blend_folder.py +0 -0
  454. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_blend_locator.py +0 -0
  455. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_blend_room.py +0 -0
  456. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_bucket_alignment.py +0 -0
  457. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_canonical_document_rename.py +0 -0
  458. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_canvas_metadata_import.py +0 -0
  459. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_capture_acquisition.py +0 -0
  460. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_capture_rdf_class.py +0 -0
  461. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_chronology_on_request.py +0 -0
  462. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_cloud_placeholders.py +0 -0
  463. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_coating_unit.py +0 -0
  464. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_composite_node_name.py +0 -0
  465. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_connection_resolver.py +0 -0
  466. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_consolida_2.py +0 -0
  467. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_consolidate_compose.py +0 -0
  468. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_consumer_drift.py +0 -0
  469. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_container.py +0 -0
  470. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_container_layouts.py +0 -0
  471. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_containment_tpq.py +0 -0
  472. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_contemporaneity.py +0 -0
  473. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_contract.py +0 -0
  474. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_contract_consumer.py +0 -0
  475. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_convert_command.py +0 -0
  476. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_crdt.py +0 -0
  477. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_cycle_message_is_cheap.py +0 -0
  478. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_datamodel_fingerprint.py +0 -0
  479. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_datamodel_i18n.py +0 -0
  480. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_datum_operation.py +0 -0
  481. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_detail.py +0 -0
  482. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_deterministic_ids.py +0 -0
  483. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_em_sourcelist.py +0 -0
  484. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_file_set_stamp.py +0 -0
  485. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_graphml_without_a_database.py +0 -0
  486. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_image_set_texturing.py +0 -0
  487. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_not_georeferenced.py +0 -0
  488. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_one_act_n_outputs.py +0 -0
  489. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev29_ttl_round_trip.py +0 -0
  490. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dev30_decisions.py +0 -0
  491. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_devices.py +0 -0
  492. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dissemination_tombstones.py +0 -0
  493. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dove_sta_il_testo.py +0 -0
  494. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dtc_corpus.py +0 -0
  495. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dtc_ingest.py +0 -0
  496. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dtc_neighbourhood.py +0 -0
  497. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dtc_projection.py +0 -0
  498. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_dtc_residency.py +0 -0
  499. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_edge_outside_graph.py +0 -0
  500. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_edge_ui_phrases.py +0 -0
  501. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_editorial.py +0 -0
  502. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_em_ttl_matches_the_datamodels.py +0 -0
  503. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_emjson_conformance.py +0 -0
  504. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_emjson_no_drawing_keys.py +0 -0
  505. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_emjson_roundtrip.py +0 -0
  506. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_emjson_schema_version.py +0 -0
  507. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_end_of_unit.py +0 -0
  508. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_epoch_instances.py +0 -0
  509. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_epoch_properties_and_sub_epochs.py +0 -0
  510. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_epoch_undated_import.py +0 -0
  511. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_explicit_node_type_marker.py +0 -0
  512. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_extracted_from_unit.py +0 -0
  513. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_file_frame.py +0 -0
  514. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_filtered_import.py +0 -0
  515. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_fit_affine_no_numpy.py +0 -0
  516. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_fmpxml_importer.py +0 -0
  517. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_fs_backend.py +0 -0
  518. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_functional_units.py +0 -0
  519. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_georeference_scene.py +0 -0
  520. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_gis_base.py +0 -0
  521. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_gis_site.py +0 -0
  522. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_gltf_stitch.py +0 -0
  523. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_glyph_paths.py +0 -0
  524. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_graph_header_code.py +0 -0
  525. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_graph_helpers_indexed.py +0 -0
  526. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_graph_indices_alive.py +0 -0
  527. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_graph_indices_edges.py +0 -0
  528. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_graph_removal.py +0 -0
  529. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_graph_scope_migration.py +0 -0
  530. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_hdto_glyphs.py +0 -0
  531. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_hdto_projection.py +0 -0
  532. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_hdto_study.py +0 -0
  533. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_header_key_aliases.py +0 -0
  534. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_i_generi_dei_passi.py +0 -0
  535. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_iiif.py +0 -0
  536. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_il_modo_d_accesso.py +0 -0
  537. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_il_modo_dal_relay.py +0 -0
  538. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_il_proprietario_si_legge.py +0 -0
  539. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_il_riallineamento.py +0 -0
  540. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_import_without_residues.py +0 -0
  541. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_importer_edge_hygiene.py +0 -0
  542. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_impronte_saggi_tagli.py +0 -0
  543. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_ipynb_exporter.py +0 -0
  544. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_iri_extendedmatrix.py +0 -0
  545. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_issue27_small_points.py +0 -0
  546. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_la_lingua_alla_nascita.py +0 -0
  547. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_la_lingua_dei_dati.py +0 -0
  548. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_la_lingua_nell_op.py +0 -0
  549. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_la_riga_d_intestazione.py +0 -0
  550. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_lab_orizzonti.py +0 -0
  551. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_landscape_ontology.py +0 -0
  552. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_latex_exporter.py +0 -0
  553. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_le_traduzioni.py +0 -0
  554. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_lod_levels.py +0 -0
  555. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_lossless_roundtrip.py +0 -0
  556. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_mapping_authoring.py +0 -0
  557. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_mapping_csv_and_relations.py +0 -0
  558. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_masonry_unit.py +0 -0
  559. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_material_color.py +0 -0
  560. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_merge_conflicts.py +0 -0
  561. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_metashape_project.py +0 -0
  562. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_migrate_legacy_proxy.py +0 -0
  563. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_authorship.py +0 -0
  564. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_bake_docx.py +0 -0
  565. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_figures.py +0 -0
  566. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_generation.py +0 -0
  567. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_mentions.py +0 -0
  568. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_node.py +0 -0
  569. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_query.py +0 -0
  570. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_scaffolder.py +0 -0
  571. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_site_place.py +0 -0
  572. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_narrative_unvalidated_export.py +0 -0
  573. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_node_datamodel_registry.py +0 -0
  574. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_node_finder.py +0 -0
  575. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_node_type_map_integrity.py +0 -0
  576. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_one_resolver.py +0 -0
  577. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_one_spelling_writers.py +0 -0
  578. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_ontology_html.py +0 -0
  579. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_op_vocabulary.py +0 -0
  580. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_part_twins.py +0 -0
  581. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_pg_importer.py +0 -0
  582. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_photogrammetry_delta.py +0 -0
  583. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_physical_relation_spellings.py +0 -0
  584. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_piu_indirizzi.py +0 -0
  585. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_promote_keeps_proxy_type.py +0 -0
  586. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_promotion.py +0 -0
  587. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_property_as_source.py +0 -0
  588. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_property_owners.py +0 -0
  589. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_proxy_resource.py +0 -0
  590. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_proxy_retype.py +0 -0
  591. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_psx_locator.py +0 -0
  592. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_pyarchinit_tier2.py +0 -0
  593. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_qualia_dai_d7_d8.py +0 -0
  594. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_rdf_embedding.py +0 -0
  595. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_rdf_reverse_edges.py +0 -0
  596. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_rdf_roundtrip.py +0 -0
  597. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_rdf_sub_epoch_direction.py +0 -0
  598. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reading_coords.py +0 -0
  599. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reading_glb.py +0 -0
  600. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reading_migration.py +0 -0
  601. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reading_place.py +0 -0
  602. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reading_rdf.py +0 -0
  603. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_recompute_warnings.py +0 -0
  604. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_registration.py +0 -0
  605. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_release.py +0 -0
  606. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reproject.py +0 -0
  607. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_resource_file_node.py +0 -0
  608. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_resource_files_implicit.py +0 -0
  609. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_resource_layer.py +0 -0
  610. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_resource_representations.py +0 -0
  611. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_resource_revision.py +0 -0
  612. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_resource_tier.py +0 -0
  613. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_reverse_edges.py +0 -0
  614. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_rm_container_node_group.py +0 -0
  615. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_room_import.py +0 -0
  616. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_room_import_access.py +0 -0
  617. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_room_import_inventory.py +0 -0
  618. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_room_import_trust.py +0 -0
  619. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_s3_backend.py +0 -0
  620. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_semantic_purity.py +0 -0
  621. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_series_vsf.py +0 -0
  622. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_shelf.py +0 -0
  623. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_shelf_facets.py +0 -0
  624. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_shelf_hatting.py +0 -0
  625. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_shelf_role_uri_table.py +0 -0
  626. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_shipped_mappings.py +0 -0
  627. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_source_list_mapping.py +0 -0
  628. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_source_text.py +0 -0
  629. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_spatiotemporal_entities.py +0 -0
  630. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_special_find_definitions.py +0 -0
  631. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_stable_study_code.py +0 -0
  632. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_stamp.py +0 -0
  633. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_stamp_hints.py +0 -0
  634. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_stamp_title_description.py +0 -0
  635. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_storage_rows.py +0 -0
  636. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_store_backed_geometry.py +0 -0
  637. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_stratiminer_api.py +0 -0
  638. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_study_metadata.py +0 -0
  639. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_threed_instances.py +0 -0
  640. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_threed_style.py +0 -0
  641. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_tileset_fit.py +0 -0
  642. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_tileset_resource.py +0 -0
  643. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_timbra_master.py +0 -0
  644. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_transform_form.py +0 -0
  645. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_ttl_roundtrip.py +0 -0
  646. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_unit_definition.py +0 -0
  647. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_use_profiles.py +0 -0
  648. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_valore_proprieta_doppio.py +0 -0
  649. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_verifica_provenance.py +0 -0
  650. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_version_for.py +0 -0
  651. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_visual_assets.py +0 -0
  652. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_wheel_drift.py +0 -0
  653. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_xlsx_containment_and_unknown_bounds.py +0 -0
  654. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_xlsx_importer_graph_init.py +0 -0
  655. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/tests/test_xlsx_source_column.py +0 -0
  656. {s3dgraphy-1.6.0.dev103 → s3dgraphy-1.6.0.dev104}/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.dev103
3
+ Version: 1.6.0.dev104
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.dev103"
7
+ version = "1.6.0.dev104"
8
8
  description = "3D Stratigraphic Graph Management Library for archaeological and heritage applications"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -1,4 +1,4 @@
1
- __version__ = "1.6.0.dev103"
1
+ __version__ = "1.6.0.dev104"
2
2
  __datamodel_version__ = "1.5.5" # s3Dgraphy connections datamodel version
3
3
 
4
4
  # s3Dgraphy/__init__.py
@@ -156,6 +156,12 @@ class PyArchInitImporter(BaseImporter):
156
156
  self._footprints = footprints
157
157
  self._layer_url = layer_url
158
158
  self.footprint_report: Optional[Dict[str, Any]] = None
159
+ # 15 Nov 2026 · every row CLASSIFIED (unit_numbers): a unit, not a
160
+ # unit (with the class its code names), or ambiguous — counted here
161
+ # and said in the warnings. Nothing is written on the node: the
162
+ # unit's number is read from its NAME (E.D., 12 Nov 2026).
163
+ from .unit_numbers import new_report
164
+ self.numbering_report: Dict[str, Any] = new_report()
159
165
 
160
166
  self.validate_mapping()
161
167
 
@@ -303,6 +309,7 @@ class PyArchInitImporter(BaseImporter):
303
309
  self._process_pyarchinit_properties(row_dict, existing_node)
304
310
  self._process_memberships(row_dict, existing_node)
305
311
  self._index_unit(row_dict, existing_node)
312
+ self._number_unit(row_dict, existing_node)
306
313
  return existing_node
307
314
 
308
315
  elif is_enriching_existing:
@@ -381,6 +388,7 @@ class PyArchInitImporter(BaseImporter):
381
388
  self._process_pyarchinit_properties(row_dict, new_node)
382
389
  self._process_memberships(row_dict, new_node)
383
390
  self._index_unit(row_dict, new_node)
391
+ self._number_unit(row_dict, new_node)
384
392
  return new_node
385
393
 
386
394
  except KeyError as e:
@@ -390,6 +398,30 @@ class PyArchInitImporter(BaseImporter):
390
398
  #: the unita_tipo that make their own class (the two voids, POL6)
391
399
  _VOID_TYPES = ("USN", "USNt")
392
400
 
401
+ def _number_unit(self, row_dict: Dict[str, Any], node: Node) -> None:
402
+ """The row CLASSIFIED (15 Nov 2026, unit_numbers): ``unita_tipo`` and
403
+ ``us`` say whether it is a unit (the mapping's node_type when the row
404
+ has no code), not a unit, or cannot be told. Nothing is written on the
405
+ node — the number is in the NAME the template made (``1.US2``), the
406
+ identifier (E.D., 12 Nov 2026: no ``data.us``). What is not a unit, or
407
+ ambiguous, is said in ``numbering_report`` and in the warnings."""
408
+ from .unit_numbers import number_of, record
409
+ id_column = self._get_id_column()
410
+ code = (str(row_dict.get('unita_tipo') or '').strip()
411
+ or self.mapping['column_mappings'][id_column].get('node_type', 'US'))
412
+ verdict = number_of(code, row_dict.get(id_column))
413
+ label = str(getattr(node, "name", "") or "")
414
+ record(self.numbering_report, label, verdict)
415
+ if verdict["status"] == "numbered":
416
+ return
417
+ if verdict["status"] == "not_unit":
418
+ self.warnings.append(
419
+ f"'{label}': unita_tipo '{verdict['code']}' names "
420
+ f"{verdict['class']} (not a unit): no unit number "
421
+ f"(the node is still a {type(node).__name__})")
422
+ else:
423
+ self.warnings.append(f"'{label}': no unit number, {verdict['reason']}")
424
+
393
425
  def _index_unit(self, row_dict: Dict[str, Any], node: Node) -> None:
394
426
  key = tuple(str(row_dict.get(c) if row_dict.get(c) is not None else "").strip()
395
427
  for c in ("sito", "area", "us"))
@@ -1068,6 +1100,11 @@ class PyArchInitImporter(BaseImporter):
1068
1100
  self.warnings.append(f"Skipped rows (not in graph): {skipped_rows}")
1069
1101
  if error_rows > 0:
1070
1102
  self.warnings.append(f"Errors: {error_rows}")
1103
+ nr = self.numbering_report
1104
+ self.warnings.append(
1105
+ f"Unit numbers: {nr['numbered']} numbered, "
1106
+ f"{len(nr['not_unit'])} rows that are not units, "
1107
+ f"{len(nr['ambiguous'])} ambiguous")
1071
1108
 
1072
1109
  self._read_footprints(conn)
1073
1110
  self._finish_relative_chronology("imported")
@@ -0,0 +1,144 @@
1
+ """THE NUMBER OF A UNIT is read from its NAME (15 Nov 2026; E.D., 12 Nov 2026).
2
+
3
+ In EM the identifier of a unit is its ``name`` (``P1_is_identified_by``). The
4
+ number is NOT copied into another key: no ``data.us``, in the data or in the
5
+ datamodel. The name the pyArchInit importer builds from its
6
+ ``node_name_template`` (``{area}.{settore}.{unita_tipo}{us}`` → ``1.1.US1``,
7
+ ``1.US2``, ``1.USM12``, ``1.SF300``) already holds code and number, and the
8
+ area in front makes it unique (in pyArchInit the key is site + area + number).
9
+ No room is migrated: order and the «no number» sign are display only.
10
+
11
+ ONE RULE, used by the importer to CLASSIFY a row (from its columns: the number
12
+ is ``us``, the code ``unita_tipo``) and by any reader that has only the name
13
+ (:func:`number_of_name`, a pure reader):
14
+
15
+ * the code names a stratigraphic unit of the datamodel (its subtypes, the voids,
16
+ and the genre codes USM/USR/USS and their localised forms) and the number is
17
+ a unit number → ``numbered``;
18
+ * the code names something that is not a unit (pyArchInit's paradata codes:
19
+ DOC, Combinar, Extractor, property; CON for continuity) → ``not_unit``, with
20
+ the class it names: the unit is not invented;
21
+ * anything else (an unknown code, no code, a number that is not one) →
22
+ ``ambiguous``, with the reason. Not guessed: said.
23
+
24
+ The importer writes nothing on the node from this: it counts the verdicts in
25
+ its ``numbering_report`` and says the non-units and the ambiguous rows in its
26
+ warnings.
27
+ """
28
+
29
+ from __future__ import annotations
30
+
31
+ import json
32
+ import re
33
+ from functools import lru_cache
34
+ from pathlib import Path
35
+ from typing import Any, Dict, Optional
36
+
37
+ #: pyArchInit's codes for what is NOT a unit: the paradata rows of us_table
38
+ #: (the same table as sync/yed_import_pipeline._CLASSIFIED_KIND_TO_UNITA_TIPO:
39
+ #: DOC, Combinar, Extractor, property) and CON, the continuity row of the demo
40
+ #: database. Code → the class it names.
41
+ NOT_UNIT_CODES: Dict[str, str] = {
42
+ "DOC": "DocumentNode",
43
+ "Combinar": "CombinerNode",
44
+ "Extractor": "ExtractorNode",
45
+ "property": "PropertyNode",
46
+ "CON": "ContinuityNode",
47
+ }
48
+
49
+ #: What a unit number is (the rule StratiField's tools.unit_number applies):
50
+ #: it begins with a digit, no spaces — «3018», «12a», «1001.2», «3014-bis».
51
+ UNIT_NUMBER = re.compile(r"\d+(?:[./-]?[0-9A-Za-z]+)*")
52
+
53
+ #: A name's LAST dot-separated component as code + number: ``US1``, ``USM-12``,
54
+ #: ``SF 300``, ``USVs102``. What stands before it (``1.``, ``1.1.``) is the
55
+ #: location the template put in front (area, settore).
56
+ _CODE_NUMBER = re.compile(r"^(?P<code>[^\W\d_]+)[\s_-]*(?P<number>\d[0-9A-Za-z]*)$",
57
+ re.UNICODE)
58
+
59
+
60
+ def _datamodel_path() -> Path:
61
+ return (Path(__file__).resolve().parent.parent / "JSON_config"
62
+ / "s3Dgraphy_node_datamodel.json")
63
+
64
+
65
+ @lru_cache(maxsize=1)
66
+ def unit_codes() -> Dict[str, str]:
67
+ """Code → class, for every code that names a stratigraphic UNIT: the
68
+ concrete subtypes of StratigraphicNode in the datamodel (not ContinuityNode
69
+ nor StratigraphicEventNode, which are not units), and the genre codes
70
+ (USM, USR, USS, WSU…), which are a US with a kind."""
71
+ from ..nodes.stratigraphic_node import KIND_OF_CODE
72
+
73
+ data = json.loads(_datamodel_path().read_text(encoding="utf-8"))
74
+ strat = (((data.get("stratigraphic_nodes") or {}).get("StratigraphicNode")
75
+ or {}).get("subtypes") or {})
76
+ out = {key: str(v.get("class") or "") for key, v in strat.items()
77
+ if isinstance(v, dict) and v.get("class")
78
+ and not str(v["class"]).endswith("Node")}
79
+ for code in KIND_OF_CODE:
80
+ out.setdefault(code, "StratigraphicUnit")
81
+ return out
82
+
83
+
84
+ def _known(code: str, table: Dict[str, str]) -> Optional[str]:
85
+ """The code as the table spells it: exact, else the ONE that differs only
86
+ by case (``usm`` → ``USM``); None when none or more than one."""
87
+ if code in table:
88
+ return code
89
+ low = [k for k in table if k.lower() == code.lower()]
90
+ return low[0] if len(low) == 1 else None
91
+
92
+
93
+ def number_of(code: Any, number: Any) -> Dict[str, Any]:
94
+ """The verdict for a code and a number (a pyArchInit row's ``unita_tipo``
95
+ and ``us``): ``{"status": "numbered", "number", "code"}``,
96
+ ``{"status": "not_unit", "code", "class"}`` or
97
+ ``{"status": "ambiguous", "reason"}``."""
98
+ code = str(code if code is not None else "").strip()
99
+ number = str(number if number is not None else "").strip()
100
+ if not code:
101
+ return {"status": "ambiguous", "reason": "no unit code"}
102
+ other = _known(code, NOT_UNIT_CODES)
103
+ if other is not None:
104
+ return {"status": "not_unit", "code": other,
105
+ "class": NOT_UNIT_CODES[other]}
106
+ unit = _known(code, unit_codes())
107
+ if unit is None:
108
+ return {"status": "ambiguous",
109
+ "reason": f"'{code}' is not a code of the datamodel"}
110
+ if not UNIT_NUMBER.fullmatch(number):
111
+ return {"status": "ambiguous",
112
+ "reason": f"'{number}' is not a unit number"}
113
+ return {"status": "numbered", "number": number, "code": unit}
114
+
115
+
116
+ def number_of_name(name: Any) -> Dict[str, Any]:
117
+ """The verdict for a NAME alone (``1.1.US1``, ``1.USM12``, ``1.SF300``):
118
+ the last dot-separated component read as code + number, the components
119
+ before it left as the location they are. Same answers as :func:`number_of`,
120
+ with ``"ambiguous"`` for a name that does not end in a code and a number."""
121
+ text = str(name if name is not None else "").strip()
122
+ last = text.rsplit(".", 1)[-1].strip()
123
+ m = _CODE_NUMBER.match(last)
124
+ if not m:
125
+ return {"status": "ambiguous",
126
+ "reason": f"'{text}' does not end in a code and a number"}
127
+ return number_of(m.group("code"), m.group("number"))
128
+
129
+
130
+ def new_report() -> Dict[str, Any]:
131
+ """The numbering part of an import report."""
132
+ return {"numbered": 0, "not_unit": [], "ambiguous": []}
133
+
134
+
135
+ def record(report: Dict[str, Any], label: str, verdict: Dict[str, Any]) -> None:
136
+ status = verdict.get("status")
137
+ if status == "numbered":
138
+ report["numbered"] += 1
139
+ elif status == "not_unit":
140
+ report["not_unit"].append({"name": label, "code": verdict["code"],
141
+ "class": verdict["class"]})
142
+ else:
143
+ report["ambiguous"].append({"name": label,
144
+ "reason": verdict.get("reason", "")})
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: s3dgraphy
3
- Version: 1.6.0.dev103
3
+ Version: 1.6.0.dev104
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>
@@ -283,6 +283,7 @@ src/s3dgraphy/importer/rdf_importer.py
283
283
  src/s3dgraphy/importer/sheet_header.py
284
284
  src/s3dgraphy/importer/source_text.py
285
285
  src/s3dgraphy/importer/unified_xlsx_importer.py
286
+ src/s3dgraphy/importer/unit_numbers.py
286
287
  src/s3dgraphy/importer/xlsx_importer.py
287
288
  src/s3dgraphy/importer/xml_importer.py
288
289
  src/s3dgraphy/mappings/__init__.py
@@ -640,6 +641,7 @@ tests/test_timbra_master.py
640
641
  tests/test_transform_form.py
641
642
  tests/test_ttl_roundtrip.py
642
643
  tests/test_unit_definition.py
644
+ tests/test_unit_numbers.py
643
645
  tests/test_use_profiles.py
644
646
  tests/test_valore_proprieta_doppio.py
645
647
  tests/test_verifica_provenance.py
@@ -0,0 +1,139 @@
1
+ """The number of a unit is read from its name (MICRO-NUMERI-UNITA, then
2
+ MICRO-NUMERO-DAL-NOME, 15 Nov 2026: E.D. 12 Nov — no data.us, nothing migrated).
3
+
4
+ The cases are the StratiField test room's, measured: the pyArchInit demo
5
+ database (`Scavo archeologico`) imported with the 1.6 name template gave
6
+ `1.1.US1`, `1.US2`, `1.USM12`, `1.SF300`, `1.USVs102`, `1.Combinar900`…
7
+ """
8
+ from __future__ import annotations
9
+
10
+ import json
11
+ import sqlite3
12
+ import sys
13
+ from pathlib import Path
14
+
15
+ import pytest
16
+
17
+ _REPO_ROOT = Path(__file__).resolve().parents[1]
18
+ sys.path.insert(0, str(_REPO_ROOT / "src"))
19
+
20
+ from s3dgraphy.importer.unit_numbers import ( # noqa: E402
21
+ number_of, number_of_name)
22
+ import s3dgraphy.importer.unit_numbers as unit_numbers # noqa: E402
23
+
24
+
25
+ @pytest.mark.parametrize("name,number,code", [
26
+ ("1.1.US1", "1", "US"), # area 1, settore 1
27
+ ("1.US2", "2", "US"),
28
+ ("1.US10", "10", "US"),
29
+ ("1.USM12", "12", "USM"), # its genre stays in the code
30
+ ("1.USN7", "7", "USN"),
31
+ ("1.SF300", "300", "SF"), # a special find
32
+ ("1.USVs102", "102", "USVs"),
33
+ ("1.USVn104", "104", "USVn"),
34
+ ("US2", "2", "US"), # a yEd label, no location
35
+ ("A.USM-10", "10", "USM"),
36
+ ])
37
+ def test_a_name_that_says_its_number_gives_it(name, number, code):
38
+ v = number_of_name(name)
39
+ assert v == {"status": "numbered", "number": number, "code": code}
40
+
41
+
42
+ @pytest.mark.parametrize("name,klass", [
43
+ ("1.Combinar900", "CombinerNode"),
44
+ ("1.DOC4001", "DocumentNode"),
45
+ ("1.Extractor400", "ExtractorNode"),
46
+ ("1.property800", "PropertyNode"),
47
+ ("1.CON500", "ContinuityNode"),
48
+ ])
49
+ def test_what_is_not_a_unit_gets_no_number(name, klass):
50
+ v = number_of_name(name)
51
+ assert v["status"] == "not_unit" and v["class"] == klass
52
+ assert "number" not in v
53
+
54
+
55
+ @pytest.mark.parametrize("name", ["1.Pippo12", "D.01.03", "Strato di crollo", "", "1."])
56
+ def test_an_ambiguous_name_is_said_not_guessed(name):
57
+ v = number_of_name(name)
58
+ assert v["status"] == "ambiguous" and v["reason"]
59
+
60
+
61
+ def test_the_row_columns_decide_not_the_name():
62
+ assert number_of("USM", "12") == {"status": "numbered", "number": "12", "code": "USM"}
63
+ assert number_of("usm", 12)["code"] == "USM"
64
+ assert number_of("US", "3014-bis")["number"] == "3014-bis"
65
+ assert number_of("US", "")["status"] == "ambiguous"
66
+ assert number_of("", "3")["status"] == "ambiguous"
67
+
68
+
69
+ def _fixture(tmp_path):
70
+ db = tmp_path / "pyarchinit.sqlite"
71
+ conn = sqlite3.connect(str(db))
72
+ conn.execute("CREATE TABLE us_table (id_us INTEGER PRIMARY KEY, us TEXT, "
73
+ "sito TEXT, area TEXT, settore TEXT, unita_tipo TEXT, "
74
+ "d_stratigrafica TEXT)")
75
+ rows = [("1", "1", "1", "US", "Strato di macerie"),
76
+ ("2", "1", "", "US", "Strato di terra"),
77
+ ("12", "1", "", "USM", "Struttura in muratura"),
78
+ ("7", "1", "", "USN", "Taglio"),
79
+ ("300", "1", "", "SF", ""),
80
+ ("102", "1", "", "USVs", ""),
81
+ ("900", "1", "", "Combinar", ""),
82
+ ("4001", "1", "", "DOC", "Documento"),
83
+ ("55", "1", "", "Pippo", "")]
84
+ conn.executemany("INSERT INTO us_table (us, sito, area, settore, unita_tipo, "
85
+ "d_stratigrafica) VALUES (?, 'Scavo', ?, ?, ?, ?)", rows)
86
+ conn.commit()
87
+ conn.close()
88
+ mapping = {
89
+ "table_settings": {"table_name": "us_table", "format_type": "sqlite",
90
+ "node_name_template": "{area}.{settore}.{unita_tipo}{us}"},
91
+ "column_mappings": {
92
+ "us": {"node_type": "US", "is_id": True},
93
+ "sito": {"is_filter": True},
94
+ "unita_tipo": {"is_filter": True},
95
+ "d_stratigrafica": {"is_description": True},
96
+ },
97
+ }
98
+ mdir = tmp_path / "mappings"
99
+ mdir.mkdir()
100
+ (mdir / "numeri_test.json").write_text(json.dumps(mapping), encoding="utf-8")
101
+ from s3dgraphy.mappings.registry import mapping_registry
102
+ mapping_registry.add_mapping_directory("pyarchinit", str(mdir), priority="high")
103
+ return str(db), str(mdir)
104
+
105
+
106
+ def test_the_pyarchinit_importer_classifies_and_writes_no_number(tmp_path):
107
+ from s3dgraphy.importer.pyarchinit_importer import PyArchInitImporter
108
+ from s3dgraphy.mappings.registry import mapping_registry
109
+ db, mdir = _fixture(tmp_path)
110
+ try:
111
+ imp = PyArchInitImporter(db, mapping_name="numeri_test",
112
+ filters={"sito": "Scavo"}, footprints=False)
113
+ graph = imp.parse()
114
+ finally:
115
+ mapping_registry._mapping_directories.get("pyarchinit", []).remove(mdir)
116
+ by_name = {n.name: n for n in graph.nodes if hasattr(n, "attributes")}
117
+ expect = {"1.1.US1": ("1", "US"), "1.US2": ("2", "US"),
118
+ "1.USM12": ("12", "USM"), "1.USN7": ("7", "USN"),
119
+ "1.SF300": ("300", "SF"), "1.USVs102": ("102", "USVs")}
120
+ for name, (number, code) in expect.items():
121
+ node = by_name[name] # the name as it came
122
+ assert "us" not in node.attributes # E.D. 12 Nov: no data.us
123
+ assert "unita_tipo" not in node.attributes
124
+ v = number_of_name(node.name) # the number IS the name's
125
+ assert (v["number"], v["code"]) == (number, code)
126
+ for name in ("1.Combinar900", "1.DOC4001", "1.Pippo55"):
127
+ assert "us" not in by_name[name].attributes
128
+ rep = imp.numbering_report
129
+ assert rep["numbered"] == 6
130
+ assert [x["name"] for x in rep["not_unit"]] == ["1.Combinar900", "1.DOC4001"]
131
+ assert [x["name"] for x in rep["ambiguous"]] == ["1.Pippo55"]
132
+ assert any(w.startswith("Unit numbers: 6 numbered") for w in imp.warnings)
133
+ assert any("'1.Combinar900'" in w and "CombinerNode" in w for w in imp.warnings)
134
+
135
+
136
+ def test_no_writer_and_no_migration():
137
+ """The number is not copied into another key, and no room is migrated."""
138
+ for gone in ("write_number", "plan_for_document", "NUMBER_KEY", "CODE_KEY"):
139
+ assert not hasattr(unit_numbers, gone)