Skip to content

Model Transformation

A VO-DML transformation is something that takes the model and expresses it in another way.

Documentation

The most basic form of transformation is to make human-readable documentation.

Code Generation

Here the model is transformed into source code in various languages, which can then be used to hold instances of the data model and then serialize in various formats - currently supported

  • XML
  • JSON

The languages supported are;

Schema

The models are also transformed into schema that describe the various serializations. The overall aim of the VO-DML tooling is to be able to exchange instances of the models between different computer languages, with all the source code and schema automatically generated.

The gradle task

gradle vodmlSchema
will generate XML and JSON schema for the model. The schema will be generated in the directory defined by the outputSchemaDir property (default build/generated/sources/vodml/schema/).

These schema files will automatically be included within the jar file for the model, so that instance validation can be automatically be done without reference to external files.

Transformation to VO-DML

The transformation of other data model representations to VO-DML is discussed elsewhere.