aas-core-meta V3.0RC02 🔗

Provide an implementation of the Asset Administration Shell V3.0 Release Candidate 2.

The presented version of the Metamodel is related to the work of aas-core-works, which can be found here: https://github.com/aas-core-works.

The presented content is neither related to the IDTA nor Plattform Industrie 4.0 and does not represent an official publication.

We diverge from the book in the following points.

We did not implement the following constraints as they are too general and can not be formalized as part of the core library, but affects external components such as AAS registry or AAS server:

We did not implement the following constraints since they depend on registry and de-referencing, so we can not formalize them with formalizing such external dependencies:

Some constraints are not enforceable as they depend on the wider context such as language understanding, so we could not formalize them:

AASd-116 is ill-defined. The type of the SpecificAssetId.value is a string, but the type of AssetInformation.globalAssetId is a Reference. The comparison between a string and a reference is not defined, so we can not implement this constraint.

Furthermore, we diverge from the book in the following points regarding the enumerations. We have to implement subsets of enumerations as sets as common programming languages do not support inheritance of enumerations. The relationship between the properties and the sets is defined through invariants. This causes the following divergences:

Concerning the data specifications, we embed them within HasDataSpecification instead of referencing them via a global reference. The working group decided to change the rules for serialization after the book was published. The data specifications are critical in applications, but there is no possibility to access them through a data channel as they are not part of an environment.

Since the data specifications are now embedded, the following constraints became futile:

  • AASd-050
  • AASd-050b
Constraint AASd-120🔗
Referable.idShort of non-identifiable referables shall be unique in its namespace.
Constraint AASd-003🔗
Referable.idShort of Referable's shall be matched case-sensitive.