This use case presents an implemented solution to the OMG Ontology Definition Metamodel (ODM) specification.
ODM offers a set of metamodels and mappings for bridging the metamodeling world and the ontologies. The present
solution supports the UML 2.0 metamodel and the OWL metamodel as defined in ODM.
The ODM is a recently adopted standard from the Object Management Group that supports ontology development and
conceptual modeling in several standard representation languages. It provides a coherent framework for ontology
creation based on MOF (Meta Object Facility) and UML (Unified Modeling Language). In this way it plays a central
role for bridging Model Driven Architecture based standards and Semantic Web technologies.
ODM Overview
ODM defines five metamodels (RDFS, OWL, Topic Maps, Common Logic and Description Logic), two UML Profiles
(RDFS/OWL Profile, Topic Maps Profile) and a set of QVT mappings from UML to OWL, Topic Maps to OWL and
RDFS/OWL to Common Logic. At this current time, we have implemented two of these metamodels, RDFS and OWL in
KM3 and the UML Profile for RDFS/OWL. We have also implemented the mapping between UML and OWL by using ATL.
UML is the most used and known language to model application structure, behaviour and architecture but also
business process and data structure. UML is an OMG specification currently in version 2.0. The UML metamodel used
in this case study is the one available under the UML eclipse project (eclipse.org/uml2). By using this metamodel
we insure that models used by our transformation can be created by different UML tools supporting current UML 2.0
specification.
OWL (Web Ontology language) is the most expressive language for representing and sharing ontologies over the Web.
OWL is designed for use by applications that need to process the content of information instead of just presenting
information. It facilitates greater machine interoperability of Web content than other description languages like
XML, RDF and RDF-S by providing additional vocabulary along with a formal semantics.
The OWL metamodel is implemented in by extending the RDFS metamodel. The figure below shows an excerpt of the class
hierarchy present in OWL. An OWL Class is a kind of RDFS Class, like OWL Property are kind of RDF
Property. OWL offers a richer semantic to express ontologies. With it we can define cardinalities on properties, defined classes with set operators like union, intersection, complement, etc.
The notion of Individual in OWL is used to represent resources, i.e. class instances. Each element is identified by a unique URI identifier.
OWL Metamodel: hierarchy concept excerpt
The ATL transformation UML2OWL has been implemented according to the ODM specification, i.e. corresponding QVT
mapping. This transformation made possible the conversion of an arbitrary UML model into OWL ontology. The
complete scenario of this transformation is given in figure below.
UML2OWL complete transformation scenario
This scenario is composed of 2 ATL transformations: the core transformation UML2OWL takes has input a UML
model and produces an ontology conforms to the OWL metamodel. The second transformation is an XML extractor that
produces an XML document conforms to the OWL/XML syntax, as defined by the W3C specification.
The core transformation includes two distinct parts. The first part is dedicated to the mapping from UML model
to ontology, i.e. UML classes are mapped into OWL classes, attributes into datatype property, associations into object property, etc.
The second part of the transformation deals with instances. For simplicity and demonstration reason we choose to define instances in the same class diagram as the UML model. Those instances are converted into OWL individuals (OWL term for instances).
This method offers the possibility to manage UML instances and populate the ontology with corresponding knowledge. An improved method to deal with instances should be provide soon.
A UML model representing a museum is given below and serve as a running example for this use case.
Museum Model
The UML2OWL transformation can produce an OWL model in ecore format or an OWL document conform to the OWL/XML presentation syntax. To obtain this XML file, we have implemented an OWL/XML extractor that transforms a model conforms to the OWL metamodel into an owl document.This will let you use obtained OWL files under ontology tools like Protégé. An excerpt of the Museum ontology produced by the UML2OWL transformation from the Museum UML Model is given below. In this excerpt you should notice the presence of a class Painter and one of its Individual representing Picasso.
Museum ontology excerpt in OWL/XML format
This use case demonstrates the feasibility to implement the ODM specification, especially the UML to OWL mapping by
using AMMA tools. This ATL scenario provides a solution for bridging modeling tools based on UML or MOF (e.g. MDA
Tools) and tools for the Semantic Web and ontology development.
|