Vu Semantic Web Meeting 20091123


Published on

Published in: Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Vu Semantic Web Meeting 20091123

  1. 1. Nifty Features of OWL 2(Or, yes I was on the OWLWG)<br />Rinke Hoekstra<br />
  2. 2. Why this topic?<br />(… someone asked me …)<br />Take home message<br />“Sure, not everything about OWL 2 is great, but it does add some very nice new features that we can all use and learn to love”<br />
  3. 3. Playing The Devil’s Advocate<br />Where’s the Web in OWL? Where’s the Ontology in OWL?<br />“OL” or “WL”<br />OWL DL and OWL Full<br />“OWLDLED”<br />“OWL is a description logic”<br />OWL and Rules<br />“Rules are just more intuitive”<br />“People think in rules”<br />OWL and Philosophy<br />“OWL is philosophically flawed”<br />OWL 2 DL and reasoning<br />“Decidability is hugely overrated”<br />“Consistency does not exist on the web”<br />“OWL reasoners even die on very small knowledge bases”<br />“I only need part of OWL, so why implement a fully OWL compliant reasoner”<br />Expressiveness<br />“OWL is not expressive enough for my needs”<br />“OWL is way too expressive, no-one will ever need that”<br />“The only useful addition of OWL to RDF is owl:sameAs”<br />
  4. 4. DISCLAIMER<br />Do not be confused by OWL 2 (or any other W3C standard)<br />In the end, every standard is a compromise;<br />the result of a `political’ debate between different communities, <br />and not technical insight.<br />Compatible revisions of existing standards inherit political issues, misconceptions, and then add some of their own<br />It’s just that if the communities are technical, you end up with a `technical’ standard. <br />
  5. 5. DISCLAIMER<br /> For OWL 2 this means:<br />Replaces OWL 1, but is compatible<br />Species inheritance, including<br />OWL DL vs. OWL Full debate<br />Compatibility with other W3C standards<br />Social ‘issues’ with WG:<br />Over-representation of DL community<br />Under-representation of RDF/SW community<br />
  6. 6. Economics of OWL 2<br />Technology push<br />Advancements in Description Logics research<br />Market pull<br />Experiences<br />Added expressiveness<br />Other syntaxes<br />Better (‘easier’) tool development<br />Caters for several communities<br />HC, LS, KR, SW, Engineering, Enterprise Systems <br />
  7. 7. Background<br />OWLED workshops (60-70 people)<br />First one in 2005<br />Users, industry, research<br />W3C Member submission: OWL 1.1<br />December 2006, following vote at OWLED 2006<br />OWL Working Group<br />November 2007, following vote at OWLED 2007<br />OWL 2 Recommendation<br />October 2009<br />
  8. 8. Before<br />
  9. 9. During<br />
  10. 10. After<br />
  11. 11. Back on topic…<br />Language Design<br />Profiles<br />Exchange Syntaxes<br />Nifty Features<br />Datatypecoolness<br />Properties & Restrictions<br />Syntactic Sugar<br />Punning<br />Annotations<br />Bonus material<br />
  12. 12. Language Design (1)<br />OWL 1: Abstract Syntax<br />Frame-based<br />DL: axioms, Full: rules… then why frames?<br />Hard to <br />use for defining semantics<br />to parse<br />to extend<br />“an OWL ontology is an RDF graph”<br />OWL 2: Structural Specification<br />Axiom centred<br />UML/MOF data model<br />“an OWL 2 ontology is an instance O of the Ontology UML class”<br />“any OWL 2 ontology can also be viewed as an RDF graph”<br />OWL 2: Functional Style Syntax <br />BNF grammar<br /><br />
  13. 13. Language Design (2)<br />OWL 1: Species<br />Lite, DL, Full<br />Confusion between semantics and syntax<br />OWL Lite? Nah…<br />OWL 2: Semantics<br />Direct Semantics (DL),<br />RDF-Based Semantics (Full),<br />Most OWL 2 DL ontologies are OWL 1 Full<br />
  14. 14. Profiles<br />OWLs living in the swamps of Amsterdam<br />OWL 2 EL <br />Polynomial time algorithms for standard reasoning tasks; <br />Large ontologies (TBox)<br />OWL 2 QL <br />Conjunctive query answering in in LogSpace using RDB technology;<br />Lightweight ontologies that organize many individuals<br />Access the data directly via relational queries (e.g., SQL). <br />OWL 2 RL(a.k.a. RDFS 3.0 ?)<br />Polynomial time algorithms using rule-extended DB technologies<br />Lightweight ontologies that organize many individuals<br />Operate directly on RDF triples<br />Rule set provided by specification<br />Semantics follows from syntactic restrictions<br />Extra “global restrictions” for OWL 2 DL, QL and EL<br />Extensible!<br />
  15. 15. Exchange Syntaxes<br />OWL 1: <br />RDF/XML (2004)<br />W3C Note: <br />OWL XML Syntax (2003)<br />OWL 2: <br />RDF/XML (mandatory)<br />Turtle<br />Functional Style Syntax<br />OWL XML (2009) (+ mandatory GRDDL transformation)<br />Manchester Syntax<br />
  16. 16. Hey, show me those nifty features already!<br />Yeah yeah…<br />
  17. 17. Datatypes (1)<br />Extended XML Schema compatibility<br />New datatypes not in XML Schema<br />owl:real, owl:rational<br />Datatype definitions<br />xsd:minInclusive, xsd:maxInclusive, xsd:minExclusive, xsd:maxExclusive<br />xsd:pattern (e.g. regular expressions), xsd:length<br />rdf:PlainLiteral(together with RIFWG)<br />All RDF plain literals<br />Not to be used in syntaxes that already deal with RDF plain literals<br />DatatypeDefinition(  a:SSN    <br />DatatypeRestriction(xsd:stringxsd:pattern &quot;[0-9]{3}-[0-9]{2}-[0-9]{4}&quot; ))<br />
  18. 18. Datatypes(2)<br />Datatype Definitions<br />Data Range Combinations<br />Keys<br />Only hold for named individuals<br />DatatypeDefinition( :adultAgeDatatypeRestriction(xsd:integerminInclusive 18)<br />DataComplementOf( :adultAge)<br />DataUnionOf( :adultAge :studentAge)<br />…<br />HasKey( :Transplantation :donorId :recipientId :ofOrgan)<br />
  19. 19. Datatypes (3)<br />N-arydatatypes<br />Extension (Working Group Note)<br />Linear equations<br />DataAllValuesFrom ( :meltingPoint :boilingPointDataComparison(Arguments(xy) leq( xy ))))<br />
  20. 20. Properties (1)<br />Property Types<br />Asymmetric properties<br />Reflexive and Irreflexive properties<br />Top and bottom properties<br />Property chains<br />SubObjectPropertyOf( ObjectPropertyChain( a:hasMothera:hasSister ) a:hasAunt)<br />
  21. 21. Properties (2)<br />Property Assertions<br />Disjointness<br />Property restrictions<br />Self Restriction (local reflexivity)<br />Qualified Cardinality Restrictions<br />Datatype restrictions<br />‘ObjectInverseOf’ in restrictions<br />ObjectHasSelf( a:likes )<br />DataSomeValuesFrom( a:hasAgeDatatypeRestriction( xsd:integer<br />xsd:minInclusive “13”^^xsd:integer xsd:maxExclusive “20”^^xsd:integer ) ) <br />
  22. 22. Just an illustration (three, actually)<br />SubObjectPropertyOf( ObjectPropertyChain ( a:isElephantowl:TopObjectProperty<br />a:isMouse ) a:likes )<br />
  23. 23. Syntactic Sugar<br />Disjoint Union<br />Disjoint Classes<br /><ul><li>Negative property assertions</li></ul>DisjointUnion(:BrainHemisphere :LeftHemisphere :RightHemisphere)<br />DisjointClasses( :LeftLung :RightLung)<br />NegativeDataPropertyAssertion( :hasAge :Frank 50^^xsd:integer )<br />EquivalentClasses ( ObjectOneOf( :Frank ) ObjectComplementOf ( <br />DataHasValue( :hasAge 50^^xsd:integer )) )<br />
  24. 24. Punning (wordplay)<br />Any name can be used for any type of entity<br />Direct Semantics<br />Interpreted as separate entities<br />RDF-Based Semantics<br />Interpreted as the same entity<br />… but no punning between:<br />Datatype and Class names<br />Data-, Object- and Annotation property names(actually supported by most implementations)<br />Consequence<br />Strongly typed syntax (FS, OWLXML)<br />…but not in RDF graphs<br />
  25. 25. Annotations<br /><ul><li>No semantics in Direct Semantics</li></ul>Supported on all entities<br />Classes, individuals, properties<br />Axioms, annotations, ontologies<br />Annotation axioms<br />Annotation Subproperties<br />Domain and Range<br />AnnotationAssertion (skos:prefLabel :SWMeeting “Semantic Web Meeting”@en )<br />SubClassOf( Annotation( rdfs:comment ”Every SWMeeting is a Meeting.&quot;)<br /> :SWMeeting :Meeting)<br />
  26. 26. Imports & Versioning<br />Import by location<br />… but comes down to ‘just’ dereferencing<br />OntologyIRI and VersionIRI<br />Ontologies should be accessible at<br />OntologyIRI<br />If no VersionIRI supplied or if it is the latest version<br />VersionIRI<br />If a VersionIRI is supplied<br />Import statement may point to either<br />
  27. 27. Other things…<br />Internationalized Resource Identifiers<br />BNodes are existentials<br />Global restrictions for Direct Semantics<br />Anonymous individuals are BNodes<br />… no change in RDF<br />Declarations<br />Indicate what ontology defines an entity<br />… but mostly just nice for parsers, no change in RDF<br />ObjectPropertyAssertion(&lt;; &lt;; <br /> _:<br />ClassAssertion(ObjectSomeValuesFrom(&lt;; owl:Thing) <br /> &lt;;)<br />
  28. 28. Bonus Material<br />Pretty decent outreach material<br />Comprehensive OWL 2 Overview<br />OWL 2 Quick Reference Card<br />OWL 2 Primer<br />OWL 2 New Features and Rationale<br />OWL 2 Conformance<br />
  29. 29. What I like about OWL 2<br />Cleaner language design<br />Added expressiveness<br />Properties<br />Datatypes<br />Increased compatibility between Full and DL<br />Punning<br />Annotation properties<br />Profiles<br />… most notably OWL 2 RL <br />… hooks for extensibility<br />