W3C home > Mailing lists > Public > www-webont-wg@w3.org > September 2002

GUIDE: UML syntax mapping

From: Guus Schreiber <schreiber@swi.psy.uva.nl>
Date: Thu, 26 Sep 2002 16:37:20 +0200
Message-ID: <3D931BA0.3050004@swi.psy.uva.nl>
To: WebOnt WG <www-webont-wg@w3.org>
Included is a sketch of a OWL Lite to UML mapping.

A. Th. Schreiber, SWI, University of Amsterdam

UML presentation syntax for OWL Lite
Guus Schreiber
Sep 26, 2002

0. Introduction

This note contains a textual description of a possible mapping from
OWL Lite to UML. In a follow-up version, example diagrams will be
added. For the moment, consult the previous version [1] to get a feeling
for the UML look-and-feel of OWL Lite. 

Compared to the previous version, more use is being made of
stereotypes. This is related to the planned efforts to define a UML
profile for OWL. Such profiles make heavy use of the stereotype

The problems in defining this mapping lay mainly in defining global
characteristics of properties, as UML has a context-specific
interpretation of attributes and associations. 

Although this mapping may look complicated, it should be noted that in
practice most the major part of an ontology can be represented with
natural UML equivalents. 

1. RDF constructs

  UML class <<rdf:class>

  For object properties: 
    UML association <<rdf:property>> with navigability arrow on object side
    Optional: upgrade to association class
  For datatype properties:
    Define as UML attribute of the domain class
    Note: if you want to use subPropertyOf, you'll have to "promote"
    the attribute to an association (class)

  NOTE: strong preference  to model all properties with 
  global features (domain, range, functional, ...) as a UML
  association class!  

  UML generalization <<rdf:subClassOf>> between classes involved

  UML generalization <<rdf:subPropertyOf>> between properties involved
  In this case there should be a strong preference to model the
  property as a UML association class (makes the diagram easier to

  add <<rdf:domain>> to domain side of the association

  add <<rdf:domain>> to domain side of the association

  UML object notation

2. OWL Lite Equality and Inequality Synopsis

  - create constraint with the corresponding equality/inequality,
    e.g. {sameClassAs} 
  - link this constraint with dependency relation to the elements

3. OWL Lite Property Characteristics Synopsis

  Draw dependency link between the two associations involved with
  stereotype <<owl:inverseOf>>

owl:FunctionalProperty (unique)
owl:InverseFunctionalProperty (unambiguous)
  - add constraint with corresponding name to the UML attribute c.q
    association involved. 
  - alternative 1: stereotype or class-scoped features of property as
    UML association class
  - alternative 2: link property with dependency link to an explicit
    meta property of the corresponding type (see previous version)

  This is the default UML interpretation; one could add the
  corresponding stereotype to the range argument of the association
  for clarity

  Add stereotype <<owl:someValuesFrom>> to the range side of the

4. Restricted cardinality

   For object properties: use standard UML association notation: 
   0..1, 1..1, 0..*,etc. 
   For datatype properties:  attribute cardinality notation, e.g. 
   "phoneNumber[0..*]: xsd:string"

5. OWL Lite Datatypes

See previous version. For non-basic types, the UML convention for
modelling datatypes as classes <<datatype>> can be used.

6 OWL Lite Header Information Synopsis

  - Draw ontologies as packages with <<owl:ontology>> stereotype
  - Show import through dependency link with the standard UML
    stereotype <<import>> 
Dublin Core Metadata
   Include UML tagged values for this in the package diagram
   These can have the obvious stereotypes

[1] http://www.swi.psy.uva.nl/usr/Schreiber/docs/owl-uml/owl-uml.html
Received on Thursday, 26 September 2002 10:42:06 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:56:47 UTC