Upload
others
View
6
Download
0
Embed Size (px)
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 systems
I In many cases, better knowledge can be more important forsolving 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 - doesn’twork 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
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 domain
I 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
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 ontology
I agents can share knowledge, i.e. communicate it and reasonin 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 roles
I 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 logic
I 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)
concept¬A ∆I \ AI atomic negation
C u D CI ∩ DI intersection∀R.C {a ∈ ∆I |∀b.(a, b) ∈ RI ⇒ b ∈ CI} value restriction∃R.> {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 Extensions
Name Syntax Semantics Comment
U C t 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 exist
I Subsumption of concepts — C subsumes D?
I Consistency of ABox with respect to TBox
I Check an individual — is individual an instance of a concept?
I Retrieval of individuals — find instances of a concept
I Realization of an individual — find concepts for individual
I All can be reduced to satisfiability or subsumption
I Algorithms: structural, logical
I 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 OWL
I Corresponds to description logic SHOINI Web Ontology Language terminology
I Class = conceptI Property = role
I Let’s 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.owl
I ...http://labe.felk.cvut.cz/~obitko/spr/pizza-spr.owl
I Check consistency — everything OK?
I Classify taxonomy — see classification
I Define CheesePizza
I 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
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 form
I triples subject-predicate-object
Ontologies, Description Logics and Semantic Web
Semantic Web
Resource Description Framework (RDF)
I subject and predicate can be resource
I object can be resource or literal (may be typed using XMLDatatypes)
Ontologies, Description Logics and Semantic Web
Semantic Web
RDF Graph
Ontologies, Description Logics and Semantic Web
Semantic Web
RDF Serialization — N3, TURTLE
@prefix : <http://www.example.org/~joe/contact.rdf#> .@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
:joesmith a foaf:Person ;foaf:givenname "Joe" ;foaf:family_name "Smith" ;foaf:homepage <http://www.example.org/~joe/> ;foaf:mbox <mailto:[email protected]> .
Ontologies, Description Logics and Semantic Web
Semantic Web
RDF Serialization — XML
<rdf:RDFxmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:foaf="http://xmlns.com/foaf/0.1/"xmlns="http://www.example.org/~joe/contact.rdf#">
<foaf:Person rdf:about="http://www.example.org/~joe/contact.rdf#joesmith">
<foaf:mbox rdf:resource="mailto:[email protected]"/><foaf:homepage
rdf:resource="http://www.example.org/~joe/"/><foaf:family_name>Smith</foaf:family_name><foaf:givenname>Joe</foaf:givenname>
</foaf:Person></rdf:RDF>
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 Lists
I rdf:nil — an instance of rdf:List representing the emptylist
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 vocabulary
I describing taxonomies of classes and properties
I range and domain of properties
@prefix : <http://www.example.org/sample.rdfs#> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.: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 RDFS
I Its aim is to bring description logic to semantic web
I 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 = <http://example.com/pizzas.owl#>)Ontology( <http://example.com/pizzas.owl#>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 : <http://example.com/pizzas.owl#> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .@prefix owl: <http://www.w3.org/2002/07/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
BE”I Router supplier: “Router R5 is target node of conveyor belt
BE”I ...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 language
I syntax based on N3/TURTLE
PREFIX foaf: <http://xmlns.com/foaf/0.1/>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: <http://xmlns.com/foaf/0.1/>CONSTRUCT { <http://example.org/person#Alice> foaf:knows ?x }FROM <http://example.org/foaf/people>WHERE { ?x foaf:name ?name }ORDER BY desc(?name)LIMIT 2
I any RDF querying or manipulation
I ... 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 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 web
I RDF — organization of information in triplessubject-predicate-object that form graph together
I RDFS — basic vocabulary for RDF, taxonomies
I 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)