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 concern on 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’.
The wizard consists of three steps:
- First you prepare the message model specification by defining the ontologies to import, set the namespaces, define a root element and select the class that serves as the entry point to the ontology.
- In the second step, 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.
- In the thrid 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.
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.