object-orientation in ontology

57
1 Object-Orientation in Ontology Date: April 30, 2007 Byunggul Koh Taeksu Kim

Upload: meriel

Post on 13-Jan-2016

30 views

Category:

Documents


0 download

DESCRIPTION

Object-Orientation in Ontology. Date: April 30, 2007 Byunggul Koh Taeksu Kim. Contents. Ontology Overview Definition Elements of Ontology Semantic Web Consumer products Ontology Language RDF RDF Schema Object Oriented Features in RDF OWL Object Oriented Features in OWL - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Object-Orientation in Ontology

1

Object-Orientation in Ontology

Date: April 30, 2007

Byunggul KohTaeksu Kim

Page 2: Object-Orientation in Ontology

2

Contents

Ontology Overview Definition Elements of Ontology Semantic Web Consumer products

Ontology Language RDF RDF Schema Object Oriented Features in RDF OWL Object Oriented Features in OWL

References & Appendix

Page 3: Object-Orientation in Ontology

3

Semantics

Semantic

Symbol Object

Person can recognize the object by semantics

Tree

나무

Page 4: Object-Orientation in Ontology

4weak semanticsweak semantics

strong semanticsstrong semantics

Is Disjoint Subclass of with transitivity property

Logical Theory

Thesaurus Has Narrower Meaning Than

TaxonomyIs Sub-Classification of

Conceptual Model Is Subclass of

DB Schemas, XML Schema

First Order Logic

RelationalModel, XML

OWL

RDF/S

Semantic Expressivity

Page 5: Object-Orientation in Ontology

5

Logical Theory

Thesaurus Has Narrower Meaning Than

TaxonomyIs Sub-Classification of

Conceptual Model Is Subclass of

Is Disjoint Subclass of with transitivity property

weak semanticsweak semantics

strong semanticsstrong semantics

ER

Semantic Expressivity

Problem: Very GeneralSemantic Expressivity: Very High

Problem: Local Semantic Expressivity: Low

Problem: GeneralSemantic Expressivity: Medium

Problem: Local Semantic Expressivity: High

Page 6: Object-Orientation in Ontology

6

Definition of ontology

In computer science

Represents a set of concepts within a domainRepresents a set of concepts within a domain

Relationships between those conceptsRelationships between those concepts

Page 7: Object-Orientation in Ontology

7

Elements of an ontology (1/3)

Class Relationship

Properties

It need to specify descriptions for the following kinds of concepts:

Page 8: Object-Orientation in Ontology

8

Elements of an ontology (2/3)

Classes Is abstract groups, sets, or collections of objects May contain individuals, other classes, or a

combination of both

Property Objects can be described by assigning attributes

to them Has a name and a value, Is used to store information that is specific to the

object

Page 9: Object-Orientation in Ontology

9

Elements of an ontology (3/3)

Relationship Property is to describe the relationships

between objects Relation is an property whose value is another

object Ex: Successor: Ford Explorer

Page 10: Object-Orientation in Ontology

10

Ontology Language

OWL

•Developed as a follow-on from RDF and RDFS, as well as earlier ontology language projects including OIL, DAML and DAML+OIL.

KIF•Syntax for first-order logic that is based on S-expressions

CycL

•First-order predicate calculus with some higher-order extensions

Is a formal language used to encode the ontology

Page 11: Object-Orientation in Ontology

11

Usage of an ontology

Tomorrow's applications can be "intelligent" in the sense that they can more accurately work

at the human conceptual level

Has many applying area

Ubiquitous Computing

InformationIntegration

A.I.Semantic Web

Page 12: Object-Orientation in Ontology

12

Example of Using ontology

.251.25SquareXAB035

.751.5

RoundXAB023

…Price ($US)

Size (in)ShapeCatalog No.

.4531S550298

.3537R550296

…Price ($US)

Diam (mm)

Geom.Part No.

Washer

Catalog No.Shape Size Price

iMetal Corp.

E-Machina

iMetal Corp.

E-Machina

Manufacturer

.451.25Square550298

.351.5Round550296

.751.5RoundXAB023

.251.25SquareXAB035

…Price ($US)Size (in)ShapeMfr No.

Supplier ASupplier

B

Buyer

Ontology

Page 13: Object-Orientation in Ontology

13

Applying area of ontology Semantic web

Way of enabling the semantics to be used by web applications and intelligent agents

Standard W3C

RDF DAML-OIL OWL

ISO/IEC Topic maps

Page 14: Object-Orientation in Ontology

14

Elements of a semantic web

HigherHigherSemanticsSemantics

SemanticsSemantics

Structure Structure & Syntax& Syntax

Logical Layer - Formal semantic - Reasoning support - Heavyweight ontologies

Schema Layer - Definition of vocabulary - Lightweight ontologies

Data Layer - Simple data model and Syntax for metadata - RDF: Instances

OWL

RDF Schema

RDF

XML Schema

Page 15: Object-Orientation in Ontology

15

Layer of Elements

HigherHigherSemanticsSemantics

SemanticsSemantics

Structure Structure & Syntax& Syntax

Page 16: Object-Orientation in Ontology

16

Semantic Web Scenario 1

Feature

Reconstruction

Issue instanceHistoricevent

Site

has

hasreconstructs

Pertains to

Instance of

http://dlib.etc.ucla.edu/Forum/Curia

http://dlib.etc.ucla.edu/Forum

Reconstructionissue

Roof construction

http://dlib.etc.ucla.edu/issue/roof

http://tes.htm

Page 17: Object-Orientation in Ontology

17

Semantic Web Scenario 2

Arch of Forum

Curia Iulia

North sectorof Forumdescribes

describes

includes

includespotentially describes

Page1http://test1.html

Page2http://test2.html

Page 18: Object-Orientation in Ontology

18

Contents

Ontology Overview Definition Elements of Ontology Semantic Web Consumer products

Ontology Language RDF RDF Schema Object Oriented Features in RDF OWL Object Oriented Features in OWL

References & Appendix

Page 19: Object-Orientation in Ontology

19

About metadataFind Things in the Real World

Library Video shop Phone book

• Author• Title

• Subject• ISDN

• …

Book’s location

•Actor’s name• Director’s name

• Genre• …

Video’s name

• Name• Location

• …

Phone number of Pizzahut

Page 20: Object-Orientation in Ontology

20

About metadata Common Thread in Find Things

Based on metadata Information about information

E.g. Finding information

Book’s location Using information about information

Book’s title, author, etc.

Page 21: Object-Orientation in Ontology

21

About metadata Searching in WWW

The Web is a lot like a really big library

There is hardly any metadata on the Web

Search engine do the equivalent of going through the library, reading every book, and allowing us to look things up based on the words in the text.

Page 22: Object-Orientation in Ontology

22

Introduction to RDF

Resource Description Framework

Is W3C standard for encoding knowledge, for the web

A framework for supporting resource description, or metadata

Make the management and navigation of Web data easier

Page 23: Object-Orientation in Ontology

23

RDF Triple

Subject Predicate Object

Article(http://bluewater.tistory.com/16) Authored_by

Byunggul Koh

Page 24: Object-Orientation in Ontology

24

Graph representation of RDF

Byunggul Kohhttp://bluewater.tistory.com/16Authored_by

http://bluewater.tistory.com/16 http://bluewater.tistory.com

Byunggul Koh Korea

Authored_by

Name nationality

Subject ObjectPredicate

Page 25: Object-Orientation in Ontology

25

RDF vs. XML

RDF XML

Semantics Syntax

Graph Tree

Relation representationData representation

Simple syntax

Great Scalability Lack of scalability

Page 26: Object-Orientation in Ontology

26

Serialization Syntaxes: RDF/XML

Page 27: Object-Orientation in Ontology

27

Serialization Syntaxes: Notation 3

Page 28: Object-Orientation in Ontology

28

Application

RDF Site Summary (RSS)

Publishing information about updates of a web page

RDF Site Summary (RSS 1.0) Based on RDF

Really Simple Syndication (RSS 2.0) Based on XML & XML Schema

Page 29: Object-Orientation in Ontology

29

Application

RDF Site Summary (RSS)

Page 30: Object-Orientation in Ontology

30

RDF Schema

RDF specification Extensible knowledge representation

language intended to structure RDF resources

Provides basic elements for the description of ontology

Called RDF vocabularies

Page 31: Object-Orientation in Ontology

31

Example of RDF Schema

eg:Document eg:author eg:Person

http://example.com/Proposal/

Byunggul KohInformation Management-A Proposal

eg:author

eg:nameeg:title

rdfs:Resource

rdf:Property

rdfs:type

rdfs:subClassOfrdfs:subClassOf

rdfs:domain rdfs:range

rdf:type rdf:type

rdfs:subClassOf

Page 32: Object-Orientation in Ontology

32

Object-Oriented Features in RDF (1/4)

rdfs:Resource All things described by RDF are called resources

rdfs:Class Declare a resource as a class for other resources

rdf:Property The class of RDF properties

rdfs:subClassOf Declare hierarchies of classes

rdfs:subPropertyOf State that all resources related by one property are also

related by another

Page 33: Object-Orientation in Ontology

33

Object-Oriented Features in RDF (2/4)

rdf:type State that a resource is an instance of a class

rdfs:domain Declares the class of the subject in a triple

using this property as predicate P rdfs:domain C

rdfs:range Declares the values of a property are instances

of one or more classes P rdfs:range C

Page 34: Object-Orientation in Ontology

34

Object-Oriented Features in RDF (3/4)

Person

Teacher

teacher

rdfs:domain

<rdfs:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Resource"/></rdfs:Class>

<rdfs:Class rdf:ID="Teacher"> <rdfs:subClassOf rdf:resource="#Person"/></rdfs:Class> <rdf:Property rdf:ID="teacher"> <rdfs:domain rdf:resource="#Course"/> <rdfs:range rdf:resource="#Teacher"/></rdf:Property>

rdf:Property

Course

rdfs:range

rdfs:subClassOf

rdfs:subClassOf

Page 35: Object-Orientation in Ontology

35

Object-Oriented Features in RDF (4/4)

Classes in RDF Class

Associations in RDF Attributes in RDF

Property

Instances in RDF Type

RDF has sufficient features for Object-Oriented paradigm

Appendix

Page 36: Object-Orientation in Ontology

36

Contents

Ontology Overview Definition Elements of Ontology Semantic Web Consumer products

Ontology Language RDF RDF Schema Object Oriented Features in RDF OWL Object Oriented Features in OWL

References & Appendix

Page 37: Object-Orientation in Ontology

37

What is OWL?

Web Ontology Language Built on top of RDF OWL is

Stronger language with greater machine interpretability than RDF

Greater vocabulary and stronger syntax than RDF

E.g. Inverse, Union, Intersection

Page 38: Object-Orientation in Ontology

38

Three Sublanguages

OWL Lite

OWL DL OWL Full

• Classification hierarchy • Simple constraint features

• Maximum expressiveness and the syntactic freedom • No computational guarantees

• Maximum expressiveness without losing computational completeness

Appendix

Page 39: Object-Orientation in Ontology

39

Object-Oriented Features in OWL (1/8)

owl:Class Class is a group of individuals that belong together

because they share some properties

Individual Individuals are instances of classes

rdfs:subClassOf Class hierarchies may be created by making one or

more statements that a class is a subclass of another class

Page 40: Object-Orientation in Ontology

40

Object-Oriented Features in OWL (2/8)

Wine

PortableLiquid

<owl:Class rdf:ID="Wine"> <rdfs:subClassOf rdf:resource="PotableLiquid"/> <rdfs:label xml:lang="en">wine</rdfs:label> <rdfs:label xml:lang="fr">vin</rdfs:label> ... </owl:Class>

Page 41: Object-Orientation in Ontology

41

Object-Oriented Features in OWL (3/8)

owl:ObjectProperty, owl:DatatypeProperty Datatype properties

Relations between instances of classes and RDF literals and XML Schema datatypes

Object properties Relations between instances of two classes.

rdf:Property rdfs:subPropertyOf

Property hierarchies may be created by making one or more statements that a property is a subproperty of one or more other properties

rdfs:domain A domain of a property limits the individuals to which the

property can be applied rdfs:range

The range of a property limits the individuals that the property may have as its value

Page 42: Object-Orientation in Ontology

42

Object-Oriented Features in OWL (4/8)

<owl:ObjectProperty rdf:ID="hasColor"> <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor"/> <rdfs:range rdf:resource="#WineColor" /> ...</owl:ObjectProperty>

Wine

WineDescriptorPortableLiquid

WineColor

hasWineDescriptor

hasColor

Page 43: Object-Orientation in Ontology

43

Object-Oriented Features in OWL (5/8)

owl:equivalentClass Two classes may be stated to be equivalent

owl:equivalentProperty Two properties may be stated to be equivalent

owl:sameAs Two individuals may be stated to be the same

owl:differentFrom An individual may be stated to be different from other

individuals owl:intersectionOf

Intersections of named classes and restrictions owl:unionOf

Arbitrary Boolean combinations of classes and restrictions

Page 44: Object-Orientation in Ontology

44

Object-Oriented Features in OWL (6/8)

<owl:Class rdf:ID=“Vehicle"> <owl:equivalentClass rdf:resource=“Car"/></owl:Class>

<Wine rdf:ID="MikesFavoriteWine"> <owl:sameAs rdf:resource="#StGenevieveTexasWhite" /> </Wine>

Vechicle

Car

Equus

owl:equivalentClass

rdf:type

Wine

StGenevieveTexasWhiteMikesFavoriteWine

rdf:typerdf:type

Same instances

Page 45: Object-Orientation in Ontology

45

Object-Oriented Features in OWL (7/8)

<owl:Class rdf:ID="WhiteBurgundy"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Burgundy" /> <owl:Class rdf:about="#WhiteWine" /> </owl:intersectionOf> </owl:Class>

White WineBurgundy

Page 46: Object-Orientation in Ontology

46

Object-Oriented Features in OWL (8/8)

<owl:Class rdf:ID="Fruit"> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#SweetFruit" /> <owl:Class rdf:about="#NonSweetFruit" /> </owl:unionOf></owl:Class>

NonSweetFruitSweetFruit

Appendix

Page 47: Object-Orientation in Ontology

47

Expression Power of OWL

OWL model can express The disjoint of two classes The intersection and complement of two classes Minimum and maximum cardinality of the class Symmetric, transitive, functional, and inverse-functional

property of the class Inverse relation of two property Create equivalent classes which has different name

Page 48: Object-Orientation in Ontology

48

Contents

Ontology Overview Definition Elements of Ontology Semantic Web Consumer products

Ontology Language RDF RDF Schema Object Oriented Features in RDF OWL Object Oriented Features in OWL

References & Appendix

Page 49: Object-Orientation in Ontology

49

References

W3C, A Semantic Web Primer for Object-Oriented Software Developers, available at http://www.w3.org/TR/sw-oosd-primer/, 2006

Asuncion Gomez-Perez et al., "Ontological Engineering," Springer, 2004

OWL Web Ontology Language Use Cases and Requirements, http://www.w3.org/TR/webont-req/

OWL Web Ontology Language Overview, http://www.w3.org/TR/owl-features/

RDF Primer, http://www.w3.org/TR/rdf-primer/ Ontology, Wikipedia Overview of Ontology, SNU IDB Lab., 2006 Overview of RDF, SNU IDB Lab., 2006

Page 50: Object-Orientation in Ontology

50

Appendix

Page 51: Object-Orientation in Ontology

51

RDFS (1/3)

rdfs:Resource rdfs:Class rdfs:Literal

The class of literal values such as strings and integers

rdfs:Datatype rdfs:Datatype is the class of datatypes

rdf:XMLLiteral The class of XML literal values

rdf:Property

Page 52: Object-Orientation in Ontology

52

RDFS (2/3)

rdfs:range rdfs:domain rdf:type rdfs:subClassOf rdfs:subPropertyOf rdfs:label

Instance of rdf:Property that may be used to provide a human-readable version of a resource's name

rdfs:comment Instance of rdf:Property that may be used to provide a

human-readable description of a resource

Page 53: Object-Orientation in Ontology

53

RDFS (3/3) rdfs:Container rdf:Bag rdf:Seq rdf:Alt rdfs:ContainerMembershipProperty rdfs:member rdf:List rdf:first rdf:rest rdf:nil rdf:Statement rdf:subject rdf:predicate rdf:object rdfs:seeAlso rdfs:isDefinedBy rdf:value Back to p.34

Page 54: Object-Orientation in Ontology

54

OWL (1/3)

owl:AllDifferent A number of individuals may be stated to be mutually

distinct in one AllDifferent statement owl:inverseOf

If the property P1 is stated to be the inverse of the property P2, P1(x,y) iff P2(y,x)

owl:allValuesFrom If an instance of the class is related by the property to a

second individual, then the second individual can be inferred to be an instance of the local range restriction class

owl:someValuesFrom A particular class may have a restriction on a property that

at least one value for that property is of a certain type

Page 55: Object-Orientation in Ontology

55

OWL (2/3)

owl:cardinality Cardinality is provided as a convenience when it is

useful to state that a property on a class has both minCardinality 0 and maxCardinality 0 or both minCardinality 1 and maxCardinality 1

owl:minCardinality If a minCardinality of 1 is stated on a property with

respect to a class, then any instance of that class will be related to at least one individual by that property

owl:maxCardinality If a maxCardinality of 1 is stated on a property with

respect to a class, then any instance of that class will be related to at most one individual by that property

Page 56: Object-Orientation in Ontology

56

OWL (3/3)

owl:one of Classes can be described by enumeration of the

individuals that make up the class

owl:hasValue A property can be required to have a certain individual

as a value

owl:disjointWith Classes may be stated to be disjoint from each other

owl:unionOf owl:intersectionOf owl:complementOf

Back to p.45

Page 57: Object-Orientation in Ontology

57

OWL Lite, OWL DL, OWL Full

OWL Lite OWL DL OWL Full

Following property can not be specified owl:minCardinality owl:maxCardinality owl:cardinality

Only 0 or 1 can be used

owl:hasValue owl:disjointWith owl:oneOf owl:complementOf owl:unionOf

Following property can not be specified FunctionalProperty InverseFunctionalProperty owl:cardinality

Can not use metaclassCan not import the OWL Full ontology

All features in specification can be used

NCA IV- RER-04059: A Research on Web Ontology Development Guideline, National Information Society Agency, 2004. 12

Back to p.37