semantic modeling notation (scanlon, semtech 2010)

90
Semantic Modeling Notation Making Ontologies Human-Accessible Bob Scanlon, SVP Development 25 Jun 2010 V2, 30 Jun 2010

Upload: rscanlon

Post on 19-Jan-2015

686 views

Category:

Technology


1 download

DESCRIPTION

Semantic Modeling Notation Making Ontologies Human-Accessible Presented at SemTech 2010 conference 25 June 2010

TRANSCRIPT

Page 1: Semantic Modeling Notation (Scanlon, SemTech 2010)

Semantic Modeling Notation

Making Ontologies Human-AccessibleBob Scanlon, SVP Development

25 Jun 2010V2, 30 Jun 2010

Page 2: Semantic Modeling Notation (Scanlon, SemTech 2010)

2

Page 3: Semantic Modeling Notation (Scanlon, SemTech 2010)

3

Page 4: Semantic Modeling Notation (Scanlon, SemTech 2010)

4

Page 5: Semantic Modeling Notation (Scanlon, SemTech 2010)

5

Page 6: Semantic Modeling Notation (Scanlon, SemTech 2010)

6

Page 7: Semantic Modeling Notation (Scanlon, SemTech 2010)

7

Page 8: Semantic Modeling Notation (Scanlon, SemTech 2010)

8

Page 9: Semantic Modeling Notation (Scanlon, SemTech 2010)

9

Page 10: Semantic Modeling Notation (Scanlon, SemTech 2010)

10

Page 11: Semantic Modeling Notation (Scanlon, SemTech 2010)

11

Page 12: Semantic Modeling Notation (Scanlon, SemTech 2010)

12

Page 13: Semantic Modeling Notation (Scanlon, SemTech 2010)

13

Page 14: Semantic Modeling Notation (Scanlon, SemTech 2010)

14

Page 15: Semantic Modeling Notation (Scanlon, SemTech 2010)

15

Page 16: Semantic Modeling Notation (Scanlon, SemTech 2010)

16

Page 17: Semantic Modeling Notation (Scanlon, SemTech 2010)

17

Page 18: Semantic Modeling Notation (Scanlon, SemTech 2010)

18

Page 19: Semantic Modeling Notation (Scanlon, SemTech 2010)

19

Page 20: Semantic Modeling Notation (Scanlon, SemTech 2010)

20

Page 21: Semantic Modeling Notation (Scanlon, SemTech 2010)

21

Page 22: Semantic Modeling Notation (Scanlon, SemTech 2010)

22

OntologyOntology

We have this.. We want this..

Or this...

We'll talk about 2 aspects of this problem:

1. Visualization techniques/considerations

2. Reference graphical notation

We'll talk about 2 aspects of this problem:

1. Visualization techniques/considerations

2. Reference graphical notation

Page 23: Semantic Modeling Notation (Scanlon, SemTech 2010)

23

Why are we talking about this?

● Visualization is critical to understanding complex things“a picture is worth 1000 words”

● Ontologies are complex things

⇒ Visualization is critical to understanding ontologies

“I have an ontology, what do I have?” “I want an ontology, how do I build one?”

Page 24: Semantic Modeling Notation (Scanlon, SemTech 2010)

24

and...● We have a contract with the U.S. Department of

Defense (DoD) to – build domain models using RDF & OWL– integrate data from many sources using a

SPARQL-based federation engine and rules– analyze & report on the federated data

● in terms of the domain model● So, we and our customers need ontology

visualization, and we're building it– but we'd really prefer it be a generally-accepted

standard, so we can focus on data integration and analysis

Page 25: Semantic Modeling Notation (Scanlon, SemTech 2010)

25

The BPMN analogy● Helped drive uptake of BPM

● Goal: intuitive notation that can represent complex semantics

● Goal: to support both business stakeholders and technical users

2005 2010

Business analysts

Technical users

Page 26: Semantic Modeling Notation (Scanlon, SemTech 2010)

26

Why not UML?● Non-intuitive and verbose representation*

– BPMN also went with a non-UML solution● Not flexible enough to handle ontologies

– First-class properties vs embedded attributes– Complex relationships of OWL axioms– Types and instances mixed

● General-purpose, so it's complex*– Only need structural representation– Stereotyping, profiles – not widely used*

● UML tools expensive, not integrated w/ semantic tools

* For non-techs. Our goal is to lift ontology visualization beyond the realm of only technical ontologists – to enable business analysts, as was done with BPMN.

Page 27: Semantic Modeling Notation (Scanlon, SemTech 2010)

27

Visualization researchDLG2 [2005] DLG2 [2005]

Jambalaya, Protege [2009]Jambalaya, Protege [2009]

OWL2UML/OWLGrEd, Protege [2010]OWL2UML/OWLGrEd, Protege [2010]

OWLPropViz, Protege [2008]OWLPropViz, Protege [2008]OWLVis, Protege [2005]OWLVis, Protege [2005]OntoVis, Protege [2007]OntoVis, Protege [2007]

OntoTrack [2005]OntoTrack [2005]

EzOWL [2006]EzOWL [2006]Growl [~2006]Growl [~2006]

Page 28: Semantic Modeling Notation (Scanlon, SemTech 2010)

28

Uses and UsersUses and Users

Page 29: Semantic Modeling Notation (Scanlon, SemTech 2010)

29

Uses of visualization● Collaboration during model development

– Between ontologists and domain SME's● Documentation and dissemination of models

– For users, managers, etc● Basic understanding of the domain

– For everyone!● Building and editing of a model

– For ontologists and domain SME's

All of these deal with communication!

Page 30: Semantic Modeling Notation (Scanlon, SemTech 2010)

30

The human element ● An ontology is

– an engineering artifact– a social agreement

● Therefore it must – be human understandable– facilitate communication and collaboration– be buildable by non-technical people

● To do this we need– pictures!

Page 31: Semantic Modeling Notation (Scanlon, SemTech 2010)

31

Target humans...● Model definers

– Ontologists– Domain SME's

● Managers / Governance Parties– To understand a domain– To approve of changes to domain representation

● Application developers– To write queries and views– To understand the terms and relationships in the domain

● Domain users– To analyze data in their domain– Using applications written in terms of the model

Page 32: Semantic Modeling Notation (Scanlon, SemTech 2010)

32

Enabling and facilitating

communication

between ontologists and SME's

is critical

for a successful modeling effort.

Page 33: Semantic Modeling Notation (Scanlon, SemTech 2010)

33

So, to restate our goal today...

We're interested in a ('standardized') way to

visualize the structural aspects of ontologies

to facilitate

ontology modeling and human understanding

Page 34: Semantic Modeling Notation (Scanlon, SemTech 2010)

34

Ontology VisualizationOntology Visualization

Page 35: Semantic Modeling Notation (Scanlon, SemTech 2010)

35

==

++

ElementDisplayElementDisplay

StructureLayout

StructureLayout

++ Viewing &NavigationViewing &Navigation

VisualizationVisualization

Page 36: Semantic Modeling Notation (Scanlon, SemTech 2010)

36

==

++

ElementDisplayElementDisplay

StructureLayout

StructureLayout

++ Viewing &NavigationViewing &Navigation

VisualizationVisualization

Page 37: Semantic Modeling Notation (Scanlon, SemTech 2010)

37

Diagram element display● How should each ontology construct be

represented?– graphical notation introduction

● How can we abstract and simplify using clustering/collapsing of elements?

– show properties under classes & instances– show properties as labeled edges rather than

nodes– collapse complex nodes until user drills in

Page 38: Semantic Modeling Notation (Scanlon, SemTech 2010)

38

Benefits of a (standardized) graphical notation

● Uniform means of representing an ontology in all tools

– Makes exchange of information between systems 'flow' better – interoperability

● Formalizes how people visualize models– Ties into language better, which allows...

● A means to graphically edit models– More intuitive than editing text representations – Dovetails with the whole 'collaborative modeling'

idea

Page 39: Semantic Modeling Notation (Scanlon, SemTech 2010)

39

General requirementsof a graphical notation

● Concise – minimal 'footprint', maximal info/sq in● Complete – OWL 2, OWL 1, RDF/S, RDF● Consistent – representations in different diagrams

and contexts● Simple – to use; uncluttered; hand-drawable● Extensible – can be used for other ontology

languages, or as core set evolve● Intuitive – matches what people “expect”● Multi-modal – can auto-gen diagrams or manually

build custom views NOTE: Last item added based on audience feedback. NOTE: Last item added based on audience feedback.

Page 40: Semantic Modeling Notation (Scanlon, SemTech 2010)

40

Map of the (owl 2) universeConcepts/Categories

(classes)Concepts/Categories

(classes)Roles/Relations

(properties)Roles/Relations

(properties)Instances

(individuals, literals)

Instances(individuals,

literals)

Data types(data ranges,

datatypes)

Data types(data ranges,

datatypes)

SimpleExpressions(defined via declarations)

SimpleExpressions(defined via declarations)

Complex Expressions

(defined via constructors)

Complex Expressions

(defined via constructors)

Axioms

(defined via statements)

Axioms

(defined via statements)

named classnamed class named object propertynamed data propertynamed object propertynamed data property

named individualanonymous individualliteral value

named individualanonymous individualliteral value

named datatypenamed datatype

enumerationBoolean compositions- intersection- union- complementRestrictions (obj,data) - universal, existential- value, local reflexivity- cardinality (qualified)

enumerationBoolean compositions- intersection- union- complementRestrictions (obj,data) - universal, existential- value, local reflexivity- cardinality (qualified)

inverse (anonymous)inverse (anonymous) enumerationBoolean compositions- intersection- union- complementRestrictions- datatype restriction

enumerationBoolean compositions- intersection- union- complementRestrictions- datatype restriction

Class relationships- subclass- equivalent classes- disjoint classes- disjoint unionkey

Class relationships- subclass- equivalent classes- disjoint classes- disjoint unionkey

domain, rangeProperty relationships- subproperty [chained]- equivalent properties- disjoint properties- inverse (obj only)Object property char.- functional, inverse func.- symmetric, asymmetric- reflexive, irreflexive- transitive

domain, rangeProperty relationships- subproperty [chained]- equivalent properties- disjoint properties- inverse (obj only)Object property char.- functional, inverse func.- symmetric, asymmetric- reflexive, irreflexive- transitive

class (rdf:type)Instance equality- same individuals- different individualsProperty assertions- object property, pos- data property, pos- object property, neg- data property, neg

class (rdf:type)Instance equality- same individuals- different individualsProperty assertions- object property, pos- data property, pos- object property, neg- data property, neg

datatype definitiondatatype definitionTBoxTBox RBoxRBox ABoxABox TBoxTBox ??

Page 41: Semantic Modeling Notation (Scanlon, SemTech 2010)

41

Visualization techniquesdiagram element generation

Formal language model

TranslateTranslate

'Direct' representation Verbose

AbstractAbstract

Abstract representation

May use 'identity' abstraction – get formal representation

To graphical notation

Concise

OWL 2, in this case

Page 42: Semantic Modeling Notation (Scanlon, SemTech 2010)

42

Graphical notation overviewnotation primitives

ExpressionsExpressions

resource

relation

resource

instance

ExpressionDecoratorsExpressionDecorators

dataobject

complex

Composite ExpressionOperators

Composite ExpressionOperators

ExpressionsExpressions

operator

StatementsStatements

Axiom Connectorsand Decorations

Axiom Connectorsand Decorations

n-ary

binary

unary(decorators)

SpecialSpecial

ontology

i annotation

! deprecated

definition

Page 43: Semantic Modeling Notation (Scanlon, SemTech 2010)

43

Graphical notation overviewexamples of entities & literals

Primitive Construct

Base Shape Examples Notes

Class Object (class) decorator is optional.

Datatype Type information for literal values.

Individual Object (individual) decorator is optional.

Literal Data values, which may be tied to datatypes.

ObjectProperty

Property that has an individual (object) as its range. Object property indicator is optional.

Data Property

Property that has a datatype as its range.

Ontology

Primitive Construct

Base Shape Examples Notes

Class Object (class) decorator is optional.

Datatype Type information for literal values.

Individual Object (individual) decorator is optional.

Literal Data values, which may be tied to datatypes.

ObjectProperty

Property that has an individual (object) as its range. Object property indicator is optional.

Data Property

Property that has a datatype as its range.

Ontology

“green” “10”^^xsd:int

FredFred

rdf:type = Person

fname = “Fred”

PersonPerson

label = “Person”

fname

“value”

xsd:intxsd:int

minInclusive = 5

hasParent

hasColor

hasParentlabel=”parent”

hasColorlabel=”color”

MyOnthtpp:/revelytix.com/vocab/mydomain/

Page 44: Semantic Modeling Notation (Scanlon, SemTech 2010)

44

Graphical notation overviewcomposite expression operators

set compositesset composites

complement

U

¬

U

union

intersection

Composite ExpressionOperators

Composite ExpressionOperators

operator

enumerationsenumerations

{ } enumeration

restrictionsrestrictions

value

existential

universal

max cardinality

exact cardinality

intersection

϶Ι

=n

≤n

≥n min cardinality

Page 45: Semantic Modeling Notation (Scanlon, SemTech 2010)

45

Graphical notation overviewaxiom connectors & decorators

Axiom ConnectorsAxiom Connectors

n-ary

binary

unary(decorators)

n-ary axiom connectorsn-ary axiom connectors

∅U

∅U

∅U

equivalent

disjoint

disjoint union

Κ

=

key

individual equality

individual inequalityunary axiomsunary axioms

f

f

functionalinverse functional

symmetric

asymmetric

transitive

reflexive

irreflexive

binary axiomsbinary axioms

pname property assertion (+)

a

pname

class assertion

property assertion (-)

inverse props.D property domainR property range

Page 46: Semantic Modeling Notation (Scanlon, SemTech 2010)

46

Graphical notation overviewrepresentation of complex classes

● Two types of complex class expressions– composites – nested arbitrarily deep

● Set constructors● Restrictions

– enumerations● Always anonymous (except when we use abstraction)● Decorated to indicate 'complex'

c1c2

U

{ }a:Anneb:Beauc:Chuck

c1c2

U

c3c4c5

U

Page 47: Semantic Modeling Notation (Scanlon, SemTech 2010)

47

Visualization techniquesinformation overload management

● Information hiding (static or interactive)– collapse/expand complex class, abstractions – hide/show neighborhood properties– allow user to manually build custom model

● Abstraction (static or interactive)– allow 'interning' of properties under

class/instance● De-cluttering (static or interactive)

– allow for duplicates of same construct– use rdfs:labels or local names in place of IRIs

when availableNOTE: Additions made based on audience feedback. NOTE: Additions made based on audience feedback.

Page 48: Semantic Modeling Notation (Scanlon, SemTech 2010)

48

Multiple forms to manage info overloadclass details

Person Person

label “Person” [en] label “Persona” [sp]

asAddress

birthDate ssn

collapsed expanded

i

label and/or IRI

metadata (annotations)

'interned' properties

i

Decorators to expand and contractshown only on-screen, on mouse over.

Decorators to expand and contractshown only on-screen, on mouse over.

Page 49: Semantic Modeling Notation (Scanlon, SemTech 2010)

49

Abstraction to manage info overloadinterned properties

Person

AddresshasAddress

my:ssnssn

xsd:datebirthDate

Person

hasAddress

birthDate ssn

“externed” properties “interned” properties

Page 50: Semantic Modeling Notation (Scanlon, SemTech 2010)

50

User interaction to manage info overloadinterning/externing of properties

Person

label “Person” [en] label “Persona” [sp]

hasAddress

birthDate ssn

i

i

Person

label “Person” [en] label “Persona” [sp] birthDate ssn

i

i AddresshasAddress

Person

label “Person” [en] label “Persona” [sp]

hasAddress

birthDate ssn

i

i

Person

label “Person” [en] label “Persona” [sp] birthDate ssn

i

i AddresshasAddress

drag property out(“extern”)

drag property in(“intern”)

Page 51: Semantic Modeling Notation (Scanlon, SemTech 2010)

51

Abstraction to achieve simplificationclass inheritance relationships

PersonPerson

AnimalAnimal

PersonPerson

AnimalAnimal

is-a subclass

Page 52: Semantic Modeling Notation (Scanlon, SemTech 2010)

52

Abstraction to achieve simplificationclass-property relationships

Person Address

Person AddressRD

Person AddresshasAddress

PersonhasAddress

Formal

Abstraction 1

Abstraction 2

Abstraction 3

Propertyor classdiagram

Classdiagram

Classdiagram

hasAddress

hasAddress rdfs:domain rdfs:range

('interned')('interned')

Page 53: Semantic Modeling Notation (Scanlon, SemTech 2010)

53

Diagram constructs for defining abstractions/simplifications

diagram expression 1

diagramexpression

2

diagram expression 2

diagramexpression

1

Similar to substitution mechanism inWang, Xiaoshu and Almeida, Jonas S., Techniques for Ontology Visualization, Chapter 9 in Semantic Web: Revolutionizing Knowledge Discovery in the Life Sciences, 2007

Similar to substitution mechanism inWang, Xiaoshu and Almeida, Jonas S., Techniques for Ontology Visualization, Chapter 9 in Semantic Web: Revolutionizing Knowledge Discovery in the Life Sciences, 2007

Page 54: Semantic Modeling Notation (Scanlon, SemTech 2010)

54

Diagram expression equivalenceclass inheritance relationships

ClassClass

ClassClass

ClassClass

ClassClass

is-a rdf:type

Page 55: Semantic Modeling Notation (Scanlon, SemTech 2010)

55

Diagram expression equivalenceclass inheritance relationships

InstanceInstance

ClassClass

IndividualIndividual

ClassClass

a rdf:type

Page 56: Semantic Modeling Notation (Scanlon, SemTech 2010)

56

Diagram expression equivalenceproperty domain → labeled edge

Person rdfs:domain hasAddress

hasAddressPerson D

Property view

Page 57: Semantic Modeling Notation (Scanlon, SemTech 2010)

57

Diagram expression equivalenceproperty domain & range → labeled edge

hasAddressPerson D AddressR

Person AddresshasAddress

Class view

Page 58: Semantic Modeling Notation (Scanlon, SemTech 2010)

58

Diagram expression equivalencenamed-anonymous equivalent type merging

ABC

U

ABC

U

ABC

Class view

ABC

my:smallnum

xsd:intmMaxInclusive = 20

my:smallnum

base = xsd:int

mMaxInclusive = 20

Type view

Page 59: Semantic Modeling Notation (Scanlon, SemTech 2010)

59

==

++

ElementDisplayElementDisplay

StructureLayout

StructureLayout

++ Viewing &NavigationViewing &Navigation

VisualizationVisualization

Page 60: Semantic Modeling Notation (Scanlon, SemTech 2010)

60

Presenting ontology structure

● Directed labeled graphs (DLG)– layered hierarchical graphs– 'neighborhood' graph

● Layout accounts for:– Hierarchical nature of terms– 1-M nature of class-property relations

● Some other considerations:– Cloning constructs to reduce link tangles– Incremental adjustments when user adds to,

removes from, or shifts items on diagram

We're interested in this

We're interested in this

Page 61: Semantic Modeling Notation (Scanlon, SemTech 2010)

61

Composition of a diagram

View 1View 1

View 3View 3

View 2View 2

View 3.1View 3.1

● A diagram consists of views

● Views composable● Views have different

'types', which influence layout, etc - class - property - instance - class-instance -

View 3.2View 3.2

Page 62: Semantic Modeling Notation (Scanlon, SemTech 2010)

62

View types

View Type Classes Properties(1st Class) Instances Inheritance

Class View √

Property View √

Class Inheritance View √ √

Property Inheritance View √ √

Class-Instance View √ √

Instance View ~ √

View Type Classes Properties(1st Class) Instances Inheritance

Class View √

Property View √

Class Inheritance View √ √

Property Inheritance View √ √

Class-Instance View √ √

Instance View ~ √

Page 63: Semantic Modeling Notation (Scanlon, SemTech 2010)

63

Layout considerations

● Type inheritance – lay out vertically

● Type relationships lay out horizontally

● Type-instance relationships lay out types vertically, with instances horizontally

● Instance graphs not in scope

Inheritance

AA

is-a

BB CC

is-a is-a

Page 64: Semantic Modeling Notation (Scanlon, SemTech 2010)

64

==

VisualizationVisualization

++

ElementDisplayElementDisplay

StructureLayout

StructureLayout

++ Viewing &NavigationViewing &Navigation

Page 65: Semantic Modeling Notation (Scanlon, SemTech 2010)

65

User interaction / navigationHow can these diagrams be used?

Presentation

Analysis

Discovery

Presentation

Analysis

Discovery

“you know what is there”

“you know what you are looking for”

“you have no idea what you are looking for”

“you know what is there”

“you know what you are looking for”

“you have no idea what you are looking for”

Ref: Bergeron 1993.Ref: Bergeron 1993.

Page 66: Semantic Modeling Notation (Scanlon, SemTech 2010)

66

Information management(on a diagram being viewed)

● Show/hide details● Show/hide inheritance● Show/hide related properties

– By type, etc● Show inferred vs asserted axioms● Filtering – to remove non-essential features ● Highlighting – to focus on essential features, in

context● Faceted search● Navigation – changing context

Page 67: Semantic Modeling Notation (Scanlon, SemTech 2010)

67

Viewing & navigation techniques● Zooming

– geometric– fish-eye – graph remains intact

● Filtering – selective display of info– type-based – depth-based– attribute-based

Page 68: Semantic Modeling Notation (Scanlon, SemTech 2010)

68

Graphical NotationReference

Graphical NotationReference

Page 69: Semantic Modeling Notation (Scanlon, SemTech 2010)

69

General requirementsof a graphical notation

● Concise ● Complete ● Consistent ● Simple ● Extensible ● Intuitive● Multi-modal

NOTE: Last item added based on audience feedback. NOTE: Last item added based on audience feedback.

Page 70: Semantic Modeling Notation (Scanlon, SemTech 2010)

70

Graphical notationoverview of notation primitives

ExpressionsExpressions

resource

relation

resource

instance

ExpressionDecoratorsExpressionDecorators

dataobject

complex

Composite ExpressionOperators

Composite ExpressionOperators

ExpressionsExpressions

operator

StatementsStatements

Axiom Connectorsand Decorations

Axiom Connectorsand Decorations

n-ary

binary

unary(decorators)

SpecialSpecial

ontology

i annotation

! deprecated

definition

Page 71: Semantic Modeling Notation (Scanlon, SemTech 2010)

71

Graphical Notationexpressions

DiagramShape Represents... 'Object'

Representation'Data'

Representation Notes

Type Schema-level, all views

Property Schema-level, property views

Instances Data-level, type views

DiagramShape Represents... 'Object'

Representation'Data'

Representation Notes

Type Schema-level, all views

Property Schema-level, property views

Instances Data-level, type views

These are the building blocks for composite expressions and axioms.

Object-Data decorators optional; lack of decorator always means 'Object' unless context denotes otherwise.

These are the building blocks for composite expressions and axioms.

Object-Data decorators optional; lack of decorator always means 'Object' unless context denotes otherwise.

Page 72: Semantic Modeling Notation (Scanlon, SemTech 2010)

72

Class expressionsenumeration and set expressions

Class Expression

Connector / Decorator Examples OWL 2 Functional-Style Syntax

enumeration ObjectOneOf(a1...an)

intersection ObjectIntersectionOf(C1...Cn)

union ObjectUnionOf(C1...Cn)

complement ObjectComplementOf(C1...Cn)

Class Expression

Connector / Decorator Examples OWL 2 Functional-Style Syntax

enumeration ObjectOneOf(a1...an)

intersection ObjectIntersectionOf(C1...Cn)

union ObjectUnionOf(C1...Cn)

complement ObjectComplementOf(C1...Cn)

U

¬

U

c1c2c3

U

c1c2c3

¬

c1c2c3

U

{ } { }a:Anneb:Beauc:Chuck

Page 73: Semantic Modeling Notation (Scanlon, SemTech 2010)

73

Class expressionsgeneral property restrictions

Restriction Connectors Examples OWL 2 Functional-Style Syntax

universal ObjectAllValuesFrom(P C)DataAllValuesFrom(R1...Rn D)

existential ObjectSomeValuesFrom(P C)DataSomeValuesFrom(R1...Rn D)

value(individual, literal)

ObjectHasValue(P a)DataHasValue(R v)

local reflexivity ObjectHasSelf(P)

Restriction Connectors Examples OWL 2 Functional-Style Syntax

universal ObjectAllValuesFrom(P C)DataAllValuesFrom(R1...Rn D)

existential ObjectSomeValuesFrom(P C)DataSomeValuesFrom(R1...Rn D)

value(individual, literal)

ObjectHasValue(P a)DataHasValue(R v)

local reflexivity ObjectHasSelf(P)

Ι

϶ ϶7^^xsd:int

xsd:int∃ xsd:int∃∃

∀∀

Ι

p1

p1

p1

p1

xsd:int

Page 74: Semantic Modeling Notation (Scanlon, SemTech 2010)

74

Class expressionscardinality property restrictions

Restriction Connector / Decorator Examples OWL 2 Functional-Style Syntax

exact cardinality ObjectExactCardinality(n P)DataExactCardinality(n R)

qualified cardinality ObjectExactCardinality(n P C)DataExactCardinality(n R D)

maximum cardinality ObjectMaxCardinality(n P)DataMaxCardinality(n R)

qualified maximum cardinality

ObjectMaxCardinality(n P C)DataMaxCardinality(n R D)

minimum cardinality ObjectMinCardinality(n P)DataMinCardinality(n R)

qualified minimum cardinality

ObjectMinCardinality(n P C)DataMinCardinality(n R D)

Restriction Connector / Decorator Examples OWL 2 Functional-Style Syntax

exact cardinality ObjectExactCardinality(n P)DataExactCardinality(n R)

qualified cardinality ObjectExactCardinality(n P C)DataExactCardinality(n R D)

maximum cardinality ObjectMaxCardinality(n P)DataMaxCardinality(n R)

qualified maximum cardinality

ObjectMaxCardinality(n P C)DataMaxCardinality(n R D)

minimum cardinality ObjectMinCardinality(n P)DataMinCardinality(n R)

qualified minimum cardinality

ObjectMinCardinality(n P C)DataMinCardinality(n R D)

Note: for convenience, single, simple cardinality restrictions will be displayed as decorations beneath the restriction representation.

=n

=n

≤n

≤n

≥n

≥n

≤2

=5

=5

xsd:int∃ xsd:int∃≤2

≥1

≥1

p1

p1

p1

p1

p1

p1

xsd:int

NOTE: Audience question – do we have an example of a 'simplified' restriction representation? – Not here, but there was some in our prototypes up-front.

NOTE: Audience question – do we have an example of a 'simplified' restriction representation? – Not here, but there was some in our prototypes up-front.

Page 75: Semantic Modeling Notation (Scanlon, SemTech 2010)

75

Property expressionsobject property expressions

Property Expression Decoration Examples OWL 2 Functional-Style Syntax

inverse (anonymous) ObjectInverseOf(P)

Property Expression Decoration Examples OWL 2 Functional-Style Syntax

inverse (anonymous) ObjectInverseOf(P)

There is only a single property expression, for defining an anonymous property as an inverse of an existing property. This must be on a Class Representation View. There is only a single property expression, for defining an anonymous property as an inverse of an existing property. This must be on a Class Representation View.

c1 c2[p][ ]

Page 76: Semantic Modeling Notation (Scanlon, SemTech 2010)

76

Data range expressions

Data Range Expression

Decorator/Connector Examples OWL 2 Functional-Style Syntax

literal enumeration DataOneOf(v1...vn)

data range intersection DataIntersectionOf(D1...Dn)

data range union DataUnionOf(D1...Dn)

data range complement DataComplementOf(D)

datatype restriction (none) DatatypeRestriction(DN f1 v1...fn vn)

Data Range Expression

Decorator/Connector Examples OWL 2 Functional-Style Syntax

literal enumeration DataOneOf(v1...vn)

data range intersection DataIntersectionOf(D1...Dn)

data range union DataUnionOf(D1...Dn)

data range complement DataComplementOf(D)

datatype restriction (none) DatatypeRestriction(DN f1 v1...fn vn)

These axioms define how properties are related to Classes. They must be on a Property Representation View. These axioms define how properties are related to Classes. They must be on a Property Representation View.

U

¬

U

xsd:intminInclusive = 5

{ }“7”^^xsd:int

“11“^^xsd:int

¬ xsd:int

U xsd:integer

xsd:int

{ }

Uxsd:float

xsd:double

Page 77: Semantic Modeling Notation (Scanlon, SemTech 2010)

77

Class axioms'class-to-class' relationships

Class Characteristic

Decorator/Connector Examples OWL 2 Functional-Style Syntax

subclass SubClassOf(C1,C2)

equivalent class EquivalentClasses(C1…Cn)

disjoint classes DisjointClasses(C1…Cn)

disjoint union DisjointUnionOf(CN C1...Cn)

Class Characteristic

Decorator/Connector Examples OWL 2 Functional-Style Syntax

subclass SubClassOf(C1,C2)

equivalent class EquivalentClasses(C1…Cn)

disjoint classes DisjointClasses(C1…Cn)

disjoint union DisjointUnionOf(CN C1...Cn)

These axioms are all relate two (or more) Classes to each other. They are applicable only on a Class Representation View. These axioms are all relate two (or more) Classes to each other. They are applicable only on a Class Representation View.

is-ais-a c2c1

c1

c2

c3

c1

c2

c3

c1

c2

c3

TBoxTBox

cn

∅U ∅U

∅ ∅

Page 78: Semantic Modeling Notation (Scanlon, SemTech 2010)

78

Class axiomsclass keys

Feature Connector Examples OWL 2 Functional-Style Syntax

key HasKey(C (P1...Pm) (D1...Dn))

Feature Connector Examples OWL 2 Functional-Style Syntax

key HasKey(C (P1...Pm) (D1...Dn))

This axiom defines the object and/or data properties that are the keys for a Class. It is applicable on any of: Class, Property, and Data Range Views. This axiom defines the object and/or data properties that are the keys for a Class. It is applicable on any of: Class, Property, and Data Range Views.

C1

p1

ΚΚ

p2Κ

p3

TBox?TBox?

NOTE: Audience feedback – try to stay away from using letters that tie the notation to the EnglishLanguage, and may not be meaningful in all international locales. NOTE: Audience feedback – try to stay away from using letters that tie the notation to the EnglishLanguage, and may not be meaningful in all international locales.

Page 79: Semantic Modeling Notation (Scanlon, SemTech 2010)

79

Property axioms 'property-to-class' relationships

Property Axiom Decoration Examples OWL 2 Functional-Style Syntax

domain ObjectPropertyDomain(P,C)DataPropertyDomain(D,C)

range ObjectPropertyRange(P,C)DataPropertyRange(D,C)

Property Axiom Decoration Examples OWL 2 Functional-Style Syntax

domain ObjectPropertyDomain(P,C)DataPropertyDomain(D,C)

range ObjectPropertyRange(P,C)DataPropertyRange(D,C)

These axioms relate a Property to a Class. A Property can have more than 1 domain or range. These are applicable only on a Property View. These axioms relate a Property to a Class. A Property can have more than 1 domain or range. These are applicable only on a Property View.

DD

R

c1

Rc1

RBoxRBox

p1

p1

NOTE: Audience feedback – try to stay away from using letters that tie the notation to the EnglishLanguage, and may not be meaningful in all international locales. NOTE: Audience feedback – try to stay away from using letters that tie the notation to the EnglishLanguage, and may not be meaningful in all international locales.

Page 80: Semantic Modeling Notation (Scanlon, SemTech 2010)

80

Property axioms'property-to-property' relationships

Property Axiom

Decoration/Connector Examples OWL 2 Functional-Style Syntax

subproperty SubObjectPropertyOf(P1,P2)SubDataPropertyOf(P1,D2)

equivalent properties

EquivalentObjectProperties(P1…Pn)EquivalentDataProperties(D1...Dn)

disjoint properties

DisjointObjectProperties(P1…Pn)DisjointDataProperties(D1...Dn)

inverse properties InverseObjectProperties(P1,P2)

Property Axiom

Decoration/Connector Examples OWL 2 Functional-Style Syntax

subproperty SubObjectPropertyOf(P1,P2)SubDataPropertyOf(P1,D2)

equivalent properties

EquivalentObjectProperties(P1…Pn)EquivalentDataProperties(D1...Dn)

disjoint properties

DisjointObjectProperties(P1…Pn)DisjointDataProperties(D1...Dn)

inverse properties InverseObjectProperties(P1,P2)

These axioms are all relate two (or more) Properties to each other. They are applicable only on a Property view. These axioms are all relate two (or more) Properties to each other. They are applicable only on a Property view.

is-a

is-a

RBoxRBox

p1

p1 p2

p2

p1

p2

p3

p1

p2

p3

∅ ∅

↔ ↔

p1 p2inverseOf

typep1 p2

Page 81: Semantic Modeling Notation (Scanlon, SemTech 2010)

81

Property axioms property 'characteristics' (unary)

Property Characteristic Decoration Examples OWL 2 Functional-Style Syntax

functional FunctionalObjectProperty(P)FunctionalDataProperty(P)

inverse functional InverseFunctionalObjectProperty(P)

symmetric SymmetricObjectProperty(P)

asymmetric AsymmetricObjectProperty(P)

transitive TransitiveObjectProperty(P)

reflexive ReflexiveObjectProperty(P)

irreflexive IrreflexiveObjectProperty(P)

Property Characteristic Decoration Examples OWL 2 Functional-Style Syntax

functional FunctionalObjectProperty(P)FunctionalDataProperty(P)

inverse functional InverseFunctionalObjectProperty(P)

symmetric SymmetricObjectProperty(P)

asymmetric AsymmetricObjectProperty(P)

transitive TransitiveObjectProperty(P)

reflexive ReflexiveObjectProperty(P)

irreflexive IrreflexiveObjectProperty(P)

f

f

These axioms define characteristics of properties. They are all unary 'operators'. They are realized as decorations on a Property construct, on a Property view, or optionally as decorators on a binary relation on a Class view..

These axioms define characteristics of properties. They are all unary 'operators'. They are realized as decorations on a Property construct, on a Property view, or optionally as decorators on a binary relation on a Class view..

f

f

p1

p1

p1

p1

p1

p1p1p1

p1p1p1p1

p1p1p1p1

RBoxRBox

p1

p1

p1

p1

p1

p1

p1

f

f

Page 82: Semantic Modeling Notation (Scanlon, SemTech 2010)

82

Datatype definition axioms

Property Characteristic Decoration Examples OWL 2 Functional-Style

Syntax

datatype definition DatatypeDefinition(DN D)

Property Characteristic Decoration Examples OWL 2 Functional-Style

Syntax

datatype definition DatatypeDefinition(DN D)

my:smallnummy:smallnum

xsd:intxsd:int

maxInclusive=20maxInclusive=20

There is only 1 axiom related to datatypes. This axiom can be used to define a new named datatype in terms of an existing datatype with additional facet restrictions. This must be on a type-level diagram – either a Class diagram or a Datatype diagram.

There is only 1 axiom related to datatypes. This axiom can be used to define a new named datatype in terms of an existing datatype with additional facet restrictions. This must be on a type-level diagram – either a Class diagram or a Datatype diagram.

my:smallnummy:smallnum

base = xsd:intbase = xsd:int

maxInclusive=20maxInclusive=20↔ ↔

Page 83: Semantic Modeling Notation (Scanlon, SemTech 2010)

83

Assertion axioms(axioms about instances)

Assertion Decoration Examples OWL 2 Functional-Style Syntax

class (type) ClassAssertion(C a)

property assertion ObjectPropertyAssertion((PN a1 a2)DataPropertyAssertion(R a v)

negativeproperty assertion

NegativeObjectPropertyAssertion((PN a1 a2)NegativeDataPropertyAssertion(R a v)

Individual equality SameIndividual(a1...an)

Individual inequality DifferentIndividuals(a1...an)

Assertion Decoration Examples OWL 2 Functional-Style Syntax

class (type) ClassAssertion(C a)

property assertion ObjectPropertyAssertion((PN a1 a2)DataPropertyAssertion(R a v)

negativeproperty assertion

NegativeObjectPropertyAssertion((PN a1 a2)NegativeDataPropertyAssertion(R a v)

Individual equality SameIndividual(a1...an)

Individual inequality DifferentIndividuals(a1...an)

ac1

ABoxABox

a

pname

pname

pname

pname

a1

a1

a2

a1

a2

a1 a2

a1 a2

These axioms are all related to instances. The class (type) and property assertions are the common RDF-style axioms. These all must be on either a Class view or an Instance view.

These axioms are all related to instances. The class (type) and property assertions are the common RDF-style axioms. These all must be on either a Class view or an Instance view.

=

=

Page 84: Semantic Modeling Notation (Scanlon, SemTech 2010)

84

Annotations

Not shown for now...Not shown for now...

Page 85: Semantic Modeling Notation (Scanlon, SemTech 2010)

85

It's a Wrap!It's a Wrap!

Page 86: Semantic Modeling Notation (Scanlon, SemTech 2010)

86

Key takeaways● Visualization is critical to

– Collaborative ontology development– Communication & understanding– The widespread adoption of OWL

● The community needs to get behind

– A formal graphical notation

Page 87: Semantic Modeling Notation (Scanlon, SemTech 2010)

87

ReferencesSelect visualization papers

● Wang, Xiaoshu and Almeida, Jonas S.; Techniques for Ontology Visualization; Chapter 9 in Semantic Web: Revolutionizing Knowledge Discovery in the Life Sciences; 2007.

● Krivov, Serguei, et al; On Visualization of OWL Ontologies; Chapter 10 in Semantic Web: Revolutionizing Knowledge Discovery in the Life Sciences; 2007.

● Katifori, Akrivi, et al; Ontology Visualization Methods – A Survey; ACM Computing Surveys; 2007.

● Gaines, Brian R.; An Interactive Visual Language for Term Subsumption Languages; IJCAI 1991.

● Bergeron, D.; Visualization Reference Models; 1993.

Page 88: Semantic Modeling Notation (Scanlon, SemTech 2010)

88

References UML-related papers

● Brockmans, S., et al; Visual Modeling of OWL DL Ontologies Using UML; ISWC, 2004.

● Kiko, K. and Atkinson, C.; A Detailed Comparison of UML and OWL; 2008.

● Xu, Wei, et al; Modelling emergency response processes: Comparative study on OWL and UML; 2008.

● Harel, D. and Rumpe, B.; Meaningful Modeling: What's the Semantics of “Semantics”?; 2004.

Page 89: Semantic Modeling Notation (Scanlon, SemTech 2010)

89Thank you for your time and attention!Thank you for your time and attention!

Page 90: Semantic Modeling Notation (Scanlon, SemTech 2010)

90

Semantic Modeling Notation

Bob Scanlon[ svp development, rscanlon @ revelytix.com ]

Jim Irwin[ svp development, jirwin @ revelytix.com ]

SemTech, 25 June 2010