Ontologies [Modo de compatibilidad] - UC3Mocw.uc3m.es/.../lecture-notes-1/08-Ontologies.pdf... The 2...

Preview:

Citation preview

Ontologies

Information EngineeringInformation Engineering

Spectrum of Knowledge

Strong semanticStrong semantic

DAML+OIL, OWL

Descriptive Logic

First Order Logic

Model Logic

Ontology

2

Weak SemanticWeak Semantic

Relational

Model

Schema

Entity Relations

ER Extension

XTM

RDF/S

UML

Taxonomies

Thesauri

A bit of History (1/4)

The term “Ontology” originates from ancient philosophy.Philosophy of existence: essence vs. existence.Ancient Greece: They wanted to find the essence of things, even through changes:• What happens with a seed that germinates and grows to be a

3

• What happens with a seed that germinates and grows to be a tree? When does it stop being a seed?

• Parmenides: There are no changes; something that exist, never stops existing (the seed does not transform, its our senses that perceive them in a different form).

• Aristotle: The seed is a non completed tree. The tree simply has changed its mode of existence (never stopped being a tree).

A bit of History (2/4)

Middle Ages : focuses on the “universals”, in contrast to “individuals”.• In the modeling of knowledge:

– Universals: Man, Book, Computer. (a type, a property, or a relation)

– Individuals: Yorgos, this book, my computer. (refers to a person or to any specific object in a collection )

4

or to any specific object in a collection )• William of Ockam (English Franciscan friar and scholastic

philosopher) : Only individuals exist, rather than supra-individual universals. These are the products of abstraction from individuals by the human mind.

Modern Age: The essence comes from the perception.• José Ortega y Gasset: The world depends from the person that

perceive it.• Information Systems: Every system can represent the world in

different forms, depending on its purpose.

A bit of History (3/4)

Contemporary Age: The focus of attention is on the Information Sciences.• Theoretical bases appear with Formal Ontology: Axiomatic, formal and systematic development of the logic in all the forms and modes of existence (formal

5

logic in all the forms and modes of existence (formal properties, entities classification, categories for modeling the world, etc.).

Ontological Engineering: Activities that concern the process of ontology development, methodologies, techniques, languages etc.

A bit of History(4/4)

At the beginning of the 90s: Efforts have started on the construction of ontologies from scratch, on reusing other pre-existing ontologies, and for semi-automatizing methods for reducing the knowledge acquisition phase.Every group used its own principles.

6

The absence of some common guides impeded its development.In 1996: The 1st Congress on Ontological Engineering.In 1997: The 2nd Congress: Use of methodologies for the design and evaluation of ontologies.

Systems of Knowledge Retrieval (KR): advantages & disadvantages

Ontologies advantages for ApplicationsOntologies advantages for Applications

Improve reusability and interoperability

Improvement on Searches

Ontologies disadvantages for ApplicationsOntologies disadvantages for Applications

More useful when more complex, but:• Increases the creation difficulty• Visualization problems• It is difficult to find ready-made

7

Improvement of navigation

They can permit inferences

Contribute coherence and consistency rules

• It is difficult to find ready-made ontologies to match user’s need.

• The size of the resource (ontology) is inversely proportional to its specificity.

All methodologies have 2 great problems:• Bottleneck on the knowledge

acquisition• Difficulties on validation by domain

engineers.

Definition and components (1/2)

Distinct definitions of “ontology”:• Defines the terms and concerning relationships on a vocabulary of a determined

area, and the rules for combining terms and relationships for extending the vocabulary. (Neches et al., 1991).

• Is an explicit specification of a conceptualization (Gruber, 1993).

• Is a formal specification of a shared conceptualization (Borst, 1998).

8

• Is a formal and explicit specification of a shared conceptualization (Studer et al., 1998):– Conceptualization : Abstract model of a phenomenon of reality with its relative

concepts.– Explicit: the concepts, their types and restrictions are explicitly defined.– Formal: Readable by a machine.– Shared: with consensual knowledge (accepted by a community).

• Is a set of logical axioms designed for understanding the required significance of a vocabulary (Guarino, 1998).

Heavy ontologies vs. Light Ontologies (only indicate subsumption relations between concepts).

Definition and components (2/2)

Ontology Components:• Classes: Concepts, abstract or specific. Classes in an ontology

should be organized in taxonomies.• Relationships: Association between domain concepts. Protegé

supports only binary relationships: rel(domain, range), which are represented by “object properties” (slots).

• Functions: Is a special type of relationship in which one of the

9

• Functions: Is a special type of relationship in which one of the relationship’s elements is the result of a formula

• Axioms (restrictions) / Rules: Used for modeling sentences that are true. They represent knowledge that can not be formally defined with the rest of the terms. Should be used to preserve consistency.

• Instances: Used for representing elements or individuals of an ontology.

• Properties (and their values) of the above components

Ontology Types

Equilibrium amongst reusability & usability:

10

Design Principles

Clarity: Communicate the significance of terms.Be language independent.Extensibility: Anticipate the shared use of the vocabulary.Coherence: The inferences that are realized should be consistent with the definitions of the ontology.

11

consistent with the definitions of the ontology.Minimal ontological compromise: Compromises should be kept to a minimum, but guaranteeing the essentials. (Dates in American or English format)Other principles:• Classes and their subclasses should be well defined with

disjunctive and exhaustive knowledge.• Name standardization

Methodologies

• Methontology: is a series of activities for realizing a methodology. Complicated but very near to the world of Software Engineering. Useful in dynamic and complex domains

• Uschold’s methodology

12

• Uschold’s methodology • OTK Methodology• Toronto Virtual Enterprise (TOVE): It has management properties and is used when the purpose is clear.

• Descriptive Ontology for Linguistic and Cognitive Engineering (DOLCE)

Methodology METHONTOLOGY (1/6)

Gómez-Pérez et al.

13

Methodology METHONTOLOGY (2/6)

Conceptualization Tasks:

14

Methodology METHONTOLOGY (3/6)

TASK 1: Construct a glossary of terms. Every term that will be part of the ontology should include a brief definition such as synonyms and acronyms, their type etc.

TASK 2: Construct taxonomies in order to classify concepts. Result: One or more taxonomies where the concepts are classified . The taxonomy should be created according to the

15

created according to the relationships: • Subclass-of. • Disjunctive decomposition.• Exhaustive decomposition. • Partition.

Methodology METHONTOLOGY (4/6)

TASK 3: Describe the existing relationships amongst concepts of the ontology, or amongst other existing ontologies. This will give rise to the

TASK 4: Construct the concepts dictionary, in which the principle instances of concepts are included, the class and instance attributes, and

16

This will give rise to the relations diagram.

instance attributes, and their relationships with other concepts.

Methodology METHONTOLOGY (5/6)

TASK 5: describe in detail every relation that appears in the relations diagram (Task 3). This will give place to the relations table.TASK 6: Describe in the table of instance attributes each instance attribute that appears in the concepts dictionary (Task 4).

17

(Task 4).TASK 7: Describe in the table of class attributes each class attribute that appears in the concepts dictionary (Task 4).TASK 8: Describe in detail each constant in the table of constants. These constants are information relative to the stable domain, similarly to mathematical constants.

Methodology METHONTOLOGY (6/6)

TASK 9: Definition of formal axioms for specifying restrictions.TASK 10: Definition of rules, for inferring knowledge, such as

18

knowledge, such as inferring values in the attributes, instances of relationships, etc.TASK 11: Describe some instances of the ontology. (optional)

Other Methods

Uschold and King MethodGrüninger and Fox MethodologyKACTUS MethodSENSUS Method

19

On-To-Knowledge Methodology

Languages Evolution (1/2)

Ontologies markup languages:

20

Languages Evolution (2/2)

Remember:• Ontologies’ languages should permit the writing of explicit and formal conceptualizations.

• The main requisites are :– A well defined syntax.

21

– A well defined syntax.– Possibility of efficient reasoning.– Sufficient semantic wealth.

• The richer the language, the more inefficient is its reasoning, up to the point of being “incomputable”.– We need to compromise amongst those two things.

OWL

Web Ontology Language (OWL) (2004): is based on RDF(S).Has 3 layers:• OWL Lite: Small subset based on frames, but with some

reasoning.• OWL DL: Subset of First Order Logic (FOL) named Description

22

• OWL DL: Subset of First Order Logic (FOL) named Description Logics. Its inference capacity is now potent and decision based.

• OWL Full: RDF Extension, permitting metaclasses.

Various Syntaxes:• Abstract syntax (conceptualization): Corresponds to the common

Description Logic (DL), easy to read and write• RDF/XML (implementation): Can be written as an RDF

document.

Reasoning – Its importance

Why is reasoning important?• Tests the consistency of the ontology and its knowledge.• Test the consistency of the relationships • Classifies automatically instances in classes.

When is it important?• When we design big ontologies, and we are many.

23

• When we design big ontologies, and we are many.• When we integrate and/or share ontologies from various

sources.• When we edit/change the ontology

So we need:• Semantic is a prerequisite in order to support inference.• Use automatic reasoners that already exist for those formalisms.

Reasoning in RDF Schema

RDF(S) does not have native reasoners.We can “dress” some rules in the form of First Order Logic predicates.Its system would thus consist of inference rules of the form:• IF E contains certain triples THEN add to E certain additional triples.• Where E is an arbitrary set of RDF triples.Examples:• IF E contains the triple (?x,?p,?y)

THEN E also contains (?p,rdf:type,rdf:property)

24

THEN E also contains (?p,rdf:type,rdf:property)• IF E contains the triples (?u,rdfs:subClassOf,?v) and

(?v,rdfs:subclassOf,?w)THEN E also contains the triple (?u,rdfs:subClassOf,?w)

• IF E contains the triples (?x,rdf:type,?u) and (?u,rdfs:subClassOf,?v)THEN E also contains the triple (?x,rdf:type,?v)

• IF E contains the triples (?x,?p,?y) and (?p,rdfs:range,?u)THEN E also contains the triple (?y,rdf:type,?u)

The last demonstrates that the range in RDFS is not used to limit the range of a property, but to infer the type of range.

Reasoning in OWL

OWL is (partially) mapped in Description Logic (DL). DL is a subset of FOL where an efficient reasoning is possible.Possible Reasoning:

25

Possible Reasoning:• Subsumption: Incorporates a concept under a more generic category.

• Consistency Testing: If there is any restriction that could not be satisfied (if the classes are coherent).

• Restrictions Testing: Performed on the values of the properties and their cardinalities.

Inference Machines

The FaCT System (Fast Classification of Terminologies) is a DL classifier. FaCT is free and runs in Lisp. It also has a CORBA interface, that permits its integration with other systems.RACER (Renamed ABox and Concept Expression Reasoner) in available in Java.

26

Reasoner) in available in Java.TRIPLE is an inference machine that permits the definition of the RDF based semantic through rules. It is freeware and based in Java.KAON2 is a Java based reasoner, free for non commercial use. MSPASS is a C based reasoner, free and open-source. Pellet is a Java based reasoner , free and open-source.

Development Tools (1/9)

Selection principles:• What activities of the ontology development process does it

support?• How much expressiveness permits its knowledge model?• What type of user interface does it offer?• Does it allow the modeling of formal axioms or complex

expressions?

27

expressions?• Do I need to install it? Can I use it with a web browser?• Where are the ontologies stored?• Does it have inference or query functionalities?• In what language does it generate the ontology?• Can I import ontologies?• Can I export in different languages?• What types of consistency and evaluation does it realize?

Method Tools Language

SENSUS OntoEdit OWL,DAML+OIL

OTK OilEd RDF(S)

Development Tools (2/9)

28

Methontology Ontosaurus XML

Uschold et al. Protégé2000 KIF

Gruniger et al. WebODE OCML

SENSUS Ontolingua FLogic

Development Tools (3/9)

Ontolingua Server (1997):• Ontolingua Ontologies.• Web: Editor, browser, plugin Chimaera.• Offers collaborative editing and ontologies repository.OntoSaurus (1997):• LOOM Ontologies.• Web: Editor, navigation.

29

• Web: Editor, navigation.WebOnto (1998):• OCML Ontologies.• Web: Editor (applets en Java). Collaborative editing.OilEd (2001):• OIL and DAML+OIL ontologies.• Standalone application. Java based.• Knowledge on DL. FaCT Reazoner.• Can export to OWL.

Development Tools (4/9)

30

Development Tools (5/9)

Protege (2000):• Freeware, extensible architecture.• Editor, navigation.• Plugins: Graphical visualization, merging, reasoning.WebODE (2003):• Web: Editing, navigation (HTML y applets JAVA).• Creation of axioms, documentation, evolution, learning, merging, reasoning,

evaluation (ODEClean).

31

• Creation of axioms, documentation, evolution, learning, merging, reasoning, evaluation (ODEClean).

OntoEdit (2002):• Application: Editor, navigation.• Functions: Collaborative editing, inference.• Freeware and commercial versions.KAON (2003):• Freeware Java based application. Others:• SemanticWorks• Swoop: Only visualization.

Development Tools (6/9)

32

Development Tools (7/9)

33

Development Tools (8/9)

34

Development Tools (9/9)

35

Annotation Tools (1/3)

Selection principles :• What types of instances does it allow me to create?• Where are the annotations saved? On the server? In its own page?

• In what language is the annotation saved?

36

• In what language is the annotation saved?• In what type of language has to be saved the ontology?

• What degree of automatization does the tool support? Does it suggest annotations?

• Does it permit me annotate other resources?

Annotation Tools (2/3)

Tools:• SHOE Knowledge Annotator (2001):

– Manual annotation of HTML documents.– A predecessor of SMORE, that annotates RDF(S) and DAML+OIL

• OntoMat-Annotizer (2001):– Java application with an ontology visualizer and a Web navigator.– Manual annotation of DAML+OIL.– A predecessor of OntoAnnotate.

• MnM (2001):

37

• MnM (2001):– Java application with an editor and a navigator.– Ontologies in RDF(S), DAML+OIL, OCML.– Adds semiautomatic support.

• COHSE (2002):– It is added on Mozilla sidebar.– Server based (not a standalone application).– Annotations based and not based in ontologies.– Permits concept instantiation but not their attributes.

• UBOT AeroDAML (2001):– Web Application.– The user sends the page, and it is returned with annotations based on high level

general ontologies.

Annotation Tools (3/3)

38

Bibliography

Basic Bibliography:• ANTONIOU, G. AND VAN HARMELEN, F. 2004. A semantic Web primer. Massachusetts Institute of Technology Press, Massachusetts, USA.

• GÓMEZ-PÉREZ, A., FERNÁNDEZ-LÓPEZ, M. AND

39

• GÓMEZ-PÉREZ, A., FERNÁNDEZ-LÓPEZ, M. AND CORCHO, O. 2004. Ontological Engineering: with examples from the areas of Knowledge Management, e-Commerce and the Semantic Web. Springer-Verlag, London.