📰 The
Eclipse AAS4J 1.0.0-milestone-03
release is available on Maven Central Repository and includes the following artifacts implementing the AAS Specs – Part 1 V3.0 (final):dataformat-core
,dataformat-aasx
,dataformat-xml
,dataformat-json
,dataformat-parent
, andmodel
.
Eclipse AA4J implements the specification of the Asset Administration Shell (AAS) such as metamodels, submodels, serialization and deserialization modules, validators, and transformation libraries based on the AAS specifications. It also contains all classes and properties as defined by the document 'Details of the Asset Administration Shell' published on Industrial Digital Twin Association (IDTA).
Note: AAS libraries for java previously available in admin-shell-io.
Eclipse AA4J consists of the following components:
- AAS Model
- Dataformat Library
- Validator
The AAS Model is an implementation of the Asset Administration Shell metamodel in Java. It contains all classes and properties as defined by the document 'Details of the Asset Administration Shell' published on Industrial Digital Twin Association (IDTA).
Please refer to AAS Model README for more information.
Eclipse AA4J contains an AAS Java Dataformat Library. The AAS Java Dataformat Library is a collection of software modules to serialize and deserialze instances of the Asset Administration Shell from and to Java instances. De-/serialization works according to the dataformat schemas published in the document 'Details of the Asset Administration Shell', published on Industrial Digital Twin Association (IDTA).
Some examples can be found on the documentation webpage.
You can build the project using Maven by simply executing at the repository root:
mvn clean package
or by integrating the respective modules as dependencies from Maven Central Repository, for instance:
<dependency>
<groupId>org.eclipse.digitaltwin.aas4j</groupId>
<artifactId>dataformat-json</artifactId>
<version>latest-version</version>
<dependency>
The project contains several modules:
dataformat-parent
Maven parent module that contains the respective de-/serializers for the different data formats.dataformat-core
Location of the general classes and interfaces that are used by more than one de-/serializer.dataformat-aasx
AASX de-/serializerdataformat-json
JSON de-/serializerdataformat-xml
XML de-/serializermodel
Meta-model classes be instantiatedvalidator
Validator against the semantic restrictions of the AAS meta-model
AAS4J's predecessor contained serialization modules for AutomationML and OPC UA for which however no longer up-to-date specifications exist. Implementation is halted until the specs have been updated.
Additionally, the sources that are used for generating the static documentation using DocFX in the gh-pages
branch are located in the docs
folder.
Current status of the project is incubating.
If you find any issue, please, file it at https://github.com/eclipse-aas4j/aas4j/issues. Note that some issues might affect the AAS specifications that are not addressed here but at the corrsponding workstreams (AAS in Details) for the Industrial Digital Twin Association (IDTA).
You can contact us via our mailing list ([email protected]).
Feel free also to (subscribe to our mailing list)[https://accounts.eclipse.org/mailing-list/aas4j-dev]
We always look for contributions, bug reports, feature requests etc. Please, read https://github.com/eclipse-digitaltwin/aas4j/blob/main/CONTRIBUTING.md for more information.
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.