27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The tool’s ability to deal with SWRL rules based on an UML<br />

profile based approach as discussed in literature [8] has been<br />

successfully demonstrated in [4][p.7,8].<br />

D. A Word about XML Metadata Interchange<br />

Evaluation showed that the transformation proccess heavily<br />

depends on the format of the provided XMI file. Although<br />

most of the leading UML modeling tool vendors support XMI,<br />

their formats are highly incompatible and implementations<br />

often have a lack of quality. Often export and import of simple<br />

diagrams within the same modeling tool is doomed to fail.<br />

One of the reasons for this is that XMI attempts to solve<br />

a technical problem far more difficult than exchanging UML<br />

models; it attempts to provide a mechanism for facilitating the<br />

exchange of any language defined by the OMG’s MetaObject<br />

Facility (MOF). Furthermore, the UML 2.* Diagram Interchange<br />

specification lacks sufficient detail to facilitate reliable<br />

interchange of UML 2.* notations between modeling tools.<br />

Since UML is a visual modeling language, this shortcoming<br />

is a show-stopper for many modelers who don’t want to redraw<br />

their diagrams 10 .<br />

There are several reasons why transformation of VP XMI<br />

2.1 format into valid OWL fails using existing UML2OWL<br />

tools. First of all, VP takes use of different XML namespaces<br />

to distinguish between different types of elements (i.e. classes,<br />

associations, packages) which do not have been considered by<br />

most of the transformation tools. Secondly, the XML structure<br />

is nested and data for particular elements have to be grabbed<br />

using cross references. This turned out to be fragile according<br />

to XSLT scripts implementations and tools who try to tackle a<br />

joint solution for all XMI dialects. Furthermore, the structure<br />

of the resulting VP XMI file depends on the state of the<br />

UML editor view during the export process (e.g. if a particular<br />

package/part of the diagram is selected, the XML hierarchy<br />

changes). Finally there are even incompatibilities between<br />

different versions of VP (i.e. between VP UML 7.2 and VP<br />

UML 8.2).<br />

The conclusion is that an UML2OWL transformation process<br />

always should be tailored to a specific vendor’s UML<br />

solution. UML2OWL tool developers are required to specify<br />

vendor, product name and version of the UML editor they<br />

support as well as XMI versions and instructions, how to<br />

export that XMI version from the respective UML editor.<br />

Furthermore they must define, which UML elements their<br />

tool supports (and which not) and provide adequate reference<br />

models, including test cases (automated?) and documentation.<br />

III. UMLTUOWL TRANSFORMATION TOOL<br />

A. Overview<br />

umlTUowl has been developed to overcome the problems<br />

that arise during the transformation process of evaluated<br />

UML2OWL tools. It is not only optimized to transform UML<br />

class data models, as used by partners of CDL-Flex (Visual<br />

Paradigm for UML V7.2, 8.2; XMI 2.1, Microsoft Visio 2010<br />

10 http://www.uml-forum.com/FAQ.htm<br />

Supported UML elements Not supported UML elements<br />

- classes - multiplicity of attribute value<br />

- abstract classes - attribute values except primitives<br />

- interfaces - package elem. inside a diagram<br />

- generalization - data constraints<br />

- multiple packages (diagrams) - class operations<br />

- attributes - association classes<br />

- visibility of attributes (partly) - n-ary associations<br />

- attrs. with primitive data types - overlapping/disjoint classes<br />

- attrs. with XML data types - roles (VP, ArgoUML)<br />

- associations - XOR annotation<br />

- navigable associations - redefnition of derived attributes<br />

- multiplicity of associations - subset annotation<br />

- aggregations - ordering+uniqueness attr. annot.<br />

- compositions - datatype meta annotation<br />

- labelled endpoints (MS Visio) - enumerations<br />

- comments / note elements - stereotypes<br />

TABLE I: Comparison of supported and not supported UML<br />

elements<br />

XMI 1.0) into OWL 2 DL ontologies, but also attempts to be<br />

a best practice lightweight framework for engineers and thus<br />

is hosted as an open source project. 11 Both, executable and<br />

source code are available.<br />

umlTUowl eases the integration of new transformation<br />

scripts, e.g. support for ArgoUML 0.32.2 XMI 2.1 (freeware)<br />

has been already implemented. Its maxim is: don’t try to provide<br />

an overall transformation solution for all vendors, because<br />

parsing of XMI is too fragile. Be prepared for variations and<br />

UML-model-vendor updates that affect the structure of the<br />

resulting XMI code by providing traceability of supported<br />

UML tools, as well as providing high testability, modifiability<br />

and extensibility.<br />

Traceability is reached by keeping record of version numbers,<br />

export settings and supported UML elements for each<br />

vendor-specific UML modeling tool. This approach has several<br />

advantages. It provides end user documentation and guarantees<br />

designated transformation results, which at all times are<br />

OWL2 DL compatible and thus should be also compatible<br />

with current versions of Protégé (¿=4.1). Furthermore, by<br />

leveraging automated testing those artifacts also ensure that<br />

whenever a vendor adapts a modeling tool, these changes<br />

will be detected. umlTUowl comes with a bulk of unit tests<br />

and three implemented reference model tools[4][pg.37ff.],<br />

hence providing comprehensive templates to developers, who<br />

want to implement transformations for additional models. By<br />

utilizing a meta model, either a new input format (e.g. Entity<br />

Relationship Diagram (ERD) instead of UML) may be added,<br />

or the output converter (e.g. DAML instead of OWL) may be<br />

replaced.<br />

Supported UML elements are outlined in Table I. VP<br />

uses the term package for diagram synonymously. umlTUowl<br />

allows to define, if all packages should be merged into a<br />

single ontology, or if an own ontology file should be created<br />

for each package. The elements which are not supported by<br />

umlTUowl typically are not commonly used or only wellunderstood<br />

by UML experts. They have not been implemented<br />

11 http://sourceforge.net/projects/uml2owl<br />

732

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!