61
Ontologies, Description Logics and Semantic Web Ontologies, Description Logics and Semantic Web A Short Introduction Marek Obitko [email protected] Department Of Cybernetics Faculty of Electrical Engineering Czech Technical University in Prague October 23, 2008

Ontologies Semantic Web Introduction

Embed Size (px)

DESCRIPTION

xcvcxvxc

Citation preview

  • Ontologies, Description Logics and Semantic Web

    Ontologies, Description Logics and Semantic WebA Short Introduction

    Marek [email protected]

    Department Of CyberneticsFaculty of Electrical Engineering

    Czech Technical University in Prague

    October 23, 2008

  • Ontologies, Description Logics and Semantic Web

    Outline

    Introduction

    Ontologies

    Description Logics

    Semantic Web

    Conclusion

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Outline

    Introduction

    Ontologies

    Description Logics

    Semantic Web

    Conclusion

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Importance of Knowledge

    I Critical for intelligent systemsI In many cases, better knowledge can be more important for

    solving a task than better algorithms

    I Truly intelligent system knowledge capture, processing,reuse, communication

    I How to express knowledge or information?I Need to agree! Ontologies

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Importance of Knowledge

    I Critical for intelligent systemsI In many cases, better knowledge can be more important for

    solving a task than better algorithms

    I Truly intelligent system knowledge capture, processing,reuse, communication

    I How to express knowledge or information?

    I Need to agree! Ontologies

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Importance of Knowledge

    I Critical for intelligent systemsI In many cases, better knowledge can be more important for

    solving a task than better algorithms

    I Truly intelligent system knowledge capture, processing,reuse, communication

    I How to express knowledge or information?I Need to agree! Ontologies

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Knowledge Sharing Motivation

    I Real-life example (US Army) of transportation chain involvingdifferent companies around the world

    I Transport of containers weighing tons - works well

    I Transport of information saying what is in containers - doesntwork well

    I Containers need to be unpacked to see what is in themI Problem: different computer systems that were not designed

    to work together

    I Systems designed to be efficient, but the interface betweenthe systems require significant human intervention

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Knowledge Sharing Motivation

    I Real-life example (US Army) of transportation chain involvingdifferent companies around the world

    I Transport of containers weighing tons - works wellI Transport of information saying what is in containers - doesnt

    work well

    I Containers need to be unpacked to see what is in them

    I Problem: different computer systems that were not designedto work together

    I Systems designed to be efficient, but the interface betweenthe systems require significant human intervention

  • Ontologies, Description Logics and Semantic Web

    Introduction

    Knowledge Sharing Motivation

    I Real-life example (US Army) of transportation chain involvingdifferent companies around the world

    I Transport of containers weighing tons - works wellI Transport of information saying what is in containers - doesnt

    work well

    I Containers need to be unpacked to see what is in themI Problem: different computer systems that were not designed

    to work together

    I Systems designed to be efficient, but the interface betweenthe systems require significant human intervention

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Outline

    Introduction

    Ontologies

    Description Logics

    Semantic Web

    Conclusion

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Philosophical Roots

    I Ontology = branch of philosophyI what is existence, what properties can explain existenceI Aristotle: science of being as suchI all the species qua being and the attributes that belong to it

    qua beingI reformulation: what is the being?I what are the features common to all beings?

    I general ontology versus ontologies for a particular domainI entities of the world (physical objects, events, regions, ...),

    meta-level categories (concept, property, quality, state, role,part...)

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Explicit Specification of Conceptualization

    I ... conceptualizationI semantic structure for encoding implicit knowledgeI language independentI way of seeing domain, usually also depends on application

    I explicit specification ...I descriptionI explicit, using a (formal) language (like a formal specification

    of a program)

    I engineering artifactI concepts, relations, described in some logical languageI constraints what is possible, background knowledge

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Explicit Specification of Conceptualization

    I ... conceptualizationI semantic structure for encoding implicit knowledgeI language independentI way of seeing domain, usually also depends on application

    I explicit specification ...I descriptionI explicit, using a (formal) language (like a formal specification

    of a program)

    I engineering artifactI concepts, relations, described in some logical languageI constraints what is possible, background knowledge

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Explicit Specification of Conceptualization

    I ... conceptualizationI semantic structure for encoding implicit knowledgeI language independentI way of seeing domain, usually also depends on application

    I explicit specification ...I descriptionI explicit, using a (formal) language (like a formal specification

    of a program)

    I engineering artifactI concepts, relations, described in some logical languageI constraints what is possible, background knowledge

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Example Transportation System

    I Ontology (description of domain)I Conveyor-beltI DiverterI is-connected-toI is-connected-to is symmetric

    I Knowledge base (particular state of affairs)I ConveyorBelt123 is-connected-to DiverterXYZI DiverterXYZ is-connected-to ConveyorBelt123

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Example Transportation System

    I Ontology (description of domain)I Conveyor-beltI DiverterI is-connected-toI is-connected-to is symmetric

    I Knowledge base (particular state of affairs)I ConveyorBelt123 is-connected-to DiverterXYZI DiverterXYZ is-connected-to ConveyorBelt123

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Explicit Specification of Conceptualization

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Ontological Commitment

    I Agreement to use a vocabulary...I (to ask and make assertions)I ... in a way consistent with ontology

    I Shared ontologyI agents can share knowledge, i.e. communicate it and reason

    in consistent way

  • Ontologies, Description Logics and Semantic Web

    Ontologies

    Formality

    Formal explicit specification of shared conceptualization

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Outline

    Introduction

    Ontologies

    Description Logics

    Semantic Web

    Conclusion

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Description Logics

    I Formal description of concepts and rolesI Formalization of semantic networks and frame-based systemsI Intents

    I enough for practical modeling purposesI good computational properties (e.g., decidability)

    I Usually subset of first order predicate logicI DL system = TBox (terminology) + ABox (assertions)

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Attributive Language AL

    Syntax Semantics Comment

    A AI I atomic conceptR RI I I atomic role> I top (most general) concept bottom (most specific)

    conceptA I \ AI atomic negation

    C u D CI DI intersectionR.C {a I |b.(a, b) RI b CI} value restrictionR.> {a I |b.(a, b) RI} limited existential

    quantificationPerson u Female Person u Female

    Person u hasChild.> Person u hasChild.Female

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    AL ExtensionsName Syntax Semantics Comment

    U C unionsq D CI DI union of twoconcepts

    E R.C {a I |b.(a, b) RI b CI} full quantificationN 1 nR {a I | |{b|(a, b) RI}| n} number restriction

    6 nR {a I | |{b|(a, b) RI}| n}C C I \ CI negation of

    arbitrary concept

    I S role transitivity Trans(R) (asserting that role is transitive)I H role hierarchy R S (asserting hierarchy of roles)I I role inverse R (creating inverse role)I F functionality 6 1R (functional role in concept creation)I O nominals {a1, ..., an} (concept declared by enumeration)

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Reasoning

    I Satisfiability of a concept whether an individual can existI Subsumption of concepts C subsumes D?I Consistency of ABox with respect to TBoxI Check an individual is individual an instance of a concept?I Retrieval of individuals find instances of a conceptI Realization of an individual find concepts for individual

    I All can be reduced to satisfiability or subsumptionI Algorithms: structural, logicalI Tableau algorithm: proving satisfiability, using expansion rules

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I In Web Ontology Language OWLI Corresponds to description logic SHOINI Web Ontology Language terminology

    I Class = conceptI Property = role

    I Lets start Protege...I http://protege.stanford.edu/download/download.html

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owl

    I Check consistency everything OK?I Classify taxonomy see classificationI Define CheesePizzaI Classify taxonomy see classificationI ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owlI Check consistency everything OK?

    I Classify taxonomy see classificationI Define CheesePizzaI Classify taxonomy see classificationI ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owlI Check consistency everything OK?I Classify taxonomy see classification

    I Define CheesePizzaI Classify taxonomy see classificationI ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owlI Check consistency everything OK?I Classify taxonomy see classificationI Define CheesePizza

    I Classify taxonomy see classificationI ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owlI Check consistency everything OK?I Classify taxonomy see classificationI Define CheesePizzaI Classify taxonomy see classification

    I ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owlI Check consistency everything OK?I Classify taxonomy see classificationI Define CheesePizzaI Classify taxonomy see classificationI ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Description Logics

    Example OWL Pizzas in Protege

    I Open pizzas.owlI ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owlI Check consistency everything OK?I Classify taxonomy see classificationI Define CheesePizzaI Classify taxonomy see classificationI ...http://labe.felk.cvut.cz/~obitko/spr/owl.html

    I Full tutorial, if you are interested: http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Outline

    Introduction

    Ontologies

    Description Logics

    Semantic Web

    Conclusion

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Semantic Web

    I Current WWW = hypertext web, library of interlinkeddocuments transferred by computers, presented to people

    I Semantic web = effort to enhance current web so thatcomputers can process information presented in WWW

    I Share data instead of documents (not necessarily AI!)

    ...provide a common framework that allows data to be shared andreused across application, enterprise, and community boundaries.It is a collaborative effort led by World Wide Web Consortium(W3C)...

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Semantic Web Architecture

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Resource Description Framework (RDF)

    I representing information about resources (IRI) in a graph formI triples subject-predicate-object

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Resource Description Framework (RDF)

    I subject and predicate can be resourceI object can be resource or literal (may be typed using XML

    Datatypes)

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    RDF Graph

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    RDF Serialization N3, TURTLE

    @prefix : .@prefix foaf: .@prefix rdf: .

    :joesmith a foaf:Person ;foaf:givenname "Joe" ;foaf:family_name "Smith" ;foaf:homepage ;foaf:mbox .

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    RDF Serialization XML

    SmithJoe

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Selected RDF vocabulary

    I rdf:type it is a predicate used to state that a resource isan instance of a class

    I rdf:Property the class of properties (i.e. binary relationsthat are used as predicates in triples)

    I rdf:Alt, rdf:Bag, rdf:Seq containers of alternatives,unordered containers, and ordered containers

    I rdf:List the class of RDF ListsI rdf:nil an instance of rdf:List representing the empty

    list

    I rdf:Statement, rdf:subject, rdf:predicate,rdf:object reification support

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    RDF Schema RDFS

    I extending RDF vocabularyI describing taxonomies of classes and propertiesI range and domain of properties

    @prefix : .@prefix rdf: .@prefix rdfs: .:Dog rdfs:subClassOf :Animal.:Person rdfs:subClassOf :Animal.:hasChild rdfs:range :Animal; rdfs:domain :Animal.:hasSon rdfs:subPropertyOf :hasChild.:Max a :Dog.:Abel a :Person.:Adam a :Person; :hasSon :Abel.

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Web Ontology Language OWL

    I Syntactically builds RDF and RDFSI Its aim is to bring description logic to semantic webI For employing logic, the freedom of RDF has to be limited

    I Three speciesI OWL Lite taxonomy and simple constraints, such as 0 and

    1 cardinality (SHIF)I OWL DL full power of DL (SHOIN )I OWL Full freedom of RDF, no computational properties

    guaranteed

    I In short, OWL = SHOIN (D) written in RDFI classes, object properties, datatype properties, individualsI taxonomies, restrictions cardinality, valuesI open world assumption

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Web Ontology Language OWL

    I Syntactically builds RDF and RDFSI Its aim is to bring description logic to semantic webI For employing logic, the freedom of RDF has to be limitedI Three species

    I OWL Lite taxonomy and simple constraints, such as 0 and1 cardinality (SHIF)

    I OWL DL full power of DL (SHOIN )I OWL Full freedom of RDF, no computational properties

    guaranteed

    I In short, OWL = SHOIN (D) written in RDFI classes, object properties, datatype properties, individualsI taxonomies, restrictions cardinality, valuesI open world assumption

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Web Ontology Language OWL

    I Syntactically builds RDF and RDFSI Its aim is to bring description logic to semantic webI For employing logic, the freedom of RDF has to be limitedI Three species

    I OWL Lite taxonomy and simple constraints, such as 0 and1 cardinality (SHIF)

    I OWL DL full power of DL (SHOIN )I OWL Full freedom of RDF, no computational properties

    guaranteed

    I In short, OWL = SHOIN (D) written in RDFI classes, object properties, datatype properties, individualsI taxonomies, restrictions cardinality, valuesI open world assumption

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    OWL Pizza Example DL notation

    Pizza v hasBase.PizzaBasePizza uPizzaBase

    NonVegetarianPizza Pizza u VegetarianPizzaTr(isIngredientOf)

    isIngredientOf hasIngredient

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    OWL Pizza Example OWL Abstract Syntax Notation

    Namespace(p = )Ontology( Class(p:Pizza partialrestriction(p:hasBase someValuesFrom(p:PizzaBase)))

    DisjointClasses(p:Pizza p:PizzaBase)Class(p:NonVegetarianPizza completeintersectionOf(p:Pizza complementOf(p:VegetarianPizza)))

    ObjectProperty(p:isIngredientOf TransitiveinverseOf(p:hasIngredient))

    )

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    OWL Pizza Example in RDF, N3 notation

    @prefix : .@prefix rdf: .@prefix rdfs: .@prefix owl: .:Pizza rdfs:subClassOf

    [ a owl:Restriction ;owl:onProperty :hasBase ;owl:someValuesFrom :PizzaBase ] ;

    owl:disjointWith :PizzaBase .:NonVegetarianPizza owl:equivalentClass

    [ owl:intersectionOf( [owl:complementOf :VegetarianPizza]

    :Pizza ) ] .:isIngredientOf

    a owl:TransitiveProperty , owl:ObjectProperty ;owl:inverseOf :hasIngredient .

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    OWL Pizza Example in RDF, graph

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    OWL Reasoning Examples Transport

    I :targetNode rdfs:subPropertyOf :connectedTo.I node TN is target node of a conveyor belt CB entails TN

    and CB are connected

    I :connectedTo a owl:SymmetricProperty.I X is connected to Y entails Y is connected to X

    I :targetNode a owl:FunctionalProperty.I Commercial dept.: Node Z1 is target node of conveyor belt

    BEI Router supplier: Router R5 is target node of conveyor belt

    BEI ...entails Node Z1 and Router R5 is the same thing (can be

    explicitly stated using owl:sameIndividualAs)

    I :contains a owl:TransitiveProperty.I A contains B and B contains C entails A contains C

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    RDF Query Language SPARQL

    I SQL-like query languageI syntax based on N3/TURTLE

    PREFIX foaf: SELECT ?name ?mboxWHERE { ?x foaf:name ?name .

    ?x foaf:mbox ?mbox . }

    I FILTER (?price < 20)I ORDER BY, DISTINCT, ...

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    RDF Query Language SPARQL

    I SELECT, CONSTRUCT, DESCRIBE, ASK

    PREFIX foaf: CONSTRUCT { foaf:knows ?x }FROM WHERE { ?x foaf:name ?name }ORDER BY desc(?name)LIMIT 2

    I any RDF querying or manipulationI ... including OWL, but RDF notation has to be used

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    OWL Pizza Example SWOOP

    I Look at pizza.owl in other than pure logical view...I Download: http://code.google.com/p/swoop/

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Semantic Web Realization

    I Evolution from current web

    I AnnotationsI Adding to data in existing documentsI For some data easier than you may think big part of web is

    generated from databases!

    I Using annotated dataI Connecting data together (mash-up from different sources)

    possible today, very powerfulI Even little semantics means a huge step for practical useI Reasoning with distributed data still research

    I Enrichment of current web versus Web of data

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Semantic Web Realization

    I Evolution from current webI Annotations

    I Adding to data in existing documentsI For some data easier than you may think big part of web is

    generated from databases!

    I Using annotated dataI Connecting data together (mash-up from different sources)

    possible today, very powerfulI Even little semantics means a huge step for practical useI Reasoning with distributed data still research

    I Enrichment of current web versus Web of data

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Semantic Web Realization

    I Evolution from current webI Annotations

    I Adding to data in existing documentsI For some data easier than you may think big part of web is

    generated from databases!

    I Using annotated dataI Connecting data together (mash-up from different sources)

    possible today, very powerfulI Even little semantics means a huge step for practical useI Reasoning with distributed data still research

    I Enrichment of current web versus Web of data

  • Ontologies, Description Logics and Semantic Web

    Semantic Web

    Semantic Web Realization

    I Evolution from current webI Annotations

    I Adding to data in existing documentsI For some data easier than you may think big part of web is

    generated from databases!

    I Using annotated dataI Connecting data together (mash-up from different sources)

    possible today, very powerfulI Even little semantics means a huge step for practical useI Reasoning with distributed data still research

    I Enrichment of current web versus Web of data

  • Ontologies, Description Logics and Semantic Web

    Conclusion

    Outline

    Introduction

    Ontologies

    Description Logics

    Semantic Web

    Conclusion

  • Ontologies, Description Logics and Semantic Web

    Conclusion

    Summary

    I Ontology formal explicit specification of sharedconceptualization

    I Description logics practical modeling, good computationalproperties for reasoning

    I Semantic web semantic extension of hypertext webI RDF organization of information in triples

    subject-predicate-object that form graph together

    I RDFS basic vocabulary for RDF, taxonomiesI OWL SHOIN (D) (description logic with datatypes)

    written in RDF

  • Ontologies, Description Logics and Semantic Web

    Conclusion

    Some Opportunities and Challenges

    I Semantic search using semantic information, semanticdisambiguation of terms (return reviewers for a book)

    I Semantic integration, translation between different ontologies(heterogeneous systems)

    I Semantic web services (matchmaking, choreography,orchestration), services in general

    I Agents able to reason about information (their functionality isnot hardcoded in program)

    I Semantic desktop organize information in filesI Development of ontologies, the process, management of

    ontologies and their versionsI Formal features of ontologies, description logics, probabilistic

    reasoning, proof and trustI User interfaces, at least for search, query building, browsing

  • Ontologies, Description Logics and Semantic Web

    Conclusion

    Thank you for attention, questions?

    ?(if time left, return to Protege or SWOOP)

    IntroductionOntologiesDescription LogicsSemantic WebConclusion