-
Notifications
You must be signed in to change notification settings - Fork 0
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
Simplification of the modeling of Enumerations, like "FEMALE" and "MALE" #11
Comments
In IEC61360 and ECLASS there are coded or explicit enumeration values. In AAS with Part 3a data specification IEC61360 we only support coded enumeration values, i.e. values with an own unique identifier. One reason for this is that we do not (yet) support an xsd type that would represent a list/array. |
Discussion Workstream AAS 2023-11-23 MALE/FEMALE is not a good example for explicit enumeration value because you typically need an translation of the values. In this case coded values are the preferred way to model it. explicit Alternatives:
check how many explicit value lists exist in ECLASS Not accepted for V3.1 of Part 3a |
My question/wish for clarification was regarding modeling an enumeration in a SMT. The enumeration shall act as list of values that are allowed as value for a property in a Submodel Instance. It does not has to be a explicit list; coded values are fine. I have seen multiple ways how to model it and for me it is not exectly clear
Here are the three ways: way 1) create multiple valueIds for a property with reference to a ConceptDescription per enum value, add a DataSpecification to every ConceptDescription and enter the value (value field of IEC 61360 DataSpecification). Enter the actual enum value as property value in case Submodel Instance. way 2) create one semanticId for a property with reference to a ConceptDescription for the property, add a DataSpecification (IEC 61360 Data Specification), create a IEC 61360 value list and link a valueID for each value of the value list to a ConceptDescription. Create a DataSpecification for every CD for every value of the value list. Enter the actual enum value as property value in case Submodel Instance. Way 2 is descibed in Part 3a: Data Specification – IEC 61360, p. 46-47 way 3) = proposal for simplification by a respective definition in the Metamodel specification |
transfer to Part 3a https://github.com/admin-shell-io/aas-specs-iec61360 |
Modeling of enumeration values for properties is a hard job with the metamodel (when creating Submodel Templates).
As I understand there are two ways:
way 1) create multiple valueIds with reference to a ConceptDescription per enum, add a DataSpecification to every ConceptDescription and enter the value (value field of IEC 61360 DataSpecification)
way 2) create a ConceptDescription for the property, add a DataSpecification (IEC 61360 Data Specification), create a value list and link the valueID to a ConceptDescription for every enum to get a global id.
Proposal:
There might be arguments why this is not possible and I could understand this due to deviation to the normal modeling logic. However, to model enumerations is very often a requirement. There should be a simplification somehow.
The text was updated successfully, but these errors were encountered: