SubmodelElementList🔗
A submodel element list is an ordered list of submodel elements.
The numbering starts with zero (0).
- Constraint AASd-107🔗
- If a first level child element in a SubmodelElementList has a HasSemantics.semanticId it shall be identical to SubmodelElementList.semanticIdListElement.
- Constraint AASd-114🔗
- If two first level child elements in a SubmodelElementList have a HasSemantics.semanticId then they shall be identical.
- Constraint AASd-115🔗
- If a first level child element in a SubmodelElementList does not specify a HasSemantics.semanticId then the value is assumed to be identical to SubmodelElementList.semanticIdListElement.
- Constraint AASd-120🔗
- The SubmodelElementList.idShort of a SubmodelElement being a direct child of a SubmodelElementList shall not be specified.
- Constraint AASd-108🔗
- All first level child elements in a SubmodelElementList shall have the same submodel element type as specified in SubmodelElementList.typeValueListElement.
- Constraint AASd-109🔗
- If SubmodelElementList.typeValueListElement is equal to AasSubmodelElements.Property or AasSubmodelElements.Range SubmodelElementList.valueTypeListElement shall be set and all first level child elements in the SubmodelElementList shall have the value type as specified in SubmodelElementList.valueTypeListElement.
Inheritances 🔗
Properties 🔗
- extensions: Optional[List[Extension]] 🔗
-
(From HasExtensions)An extension of the element.
- category: Optional[NameType] 🔗
-
(From Referable)The category is a value that gives further meta information w.r.t. to the class of the element. It affects the expected existence of attributes and the applicability of constraints.The category is not identical to the semantic definition (HasSemantics) of an element. The category e.g. could denote that the element is a measurement value whereas the semantic definition of the element would denote that it is the measured temperature.
- idShort: Optional[IdShortType] 🔗
-
(From Referable)In case of identifiables this attribute is a short name of the element. In case of referable this ID is an identifying string of the element within its name space.In case the element is a property and the property has a semantic definition (HasSemantics.semanticId) conformant to IEC61360 the Referable.idShort is typically identical to the short name in English.
- displayName: Optional[List[LangStringNameType]] 🔗
-
(From Referable)Display name. Can be provided in several languages.
- description: Optional[List[LangStringTextType]] 🔗
-
(From Referable)Description or comments on the element.
The description can be provided in several languages.
If no description is defined, then the definition of the concept description that defines the semantics of the element is used.
Additional information can be provided, e.g., if the element is qualified and which qualifier types can be expected in which context or which additional data specification templates are provided.
- semanticId: Optional[Reference] 🔗
-
(From HasSemantics)Identifier of the semantic definition of the element. It is called semantic ID of the element or also main semantic ID of the element.It is recommended to use a global reference.
- supplementalSemanticIds: Optional[List[Reference]] 🔗
-
(From HasSemantics)Identifier of a supplemental semantic definition of the element. It is called supplemental semantic ID of the element.It is recommended to use a global reference.
- qualifiers: Optional[List[Qualifier]] 🔗
-
(From Qualifiable)Additional qualification of a qualifiable element.
- Constraint AASd-021🔗
- Every qualifiable can only have one qualifier with the same Qualifier.type.
- embeddedDataSpecifications: Optional[List[EmbeddedDataSpecification]] 🔗
-
(From HasDataSpecification)Embedded data specification.
- orderRelevant: Optional[bool] 🔗
-
Defines whether order in list is relevant. If SubmodelElementList.orderRelevant =
False
then the list is representing a set or a bag.Default:True
- semanticIdListElement: Optional[Reference] 🔗
-
Semantic ID the submodel elements contained in the list match to.It is recommended to use a global reference.
- typeValueListElement: AasSubmodelElements 🔗
-
The submodel element type of the submodel elements contained in the list.
- valueTypeListElement: Optional[DataTypeDefXsd] 🔗
-
The value type of the submodel element contained in the list.
- value: Optional[List[SubmodelElement]] 🔗
-
Submodel element contained in the list.The list is ordered.
Invariants 🔗
-
Extensions must be either not set or have at least one item.
(From HasExtensions)
not (self.extensions is not None) or (len(self.extensions) >= 1)
-
Constraint AASd-077: The name of an extension within Has-Extensions needs to be unique.
(From HasExtensions)
not (self.extensions is not None) or ExtensionNamesAreUnique( self.extensions )
-
Description must be either not set or have at least one item.
(From Referable)
not (self.description is not None) or (len(self.description) >= 1)
-
Description must specify unique languages.
(From Referable)
not (self.description is not None) or LangStringsHaveUniqueLanguages( self.description )
-
Display name must be either not set or have at least one item.
(From Referable)
not (self.displayName is not None) or (len(self.displayName) >= 1)
-
Display name must specify unique languages.
(From Referable)
not (self.displayName is not None) or LangStringsHaveUniqueLanguages( self.displayName )
-
Supplemental semantic IDs must be either not set or have at least one item.
(From HasSemantics)
not (self.supplementalSemanticIds is not None) or (len(self.supplementalSemanticIds) >= 1)
-
Constraint AASd-118: If there are supplemental semantic IDs defined then there shall be also a main semantic ID.
(From HasSemantics)
not (self.supplementalSemanticIds is not None) or (self.semanticId is not None)
-
Qualifiers must be either not set or have at least one item.
(From Qualifiable)
not (self.qualifiers is not None) or (len(self.qualifiers) >= 1)
-
Constraint AASd-021: Every qualifiable can only have one qualifier with the same type.
(From Qualifiable)
not (self.qualifiers is not None) or QualifierTypesAreUnique( self.qualifiers )
-
Embedded data specifications must be either not set or have at least one item.
(From HasDataSpecification)
not (self.embeddedDataSpecifications is not None) or (len(self.embeddedDataSpecifications) >= 1)
-
Value must be either not set or have at least one item.
-
Constraint AASd-107: If a first level child element has a semantic ID it shall be identical to semantic ID list element.
not ( ( (self.value is not None) and (self.semanticIdListElement is not None) ) ) or ( all( not (child.semanticId is not None) or ReferenceKeyValuesEqual( child.semanticId, self.semanticIdListElement ) for child in self.value ) )
-
Constraint AASd-114: If two first level child elements have a semantic ID then they shall be identical.
not (self.value is not None) or SubmodelElementsHaveIdenticalSemanticIds( self.value )
-
Constraint AASd-108: All first level child elements shall have the same submodel element type as specified in type value list element.
not (self.value is not None) or ( all( SubmodelElementIsOfType( element, self.typeValueListElement ) for element in self.value ) )
-
Constraint AASd-109: If type value list element is equal to Property or Range value type list element shall be set and all first level child elements shall have the value type as specified in value type list element.
not ( ( self.typeValueListElement == AasSubmodelElements.Property or self.typeValueListElement == AasSubmodelElements.Range ) ) or ( ( (self.valueTypeListElement is not None) and ( ( (self.value is None) or PropertiesOrRangesHaveValueType( self.value, self.valueTypeListElement ) ) ) ) )
-
Constraint AASd-120: ID-short of submodel elements being a direct child of a Submodel element list shall not be specified.