Guideline - How To Create A Submodel Template
Guideline - How To Create A Submodel Template
December 2022
2 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Imprint
Publisher
Industrial Digital Twin Association
Lyoner Strasse 18
60528 Frankfurt am Main
Germany
https://www.industrialdigitaltwin.org/
Version history
Date Version Changes made
2022-12-05 1st Version Release of the Guideline
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 3
Contents
1 General ............................................................................................................................................ 7
1.1 Overview .................................................................................................................................. 7
1.2 Scope of this document ........................................................................................................... 8
1.3 Stakeholders ............................................................................................................................ 8
1.4 Abbreviations ........................................................................................................................... 8
1.5 Conventions ............................................................................................................................. 9
1.6 Meta model version ................................................................................................................. 9
1.7 Further general information ..................................................................................................... 9
2 Format of a SMT document ........................................................................................................... 10
2.1 General .................................................................................................................................. 10
2.2 Structure of the human-readable part of SMT....................................................................... 10
2.3 IDTA document number ........................................................................................................ 11
2.4 Semantic version information of the SMT ............................................................................. 11
3 Workflows ...................................................................................................................................... 12
3.1 General .................................................................................................................................. 12
3.2 Arctifacts to be delivered ....................................................................................................... 12
3.3 Document driven workflow .................................................................................................... 13
3.4 Model based workflow ........................................................................................................... 14
3.5 Semantic driven workflow ...................................................................................................... 16
4 UML generation ............................................................................................................................. 18
4.1 General .................................................................................................................................. 18
4.2 UML design style ................................................................................................................... 18
4.3 UML via XMI export ............................................................................................................... 19
4.4 UML via PlantUML export ..................................................................................................... 20
5 Generic forms preset ..................................................................................................................... 21
5.1 General .................................................................................................................................. 21
5.2 Attribution of a SMT ............................................................................................................... 22
5.3 Exporting options file ............................................................................................................. 22
5.4 Usage of generic forms in AAS user applications ................................................................. 22
6 Table format for Submodels and SubmodelElements .................................................................. 23
6.1 General .................................................................................................................................. 23
6.2 Table heads ........................................................................................................................... 23
6.3 Table row items ..................................................................................................................... 24
7 Qualifers and attributes of SMT elements ..................................................................................... 26
7.1 General .................................................................................................................................. 26
4 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Figures
Figure 1 – Detailed overview of Asset Administration Shell and related roles [7] ............................................. 7
Figure 2 – Information exchange between AAS user applications [7] ............................................................... 7
Figure 3 – Sample cover page of a SMT document ........................................................................................ 11
Figure 4 – Document driven workflow .............................................................................................................. 13
Figure 5 – Model based workflow..................................................................................................................... 14
Figure 6 – Semantic driven workflow ............................................................................................................... 16
Figure 7 – Example UML generation by exporting XMI and manually layouting in UML authoring tool ......... 19
Figure 8 – Example UML generation by exporting to PlantUML and automatic layouting .............................. 20
Figure 9 – AASX Package Explorer offering the easy filling out of Submodel "Nameplate" ........................... 21
Figure 10 – Plugin folder for Generic forms ..................................................................................................... 22
Figure 11 – Format of table heads ................................................................................................................... 23
Figure 12 – Format of table row items ............................................................................................................. 24
Figure 13 – Examplary template idShort attribute for "Book"........................................................................... 30
Figure 14 – Example of a ConceptDescription in AASX Package Explorer [R3]............................................. 31
6 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Tables
Table 1 – Used abbreviations ............................................................................................................................. 8
Table 2 – Common (sub-)sections of the human-readable part of SMT.......................................................... 10
Table 3 – Artifacts of a SMT Specification ....................................................................................................... 12
Table 4 – Format of table heads ...................................................................................................................... 24
Table 5 – Format of table row items ................................................................................................................. 25
Table 6 – Qualifiers controlling the structure.................................................................................................... 26
Table 7 – Qualifiers supporting the generic forms functionality ....................................................................... 29
Table 8 – Abbreviations of SubmodelElements ............................................................................................... 32
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 7
1 General
1.1 Overview
This document is an enabler for the IDTA specification series of Submodel template specifications. Each part
of the mentioned series specifies the contents of a Submodel template (SMT) for the Asset Administration
Shell (AAS). The the Asset Administration Shell is described in [1], [2], [3] and [6]. First exemplary Submodel
contents were described in [4] and [8], while the actual format of this document was derived by the
"Administration Shell in Practice" [5].
The IEC working group IEC TC65 WG24 aims at publishing an international standard [7]. Figure 1 illustrates
the AAS and Submodel template guiding the creation of Submodels. SubmodelElements and Submodel
template elements may reference entries in concept repositories. The creators of Submodel template
specification are designated as the Asset Administration Shell responsibles.
lists provides
Submodel template(s)
(including Submodel template guides Submodel(s) uses accesses
elements)
AAS interface(s) AAS user application(s)
(including SubmodelElements)
(optional)
references
references
references
references
concept repositories
associated
asset integration
(optional)
AAS responsible
creates and governs
integrates
provides
asset
Figure 1 – Detailed overview of Asset Administration Shell and related roles [7]
Figure 2 illustrates two the Asset Administration Shell user applications, to use the interoperable Submodel
information.
From the viewpoint of the meta-model [6], a Submodel template is a Submodel with kind = Template.
accesses
(provides
information) AAS user application
Asset Administration Shell A
has interest in
asset
This document facilitates the creation of Submodel template for the the Asset Administration Shell. These
Submodel templates will allow the Asset Administration Shell responsibles to create and provide
standardized models, which represent certain aspects of an asset. Specifically, this document describes how
Submodel template specifications for created Submodel template shall be created in order to maintain a set
of common features and structures. For this purpose, different workflows are described.
The Submodel template comprises computer-readable information, such as AASX package files, but also
human-readable information. The latter can be described in form of a Submodel template specification.
Note: In future, the provision of human-readable information by means of markdown files in GitHub or such is
foreseen.
1.3 Stakeholders
Stakeholders for reading and applying this document are, among others:
1.4 Abbreviations
The following abbreviations are used in this document:
Table 1 – Used abbreviations
Abbreviation Description
SM Submodel
WD Working draft
1.5 Conventions
For some terms, a special notation is used, in order to distinguish them from English text. Defined in [6],
these include:
• Imprint
• Version history, giving information to the public, allowing to understand the evolution of the
SMT over multiple versions.
• Tables of contents, figures, tables.
• Tables and figures shall provide titles.
• Uniform scheme for clauses and subclauses, typically:
1.1 About this document Provide very brief introduction to AAS and associated documents. Only
referring to other documents. Typically taken unchanged from the template.
1.2 Scope of the Submodel Give precise but concise definition of the scope, clarifying industry
segements, stakeholders, life cycle steps, associated assets and subject
matter to be represented.
2 Approach of the Submodel Different subclauses explaining background and approaches, which lead to
the current design of the SMT. Often, a UML diagram of the SMT entities is
given. Often, a preview, how the subject matter could be presented to the
user, is given, e.g. a screenshot of a plugin for the AASX Package
Explorer, or inside an authoring system.
3 Submodel and SubmodelElements Detailed description of the different entities by the means of the defined
table format.
Appendix A - Explanations on used table To allow the understanding of the definitions without extensive referring to
formats other documents this most important information shall be given in every
SMT.
Appendix C - List of authors IDTA depends on agile efforts of many volunteers. Public appreciation
could and should be given.
• The version designates the major version of the SMT. An increment typically indicates a
breaking change, requiring an adoption of the information by a human.
• The revision designates a minor version of the SMT. An increment typically designates
recognizable changes, fixes and feature improvements, which are not breaking changes.
A revision requires a version. This means, if there is no version there is no revision neither.
12 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
3 Workflows
3.1 General
In this section, multiple possible workflows are being described. Any workflow might be executed by an
architect, however, reviews within the SMT team and with possible domain experts are considered essential.
The workflow and the achieved results shall comply to the IDTA Process Description [R1].
SMT specification Word processor document, representing the SMT specification at a One
whole
Pure SMT AASX file AASX file for the SMT, containing a Submodel and One
SubmodelElements of kind = Template. No Qualifiers according 7.2,
7.3 shall be attributed.
Qualified SMT AASX An AASX as above, but SubmodelElements are attributed with ZeroToOne
file Qualifiers, such as described in 7.2, 7.3.
Example AASX file(s) AASX files with exemplary AAS, Submodels and ZeroToMany
SubmodelElements of kind = Instance, demonstrating the purpose
of the SMT
Generic forms preset(s) Option file(s) for the AasxPluginGenericForms in JSON format to ZeroToMany
allow easy creation and filling out of SMTs
Source format file for If the SMT specification uses figures for illustrations, the source ZeroToMany
given figures format files shall be given for later maintenance.
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 13
The specification document is in the center of activities. The following working steps can be distinguished:
(1) Some member of the Submodel working team, e.g. the architect or the interested person [R1], create
an initial version of the working draft (WD) of SMT specification document. This is a word process
document (DOC), following the templateof the IDTA.
The template is filled out with all structural relevant text section as described in 2.2.
The requisites of the process "(5) Designing a Submodel b)" [R1] are considered.
(2) Frequent reviews within the working team are executed, using just the actual status of the working
draft.
If more extensive reviews of the working draft are required, e.g. together with another working group,
then a line numbered PDF is recommended and commenting via the IDTA comments template [R2] is
recommended.
(3) If the discussions within the working team come to its conclusions and the "Designing a Submodel"
phase [R1] is concluded, a SMT AASX file shall be created (SMT AASX).
This can be done either by manually editing the AASX, e.g. using the AASX Package Explorer [R3].
Or an (semi-) automatic import can be facilitated, e.g. by AASX Package Explorer, menu option "File /
Import / Import Submodel from table".
(4) For approaching the official review, "(6) Review" phase [R1] is initiated, by preparing the final version
of the working draft (WD) and handing over to architect and IDTA office.
These persons will follow on with the process, which will finally lead to a publication via IDTA GitHub
and IDTA homepage.
(5) Using the SMT AASX model, the final SMT AASX file can be defined. Examples can be generated,
using the action "Submodel / Turn to kind instance" [R3]. If adequate, a Generic forms preset can be
14 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
done by defining the Qualifiers as in 7.3 and exporting via "File / Export / Export Submodel as options
for generic forms" [R3]. This preset might be used to easily generate more example AASX files. All
these files shall be handed over to the architect and the IDTA office, as well.
The AASX model of the SMT is in the center of activities. The following working steps can be distinguished:
(1) Some members of the Submodel working team, e.g. the architect or the interested person [R1], create
an initial design approach and partitioning into multiple tables of SubmodelElements.
It is also recommended to formulate the scope of the Submodel, e.g. during the kick off the working
team.
Table formats can be DOC or XLS, multiple tables can be parsed in a single document. These tables
can also be easily reviewed with external persons, as well.
(2) Early in time, these tables are imported into an SMT AASX. The AASX Package Explorer [R3]
provides such functions under "File / Import / Import from table", see [R5].
By the same mechanism, tables can be exported back via "File / Export / Export to tables" to form a
SMT design roundtrip.
(3) Early reviews with the group can be executed direct by working on the SMT AASX model.
The AASX model can be easily turned into Example AASX by using the action "Submodel / Turn to
kind instance" [R3] to testdrive the filling in with exemplary data.
Or, by defining Qualifiers as in 7.3 and using "File / Export / Export Submodel as options for generic
forms" [R3], a Generic forms preset can be generated, which could be handled to multiple people to
test-drive the SMT.
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 15
Or, by using "File / Export / Export Submodel as snippet for PredefinedConcpets" [R3], source code
for predefined concepts could be generated to be used for programmatic test exports of exemplary
Submodel contents.
(4) Using the SMT AASX as a turntable, imports/ exports can also be done with respect to the working
draft (WD) of SMT specification document.
Also, the scope and further definitons might be integrated already into the document.
The required tables can be directly exported [R3].
Additionally, UML can be generated by "File / Export / Export Submodel as UML" [R3] (see clause 4).
(5) Using the SMT specification working draft (WD), together with the SMT AASX model, reviews with the
SMT working team, users and domain experts can be facilitated.
If more extensive reviews of the working draft are required, e.g. together with another working group,
then a line numbered PDF is recommended and commenting via the IDTA comments template [R2] is
recommended.
(6) For approaching the official review, "(6) Review" phase [R1] is initiated, by preparing the final version
of the working draft (WD) and handing over to architect and IDTA office.
Architect and IDTA office will follow on with the process, which will finally lead to a publication via IDTA
GitHub and IDTA homepage.
(7) Using the SMT AASX model, the final SMT AASX file can be defined.
At least one Example AAS shall be generated, e.g. by using the action "Submodel / Turn to kind
instance" [R3].
If adequate, a Generic forms preset can be realized by defining the Qualifiers as documented in
clause 7 and exported (see clause 5.3). This preset might be used in turn to easily generate more
Example AASX files.
All generated files shall be handed over to the architect and the IDTA office, as well.
16 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
1 see https://www.eclass.eu/fileadmin/downloads/application-documents/ECLASS_terms-of-use_4-2_en.pdf
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 17
Note: This approach also might start with Excel or UML diagrams or any other supporting material before doing the
first semantic definition of the submodel, similar to what is described in chapter 3.4.
(2) Frequent reviews are executed with the domain experts and stakeholders.
(3) As soon as the semantic definition has a mature state, an AASX file is created. In the basic
approach this is done manually. In an advanced approach a corresponding importer or generator
is available that creates the AASX. Example: for ECLASS there is an importer available in the
AASX Package Explorer that creates a corresponding submodel. Semi-automatic approaches
might also be supported.
(4) Internal reviews ensure that the created AASX file is correct.
(5) Then a corresponding textual specification of the submodel template needs to be created. Again,
this is either done manually or this is generated (semi-)automatically.
(6) Again, internal reviews ensure that the created SMT Specification WD document is meeting the
requirements.
(7) After the SMT Specification WD document is available an official review can be started.
(8) If the SMT Specification can be released after the findings of the review are incorporated the
release is prepared containing the identified deliveries as specified (see 3.2).
(9) If no existing open semantic definition for the submodel under consideration is available (see step
(1) b) then also the artifacts used to describe the semantic model in a machine-readable way – if
available - shall be added to the release for future maintenance and reuse.
18 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
4 UML generation
4.1 General
Having an SMT AASX file available, Unified Modeling Language (UML) can be generated easily via the
AASX Package Explorer. This is achieved using "File / Export / Export Submodel as UML" [R3].
Precondition is, that cardinalities of the different SubmodelElement are designated via the Qualifier
"Multiplicity", according to clause 7.2. UML can be generated for Submodels of kind = Template or kind =
Instance, even with (example) values attached.
Note 1: As of Jan 2022, the directionality is not exported correctly. So, direction of each association needs to be
set to unspecific, in order to render aggregation associations in a correct way.
Note 2: The UML authoring tool should be able to export vector graphics in order to allow good scaling for
publication. In Enterprise Architect this is achieved by "Start / Preferences / General / Clipboard Form at:
Metafile" and "Publish / Save Image / Save to Clipboard" (V13).
Note 3: The shown example required about 10 min design time.
class Nameplate
«SMC» «SMC»
AssetSpecificProperties GuidelineSpecificProperties
0..1 1..*
+ GuidelineSpecificProperties: SMC [1..*] + GuidelineForConformityDeclaration: string
Figure 7 – Example UML generation by exporting XMI and manually layouting in UML authoring tool
20 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Note 1: The generated UML can be slightly adjusted, but not manually layouted, by some options. In the example,
the line "mainframe SMT Nameplate" introduced a frame around the diagram.
Note 2: The example file was saved as SVG, which allows a vector scaling for publication.
Note 3: The shown example required about 15 sec design time.
Figure 9 – AASX Package Explorer offering the easy filling out of Submodel "Nameplate"
22 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Figure 11 shows the format of the heading part of such table. For the different rows, the following provisions
are given by Table 4:
24 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
A idShort: This cell shall contain the idShort of the AAS element with children. Could be an idShort
with enumeration template such as "{000}" or "{00}" (see 7.4). If the AAS element is used
multiple times as child of a parent AAS element, then a list of comma separated idShorts
can be given.
Must not contain further information, such as "Note: the above idShort shall always be as
stated."
B Class: This cell shall contain the AAS element type of the given AAS element with children. Can
be: Submodel, SubmodelElementCollection, Operation, Entity,
AnnotatedRelationshipElement.
C semanticId: This cell shall contain the idShort of the AAS element with children. Headed either by [IRI]
or [IRDI].
D Parent: This cell shall contain the idShort of the parent of the AAS element with children. If multiple
parents in the SMT use it, then a list of comma separated idShorts can be given.
Must not contain further information, such as notes or annotations.
E Explanation This cell shall contain an explanation, which should be identical to the english language of
the description of the AAS element with children.
Note: It is strongly recommended to use exactly the rows and columns as described. The import tools of AASX
Package Explorer rely on this.
Note: This row format simplifies the manual editing of tables, such as described in the document driven workflow
(see 3.3).
Note: It is strongly recommended to use exactly the rows and columns as described. The import tools of AASX
Package Explorer rely on this.
1 2 3 4
Figure 12 shows the format of the individual row items of such table. For the different row items, the following
provisions are given by Table 5:
After the table header, before the first row items, two table rows shall be given featuring the respective labels
defined in Table 5, as illustrated by Figure 12.
26 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Description
Note: In final version 3.0 of the meta model [6], SubmodelElementCollection is amended by SubmodelElementList.
Consequently, above numbering scheme will not be required anymore.
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 31
The delivery of the SMT shall include definitions of ConceptDescriptions for all semanticIds referring to not
publicly accessible dictionaries, such as ECLASS, IEC CDD or [R4].
Note: Please be aware that dictionaries above do not provide automatic retrieval (e.g. by REST interface); the
automatic provision of units of measure is not possible unless ConceptDescriptions are provided within the
AASX package.
32 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
1. General
The used tables in this document try to outline information as concise as possible. They do not convey all
information on Submodels and SubmodelElements. For this purpose, the definitive definitions are given by a
separate file in form of an AASX file of the SMT and its elements.
• If an idShort ends with '{00}', this indicates a suffix of the respective length (here: 2) of decimal
digits, in order to make the idShort unique. A different idShort might be choosen, as long as it
is unique in the parent’s context.
• The Keys of semanticId in the main section feature only idType and value, such as:
[IRI]https://admin-shell.io/vdi/2770/1/0/DocumentId/Id, as descibed in the serialization of the
AAS meta model. The attributes "type" and "local" (typically "ConceptDescription" and "(local)"
or "GlobalReference" and (no-local)") need to be set accordingly; see [6].
• If a table does not contain a column with "parent" heading, all represented attributes share the
same parent. This parent is denoted in the head of the table.
• Multi-language strings are represented by the text value, followed by '@'-character and the
ISO 639 language code: example@EN.
• The [valueType] is only given for Properties.
Annex B. Resources
The following ressources are available to help developing SMT specifications. Ressources with heading
backslash refer to the IDTA Teams drive.
[Resources used in the document]
Ressource Description
[R7] PlantUML
https://plantuml.io
[R8] ISO/IEC 19505-2:2012, Information technology — Object Management Group Unified Modeling
Language (OMG UML) — Part 2: Superstructure
[R9] BAMM (BAMM Aspect Meta Model) specification, Open Manufacturing Platform
https://openmanufacturingplatform.github.io/sds-bamm-aspect-meta-model/bamm-specification/2.0.0-
M1/index.html
34 | GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION
Annex C. Bibliography
[1] “Recommendations for implementing the strategic initiative INDUSTRIE 4.0”, acatech,
April 2013. [Online]. Available: Recommendations for implementing the strategic initiative
INDUSTRIE 4.0. Final report of the Industrie 4.0 Working Group - acatech - National
Academy of Science and Engineering
[2] “Implementation Strategy Industrie 4.0: Report on the results of the Industrie 4.0
Platform”; BITKOM e.V. / VDMA e.V., /ZVEI e.V., April 2015. [Online]. Available:
Implementation Strategy Industrie 4.0 (bitkom.org)
[3] “The Structure of the Administration Shell: TRILATERAL PERSPECTIVES from France,
Italy and Germany”, March 2018, [Online]. Available: https://www.plattform-
i40.de/I40/Redaktion/EN/Downloads/Publikation/hm-2018-trilaterale-coop.html
[5] “Verwaltungsschale in der Praxis. Wie definiere ich Teilmodelle, beispielhafte Teilmodelle
und Interaktion zwischen Verwaltungsschalen (in German)”, Version 1.0, April 2019,
Plattform Industrie 4.0 in Kooperation mit VDE GMA Fachausschuss 7.20, Federal
Ministry for Economic Affairs and Energy (BMWi), Available: https://www.plattform-
i40.de/PI40/Redaktion/DE/Downloads/Publikation/2019-verwaltungsschale-in-der-
praxis.html
[6] “Details of the Asset Administration Shell; Part 1 - The exchange of information between
partners in the value chain of Industrie 4.0 (Version 3.0RC01)”, November 2020, [Online].
Available: Plattform Industrie 4.0 - Details of the Asset Administration Shell - Part 1
(plattform-i40.de)
[7] “IEC 63278-1 ED1: Asset Administration Shell for industrial applications – Part 1: Asset
Administration Shell structure”
[8] “IDTA 02006-2-0 Digital Nameplate for industrial equipment", Version 2.0, 20. October
2022, Available: https://github.com/admin-shell-io/submodel-
templates/tree/main/published/Digital%20nameplate/2/0
GUIDELINE: HOW TO CREATE A SUBMODEL TEMPLATE SPECIFICATION | 35
www.industrialdigitaltwin.org