esmf-aspect-model-loader 2.2.0__tar.gz → 2.3.0__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.
- esmf_aspect_model_loader-2.3.0/.gitignore +73 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/PKG-INFO +60 -37
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/README.md +48 -20
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/adaptive_graph.py +131 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/README.md +69 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/__init__.py +9 -9
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/characteristic.py +10 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/structured_value.py +15 -7
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/trait.py +15 -7
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints/encoding_constraint.py +31 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints/fixed_point_constraint.py +41 -0
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/language_constraint.py +1 -1
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/length_constraint.py +1 -1
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/locale_constraint.py +9 -4
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/range_constraint.py +1 -1
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/regular_expression_constraint.py +10 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/either.py +13 -4
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/loader/instantiator/constants.py → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/namespace.py +6 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/property.py +67 -18
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints/encoding_constraint.py → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/value.py +5 -7
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/constants.py +17 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/README.md +50 -77
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/__init__.py +2 -1
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/impl/base_impl.py +284 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/collection/default_collection.py +19 -5
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_characteristic.py +18 -8
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_enumeration.py +20 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_state.py +20 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_structured_value.py +27 -6
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_trait.py +27 -13
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/quantifiable/default_quantifiable.py +20 -5
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_constraint.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_encoding_constraint.py +21 -4
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/impl/constraints/default_fixed_point_constraint.py +64 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_language_constraint.py +21 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_length_constraint.py +25 -6
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_locale_constraint.py +21 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_range_constraint.py +39 -10
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/default_regular_expression_constraint.py +21 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/data_types/default_abstract_entity.py +2 -2
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/data_types/default_complex_type.py +48 -18
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/default_aspect.py +37 -8
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/default_either.py +25 -4
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/impl/default_event.py +51 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/impl/default_namespace.py +17 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/default_operation.py +28 -8
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/impl/default_property.py +325 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/default_unit.py +8 -3
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/impl/default_event.py → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/impl/default_value.py +10 -11
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/README.md +7 -6
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/loader/default_element_cache.py +230 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/abstract_property_instantiator.py +34 -31
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/characteristic_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/code_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/collection_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/complex_type_instantiator.py +27 -17
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/duration_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/encoding_constraint_instantiator.py +1 -1
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/loader/instantiator/enumeration_instantiator.py +179 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/fixed_point_constraint_instantiator.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/language_constraint_instantiator.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/length_constraint_instantiator.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/list_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/locale_constraint_instantiator.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/measurement_instantiator.py +0 -4
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/loader/instantiator/namespace_instantiator.py +23 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/loader/instantiator/property_instantiator.py +124 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/quantifiable_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/range_constraint_instantiator.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/regular_expression_constraint_instantiator.py +1 -1
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/set_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/single_entity_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/sorted_set_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/state_instantiator.py +33 -14
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/structured_value_instantiator.py +25 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/time_series_instantiator.py +0 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/trait_instantiator.py +21 -3
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/loader/instantiator/value_instantiator.py +27 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator_base.py +60 -54
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/meta_model_base_attributes.py +8 -9
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/loader/model_element_factory.py +291 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/samm_graph.py +100 -101
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/README.md +4 -4
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/base.py +5 -45
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/data_string.py +2 -3
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/local_file.py +9 -11
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.2.0/characteristic-definitions.ttl +256 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.2.0/characteristic-instances.ttl +66 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.2.0/characteristic-shapes.ttl +829 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.2.0/characteristic-validations.js +179 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.2.0/FileResource.ttl +31 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.2.0/Point3d.ttl +31 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.2.0/Quantity.ttl +23 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.2.0/TimeSeriesEntity.ttl +28 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.2.0/aspect-meta-model-definitions.ttl +251 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.2.0/aspect-meta-model-shapes.ttl +1039 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.2.0/prefix-declarations.ttl +67 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.2.0/type-conversions.ttl +59 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/unit/2.2.0/units.ttl +14828 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_cli/__init__.py +1 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_cli/base.py +550 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_cli/constants.py +59 -0
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/samm_cli/download.py +96 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_meta_model.py +3 -4
- esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/utils.py +39 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/constants.py +4 -0
- esmf_aspect_model_loader-2.3.0/pyproject.toml +79 -0
- esmf_aspect_model_loader-2.3.0/scripts/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/scripts/constants.py +27 -0
- esmf_aspect_model_loader-2.3.0/scripts/download_samm_cli.py +11 -0
- esmf_aspect_model_loader-2.3.0/scripts/download_test_models.py +81 -0
- esmf_aspect_model_loader-2.3.0/scripts/samm/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/scripts/samm/download_samm_branch.py +68 -0
- esmf_aspect_model_loader-2.3.0/scripts/samm/download_samm_release.py +62 -0
- esmf_aspect_model_loader-2.3.0/scripts/samm/github_file.py +29 -0
- esmf_aspect_model_loader-2.3.0/scripts/samm/github_folder.py +60 -0
- esmf_aspect_model_loader-2.3.0/tests/__init__.py +10 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/java_models/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/java_models/test_loading_aspects.py +177 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithBlankNode.ttl +29 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithCode.ttl +29 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithCollection.ttl +37 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithCollectionWithElementCharacteristic.ttl +37 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithDuration.ttl +30 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithList.ttl +37 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithMeasurement.ttl +30 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithQuantifiableAndUnit.ttl +30 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithSet.ttl +37 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithSimpleEnum.ttl +33 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithSortedSet.ttl +37 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithState.ttl +34 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.characteristics/2.2.0/AspectWithStructuredValue.ttl +47 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithConstrainedCollection.ttl +35 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithEncodingConstraint.ttl +41 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithFixedPoint.ttl +41 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithLanguageConstraint.ttl +41 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithLengthConstraint.ttl +42 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithLocaleConstraint.ttl +41 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithMultipleConstraints.ttl +54 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithMultipleOneValueConstraints.ttl +52 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithRangeConstraint.ttl +46 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithRangeConstraintInclBoundDefinitionProperties.ttl +48 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.constraints/2.2.0/AspectWithRegularExpressionConstraint.ttl +41 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithAbstractEntity.ttl +57 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithAbstractEntityMultipleAttributes.ttl +47 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithAbstractPropertyBlankNode.ttl +38 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithAbstractPropertyMultipleAbstractEntities.ttl +51 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithAbstractPropertyMultipleAttributes.ttl +40 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithEntity.ttl +58 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithEntityEnum.ttl +76 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithEntityExtendingFileResource.ttl +32 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithFileResourceEntity.ttl +25 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithMultipleAbstractEntitiesMultipleAttributes.ttl +59 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithMultipleEntitiesSameExtend.ttl +42 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithMultiplePropertiesSameExtend.ttl +51 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithPoint3d.ttl +37 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithTimeSeries.ttl +44 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithTimeSeriesWithComplexType.ttl +58 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.entity/2.2.0/AspectWithUnusedExtendingEntity.ttl +48 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.event/2.2.0/aspect_with_event.ttl +30 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.event/2.2.0/aspect_with_event_with_parameters.ttl +35 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.event/2.2.0/aspect_with_multiple_event.ttl +43 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/Aspect.ttl +22 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithDuplicatePropertyWithDifferentPayloadNames.ttl +29 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithDuplicatePropertyWithPayloadName.ttl +26 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithEither.ttl +30 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithExtendingPropertyWithPayloadName.ttl +34 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithMultipleAttributes.ttl +26 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithOperation.ttl +42 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithOperationNoOutput.ttl +33 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithOptionalPropertyWithPayloadName.ttl +34 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithProperties.ttl +31 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithProperty.ttl +31 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithPropertyMultipleReferences.ttl +33 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithPropertyWithAllBaseAttributes.ttl +31 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/AspectWithPropertyWithPayloadName.ttl +25 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/Movement.ttl +88 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/ProductType_shared.ttl +45 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general/2.2.0/ProductTypes.ttl +35 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general_with_invalid_versions/2.2.0/AspectWithReferences.ttl +19 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general_with_invalid_versions/2.2.0/Part_shared.ttl +26 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general_with_references/2.2.0/AspectWithReferences.ttl +19 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.general_with_references/2.2.0/Part_shared.ttl +26 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.types/2.1.0/type_shared.ttl +15 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/resources/org.eclipse.esmf.test.types/2.2.0/type_shared.ttl +15 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_aspect_functionality.py +148 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_characteristics.py +266 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_constraints.py +271 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_entities.py +591 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_event.py +77 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_general.py +393 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_resolve_elements_referencies.py +53 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_subclasses.py +268 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_upgrade_aspects.py +134 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/aspect_model_loader/test_vocabulary.py +224 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/resources/org.eclipse.esmf.test.general/2.2.0/SampleAspect.ttl +50 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/test_adaptive_graph.py +71 -0
- esmf_aspect_model_loader-2.3.0/tests/integration/test_cli_functions.py +299 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/data_types/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/data_types/test_abstract_entity.py +53 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/data_types/test_complex_type.py +56 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/data_types/test_data_type.py +39 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/data_types/test_scalar.py +33 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/test_aspect.py +59 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/test_base.py +50 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/test_property.py +162 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/base/test_property_func.py +71 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/collection/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/collection/test_collection.py +63 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/quantifiable/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/quantifiable/test_quantifiable.py +45 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/test_characteristic.py +31 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/test_enumeration.py +30 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/test_state.py +28 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/test_structured_value.py +47 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/characteristics/test_trait.py +46 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_encoding_constraint.py +28 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_fixed_point_constraint.py +42 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_language_constraint.py +27 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_length_constraint.py +36 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_locale_constraint.py +27 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_range_constraint.py +66 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/constraints/test_regular_expression_constraint.py +35 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/data_types/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/data_types/test_abstract_entity.py +29 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/data_types/test_complex_type.py +173 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/data_types/test_datatype.py +35 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/data_types/test_scalar.py +35 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_aspect.py +108 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_base_impl.py +416 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_either.py +42 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_event.py +28 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_operation.py +52 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_property.py +371 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_unit.py +120 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/impl/test_value.py +18 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_abstract_entity_instantiator.py +50 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_abstract_property_instantiator.py +122 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_aspect_instantiator.py +59 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_characteristic_instantiator.py +23 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_code_instantiator.py +23 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_complex_type_instantiator.py +125 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_datatype_instantiator.py +31 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_duration_instantiator.py +30 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_either_instantiator.py +37 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_encoding_constraint_instantiator.py +38 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_entity_instantiator.py +43 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_enumeration_instantiator.py +280 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_event_instantiator.py +27 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_fixed_point_constraint_instantiator.py +46 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_language_constraint_instantiator.py +39 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_length_constraint_instantiator.py +43 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_list_instantiator.py +30 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_locale_constraint_instantiator.py +36 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_measurement_instantiator.py +30 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_operation_instantiator.py +34 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_property_instantiator.py +315 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_quantifiable_instantiator.py +30 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_range_constraint_instantiator.py +178 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_regular_expression_constraint_instantiator.py +40 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_scalar_instantiator.py +31 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_set_instantiator.py +30 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_single_entity_instantiator.py +23 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_sorted_set_instantiator.py +34 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_state_instantiator.py +182 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_structured_value_instantiator.py +88 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_time_series_instantiator.py +34 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_trait_instantiator.py +92 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/instantiators/test_unit_instantiator.py +87 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/test_default_element_cache.py +329 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/test_instantiator_base.py +280 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/test_meta_model_base_attributes.py +136 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/test_model_element_factory.py +431 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/loader/test_samm_graph.py +456 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/resolver/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/resolver/test_base.py +36 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/resolver/test_data_string.py +26 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/resolver/test_handler.py +87 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/resolver/test_local_file.py +170 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/resolver/test_meta_model.py +50 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/samm_cli/__init__.py +0 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/samm_cli/test_base.py +689 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/samm_cli/test_download.py +219 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/test_adaptive_graph.py +205 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/test_samm_meta_model.py +145 -0
- esmf_aspect_model_loader-2.3.0/tests/unit/test_utils.py +90 -0
- esmf_aspect_model_loader-2.3.0/tests_invalid/__init__.py +10 -0
- esmf_aspect_model_loader-2.3.0/tests_invalid/resources/trait_missing_base_characteristic.ttl +29 -0
- esmf_aspect_model_loader-2.3.0/tests_invalid/resources/trait_missing_constraint.ttl +26 -0
- esmf_aspect_model_loader-2.3.0/tests_invalid/test_constraints.py +34 -0
- esmf_aspect_model_loader-2.3.0/tox.ini +49 -0
- esmf_aspect_model_loader-2.3.0/uv.lock +939 -0
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/README.md +0 -48
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints/fixed_point_constraint.py +0 -32
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/impl/base_impl.py +0 -145
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/impl/constraints/default_fixed_point_constraint.py +0 -40
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/impl/default_property.py +0 -251
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/loader/default_element_cache.py +0 -59
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/loader/instantiator/enumeration_instantiator.py +0 -100
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/loader/instantiator/property_instantiator.py +0 -101
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/loader/model_element_factory.py +0 -177
- esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/samm_cli_functions.py +0 -155
- esmf_aspect_model_loader-2.2.0/pyproject.toml +0 -58
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/aspect.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/base.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/bound_definition.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/cache_strategy.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/code.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/collection/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/collection/collection.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/collection/list.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/collection/set.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/collection/sorted_set.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/collection/time_series.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/enumeration.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/quantifiable/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/quantifiable/duration.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/quantifiable/measurement.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/quantifiable/quantifiable.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/single_entity.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/characteristics/state.py +0 -0
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0/esmf_aspect_meta_model_python/base/contraints → esmf_aspect_model_loader-2.3.0/esmf_aspect_meta_model_python/base/constraints}/constraint.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/data_types/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/data_types/abstract_entity.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/data_types/complex_type.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/data_types/data_type.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/data_types/entity.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/data_types/scalar.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/event.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/has_properties.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/has_urn.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/is_described.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/operation.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/property_func.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/quantity_kind.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/structure_element.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/base/unit.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/collection/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/collection/default_list.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/collection/default_set.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/collection/default_sorted_set.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/collection/default_time_series.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_code.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/default_single_entity.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/quantifiable/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/quantifiable/default_duration.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/characteristics/quantifiable/default_measurement.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/constraints/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/data_types/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/data_types/default_data_type.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/data_types/default_entity.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/data_types/default_scalar.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/impl/default_quantity_kind.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/abstract_entity_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/aspect_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/datatype_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/either_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/entity_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/event_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/operation_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/quantity_kind_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/scalar_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/instantiator/unit_instantiator.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/loader/rdf_helper.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/handler.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/resolver/meta_model.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/1.0.0/characteristic-definitions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/1.0.0/characteristic-instances.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/1.0.0/characteristic-shapes.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/1.0.0/characteristic-validations.js +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.0.0/characteristic-definitions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.0.0/characteristic-instances.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.0.0/characteristic-shapes.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.0.0/characteristic-validations.js +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.1.0/characteristic-definitions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.1.0/characteristic-instances.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.1.0/characteristic-shapes.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/characteristic/2.1.0/characteristic-validations.js +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/1.0.0/FileResource.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/1.0.0/Point3d.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/1.0.0/TimeSeriesEntity.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.0.0/FileResource.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.0.0/Point3d.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.0.0/TimeSeriesEntity.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.1.0/FileResource.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.1.0/Point3d.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/entity/2.1.0/TimeSeriesEntity.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/1.0.0/aspect-meta-model-definitions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/1.0.0/aspect-meta-model-shapes.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/1.0.0/prefix-declarations.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/1.0.0/type-conversions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.0.0/aspect-meta-model-definitions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.0.0/aspect-meta-model-shapes.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.0.0/prefix-declarations.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.0.0/type-conversions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.1.0/aspect-meta-model-definitions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.1.0/aspect-meta-model-shapes.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.1.0/prefix-declarations.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/meta-model/2.1.0/type-conversions.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/scripts/language-registry.js +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/unit/1.0.0/units.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/unit/2.0.0/units.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/unit/2.1.0/units.ttl +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/__init__.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/namespace.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/samm.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/sammc.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/samme.py +0 -0
- {esmf_aspect_model_loader-2.2.0 → esmf_aspect_model_loader-2.3.0}/esmf_aspect_meta_model_python/vocabulary/unit.py +0 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# Distribution / packaging
|
|
7
|
+
.Python
|
|
8
|
+
**/dist
|
|
9
|
+
build/
|
|
10
|
+
develop-eggs/
|
|
11
|
+
dist/
|
|
12
|
+
downloads/
|
|
13
|
+
eggs/
|
|
14
|
+
.eggs/
|
|
15
|
+
lib/
|
|
16
|
+
lib64/
|
|
17
|
+
parts/
|
|
18
|
+
sdist/
|
|
19
|
+
var/
|
|
20
|
+
wheels/
|
|
21
|
+
share/python-wheels/
|
|
22
|
+
*.egg-info/
|
|
23
|
+
.installed.cfg
|
|
24
|
+
*.egg
|
|
25
|
+
MANIFEST
|
|
26
|
+
|
|
27
|
+
# Unit test / coverage reports
|
|
28
|
+
htmlcov/
|
|
29
|
+
.tox/
|
|
30
|
+
.nox/
|
|
31
|
+
.coverage
|
|
32
|
+
.coverage.*
|
|
33
|
+
.cache
|
|
34
|
+
nosetests.xml
|
|
35
|
+
coverage.xml
|
|
36
|
+
*.cover
|
|
37
|
+
*.py,cover
|
|
38
|
+
.hypothesis/
|
|
39
|
+
.pytest_cache/
|
|
40
|
+
cover/
|
|
41
|
+
|
|
42
|
+
# uv
|
|
43
|
+
# uv.lock should be committed to version control for reproducibility.
|
|
44
|
+
# https://docs.astral.sh/uv/concepts/projects/layout/#the-lockfile
|
|
45
|
+
|
|
46
|
+
# Environments
|
|
47
|
+
.env
|
|
48
|
+
.venv
|
|
49
|
+
env/
|
|
50
|
+
venv/
|
|
51
|
+
ENV/
|
|
52
|
+
env.bak/
|
|
53
|
+
venv.bak/
|
|
54
|
+
|
|
55
|
+
# mypy
|
|
56
|
+
.mypy_cache/
|
|
57
|
+
.dmypy.json
|
|
58
|
+
dmypy.json
|
|
59
|
+
|
|
60
|
+
# PyCharm
|
|
61
|
+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
|
62
|
+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
|
63
|
+
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
|
64
|
+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
|
65
|
+
.idea/
|
|
66
|
+
|
|
67
|
+
# VSCode
|
|
68
|
+
.vscode/
|
|
69
|
+
|
|
70
|
+
# SAMM
|
|
71
|
+
core/esmf-aspect-meta-model-python/esmf_aspect_meta_model_python/samm_aspect_meta_model/samm/
|
|
72
|
+
core/esmf-aspect-meta-model-python/esmf_aspect_meta_model_python/samm_cli/samm-cli/
|
|
73
|
+
/core/esmf-aspect-meta-model-python/tests/integration/aspect_model_loader/java_models/resources/
|
|
@@ -1,24 +1,20 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: esmf-aspect-model-loader
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.3.0
|
|
4
4
|
Summary: Load Aspect Models based on the Semantic Aspect Meta Model
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Author: Eclipse Semantic Modeling Framework
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
Project-URL: Homepage, https://projects.eclipse.org/projects/dt.esmf
|
|
6
|
+
Project-URL: Repository, https://github.com/eclipse-esmf/esmf-sdk-py-aspect-model-loader
|
|
7
|
+
Project-URL: Documentation, https://eclipse-esmf.github.io/python-sdk-guide/index.html
|
|
8
|
+
Author: Eclipse Semantic Modeling Framework, Nico Makowe, Aghyad Farrouh
|
|
9
|
+
Author-email: Hanna Shalamitskaya <external.Hanna.Shalamitskaya@de.bosch.com>, Oleksandr Muzyka <external.Oleksandr.Muzyka@bosch.com>, Andreas Textor <Andreas.Textor@de.bosch.com>, Georg Schmidt-Dumont <Georg.Schmidt-Dumont@de.bosch.com>, Michele Santoro <michele.santoro@de.bosch.com>, Lars Heppler <Lars.Heppler@de.bosch.com>
|
|
10
|
+
License-Expression: MPL-2.0
|
|
11
|
+
Keywords: aspect,digital twin,esmf,idta,model loader,samm,semantic api,semantics
|
|
11
12
|
Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)
|
|
12
13
|
Classifier: Programming Language :: Python :: 3
|
|
13
14
|
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
-
|
|
15
|
-
Requires-Dist:
|
|
16
|
-
Requires-Dist:
|
|
17
|
-
Requires-Dist: requests (>=2.28.1,<3.0.0)
|
|
18
|
-
Requires-Dist: tox (>=4.5.2,<5.0.0)
|
|
19
|
-
Requires-Dist: zipfile37 (>=0.1.3,<0.2.0)
|
|
20
|
-
Project-URL: Documentation, https://eclipse-esmf.github.io/python-sdk-guide/index.html
|
|
21
|
-
Project-URL: Repository, https://github.com/bci-oss/esmf-sdk-py-aspect-model-loader
|
|
15
|
+
Requires-Python: <4.0,>=3.10
|
|
16
|
+
Requires-Dist: rdflib==7.6.0
|
|
17
|
+
Requires-Dist: requests==2.34.2
|
|
22
18
|
Description-Content-Type: text/markdown
|
|
23
19
|
|
|
24
20
|
The Aspect Model Loader as part of the Python SDK provided by the [*Eclipse Semantic Modeling Framework*](
|
|
@@ -41,28 +37,28 @@ implementation.
|
|
|
41
37
|
Before getting started to use the `esmf-aspect-model-loader` library you need to apply some set up actions:
|
|
42
38
|
|
|
43
39
|
Required
|
|
44
|
-
- [Install
|
|
40
|
+
- [Install uv](#install-uv)
|
|
45
41
|
- [Install project dependencies](#install-project-dependencies)
|
|
46
42
|
- [Download SAMM files](#download-samm-files)
|
|
47
43
|
|
|
48
|
-
### Install
|
|
44
|
+
### Install uv
|
|
49
45
|
|
|
50
|
-
`
|
|
46
|
+
`uv` is used as the dependency manager for the `esmf-aspect-model-loader`. Follow the next [instruction](https://docs.astral.sh/uv/getting-started/installation/)
|
|
51
47
|
to install it.
|
|
52
48
|
|
|
53
|
-
To check the
|
|
49
|
+
To check the uv version run:
|
|
54
50
|
```console
|
|
55
|
-
|
|
51
|
+
uv --version
|
|
56
52
|
```
|
|
57
53
|
|
|
58
54
|
### Install project dependencies
|
|
59
55
|
|
|
60
|
-
|
|
61
|
-
To automatically
|
|
56
|
+
uv provides convenient functionality for working with dependencies in the project.
|
|
57
|
+
To automatically create a virtual environment and install all the necessary libraries, just run one command:
|
|
62
58
|
```console
|
|
63
|
-
|
|
59
|
+
uv sync
|
|
64
60
|
```
|
|
65
|
-
It is required to run `
|
|
61
|
+
It is required to run `uv sync` once in the esmf-aspect-model-loader module.
|
|
66
62
|
|
|
67
63
|
### Download SAMM files
|
|
68
64
|
|
|
@@ -75,7 +71,7 @@ This script downloads a release JAR-file from GitHub, extracts them for further
|
|
|
75
71
|
|
|
76
72
|
To run script, execute the next command.
|
|
77
73
|
```console
|
|
78
|
-
|
|
74
|
+
uv run download-samm-release
|
|
79
75
|
```
|
|
80
76
|
The version of the SAMM release is specified in the python script.
|
|
81
77
|
|
|
@@ -90,7 +86,7 @@ the API is called without a token. This may cause problems because unauthorized
|
|
|
90
86
|
|
|
91
87
|
Run the next command to download and start working with the Aspect Model Loader.
|
|
92
88
|
```console
|
|
93
|
-
|
|
89
|
+
uv run download-samm-branch
|
|
94
90
|
```
|
|
95
91
|
Link to all branches: [SAMM Releases](https://github.com/eclipse-esmf/esmf-semantic-aspect-meta-model/branches)
|
|
96
92
|
|
|
@@ -136,10 +132,12 @@ model_elements = samm_graph.load_model_elements()
|
|
|
136
132
|
|
|
137
133
|
SAMMUnitsGraph is a class contains functions for accessing units of measurement.
|
|
138
134
|
```python
|
|
139
|
-
from esmf_aspect_meta_model_python.samm_meta_model import
|
|
135
|
+
from esmf_aspect_meta_model_python.samm_meta_model import SammUnitsGraph
|
|
136
|
+
|
|
137
|
+
units = SammUnitsGraph()
|
|
140
138
|
|
|
141
139
|
unit_name = "unit:volt"
|
|
142
|
-
units.
|
|
140
|
+
units.print_info(units.get_info(unit_name))
|
|
143
141
|
# preferredName: volt
|
|
144
142
|
# commonCode: VLT
|
|
145
143
|
# ...
|
|
@@ -149,7 +147,7 @@ units.print_description(units.get_info(unit_name))
|
|
|
149
147
|
volt_info = units.get_info("unit:volt")
|
|
150
148
|
# {'preferredName': rdflib.term.Literal('volt', lang='en'), 'commonCode': rdflib.term.Literal('VLT'), ... }
|
|
151
149
|
|
|
152
|
-
units.
|
|
150
|
+
units.print_info(volt_info)
|
|
153
151
|
# preferredName: volt
|
|
154
152
|
# commonCode: VLT
|
|
155
153
|
# ...
|
|
@@ -167,22 +165,35 @@ Python Aspect Model Loader provide a wrapper class to be able to call SAMM CLI f
|
|
|
167
165
|
For instance, validation of a model can be done with the following code snippet:
|
|
168
166
|
|
|
169
167
|
```python
|
|
170
|
-
from esmf_aspect_meta_model_python.
|
|
168
|
+
from esmf_aspect_meta_model_python.samm_cli import SammCli
|
|
171
169
|
|
|
172
170
|
samm_cli = SammCli()
|
|
173
|
-
model_path = "
|
|
171
|
+
model_path = "Path_to_the_model/Model.ttl"
|
|
174
172
|
samm_cli.validate(model_path)
|
|
175
173
|
# Input model is valid
|
|
176
174
|
```
|
|
177
175
|
|
|
178
176
|
List of SAMMCLI functions:
|
|
179
177
|
- validate
|
|
178
|
+
- prettyprint
|
|
179
|
+
- usage
|
|
180
180
|
- to_openapi
|
|
181
181
|
- to_schema
|
|
182
182
|
- to_json
|
|
183
183
|
- to_html
|
|
184
184
|
- to_png
|
|
185
185
|
- to_svg
|
|
186
|
+
- to_java
|
|
187
|
+
- to_asyncapi
|
|
188
|
+
- to_jsonld
|
|
189
|
+
- to_sql
|
|
190
|
+
- to_aas
|
|
191
|
+
- edit_move
|
|
192
|
+
- edit_newversion
|
|
193
|
+
- aas_to_aspect
|
|
194
|
+
- aas_list
|
|
195
|
+
- package_import
|
|
196
|
+
- package_export
|
|
186
197
|
|
|
187
198
|
# Scripts
|
|
188
199
|
|
|
@@ -193,7 +204,7 @@ Provided scripts:
|
|
|
193
204
|
- download-samm-cli
|
|
194
205
|
- download-test-models
|
|
195
206
|
|
|
196
|
-
All scripts run like a
|
|
207
|
+
All scripts run like a uv command. uv is available from the folder where [pyproject.toml](pyproject.toml)
|
|
197
208
|
is located.
|
|
198
209
|
|
|
199
210
|
# Tests running
|
|
@@ -204,14 +215,26 @@ be running with the tox:
|
|
|
204
215
|
- pep8: static code checks (PEP8 style) with MyPy and Black
|
|
205
216
|
- py310: unit and integration tests
|
|
206
217
|
|
|
218
|
+
### tox-uv plugin
|
|
219
|
+
|
|
220
|
+
`tox` is integrated with `uv` through the [`tox-uv`](https://github.com/tox-dev/tox-uv) plugin. Both `tox` and
|
|
221
|
+
`tox-uv` are declared as `dev` dependencies in [pyproject.toml](pyproject.toml), so a single `uv sync` installs
|
|
222
|
+
everything required - no separate installation step is needed.
|
|
223
|
+
|
|
224
|
+
The two environments use the plugin differently (see [tox.ini](tox.ini)):
|
|
225
|
+
- `pep8` uses the `uv-venv-lock-runner` provided by `tox-uv`, which provisions the environment directly from the
|
|
226
|
+
pinned `uv.lock` and installs the `dev` dependency group. This guarantees the linters run with the exact, locked
|
|
227
|
+
versions.
|
|
228
|
+
- `py310` uses the default runner and explicitly runs `uv sync` and `uv run download-samm-release` in its
|
|
229
|
+
`commands_pre` to prepare dependencies and the SAMM meta model files before executing the test suite.
|
|
230
|
+
|
|
207
231
|
```console
|
|
208
232
|
# run all checks use the next command
|
|
209
|
-
|
|
233
|
+
uv run tox
|
|
210
234
|
|
|
211
235
|
# run only pep8 checks
|
|
212
|
-
|
|
236
|
+
uv run tox -e pep8
|
|
213
237
|
|
|
214
238
|
# run tests
|
|
215
|
-
|
|
239
|
+
uv run tox -e py310
|
|
216
240
|
```
|
|
217
|
-
|
|
@@ -18,28 +18,28 @@ implementation.
|
|
|
18
18
|
Before getting started to use the `esmf-aspect-model-loader` library you need to apply some set up actions:
|
|
19
19
|
|
|
20
20
|
Required
|
|
21
|
-
- [Install
|
|
21
|
+
- [Install uv](#install-uv)
|
|
22
22
|
- [Install project dependencies](#install-project-dependencies)
|
|
23
23
|
- [Download SAMM files](#download-samm-files)
|
|
24
24
|
|
|
25
|
-
### Install
|
|
25
|
+
### Install uv
|
|
26
26
|
|
|
27
|
-
`
|
|
27
|
+
`uv` is used as the dependency manager for the `esmf-aspect-model-loader`. Follow the next [instruction](https://docs.astral.sh/uv/getting-started/installation/)
|
|
28
28
|
to install it.
|
|
29
29
|
|
|
30
|
-
To check the
|
|
30
|
+
To check the uv version run:
|
|
31
31
|
```console
|
|
32
|
-
|
|
32
|
+
uv --version
|
|
33
33
|
```
|
|
34
34
|
|
|
35
35
|
### Install project dependencies
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
To automatically
|
|
37
|
+
uv provides convenient functionality for working with dependencies in the project.
|
|
38
|
+
To automatically create a virtual environment and install all the necessary libraries, just run one command:
|
|
39
39
|
```console
|
|
40
|
-
|
|
40
|
+
uv sync
|
|
41
41
|
```
|
|
42
|
-
It is required to run `
|
|
42
|
+
It is required to run `uv sync` once in the esmf-aspect-model-loader module.
|
|
43
43
|
|
|
44
44
|
### Download SAMM files
|
|
45
45
|
|
|
@@ -52,7 +52,7 @@ This script downloads a release JAR-file from GitHub, extracts them for further
|
|
|
52
52
|
|
|
53
53
|
To run script, execute the next command.
|
|
54
54
|
```console
|
|
55
|
-
|
|
55
|
+
uv run download-samm-release
|
|
56
56
|
```
|
|
57
57
|
The version of the SAMM release is specified in the python script.
|
|
58
58
|
|
|
@@ -67,7 +67,7 @@ the API is called without a token. This may cause problems because unauthorized
|
|
|
67
67
|
|
|
68
68
|
Run the next command to download and start working with the Aspect Model Loader.
|
|
69
69
|
```console
|
|
70
|
-
|
|
70
|
+
uv run download-samm-branch
|
|
71
71
|
```
|
|
72
72
|
Link to all branches: [SAMM Releases](https://github.com/eclipse-esmf/esmf-semantic-aspect-meta-model/branches)
|
|
73
73
|
|
|
@@ -113,10 +113,12 @@ model_elements = samm_graph.load_model_elements()
|
|
|
113
113
|
|
|
114
114
|
SAMMUnitsGraph is a class contains functions for accessing units of measurement.
|
|
115
115
|
```python
|
|
116
|
-
from esmf_aspect_meta_model_python.samm_meta_model import
|
|
116
|
+
from esmf_aspect_meta_model_python.samm_meta_model import SammUnitsGraph
|
|
117
|
+
|
|
118
|
+
units = SammUnitsGraph()
|
|
117
119
|
|
|
118
120
|
unit_name = "unit:volt"
|
|
119
|
-
units.
|
|
121
|
+
units.print_info(units.get_info(unit_name))
|
|
120
122
|
# preferredName: volt
|
|
121
123
|
# commonCode: VLT
|
|
122
124
|
# ...
|
|
@@ -126,7 +128,7 @@ units.print_description(units.get_info(unit_name))
|
|
|
126
128
|
volt_info = units.get_info("unit:volt")
|
|
127
129
|
# {'preferredName': rdflib.term.Literal('volt', lang='en'), 'commonCode': rdflib.term.Literal('VLT'), ... }
|
|
128
130
|
|
|
129
|
-
units.
|
|
131
|
+
units.print_info(volt_info)
|
|
130
132
|
# preferredName: volt
|
|
131
133
|
# commonCode: VLT
|
|
132
134
|
# ...
|
|
@@ -144,22 +146,35 @@ Python Aspect Model Loader provide a wrapper class to be able to call SAMM CLI f
|
|
|
144
146
|
For instance, validation of a model can be done with the following code snippet:
|
|
145
147
|
|
|
146
148
|
```python
|
|
147
|
-
from esmf_aspect_meta_model_python.
|
|
149
|
+
from esmf_aspect_meta_model_python.samm_cli import SammCli
|
|
148
150
|
|
|
149
151
|
samm_cli = SammCli()
|
|
150
|
-
model_path = "
|
|
152
|
+
model_path = "Path_to_the_model/Model.ttl"
|
|
151
153
|
samm_cli.validate(model_path)
|
|
152
154
|
# Input model is valid
|
|
153
155
|
```
|
|
154
156
|
|
|
155
157
|
List of SAMMCLI functions:
|
|
156
158
|
- validate
|
|
159
|
+
- prettyprint
|
|
160
|
+
- usage
|
|
157
161
|
- to_openapi
|
|
158
162
|
- to_schema
|
|
159
163
|
- to_json
|
|
160
164
|
- to_html
|
|
161
165
|
- to_png
|
|
162
166
|
- to_svg
|
|
167
|
+
- to_java
|
|
168
|
+
- to_asyncapi
|
|
169
|
+
- to_jsonld
|
|
170
|
+
- to_sql
|
|
171
|
+
- to_aas
|
|
172
|
+
- edit_move
|
|
173
|
+
- edit_newversion
|
|
174
|
+
- aas_to_aspect
|
|
175
|
+
- aas_list
|
|
176
|
+
- package_import
|
|
177
|
+
- package_export
|
|
163
178
|
|
|
164
179
|
# Scripts
|
|
165
180
|
|
|
@@ -170,7 +185,7 @@ Provided scripts:
|
|
|
170
185
|
- download-samm-cli
|
|
171
186
|
- download-test-models
|
|
172
187
|
|
|
173
|
-
All scripts run like a
|
|
188
|
+
All scripts run like a uv command. uv is available from the folder where [pyproject.toml](pyproject.toml)
|
|
174
189
|
is located.
|
|
175
190
|
|
|
176
191
|
# Tests running
|
|
@@ -181,13 +196,26 @@ be running with the tox:
|
|
|
181
196
|
- pep8: static code checks (PEP8 style) with MyPy and Black
|
|
182
197
|
- py310: unit and integration tests
|
|
183
198
|
|
|
199
|
+
### tox-uv plugin
|
|
200
|
+
|
|
201
|
+
`tox` is integrated with `uv` through the [`tox-uv`](https://github.com/tox-dev/tox-uv) plugin. Both `tox` and
|
|
202
|
+
`tox-uv` are declared as `dev` dependencies in [pyproject.toml](pyproject.toml), so a single `uv sync` installs
|
|
203
|
+
everything required - no separate installation step is needed.
|
|
204
|
+
|
|
205
|
+
The two environments use the plugin differently (see [tox.ini](tox.ini)):
|
|
206
|
+
- `pep8` uses the `uv-venv-lock-runner` provided by `tox-uv`, which provisions the environment directly from the
|
|
207
|
+
pinned `uv.lock` and installs the `dev` dependency group. This guarantees the linters run with the exact, locked
|
|
208
|
+
versions.
|
|
209
|
+
- `py310` uses the default runner and explicitly runs `uv sync` and `uv run download-samm-release` in its
|
|
210
|
+
`commands_pre` to prepare dependencies and the SAMM meta model files before executing the test suite.
|
|
211
|
+
|
|
184
212
|
```console
|
|
185
213
|
# run all checks use the next command
|
|
186
|
-
|
|
214
|
+
uv run tox
|
|
187
215
|
|
|
188
216
|
# run only pep8 checks
|
|
189
|
-
|
|
217
|
+
uv run tox -e pep8
|
|
190
218
|
|
|
191
219
|
# run tests
|
|
192
|
-
|
|
220
|
+
uv run tox -e py310
|
|
193
221
|
```
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import pathlib
|
|
2
|
+
import subprocess
|
|
3
|
+
import tempfile
|
|
4
|
+
|
|
5
|
+
from typing import Optional, Union
|
|
6
|
+
|
|
7
|
+
from rdflib import Graph
|
|
8
|
+
|
|
9
|
+
from esmf_aspect_meta_model_python import utils
|
|
10
|
+
from esmf_aspect_meta_model_python.constants import SAMM_VERSION
|
|
11
|
+
from esmf_aspect_meta_model_python.samm_cli import SammCli
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class AdaptiveGraph(Graph): # TODO: avoid double parsing when an upgrade is not performed
|
|
15
|
+
"""An RDF graph that can adaptively upgrade SAMM files using the SAMM CLI."""
|
|
16
|
+
|
|
17
|
+
_samm_cli = SammCli()
|
|
18
|
+
|
|
19
|
+
def __init__(self, samm_version: str = SAMM_VERSION, *args, **kwargs) -> None:
|
|
20
|
+
super().__init__(*args, **kwargs)
|
|
21
|
+
|
|
22
|
+
self._samm_version = samm_version
|
|
23
|
+
|
|
24
|
+
def _upgrade_ttl_file(self, file_path: pathlib.Path) -> str:
|
|
25
|
+
"""Run SAMM CLI prettyprint to upgrade a TTL file to the latest version."""
|
|
26
|
+
try:
|
|
27
|
+
return self._samm_cli.prettyprint(str(file_path), capture=True)
|
|
28
|
+
except subprocess.CalledProcessError as e:
|
|
29
|
+
raise RuntimeError(f"SAMM CLI failed for {file_path}:\n{e.stdout}\n{e.stderr}") from e
|
|
30
|
+
|
|
31
|
+
def _upgrade_source(self, source_path: pathlib.Path) -> str:
|
|
32
|
+
print(f"[INFO] SAMM version mismatch detected in {source_path}. Upgrading...")
|
|
33
|
+
|
|
34
|
+
return self._upgrade_ttl_file(source_path)
|
|
35
|
+
|
|
36
|
+
def _upgrade_data(self, data: str | bytes) -> str:
|
|
37
|
+
print( # TODO: improve logging
|
|
38
|
+
f"[INFO] SAMM version mismatch detected in provided data (target v{self._samm_version}) Upgrading..."
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
with tempfile.NamedTemporaryFile("wb", suffix=".ttl", delete=False) as tmp:
|
|
42
|
+
tmp.write(data.encode("utf-8") if isinstance(data, str) else data)
|
|
43
|
+
tmp_path = pathlib.Path(tmp.name)
|
|
44
|
+
|
|
45
|
+
try:
|
|
46
|
+
return self._upgrade_ttl_file(tmp_path)
|
|
47
|
+
finally:
|
|
48
|
+
tmp_path.unlink(missing_ok=True)
|
|
49
|
+
|
|
50
|
+
def set_samm_version(self, samm_version: str) -> None:
|
|
51
|
+
"""Set the SAMM version for this graph."""
|
|
52
|
+
self._samm_version = samm_version
|
|
53
|
+
|
|
54
|
+
def parse( # type: ignore[override]
|
|
55
|
+
self,
|
|
56
|
+
*,
|
|
57
|
+
source: Optional[str | pathlib.Path] = None,
|
|
58
|
+
data: Optional[str | bytes] = None,
|
|
59
|
+
**kwargs,
|
|
60
|
+
) -> "AdaptiveGraph":
|
|
61
|
+
"""
|
|
62
|
+
Parse a TTL file into this graph, upgrading via SAMM CLI if version mismatch detected.
|
|
63
|
+
|
|
64
|
+
If a SAMM version mismatch is detected, the TTL file will be upgraded using the SAMM CLI prettyprint
|
|
65
|
+
before parsing into this graph.
|
|
66
|
+
|
|
67
|
+
Args:
|
|
68
|
+
source: Path to the TTL file as pathlib.Path or str.
|
|
69
|
+
data: RDF content as string or bytes.
|
|
70
|
+
**kwargs: Additional arguments passed to rdflib.Graph.parse().
|
|
71
|
+
|
|
72
|
+
Returns:
|
|
73
|
+
self (AdaptiveGraph): The current graph instance with parsed data.
|
|
74
|
+
|
|
75
|
+
Raises:
|
|
76
|
+
RuntimeError: If the SAMM CLI fails during the upgrade process.
|
|
77
|
+
ValueError: If neither 'source' nor 'data' is provided, or if both are provided.
|
|
78
|
+
"""
|
|
79
|
+
if (source is None) == (data is None):
|
|
80
|
+
raise ValueError("Either 'source' or 'data' must be provided.")
|
|
81
|
+
|
|
82
|
+
if source:
|
|
83
|
+
input_source = source = pathlib.Path(source)
|
|
84
|
+
upgrade_method = self._upgrade_source
|
|
85
|
+
else:
|
|
86
|
+
input_source = data # type: ignore[assignment]
|
|
87
|
+
upgrade_method = self._upgrade_data # type: ignore[assignment]
|
|
88
|
+
|
|
89
|
+
if utils.has_version_mismatch_from_input(input_source, samm_version=self._samm_version):
|
|
90
|
+
data = upgrade_method(input_source)
|
|
91
|
+
source = None
|
|
92
|
+
|
|
93
|
+
super().parse(source=source, data=data, **kwargs)
|
|
94
|
+
|
|
95
|
+
return self
|
|
96
|
+
|
|
97
|
+
def __add__(self, other: Union["Graph", "AdaptiveGraph"]) -> "AdaptiveGraph":
|
|
98
|
+
"""Override addition to propagate SAMM version to the resulting graph."""
|
|
99
|
+
retval = super().__add__(other)
|
|
100
|
+
|
|
101
|
+
if isinstance(retval, AdaptiveGraph):
|
|
102
|
+
if isinstance(other, AdaptiveGraph) and other._samm_version != self._samm_version:
|
|
103
|
+
raise ValueError("SAMM version mismatch during addition.")
|
|
104
|
+
|
|
105
|
+
retval.set_samm_version(self._samm_version)
|
|
106
|
+
|
|
107
|
+
return retval # type: ignore[return-value]
|
|
108
|
+
|
|
109
|
+
def __sub__(self, other: Union["Graph", "AdaptiveGraph"]) -> "AdaptiveGraph":
|
|
110
|
+
"""Override subtraction to propagate SAMM version to the resulting graph."""
|
|
111
|
+
retval = super().__sub__(other)
|
|
112
|
+
|
|
113
|
+
if isinstance(retval, AdaptiveGraph):
|
|
114
|
+
if isinstance(other, AdaptiveGraph) and other._samm_version != self._samm_version:
|
|
115
|
+
raise ValueError("SAMM version mismatch during subtraction.")
|
|
116
|
+
|
|
117
|
+
retval.set_samm_version(self._samm_version)
|
|
118
|
+
|
|
119
|
+
return retval # type: ignore[return-value]
|
|
120
|
+
|
|
121
|
+
def __mul__(self, other: Union["Graph", "AdaptiveGraph"]) -> "AdaptiveGraph":
|
|
122
|
+
"""Override multiplication to propagate SAMM version to the resulting graph."""
|
|
123
|
+
retval = super().__mul__(other)
|
|
124
|
+
|
|
125
|
+
if isinstance(retval, AdaptiveGraph):
|
|
126
|
+
if isinstance(other, AdaptiveGraph) and other._samm_version != self._samm_version:
|
|
127
|
+
raise ValueError("SAMM version mismatch during multiplication.")
|
|
128
|
+
|
|
129
|
+
retval.set_samm_version(self._samm_version)
|
|
130
|
+
|
|
131
|
+
return retval # type: ignore[return-value]
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Base
|
|
2
|
+
This folder contains a minimum definition of the elements in the SAMM. The folder does not include any implementations.
|
|
3
|
+
It can be seen as a contract that establishes a fixed structure and inheritance hierarchy.
|
|
4
|
+
The classes should not be instantiated because they are abstract which is similar to interfaces in Java.
|
|
5
|
+
|
|
6
|
+
# Inheritance hierarchy
|
|
7
|
+
|
|
8
|
+
The diagram below shows the inheritance hierarchy of the base (interface) classes. `HasUrn`,
|
|
9
|
+
`IsDescribed` and `HasProperties` are abstract base classes; `StructureElement` and `ComplexType`
|
|
10
|
+
use multiple inheritance.
|
|
11
|
+
|
|
12
|
+
```mermaid
|
|
13
|
+
classDiagram
|
|
14
|
+
HasUrn <|-- IsDescribed
|
|
15
|
+
HasUrn <|-- DataType
|
|
16
|
+
IsDescribed <|-- Base
|
|
17
|
+
|
|
18
|
+
Base <|-- StructureElement
|
|
19
|
+
HasProperties <|-- StructureElement
|
|
20
|
+
StructureElement <|-- Aspect
|
|
21
|
+
StructureElement <|-- ComplexType
|
|
22
|
+
DataType <|-- ComplexType
|
|
23
|
+
DataType <|-- Scalar
|
|
24
|
+
ComplexType <|-- AbstractEntity
|
|
25
|
+
ComplexType <|-- Entity
|
|
26
|
+
|
|
27
|
+
Base <|-- Characteristic
|
|
28
|
+
Characteristic <|-- Code
|
|
29
|
+
Characteristic <|-- Collection
|
|
30
|
+
Collection <|-- List
|
|
31
|
+
Collection <|-- Set
|
|
32
|
+
Collection <|-- SortedSet
|
|
33
|
+
SortedSet <|-- TimeSeries
|
|
34
|
+
Characteristic <|-- Enumeration
|
|
35
|
+
Enumeration <|-- State
|
|
36
|
+
Characteristic <|-- SingleEntity
|
|
37
|
+
Characteristic <|-- StructuredValue
|
|
38
|
+
Characteristic <|-- Quantifiable
|
|
39
|
+
Quantifiable <|-- Duration
|
|
40
|
+
Quantifiable <|-- Measurement
|
|
41
|
+
Characteristic <|-- Trait
|
|
42
|
+
|
|
43
|
+
Base <|-- Either
|
|
44
|
+
Base <|-- Constraint
|
|
45
|
+
Constraint <|-- EncodingConstraint
|
|
46
|
+
Constraint <|-- FixedPointConstraint
|
|
47
|
+
Constraint <|-- LanguageConstraint
|
|
48
|
+
Constraint <|-- LengthConstraint
|
|
49
|
+
Constraint <|-- LocaleConstraint
|
|
50
|
+
Constraint <|-- RangeConstraint
|
|
51
|
+
Constraint <|-- RegularExpressionConstraint
|
|
52
|
+
|
|
53
|
+
Base <|-- Namespace
|
|
54
|
+
Base <|-- Event
|
|
55
|
+
Base <|-- Operation
|
|
56
|
+
Base <|-- AbstractProperty
|
|
57
|
+
AbstractProperty <|-- Property
|
|
58
|
+
Base <|-- QuantityKind
|
|
59
|
+
Base <|-- Unit
|
|
60
|
+
QuantityKind <|-- Unit
|
|
61
|
+
Base <|-- Value
|
|
62
|
+
|
|
63
|
+
class HasUrn { <<abstract>> }
|
|
64
|
+
class IsDescribed { <<abstract>> }
|
|
65
|
+
class HasProperties { <<abstract>> }
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
> Note: `BoundDefinition` is a standalone `enum.Enum` (the upper/lower boundary rule for a
|
|
69
|
+
> `RangeConstraint`) and is therefore not part of the class hierarchy above.
|
|
@@ -27,14 +27,14 @@ from .characteristics.single_entity import SingleEntity
|
|
|
27
27
|
from .characteristics.state import State
|
|
28
28
|
from .characteristics.structured_value import StructuredValue
|
|
29
29
|
from .characteristics.trait import Trait
|
|
30
|
-
from .
|
|
31
|
-
from .
|
|
32
|
-
from .
|
|
33
|
-
from .
|
|
34
|
-
from .
|
|
35
|
-
from .
|
|
36
|
-
from .
|
|
37
|
-
from .
|
|
30
|
+
from .constraints.constraint import Constraint
|
|
31
|
+
from .constraints.encoding_constraint import EncodingConstraint
|
|
32
|
+
from .constraints.fixed_point_constraint import FixedPointConstraint
|
|
33
|
+
from .constraints.language_constraint import LanguageConstraint
|
|
34
|
+
from .constraints.length_constraint import LengthConstraint
|
|
35
|
+
from .constraints.locale_constraint import LocaleConstraint
|
|
36
|
+
from .constraints.range_constraint import RangeConstraint
|
|
37
|
+
from .constraints.regular_expression_constraint import RegularExpressionConstraint
|
|
38
38
|
from .data_types.abstract_entity import AbstractEntity
|
|
39
39
|
from .data_types.complex_type import ComplexType
|
|
40
40
|
from .data_types.data_type import DataType
|
|
@@ -43,6 +43,6 @@ from .data_types.scalar import Scalar
|
|
|
43
43
|
from .either import Either
|
|
44
44
|
from .event import Event
|
|
45
45
|
from .operation import Operation
|
|
46
|
-
from .property import Property
|
|
46
|
+
from .property import AbstractProperty, Property
|
|
47
47
|
from .quantity_kind import QuantityKind
|
|
48
48
|
from .unit import Unit
|
|
@@ -8,7 +8,9 @@
|
|
|
8
8
|
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
9
9
|
#
|
|
10
10
|
# SPDX-License-Identifier: MPL-2.0
|
|
11
|
+
|
|
11
12
|
from abc import ABC, abstractmethod
|
|
13
|
+
from typing import Optional
|
|
12
14
|
|
|
13
15
|
from esmf_aspect_meta_model_python.base.base import Base
|
|
14
16
|
from esmf_aspect_meta_model_python.base.data_types.data_type import DataType
|
|
@@ -18,11 +20,15 @@ class Characteristic(Base, ABC):
|
|
|
18
20
|
"""Characteristic interface class.
|
|
19
21
|
|
|
20
22
|
Specifies a property by describing its data type.
|
|
21
|
-
Multiple classes inherit from Characteristic
|
|
22
|
-
(e.g
|
|
23
|
+
Multiple classes inherit from Characteristic to describe the property in a more specific way
|
|
24
|
+
(e.g., Enumeration or Collection).
|
|
23
25
|
"""
|
|
24
26
|
|
|
25
27
|
@property
|
|
26
28
|
@abstractmethod
|
|
27
|
-
def data_type(self) -> DataType:
|
|
28
|
-
"""
|
|
29
|
+
def data_type(self) -> Optional[DataType]:
|
|
30
|
+
"""Returns the data type of the characteristic.
|
|
31
|
+
|
|
32
|
+
Returns:
|
|
33
|
+
Optional[DataType]: The data type of the characteristic, or None if not set.
|
|
34
|
+
"""
|