SAMM CLI

In a nutshell

The command line interface provides automatic generation and validation of technology-independent standard artifacts based on an Aspect Model.

More details

The Semantic Aspect Meta Model (SAMM) CLI is the command line interface for working with your Aspect Models, for example, validating them, creating projections such as JSON Schema / OpenAPI spec, or turning them into code for a Java-based API.

The SAMM CLI and other open source tools and specifications developed in numerous initiatives to promote open industry standards are part of Bosch Semantic Stack. At the same time, they are freely usable by all companies that want to drive data homogenization further. Learn more about our open source ecosystemexternallink 20 on our website.

Aspect Models and their implementation as data sources are at the heart of Bosch Semantic Stack and the starting point of implementing the software stack. They turn raw data into valuable information that is readable and usable regardless of its source thanks to the semantic description.

To ensure that the Aspect Models themselves can be understood and reused across organizations and domains, they all follow the same specification — the Semantic Aspect Meta Model (SAMM).

After creating an Aspect Model, your semantic journey can continue by sharing the insights of an Aspect Model in an OpenAPIexternallink 20 specification, resulting in a JSON Schemaexternallink 20, an HTML documentation or other artifacts.
It is also possible to create Java classes from this Aspect Model.

The SAMM CLI is a command line tool that allows the quick generation of these "downstream" artifacts as well as further tools, see the SAMM CLI documentationexternallink 20 for the complete picture. By using the SAMM CLI your information and development flow becomes easier and more efficient.

Highlights

  • Validation of Aspect Models

  • Migration of Aspect Models to the newest SAMM version

  • Generation of projections to other specification standards,
    for example OpenAPI specification, JSON Schema, JSON sample payload

  • Generation of documentation artifacts from Aspect Models,
    for example HTML, PNG and SVG diagrams

  • Generation of Java code

  • Generation of an Asset Administration Shell (AAS) submodel template from an Aspect Model

Further resources