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-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[NonEmptyString] 🔗
-
(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[IdShort] 🔗
-
(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[LangString]] 🔗
-
(From Referable)Display name. Can be provided in several languages.
If no display name is defined in the language requested by the application, then the display name is selected in the following order if available:
- the preferred name in the requested language of the concept description defining the semantics of the element
- If there is a default language list defined in the application, then the corresponding preferred name in the language is chosen according to this order.
- the English preferred name of the concept description defining the semantics of the element
- the short name of the concept description
- the Referable.idShort of the element
- description: Optional[List[LangString]] 🔗
-
(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.
- checksum: Optional[NonEmptyString] 🔗
-
(From Referable)Checksum to be used to determine if an Referable (including its aggregated child elements) has changed.The checksum is calculated by the user's tool environment. The checksum has no semantic meaning for an asset administration shell model and there is no requirement for asset administration shell tools to manage the checksum
- kind: Optional[ModelingKind] 🔗
-
(From HasKind)Kind of the element: either type or instance.Default: ModelingKind.Instance
- 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
- value: Optional[List[SubmodelElement]] 🔗
-
Submodel element contained in the list.The list is ordered.
- 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.
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 specifies no duplicate 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 specifies no duplicate 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)
-
Constraint AASd-119: If any qualifier kind value of a qualifiable qualifier is equal to template qualifier and the qualified element has kind then the qualified element shall be of kind template.
(From SubmodelElement)
not (self.qualifiers is not None) or ( not ( any( qualifier.KindOrDefault() == QualifierKind.TemplateQualifier for qualifier in self.qualifiers ) ) or (self.KindOrDefault() == ModelingKind.Template) )
-
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.value is not None) and ( ( self.typeValueListElement == AasSubmodelElements.Property or self.typeValueListElement == AasSubmodelElements.Range ) ) ) ) or ( ( (self.valueTypeListElement is not None) and PropertiesOrRangesHaveValueType( self.value, self.valueTypeListElement ) ) )
-
Constraint AASd-120: ID-shorts of submodel elements within a SubmodelElementList shall not be specified.