An Asset Administration Shell on its own is only a frame. The information lives in its submodels. Each AAS submodel covers one topic, and an asset can have as many submodels as its use cases require: a sensor may only need a digital nameplate and technical data, while a machine adds documentation, maintenance, energy and software information.
- What it is: a self-contained module of an Asset Administration Shell that describes one aspect of an asset
- Place in the metamodel: between the shell, which identifies the asset, and the submodel elements, which hold the values
- Templates: standardized and published free of charge by the IDTA, for example Digital Nameplate, Technical Data and Carbon Footprint
- Semantics: every submodel and element can carry a semantic ID, usually from ECLASS or the IEC 61360 Common Data Dictionary
- Typical uses: identification, handover documentation, product carbon footprint and the Digital Product Passport
What is an AAS submodel, and how does it fit into the metamodel?
The metamodel of the Asset Administration Shell defines three levels: the shell, which identifies the asset, the submodels, which structure the information, and the submodel elements, which hold the actual values. A submodel has its own globally unique identifier, a short name (idShort), a semantic ID that points to its definition and a kind that marks it as a template or an instance. Because submodels are independent objects, they can be stored on different servers, maintained by different parties and referenced from several shells.
Submodel elements
Submodel elements are the building blocks inside a submodel. The most important types are:
- Property: a single value with a data type, for example a rated voltage
- MultiLanguageProperty: a text in several languages, for example a product designation
- Range: a minimum and maximum value
- File and Blob: documents or binary content, for example a manual or a certificate
- ReferenceElement and RelationshipElement: links to other elements or assets
- SubmodelElementCollection and SubmodelElementList: groups of elements
- Operation: a function that can be called through the API
- Entity: a sub-asset, used for example in bills of material
- BasicEventElement: an event that can be published
Every element can carry a semantic ID, usually from ECLASS or the IEC 61360 Common Data Dictionary, plus a description and metadata. The semantic ID is what makes the data machine-understandable: two vendors may name a property differently, but if both point to the same semantic ID, software knows it means the same thing.
Submodel templates from the IDTA
A submodel template defines which elements a submodel of a given type contains, with their semantic IDs, data types and cardinalities. The Industrial Digital Twin Association (IDTA) develops these templates with industry experts and publishes them free of charge, together with a specification document and a JSON or AASX template file. Each template has a version, and templates go through a review process before publication.
Widely used templates include Digital Nameplate, Technical Data, Contact Information, Handover Documentation, Carbon Footprint, Time Series Data, Hierarchical Structures for bills of material, Software Nameplate and Asset Interfaces Description. Templates for new topics such as the Digital Product Passport and digital quality documents are being developed in IDTA working groups.
How submodels are accessed and exchanged
Submodels can be exchanged as files or through services. In an AASX package, the shell, its submodels and attached files are bundled into one file, serialized as JSON or XML. On a server, the AAS API defines submodel repository and submodel registry services: a client looks up a submodel by its identifier in the registry, finds the endpoint and reads or updates elements through REST. Service profiles describe which operations a server supports, from read-only access to full editing.
Submodels in practice: OI4 examples
- The Product Change Notification demonstrator uses a PCN submodel to publish component changes with part number, classification, impact and effective date.
- For automatic onboarding, zenon reads the Asset Interfaces Description and Asset Interfaces Mapping Configuration submodels and connects Modbus, HTTP and MQTT devices without manual setup. The Time Series Data submodel delivers measurement values for trend curves.
- In the DPP proof of concept, bicycle components carry Nameplate, Carbon Footprint, Technical Data and Handover Documentation submodels.
- The Proactive AAS project published a submodel proposal for rule-based behavior that links executable rules to AAS elements.
How to create a submodel
- Check whether an IDTA submodel template exists for your use case. Reuse it instead of designing your own.
- Download the template and fill it with your data, for example in the AASX Package Explorer.
- Keep the semantic IDs, and add ECLASS or IEC 61360 references for custom properties.
- Validate the result and publish it as an AASX file or on an AAS server.
Frequently asked questions
What is the difference between a submodel and a submodel template?
A submodel template defines the structure and meaning of a submodel type. A submodel instance follows that template and contains the concrete values for one asset.
Where can I find AAS submodel templates?
The IDTA publishes all released submodel templates on its website and in its public repository, including specification documents and template files.
Can I define my own submodel?
Yes, the metamodel allows custom submodels. For data you exchange with partners, standardized templates are the better choice, because they work without bilateral agreements.
