Top Banner
Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and Michael L. Aronson Lockheed Martin Management and Data Systems Lewis Hart -- GRC International Jeffrey Smith -- Mercury Computer Jerzy Letkowski -- Western New England College
21

Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Dec 28, 2015

Download

Documents

Ernest Cummings
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Extending UML to Support Ontology Engineering

Kenneth Baclawski and Mieczylaw K. Kokar

Northeastern University

Paul A. Kogut, William S. Holmes III

and Michael L. Aronson

Lockheed Martin Management and Data Systems

Lewis Hart -- GRC International

Jeffrey Smith -- Mercury Computer

Jerzy Letkowski -- Western New England College

Page 2: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Knowledge Representation (KR)

Data representation language for knowledge-based systems

Usually based on logic or networks (directed graphs)

Usually do not rigidly separate meta levelsEnables reasoning and semantic

interoperability of agents at run-timeAssumes an open rather than closed world.

Page 3: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example of a KR

PersonCompanyVehicle

BerizonRover

GeorgeFord 243

Toyota 853type

type typetype

type

isOwnedowns

Dog

Page 4: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Ontology

Formal, declarative semantic modelData (instances) conforming to an ontology

are called annotations.An ontology may include:

Vocabulary terms Taxonomies Relations Constraints, rules and assertions

Page 5: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example Ontology

Class ObjectProperty

DogCompany

Vehicle

Restriction

isOwned

OwnedByAtMostOne

1

type

typetype

type

type

maxCardinality

onPropertysubClassOf

Berizon

type

Ford 243

Toyota 853

type

type subClassOf

Persontype

Page 6: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

UML as an ontology language

UML class diagrams can define ontologies.Constraints such as cardinality constraints can

be mapped to UML constructs or to OCL.Statecharts and Activity Diagrams are useful

for service and process related ontologies.See “UML for Ontology Development” to appear in

Knowledge Engineering Review

Page 7: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example Ontology in UML

Company Vehicle

0..1

owns

0..1

Person Dog

0..1

owns

0..1

Page 8: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Advantages of UML for ontology

Leverages UML tools and experience in ontology development.

Provides profiles, packages and other modularity mechanisms currently lacking in knowledge-based systems.

Supports an established mechanism for specifying the behavior associated with knowledge representations.

Page 9: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Limitations of UML

Does not (yet) have a formal semantics.Not Web enabled.Does not support properties (associations)

as first-class model elements.

Page 10: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

RDF and DAML

The Resource Description Framework (RDF) and DARPA Agent Markup Language (DAML) have been proposed as the basis for the “Semantic Web.”

DAML supports semantic interoperability between Web pages, databases, programs and sensors by autonomous agents at run-time.

Page 11: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Mapping UML to DAML

Page 12: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example ontology in DAML<Class ID="Company"/><ObjectProperty ID="isOwned"> <inverseOf> <ObjectProperty ID="owns"/> </inverseOf></ObjectProperty><Class ID="Person"/><Restriction ID="OwnedByAtMostOne"> <maxCardinality>1</maxCardinality> <onProperty rdf:resource="#isOwned"/></Restriction><Class ID="Vehicle"> <subClassOf rdf:resource="#OwnedByAtMostOne"/></Class><Class ID=”Dog"> <subClassOf rdf:resource="#OwnedByAtMostOne"/></Class>

Page 13: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

First-Class Properties

In KR languages, properties are first-class model elements: they can be defined independently of any associated classes.

UML associations must be defined in the context of the associated classes.

KR properties allow one to define aspects of the ontology that cut across the boundaries of classes.

Page 14: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Why not reify?

Why not model KR properties as classes?It produces complex, unnatural ontologies.It puts the burden on the ontology developer

to reconcile this limitation of UML.The resulting mapping from UML to

DAML is unbounded (i.e., does not stabilize when applied repeatedly).

Page 15: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

MOF Specification of proposal

Page 16: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Property Semantics in OCL

A property is a grouping of Association Ends.

Properties cross-cut Associations: no property may have more than one Association End of an Association.

allConnections: Set(AssociationEnd);allPropConnections: Set(Property);self.allConnections->intersection(self.allPropConnections:Set(T)):Set(T);size(#T)<=1

Page 17: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Conclusion

UML is a viable language for specifying ontologies and knowledge representations.

We propose a modest extension of UML to make it more compatible with knowledge-based systems by supporting first-class properties.

Page 18: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example of a KR

TreeNodeCompany

Vehicle

BerizonNode1

Node2Ford 243

Toyota 853type

type typetype

type

isOwnedisOwned

Page 19: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example Ontology

Class ObjectProperty

TreeNodeCompany

Vehicle

Restriction

isOwned

OwnedByAtMostOne

1

type

typetype

type

type

maxCardinality

onPropertysubClassOf

Berizon

type

Ford 243

Toyota 853

type

type subClassOf

Page 20: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example Ontology in UML

Company Vehicle

0..1

owns

0..1

TreeNode

0..1

owns

0..1

Page 21: Extending UML to Support Ontology Engineering Kenneth Baclawski and Mieczylaw K. Kokar Northeastern University Paul A. Kogut, William S. Holmes III and.

Example ontology in DAML<Class ID="Company"/><ObjectProperty ID="isOwned"> <inverseOf> <ObjectProperty ID="owns"/> </inverseOf></ObjectProperty><Restriction ID="OwnedByAtMostOne"> <maxCardinality>1</maxCardinality> <onProperty rdf:resource="#isOwned"/></Restriction><Class ID="Vehicle"> <subClassOf rdf:resource="#OwnedByAtMostOne"/></Class><Class ID="TreeNode"> <subClassOf rdf:resource="#OwnedByAtMostOne"/></Class>