This is a tool for the automated creation of a Java library containing all classes, properties and enumerations of the Asset Administration Shell (AAS) Metamodel. The tool itself is completly written in Java and uses the shapes constraint language (SHACL) to specify annotations and cardinalities for the Java classes.
Before running the tool, a profile needs to be created. This profile contains information about where the ontology sources reside. In the pom.xml, add your own profile with a (local) path to your ontology. There are multiple profiles present already which can be used as reference.
Once the profile has been created, you can build the project using Maven by simply executing at the repository root:
mvn clean package -P <Profile Name>
The project contains several modules:
aas
Module containing shapes translating RDF into Java classes matching specific requirements of projects regarding the Asset Administration Shell.common
Module containing shapes translating RDF into Java classes.util
Module containing some generic utility classes, such as custom annotations.generator
This module loads all data required for the translation process from RDF ontologies to Java classes, including the shapes and the ontology.
We always look for contributions, bug reports, feature requests etc. Simply open an issue or - even better - directly propose a change through a pull request.
A detailed documentation how to use the tool and how to prepare the input and the environment is provided here.
An updated list of the committers can be found here: https://projects.eclipse.org/projects/dt.aas4j/who
This project was initiated by SAP and Fraunhofer to provide a foundation for the AAS development and to foster its dissemination.
Copyright (c) 2021 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e. V.
Copyright 2021 SAP SE or an SAP affiliate company and Eclipse AAS4J contributors.
The serializers contained in this repository provide the functionalities to serialize and deserialize instances of the Asset Administration Shell (AAS) data model from and to the AAS Java Model library. It is licensed under the Apache License 2.0 (see LICENSE).
The Model uses the concepts of the document "Specifications of Asset Administration Shell" published on Industrial Digital Twin Association (IDTA) which is licensed under Creative Commons CC BY 4.0.