-
Notifications
You must be signed in to change notification settings - Fork 26
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
Handling of optional sets if elements in serializations #418
Comments
See also #412 |
In Annex D of IDTA-3-0, Page 134, it is stated:
the Schemas are more strict. |
(Copied from eclipse-aaspe/package-explorer#195, relevant here as well) Just for reference. Here's the excerpt from https://github.com/admin-shell-io/aas-specs/tree/1bf6df90bc3f56df4d5619b6ee0ce5382bde0168/schemas/json#uml-properties-to-json-properties (current latest version):
|
2024-05-15 TF AAS Part 1 ==> Specification Annex will be corrected: |
#418 CHANGE (Editorial, the schemas implemented it like this) Annex UML Tables: "0..*" or "0..3" etc. means that the list may be either not available (optional) or the list is not empty.
see also #411: similar to Part 2 we may combine optional and empty but this then needs to be explicitly specified |
*Is your feature request related to a problem? Please describe.
see admin-shell-io/aas-test-engines#13 (comment) @mjacoby
„the JSON schema says an Environment must have at least 1 conceptDescription. However, the AAS specification (Section 5.3.9, page 81) says it can have zero or more elements.
At first glance, this seems like a bug. However, I could find the following sentence in a README on Github
Optional attributes, i.e., the attributes with the cardinality 0..1, are modeled as [non-required properties].
This indicates, that in JSON the property conceptDescriptions should not be present at all if empty and if present must be non-empty. This would mean that the provided JSON is actually invalid.
However, I would argue that this sentence is not part of the specification itself and therefore not normative.
The correct way would be either to put this sentence in the specification or changes the JSON schema to reflect what is written in the spec, i.e. allow the property to be empty.“
The text was updated successfully, but these errors were encountered: