Transformation of the eProcurement UML model into a formal OWL ontology
- 1. Introduction
- 2. Rules for the transformation of UML Classes and Attributes:
- 3. Transformation of UML connectors
- 3.1. Unidirectional association
- 3.2. Association Source
- 3.3. Association Target:
- 3.4. Association multiplicity
- 3.5. Recursive association
- 3.6. Bidirectional association
- 3.7. Unidirectional dependency
- 3.8. Class generalisation
- 3.9. Property generalisation
- 3.10. Class equivalence
- 3.11. Property equivalence
- 4. Transformation of UML data types
- 5. 5 Transformation of UML descriptors
- 6. Additional rules
- 7. Bibliography: Reference documents for the UML to OWL Transformations:
Adapted from the document, Transformation of the eProcurement UML model into a formal OWL ontology, 20 May 2020.
PWC EU Services/ AMI Consulting
1. Introduction
Following the format of information presentation in the document, this reference consists of four sections covering the following general UML topics:
-
Classes and attributes
-
Main connector types: associations, dependencies, and generalisations
-
How the data types and enumerations should be transformed
-
Transformation rules applicable to all UML elements regarding comments, labels, and notes.
Each section provides a table with overview of the transformation rule set it describes. The table is displayed in three columns, one for each layer of the ontology architecture:
-
the in-core ontology layer,
-
the in-data shape layer, and
-
the in-reasoning layer.
Transformation rules are specified in normative language and are aided by proto-typical UML diagram fragments, usually preceding the rule, along with representation of the corresponding OWL fragment depicted in Graffoo visual notation.
The diagrams are provided side to side to assist understanding, with the UML fragment on the left constituting the source of the transformation, and the OWL fragment on the right representing the result of the transformation.
Each transformation rule is accompanied by the formal OWL representation, in Turtle, Terse RDF Triple Language and RDF/XML syntaxes, corresponding to the UML fragment depicted in the preceding figure. RDF/XML is a syntax to express RDF graphs as an XML document. Turtle is a compact textual syntax for RDF [18] that resembles a natural text form with abbreviations for common usage patterns and datatypes.
1.1. UML Visual Notation
1.1.1. Classes and Attributes:

Figure 1 depicts simple, abstract and regular classes with and without attribute specifications. Note that no class methods are ever employed as this document as the transformations aim at data structures only.
1.2. Graffoo visual notation
This section provides the main Graffoo elements employed in this document. A detailed description can be consulted in the OWL standard specifications [15] and in the Graffoo user guide [9].
1.2.1. Graffoo elements:
Graffoo visual notation for classes, instances and datatypes Notation:

Graffoo visual notation for object and data properties and generic links
-
A yellow rectangle with solid black border is used to declare classes. Solid black and labelled arrows are used to declare class axioms.
-
A green rhomboid with solid black border is used to declare datatypes. Solid black and labelled arrows are used to declare class axioms.
-
A pink circle with solid black border is used to declare individuals. Solid black and labelled arrows are used to declare axioms and assertions among individuals.
-
A green solid line is used to declare data properties, where the empty circle at the beginning identifies the property domain while the empty arrow at the end indicates the property range.
-
A blue solid line is used to declare object properties, where the solid circle at the beginning identifies the property domain while the solid arrow at the end indicates the property range.

2. Rules for the transformation of UML Classes and Attributes:
The rules covered on this page are listed in the table below:
UML element Rules in reasoning layer | Rules in core ontology layer | Rules in data shape layer | Rules in reasoning layer |
---|---|---|---|
Class |
Rule 1 |
Rule 2 |
|
Abstract class |
Rule 3 |
||
Attribute |
Rule 4 |
Rule 5 |
|
Attribute type |
Rule 7 |
Rule 6 |
|
Attribute multiplicity |
Rule 8 |
Rule 9, Rule 10 |
2.1. Class
In UML, a Class is used to specify a classification of objects.
UML represents atomic classes as named elements of type Class without further features. In OWL, the atomic class, owl:Class, has no intension. It can only be interpreted by its name that has a meaning in the world outside the ontology. The atomic class is a class description that is simultaneously a class axiom.

Rule 1 (Class - in core ontology layer). Specify declaration axiom for UML Class as OWL Class where the URI and a label are deterministically generated from the class name. The label and, if available, the description are ascribed to the class.
|
|
Listing 1: Class declaration in Turtle syntax |
Listing 2: Class declaration in RDF/XML syntax |
Rule 2 (Class - in data shape layer). Specify declaration axiom for UML Class as SHACL Node Shape where the URI and a label are deterministically generated from the class name.
|
|
Listing 1: Class declaration in Turtle syntax |
Listing 2: Class declaration in RDF/XML syntax |
2.2. Abstract class
In UML, an abstract Class [5] cannot have any instances and only its subclasses can be instantiated. The abstract classes are declared just like the regular ones (Rule 1 and 2) and in addition a constraint validation rule is generated to ensure that no instance of this class is permitted.
OWL follows the Open World Assumption [15], therefore, even if the ontology does not contain any instances for a specific class, it is unknown whether the class has any instances. We cannot confirm that the UML abstract class is correctly defined with respect to the OWL domain ontology, but we can detect if it is not using SHACL constraints.

Rule 3 (Class - in data shape layer). Specify declaration axiom for UML Class as SHACL Node Shape with a SPARQL constraint that selects all instances of this class.
|
|
Listing 5: Instance checking constraint in Turtle syntax |
Listing 6: Instance checking constraint in RDF/XML syntax |
2.3. Attributes
The UML attributes [5] are properties that are owned by a Classifier, e.g. Class. Both UML attributes and associations are represented by one meta-model element - Property. OWL also allows one to define properties. A transformation of UML attribute to OWL data property or OWL object property bases on its type. If the type of the attribute is a primitive type it should be ransformed into OWL datatype property. However, if the type of the attribute is a structured datatype, class of enumeration , it should be transformed into an OWL object property.

Rule 4 (Attribute - in core ontology layer). Specify declaration axiom(s) for attribute(s) as OWL data or object properties deciding based on their types. The attributes with primary types should be treated as data properties, whereas those typed with classes or enumerations should be treated as object properties.
|
|
Listing 7: Property declaration in Turtle syntax |
Listing 8: Property declaration in RDF/XML syntax |
2.4. Attribute owner
Rule 5 (Attribute domain - in reasoning layer). Specify data (or object) property domains for attribute(s).
|
|
Listing 9: Domain specification in Turtle syntax |
Listing 10: Domain specification in RDF/XML syntax |
2.5. Attribute type
Rule 6 (Attribute type - in reasoning layer). Specify data (or object) property range for attribute(s).
|
|
Listing 11: Range specification in Turtle syntax |
Listing 12: Range specification in RDF/XML syntax |
Rule 7 (Attribute range shape in data shape layer). Within the SHACL Node Shape corresponding to the UML class, specify property constraints, for each UML attribute, indicating the range class or datatype.
|
|
Listing 13: Property class and datatype constraint in Turtle syntax |
Listing 14: Property class and datatype constraint in RDF/XML syntax |
2.6. Attribute multiplicity
In [5], multiplicity bounds of multiplicity element are specified in the form of [<lowerbound>… <upper-bound>]. The lower-bound, also referred here as minimum cardinality or min is of a non-negative Integer type and the upper-bound, also referred here as maximum cardinality or max, is of an UnlimitedNatural type (see Section 4.1).
The strictly compliant specification of UML in version 2.5 defines only a single value range for MultiplicityElement. not limit oneself to a single interval. Therefore, the below UML to OWL mapping covers a wider case - a possibility of specifying more value ranges for a multiplicity element. Nevertheless, if the reader would like to strictly follow the current UML specification, the particular single lower..upper bound interval is therein also comprised.

Rule 8 (Attribute multiplicity - in data shape layer). Within the SHACL Node Shape corresponding to the UML class, specify property constraints, corresponding to each attribute, indicating the minimum and maximum cardinality, only where min and max are different from "*"" (any) and multiplicity is not [1..1]. The expressions are formulated according to the following cases.
-
exact cardinality, e.g. [2..2]
-
minimum cardinality only, e.g. [1..*]
-
maximum cardinality only, e.g. [*..2]
-
minimum and maximum cardinality , e.g. [1..2]
|
|
Listing 15: Exact cardinality constraint in Turtle syntax |
Listing 16: Exact cardinality constraint in RDF/XML syntax |
|
|
Listing 17: Min cardinality constraint in Turtle syntax |
Listing 18: Min cardinality constraint in RDF/XML syntax |
|
|
Listing 19: Max cardinality constraint in Turtle syntax |
Listing 20: Max cardinality constraint in RDF/XML syntax |
|
|
Listing 21: Min and max cardinality constraint in Turtle syntax |
Listing 22: Min and max cardinality constraint in RDF/XML syntax |
It should be noted that upper-bound of UML MultiplicityElement can be specified as unlimited: "*"". In OWL, cardinality expressions serve to restrict the number of individuals that are connected by an object property expression to a given number of instances of a specified class expression [15]. Therefore, UML unlimited upper-bound does not add any information to OWL ontology, hence it is not transformed.
Rule 9 (Attribute multiplicity - in reasoning layer). For each attribute multi-plicity of the form ( min .. max ), where min and max are different than "*"" (any), specify a subclass axiom where the OWL class, corresponding to the UML class, specialises an anonymous restriction of properties formulated according to the following cases.
-
exact cardinality, e.g. [2..2]
-
minimum cardinality only, e.g. [1..*]
-
maximum cardinality only, e.g. [*..2]
-
maximum and maximum cardinality , e.g. [1..2]
|
|
Listing 23: Cardinality restriction in Turtle syntax |
Listing 24: Cardinality restriction in RDF/XML syntax |
|
|
Listing 25: Min cardinality restriction in Turtle syntax |
Listing 26: Min cardinality restriction in RDF/XML syntax |
|
|
Listing 27: Max cardinality restriction in Turtle syntax |
Listing 28: Max cardinality restriction in RDF/XML syntax |
|
|
Listing 29: Min and max cardinality restriction in Turtle syntax |
Listing 30: Min and max cardinality restriction in RDF/XML syntax |
Attributes with multiplicity exactly one correspond to functional object or data properties in OWL. If we apply the previous rule specifying min and max cardinality will lead to inconsistent ontology. To avoid that it is important that min and max cardinality are not generated from [1..1] multiplicity but only functional property axiom.
Rule 10 (Attribute multiplicity "one" - in reasoning layer). For each attribute that has multiplicity exactly one, i.e. [1.. ], specify functional property axiom.
|
|
Listing 31: Declaring a functional property in Turtle syntax |
Listing 32: Declaring a functional property in RDF/XML syntax |
3. Transformation of UML connectors
In this section are specified transformation rules for UML association, generalisation and dependency connectors. Table 2 provides an overview of the section coverage.
3.1. Unidirectional association
A binary Association specifies a semantic relationship between two member ends represented by properties. Please note that in accordance with specification [5], the association end names are not obligatory. However, we adhere to the UML conventions [7], where specification of at one member ends, for unidirectional association, and two member ends, for bidirectional association, is mandatory. Moreover, provision of a connector (general) name is discouraged.
UML element | Rules in core ontology layer | Rules in data shape layer | Rules in reasoning layer |
---|---|---|---|
Association |
Rule 11 |
||
Association domain |
Rule 12 |
||
Association range |
Rule 14 |
Rule 13 |
|
Association multiplicity |
Rule 15 |
Rule 16,17 |
|
Association asymmetry |
Rule 18 |
Rule 19 |
|
Association inverse |
Rule 20 |
||
Dependency |
Rule 11 |
||
Dependency domain |
Rule 12 |
||
Dependency range |
Rule 34 |
Rule 33 |
|
Dependency multiplicity |
Rule 15 |
Rule 16 |
|
Class generalisation |
Rule 21 |
||
Property generalisation |
Rule 22 |
||
Class equivalence |
Rule 23 |
||
Property equivalence |
Rule 24 |
Rule 11 (Unidirectional association - in core ontology layer). Specify object prop-erty declaration axiom for the target end of the association.

|
|
Listing 33: Property declaration in Turtle syntax |
Listing 34: Property declaration in RDF/XML syntax |
3.2. Association Source
Rule 12 (Association source - in reasoning layer). Specify object property domain for the target end of the association.
|
|
Listing 35: Domain specification in Turtle syntax |
Listing 36: Domain specification in RDF/XML syntax |
3.3. Association Target:
Rule 13 (Association target - in reasoning layer). Specify object property range for the target end of the association.
|
|
Listing 37: Range specification in Turtle syntax |
Listing 38: Range specification in RDF/XML syntax |
Rule 14 (Association range shape - in data shape layer). Within the SHACL Node Shape corresponding to the source UML class, specify property constraints indicating the range class.
|
|
Listing 39: Property class constraint in Turtle syntax |
Listing 40: Property class constraint in RDF/XML syntax |
3.4. Association multiplicity
Rule 15 (Association multiplicity - in data shape layer). Within the SHACL Node Shape corresponding to the source UML class, specify property constraints indicating minimum and maximum cardinality according to cases provided by Rule 8.
|
|
Listing 41: Min cardinality constraint in Turtle syntax |
Listing 42: Min cardinality constraint in RDF/XML syntax |
Rule 16 (Association multiplicity - in reasoning layer). For the association target multiplicity, where min and max are different than "*"" (any) and multiplicity is not [1..1], specify a subclass axiom where the source class specialises an anonymous restriction of properties formulated according to cases provided by Rule 9.
|
|
Listing 43: Min cardinality restriction in Turtle syntax |
Listing 44: Min cardinality restriction in RDF/XML syntax |
Rule 17 (Association multiplicity "one" - in reasoning layer). If the association multiplicity is exactly one, i.e. [1..1], specify functional property axiom like in Rule 10.
|
|
Listing 45: Declaring a functional property in Turtle syntax |
Listing 46: Declaring a functional property in RDF/XML syntax |
3.5. Recursive association
In case of recursive associations, that are from one class to itself, the transformation rules must be applied as in the case of regular unidirectional association, which are from Rule 11 to Rule 17. In addition the association must be marked as asymmetric expressed in Rule 19.
Rule 18 (Association asymmetry - in data shape layer). Within the SHACL Node Shape corresponding to the UML class, specify SPARQL constraint selecting instances connected by the object property in a reciprocal manner.

|
|
Listing 47: Declaring an asymmetric property in Turtle syntax |
Listing 48: Declaring an asymmetric property in RDF/XML syntax |
Rule 19 (Association asymmetry - in reasoning layer). Specify the asymmetry object property axiom for each end of a recursive association.
|
|
Listing 49: Declaring an asymmetric property in Turtle syntax |
Listing 50: Declaring an asymmetric property in RDF/XML syntax |

3.6. Bidirectional association
The bidirectional associations should be treated, both on source and target ends, like two unidirectional associations. The transformation rules from Rule 11 to Rule 17 must be applied to both ends. In addition these rule the inverse relation axiom must be specified.
Rule 20 (Association inverse - in reasoning layer). Specify inverse object property between the source and target ends of the association.
|
|
Listing 51: Declaring an inverse property in Turtle syntax |
Listing 52: Declaring an inverse property in RDF/XML syntax |
3.7. Unidirectional dependency
The UML dependency connectors should be transformed by the rules specified for UML association connectors.
3.8. Class generalisation
Generalisation [5] defines specialisation relationship between Classifiers. In case of UML classes it relates a more specific Class to a more general Class. UML generalisation set [5] groups generalisations; incomplete and disjoint constraints indicate that the set is not complete and its specific Classes have no common instances. The UML conventions [7] specify that all sibling classes are by default disjoint, therefore even if no generalisation set is provided it is assumed to be implicit.

Rule 21 (Class generalisation - in core ontology layer). Specify subclass axiom for the generalisation between UML classes. Sibling classes must be disjoint with one another.
|
|
Listing 53: Sub-classification in Turtle syntax |
Listing 54: Sub-classification in RDF/XML syntax |
3.9. Property generalisation
Generalisation [5] defines specialisation relationship between Classifiers. In case of the UML associations it relates a more specific Association to more general Association.

Rule 22 (Property generalisation - in core ontology layer). Specify sub-property axiom for the generalisation between UML associations and dependencies.
|
|
Listing 55: Property specialisation in Turtle syntax |
Listing 56: Listing 56: Property specialisation in RDF/XML syntax |
3.10. Class equivalence
Rule 23 (Equivalent classes - in reasoning layer). Specify equivalent class axiom for the generalisation with equivalent or complete stereotype between UML classes.

|
|
Listing 57: Class equivalence in Turtle syntax |
Listing 58: Class equivalence in RDF/XML syntax |
3.11. Property equivalence
Rule 24 (Equivalent properties - in reasoning layer). Specify equivalent property axiom for the generalisation with equivalent or complete stereotype between UML properties.
|
|
Listing 59: Property equivalence in Turtle syntax |
Listing 60: Property equivalence in RDF/XML syntax |
4. Transformation of UML data types
In this section are specified transformation rules for UML datatypes and enumerations. Table 3 provides an overview of the section coverage.
UML element | Rules in core ontology layer | Rules in data shape layer | Rules in reasoning layer |
---|---|---|---|
Primitive datatype |
Rule 25 |
||
Structured datatype |
Rule 26 |
||
Enumeration |
Rule 27 |
Rule 29 |
|
Enumeration item |
Rule 28 |
4.1. Primitive datatype
The UML primitive type defines a predefined datatype without any substructure. The UML specification [5] predefines five primitive types: String, Integer, Boolean, Unlimited, Natural and Real. Here we extended those to the list provided in Table 4.

Rule 25 (Datatype - in core ontology layer). Specify datatype declaration axiom for UML datatype as follows: * UML primitive datatypes are declared as the mapped XSD datatype in Table 4. * XSD and RDF(S) datatypes are declared as such. * Model specific datatypes are declared as such.
Table 4: Mapping of UML primitive types to XSD datatypes
UML datatype | XSD datatype |
---|---|
Boolean |
xsd:boolean |
Float |
xsd:float |
Integer |
xsd:integer |
Char |
xsd:string |
String |
xsd:string |
Short |
xsd:short |
Long |
xsd:long |
Decimal |
xsd:decimal |
Real |
xsd:float |
Date |
xsd:date |
Numeric |
xsd:integer |
Text |
xsd:string |
|
|
Listing 61: Datatype declaration in Turtle syntax |
Listing 62: Datatype declaration in RDF/XML syntax |
4.2. Structured data types
The UML structured datatype [5] has attributes and is used to define complex data types. The structured datatypes should be treated as classes. Rule 26 (Structured Datatype - in core ontology layer). Specify OWL class declaration axiom for UML structured datatype.
4.3. Enumeration
UML Enumerations [5] are kinds of datatypes, whose values correspond to one of user-defined literals. They should be transformed into SKOS [13] concept schemes comprising the concepts corresponding to enumerated items.

.Figure 17: Visual representation of an UML Enumeration

Rule 27 (Enumeration - in core ontology layer). Specify SKOS concept scheme instantiation axiom for an UML enumeration.
|
|
Listing 63: Concept scheme instantiation in Turtle syntax |
Listing 64: Concept scheme instantiation in RDF/XML syntax |
Rule 28 (Enumeration items - in core ontology layer). Specify SKOS concept instantiation axiom for an UML enumeration item.
|
|
Listing 65: Concept instantiation in Turtle syntax |
Listing 66: Concept instantiation in RDF/XML syntax |
Rule 29 (Enumeration - in reasoning layer). For an UML enumeration, specify an equivalent class restriction covering the set of individuals that are skos:inScheme of this enumeration.
|
|
Listing 67: In-scheme equivalent class in Turtle syntax |
Listing 68: In-scheme equivalent class in RDF/XML syntax |
5. 5 Transformation of UML descriptors
In this section are specified transformation rules for UML descriptive elements. Table 5 provides an overview of the section coverage.
UML element | Rules in core ontology layer | Rules in data shape layer | Rules in reasoning layer |
---|---|---|---|
Name |
Rule 30 |
Rule 31 |
Rule 32 |
Note |
Rule 30 |
Rule 31 |
Rule 32 |
Comment |
Rule 30 |
Rule 31 |
Rule 32 |
5.1. Name
Most of the UML elements are named. The UML conventions [7] dedicate an ex- tensive section to the naming conventions and how deterministically to generate an URI and a label from the UML element name. The label should be associated to the resource URI by rdfs:label and, even if redundant, also as skos:prefLabel.
Rule 30 (Label). Specify a label for UML element.
|
|
Listing 69: Labels in Turtle syntax |
Listing 70: Labels in RDF/XML syntax |
5.2. Note
Most of the UML element foresee provisions of descriptions and notes. They should be transformed into rdfs:comment and skos:definition.
Rule 31 (Description). Specify a description for UML element.
|
|
Listing 71: Description in Turtle syntax |
Listing 72: Description in RDF/XML syntax |
5.3. Comment
In accordance with [5], every kind of UML Element may own Comments (see Figure 19). They add no semantics but may represent information useful to the reader. In OWL it is possible to define the annotation axiom for OWL Class, Datatype, Object- Property, DataProperty, AnnotationProperty and NamedIndividual. The textual explanation added to UML Class is identified as useful for conceptual modelling [3], therefore the Comments that are connected to UML Classes are taken into consideration in the transformation. As UML Comments add no semantics, they are not used in any method of semantic validation. In OWL the AnnotationAssertion [15] axiom does not add any semantics either, and it only improves readability.

Rule 32 (Comment). Specify annotation axiom for UML Comment associated to an UML element.
|
|
Listing 73: Comment in Turtle syntax |
Listing 74: Comment in RDF/XML syntax |
6. Additional rules
In this section are specified new transformation rules that were implemented after the UML model refactoring.
Rule 33 (Dependency target - in reasnoning layer). Specify object property range for the target end of the dependency.
|
|
Listing 75: Range specification in Turtle syntax |
Listing 76: Range specification in RDF/XML syntax |
Rule 34 (Dependency range shape - in data shape layer). Within the SHACL Node Shape corresponding to the source UML class, specify property constraints indicating the range class.
|
|
Listing 77: Property class constraint in Turtle syntax |
Listing 78: Property class constraint in RDF/XML syntax |
7. Bibliography: Reference documents for the UML to OWL Transformations:
-
C. Atkinson and K. Kiko. A detailed comparison of uml and owl, June 2005. URL https://madoc.bib.uni-mannheim.de/1898/.
-
D. Beckett. RDF/xml syntax specification (revised). W3C recommendation, W3C, Feb. 2004. http://www.w3.org/TR/2004/REC-rdf-syntax-grammar- 20040210/.
-
G. Booch, J. Rumbaugh, and I. Jacobson. Unified Modeling Language User Guide, The (2nd Edition) (Addison-Wesley Object Technology Series) . Addison- Wesley Professional, 2005. ISBN 0321267974.
-
G. Carothers and E. Prud’hommeaux. RDF 1.1 turtle. W3C recommendation, W3C, Feb. 2014. http://www.w3.org/TR/2014/REC-turtle-20140225/.
-
S. Cook, C. Bock, P. Rivett, T. Rutt, E. Seidewitz, B. Selic, and D. Tolbert. Unified modeling language (UML) version 2.5.1. Standard formal/2017-12-05, Object Management Group (OMG), Dec. 2017. URL https://www.omg.org/ spec/UML/2.5.1.
-
E. Costetchi. eProcurement ontology architecture and formalisation specifi- cations. Recommendation, Publications Offce of the European Union, April 2020. [7] E. Costetchi. eProcurement uml conceptual model conventions. Recommenda- tion, Publications Offce of the European Union, April 2020.
-
O. El Hajjamy, K. Alaoui, L. Alaoui, and M. Bahaj. Mapping uml to owl2 ontology. Journal of Theoretical and Applied Information Technology, 90(1): 126, 2016. [. R. Falco, A. Gangemi, S. Peroni, D. Shotton, and F. Vitali. Modelling owl ontologies with graffoo. In European Semantic Web Conference, pages 320-325. Springer, 2014.
-
A. H. Khan and I. Porres. Consistency of uml class, object and statechart diagrams using ontology reasoners. Journal of Visual Languages & Computing, 26:42-65, 2015.
-
A. H. Khan, I. Rauf, and I. Porres. Consistency of uml class and statechart diagrams with state invariants. In MODELSWARD, pages 14-24, 2013.
-
N. Loutas, N. Loutas, S. Kotoglou, and D. Hytiroglou. D04.07 - report on policy support for eprocurement. Deliverable SC245DI07171, ISA programme of the European Commission, 2016.
-
A. Miles and S. Bechhofer. SKOS simple knowledge organiza- tion system reference. W3C recommendation, W3C, Aug. 2009. http://www.w3.org/TR/2009/REC-skos-reference-20090818/.
-
H.-S. Na, O.-H. Choi, and J.-E. Lim. A method for building domain ontologies based on the transformation of uml models. In Fourth International Conference on Software Engineering Research, Management and Applications (SERA'06), pages 332-338. IEEE, 2006.
-
B. Parsia, P. Patel-Schneider, and B. Motik. OWL 2 web ontology language structural specification and functional-style syntax (second edition). W3C recommendation, W3C, Dec. 2012. http://www.w3.org/TR/2012/REC-owl2- syntax-20121211/.
-
M. Sadowska and Z. Huzar. Representation of uml class diagrams in owl 2 on the background of domain ontologies. e-Informatica, 13(1):63-103, 2019.
-
G. Schreiber and F. Gandon. RDF 1.1 XML syntax. W3C recommendation, W3C, Feb. 2014. http://www.w3.org/TR/2014/REC-rdf-syntax-grammar- 20140225/.
-
D. Wood, R. Cyganiak, and M. Lanthaler. RDF 1.1 concepts and abstract syntax. W3C recommendation, W3C, Feb. 2014. http://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/.
-
Z. Xu, Y. Ni, L. Lin, and H. Gu. A semantics-preserving approach for extract- ing owl ontologies from uml class diagrams. In International Conference on Database Theory and Application, pages 122-136. Springer, 2009.
-
Z. Xu, Y. Ni, W. He, L. Lin, and Q. Yan. Automatic extraction of owl ontologies from uml class diagrams: a semantics-preserving approach. World Wide Web, 15(5-6):517-545, 2012.
-
J. Zedlitz and N. Luttenberger. Transforming between uml conceptual models and owl 2 ontologies. In Terra Cognita ISWC, pages 15-26, 2012.
-
J. Zedlitz and N. Luttenberger. Conceptual modelling in uml and owl-2. Inter- national Journal on Advances in Software, 7(1):182-196, 2014.