Skip to main content

Message model wizard

Introduction​

The wizard takes a user through a series of steps to design message schemas and API specifications based on a shared domain ontology. The wizard generates schemata for JSON, XML and CSV data formats, generates example messages and generates mappings for automatic transformations of data to RDF according to the ontology. The generated JSON schemas can e.g. be used directly in OpenAPI specifications to configure a data space connector. With this functionality we aim to bridge the gap between semantic web technologies and the traditional world of IT development, and bring semantic interoperability closer to data spaces.

The design principle ‘separation of concerns’ implies that, given the availability of a single semantic model, i.e., the ontology, the establishment of the contents can be done on the level of semantics without concerns about the syntactical forms. The semantic model allows to cherry pick from the graph tree those elements that constitute the information that is to be exchanged. This results in a set of one or more sub-graphs (with selected sub-elements only) from the ontology, together denoted as the ‘abstract message’. In semantic web communities this is commonly referred to as an 'application profile'.

Wizard steps​

The wizard consists of three steps:

  1. Prepare message model (top-down from source models, or bottom-up from existing data)

    • 1a. First you prepare the message model specification by defining the source models (ontologies or json schemas) to import, set the namespaces, define a root element and select the class that serves as the entry point to the source models.
    • 1b. Alternatively, using the bottom-up approach we start from existing data and infer the message model contents from it.
  2. In the second step, after step 1a. the user selects the information that is to be exchanged, which the wizard collects into an abstract message tree (AMT). The wizard component allows users to ‘cherry pick’ the relevant classes and properties from the ontology. For both 1a. and 1b. approaches, additional refinements or additions can be made in this step.

  3. In the third step, the wizard generates a technology-specific syntax binding between the AMT and a syntax format of the user’s choice, e.g. XML or JSON. Furthermore, the wizard can generate a mapping specification to transform the data from message to RDF knowledge graph according to the input ontology. The open standard RDF Mapping Language (RML) is used to specify the mapping.

info

Note that STH wizard started from top-down approach that starts from existing standards and later was extended to support the creation of message models from raw data, the bottom-up approach. Both routes now coexist and can be used depending on the user's needs.

The following pages provide detailed information on the different steps.

Output of the wizard​

In the first scenario, the output of the wizard is the generated schema sourced from the ontology. In the second scenario, the generated RML mapping is also used.

Scenario 1: message design for API specifications​

Scenario 1: message design for API specifications

Scenario 2: data transformations to knowledge graph​

Scenario 2: data transformations to knowledge graph