model2owl Project Documentation

The model2owl software project was conceived as part of the eProcurement Ontology (ePO) public procurement digitization project of the Publications Office of the European Union (OP). It comprises a toolset, or set of programming tools, for transforming an UML (v2.5) model from its XMI (v2.5.1) serialisation into a formal OWL ontology, and a SHACL shape. This approach is conformant to the SEMIC Style Guide and with eProcurement Ontology Architecture specification.

The UML transformation is performed using XSLT stylesheets under the assumption that the UML model conforms to the set of conventions outlined in ePO UML conventions. This set of UML conventions is aligned with and extends the UML conventions specified in SEMIC Style Guide. Validation rules for the transformation confirm the conformance to these conventions.

The following capabilities are implemented:

  • UML → Compliance report (ideal for checking the model against the established conventions)

  • UML → Glossary (ideal for a quick overview of terminology defined)

  • UML → OWL 2 (lightweight ontology suitable as a core vocabulary)

  • UML → OWL 2 (heavyweight ontology with additional axioms suitable for reasoning purposes)

  • UML → SHACL (data shapes suitable for representing an application profile)

  • UML → SVRL (Compliance report in SVRL format)

This documentation is evolving and aims at covering the following aspects related to use of these tools:

  • The architectural setup of the toolset and the ontology

  • The conceptual model conventions that the UML model should adhere to, in order to enable the tools to generate the best possible results.

  • The transformation rules applied in the process of conversion.

  • The set of validation rules that check a transformation’s conformance to the established conventions (and UML interpretations).

The tools can be used on any other ontology that is built according to the provided modelling architecture and UML conceptual model conventions.

The toolset can be used in two ways. The first way offers a simplified setup based on GitHub Actions that requires no infrastructure and is available online. It promotes a GIT-based workflow where input, configuration and transformed artefacts are stored in a repository and a user commit triggers execution of the model2owl transformation. Details of that method can be found in the project description. Alternatively, the software can be installed and executed locally. The user can interact with the software through a Make-based command line interface. Please check the installation, configuration and usage instruction to learn more.