Skip to main content

Generate schemata from message specification

Wizard step 3

At a certain point, you may conclude the customized message tree is done and you want to move on. The wizard can generate several outputs, like message schemas in different languages and example messages. These outputs are generated dynamically and freely, so you can check the output, alter the message and try again. Note that generation is a relatively newly added feature, and that not all of the possible constructs for all syntaxes may be generated. So we advise you to use the generated document as a starting point rather than as an end result. Also if you find anything you don't expect, or miss anything you do expect, please report it to us, so we can improve our output generators.

XML schema and example

The wizard has two styles of generating XML schemas. These styles are called "Venetian Blinds" and "Russian Doll" style. A toggle switch allows you to toggle between these styles. Note that the Venetian Blinds style is still experimental, due to difficulty in recognizing identical elements down the tree, so Russian Doll is the safest choice for you. More information about these styles are listed in the XML schema design document.

JSON schema and example

For the JSON Schema generation also these two styles apply: Russian Doll style, and Venetian Blinds style. The wizard will generate an example message as well and use your provided example values, or value constraints, or fixed value first, and if these are not present for the element it will create a random value.

RDF mapping language (RML)

End users interested in using ontologies and triples as a unit of information can use the RML generator. Both XML schema and JSON schema offer a RDF Mapping Language specification, next to the schema. This RML specification formalizes a way to translate XML or JSON messages back to triples, which are the basic units of information in an ontology. In this way the xml and json information can be automatically translated into triples that can be fed into a triple store. In order for this functionality to work the generator relies on URI annotations of elements and underlying properties.

SHACL

SHACL is a promising Semantic Web technology. It stands for Shapes Constraint Language and it offers validation features over RDFS data. Lately, it is also used more and more as an alternative to specifying constraints in OWL, as it is considered easier to read, and closer to implementations. See SHACL output for more information.

OpenAPI schema

Using the JSON Schema as a starting point, we can create a basic OpenAPI specification (formerly known as Swagger). For now this generator provides GET, PUT and a POST path description for a message. Because some of the parameters are very specific, the goal of the OpenAPI generator is to provide a basic framework, that you can extend with your own specific things like API token or specific URL paths. More details, and design decisions for the generated OpenAPI are to be found at this page. We recommend to pick up the OpenAPI spec generated by the Wizard and continue in a Swagger editor.