BaSyx / Documentation / Implementation / AssetAdministrationShell
Overview | Interface | Implementation | Component | Features |
As described in the SDK documentation, the Asset Administration Shell is implemented by HashMaps. This has several reasons. First, the virtual automation bus enables easy integration of Maps. Additionally, the AAS meta-model heavily uses multiple inheritance. Not all languages, e.g. Java, support multiple inheritance. The AAS meta-model only describes its elements by data and not by operations. Thus it is possible to realize multiple inheritance by adding the content of one parent class to the map of the child class.
Consider the UML given. For example, a resulting HashMap instance of class C looks the following:
{ // Variables of A x: 1, y: 2, // Variable of B z: 3, // Variable of C v: 4 }
To be able to access the different attributes of the class, facades are given. The facades act as views on the HashMap, only providing access to the parameters of the specific class.