-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix the implementation of DataSpecificationIEC61360 and its De-/Serialization #141
Fix the implementation of DataSpecificationIEC61360 and its De-/Serialization #141
Commits on Oct 12, 2023
-
generate unique id_shorts for
SubmodelElementList
-childrenConstraint AASd-120 requires direct children of a `SubmodelElementList` to have id_short=None. On the contrary, `SubmodelElementList` must be a Namespace, since children of Lists must still be referable via References, and also must be allowed to reference their parent, which is expected to be a Namespace. Since id_short=None must hold for all direct children, they lack a unique identifying attribute, that can be used to refer to an item. However, this is required for a Namespace. Thus, we had two options for implementing this: - Refactor a lot of the model.base module such that `SubmodelElementLists` are considered Namespaces - Generate a unique id_short for every direct children of a `SubmodelElementList` whenever it is added. Since the first alternative would require a distinction for `SubmodelElementList` in all places where a `Namespace` is used, we decided on the second alternative. This commit implements the generation of unique id_shorts via the `item_id_set_hook`, that was recently added to `NamespaceSet` and `OrderedNamespaceSet`. It is called for every added SubmodelElement. Furthermore, the `item_id_del_hook` is called for every removed SubmodelElement and used to remove the generated id_short again. This aside, the examples and unit tests are also adjusted such that the id_short is removed for all direct children of `SubmodelElementList`. Furthermore, a test for `AASd-120` is added. The AASDataChecker is adjusted to skip the comparison of id_short for direct children of `SubmodelElementList`, since these are generated and thus never the same now. For the same reason, the XML/JSON serialisation is adjusted to skip serialising the id_short if direct children of a `SubmodelElementList`.
Configuration menu - View commit details
-
Copy full SHA for 927f125 - Browse repository at this point
Copy the full SHA 927f125View commit details -
examples.data._helper: disable comparison of unordered `SubmodelEleme…
…ntList` Since direct children of `SubmodelElementList` don't have an identifying attribute anymore (AASd-120), they cannot be compared because it is impossible to know which SubmodelElement should be compared against which other element. Maybe this can be implemented again in the future, when hashing is implemented for all SubmodelElements, but for now we raise a `NotImplementedError`. A test-case for this behavior is added and `order_relevant` is set to `true` in all example files.
Configuration menu - View commit details
-
Copy full SHA for cc11346 - Browse repository at this point
Copy the full SHA cc11346View commit details -
test: update compliance tool test-files
This commit applies the following changes to all test-files: - The id_short of direct children of a `SubmodelElementList` is removed - `SubmodelElementList.order_relevant` is set to true for all `SubmodelElementList`s
Configuration menu - View commit details
-
Copy full SHA for a0a2416 - Browse repository at this point
Copy the full SHA a0a2416View commit details
Commits on Oct 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 3d2a04b - Browse repository at this point
Copy the full SHA 3d2a04bView commit details -
Set typehint of EmbeddedDataSpecification.data_specification
Set to Reference instead of ExternalReference according to specs
Configuration menu - View commit details
-
Copy full SHA for 9b37316 - Browse repository at this point
Copy the full SHA 9b37316View commit details -
Set
id_short
ofIdentifiables
to optionalThis commit extends eclipse-basyx@bffb075.
Configuration menu - View commit details
-
Copy full SHA for 1545e47 - Browse repository at this point
Copy the full SHA 1545e47View commit details -
Configuration menu - View commit details
-
Copy full SHA for 27a9a68 - Browse repository at this point
Copy the full SHA 27a9a68View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9d661df - Browse repository at this point
Copy the full SHA 9d661dfView commit details -
Merge remote-tracking branch 'acplt/feature/SubmodelElementList_gener…
…ated_id_shorts_aasd_120' into fix/id_short
Configuration menu - View commit details
-
Copy full SHA for 250517d - Browse repository at this point
Copy the full SHA 250517dView commit details
Commits on Oct 17, 2023
-
Update compliance tool test files
As default value of Submodel.id_short, ConceptDescription.id_short, AAS.id_short is set to None, test files had to be updated.
Configuration menu - View commit details
-
Copy full SHA for c44bbc9 - Browse repository at this point
Copy the full SHA c44bbc9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d06a82 - Browse repository at this point
Copy the full SHA 2d06a82View commit details -
Update compliance tool test files
As default value of Submodel.id_short, ConceptDescription.id_short, AAS.id_short is set to None, test files had to be updated.
Configuration menu - View commit details
-
Copy full SHA for e69fc6f - Browse repository at this point
Copy the full SHA e69fc6fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7b71f3c - Browse repository at this point
Copy the full SHA 7b71f3cView commit details -
Fix the implementation of DataSpecificationIEC61360
- Update IEC61360_DATA_TYPES from the Spec - Add checking of value_type string: 1<len(value_type)<2000 - Some Refactoring - Fix typehint of DataSpecification according to the spec - Simplify Value and ValueReferencePair, as value is just a string acc. to spec - Fix value_format, as it not one of xsd types, but also a string (e.g. "X..17" or "M" or "NR2..3.3"), which describes how the value should look like. Look in IEC61360-1 for further info
Configuration menu - View commit details
-
Copy full SHA for 8d9eb8e - Browse repository at this point
Copy the full SHA 8d9eb8eView commit details
Commits on Oct 18, 2023
-
Configuration menu - View commit details
-
Copy full SHA for af7422f - Browse repository at this point
Copy the full SHA af7422fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 49603cd - Browse repository at this point
Copy the full SHA 49603cdView commit details