Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction

626 views

Published on

This is the slides for the introduction to the tutotrial on Ontology Design Patterns for Linked Data Publishing at ISWC2016, Kobe, Japan

Published in: Software
  • D0WNL0AD FULL ▶ ▶ ▶ ▶ http://1lite.top/5EvV5 ◀ ◀ ◀ ◀
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction

  1. 1. 1 • Introduction to ODPs - Aldo Gangemi (~30 mins including 10 mins of questions) • How to document and evaluate/choose ODPs - Karl Hammar (~30 min including 10 mins of questions) • Methods to reuse ODPs -Valentina Presutti (~30 min including 10 mins of questions) • Break • Examples in the Chess domain - Pascal Hitzler (~45 min) • Examples in CH and/or eGov - Giorgia Lodi (~45 min) • Intro to WebProtégé XDP plugin - Karl Hammar (~15 min) • Hands-on - All tutors available for support (~2h30mins) Agenda
  2. 2. Introduction to ODPs Aldo Gangemi 1LIPN, Paris Nord University, CNRS UMR7030, France 2Semantic Technology Lab, ISTC-CNR, Rome, Italy ODP Tutorial, Kobe
  3. 3. 3 • Assumption: some experience in ontology and (linked) data design, predicate logic, RDF, OWL • Summary • Basics of ontology design and patterns • Examples of knowledge patterns • Examples of procedural patterns • Anti-patterns • eXtreme Design • An exercise with role modelling • Experimental support Outline
  4. 4. quality, patterns: methods rather than methodologies The role of competency questions in enterprise engineering M Grüninger, MS Fox - Benchmarking—Theory and Practice, 1995 - Springer Modelling ontology evaluation and validation A Gangemi, C Catenacci, M Ciaramita, J Lehmann - 2006 - Springer Evaluating ontological decisions with OntoClean N Guarino, C Welty - Communications of the ACM, 2002 - dl.acm.org Ontology design patterns A Gangemi, V Presutti - Handbook on ontologies 2nd ed., 2009 - Springer
  5. 5. Ontology Design Patterns An ontology design pattern is a reusable successful solution to a recurrent modeling problem Visit www.ontologydesignpa/erns.org
  6. 6. 6 • Different classifications • Basically, two main types • Alexandrian (or procedural) patterns • Minskyan (or knowledge) patterns • Alexandrian patterns concern primarily the methods • Minskyan patterns concern primarily the reusable models Pattern types
  7. 7. 7 • Modeling problems with CPs have two main components: a domain and some requirements. • A same domain can have many requirements (e.g. different scenarios in a clinical information context) • A same requirement can be found in different domains (e.g. different domains with a same “expert finding” scenario) • A typical way of capturing requirements (and part of domain terminology) is by means of competency questions Components of ODP modelling
  8. 8. 8 Maximal ontology design requirements: What are we talking about, and why? Generic Competency Questions Specific Modelling Use Case Who does what, when and where? Production reports, schedules Which objects take part in a certain event? Resource allocation, biochemical pathways What are the parts of something? Component schemas, warehouse management What’s an object made of? Drug and food composition, e.g. for safety (comp.) What’s the place of something? Geographic systems, resource allocation What’s the time frame of something? Dynamic knowledge bases What technique, method, practice is being used? Instructions, enterprise know-how database Which tasks should be executed in order to achieve a certain goal? Planning, workflow management Does this behaviour conform to a certain rule? Control systems, legal reasoning services What’s the function of that artifact? System description How is that object built? Control systems, quality check What’s the design of that artifact? Project assistants, catalogues How did that phenomenon happen? Diagnostic systems, physical models What’s your role in that transaction? Activity diagrams, planning, organizational models What that information is about? How is it realized? Information and content modelling, computational models, subject directoriesWhat argumentation model are you adopting for negotiating an agreement? Cooperation systems What’s the degree of confidence that you give to this axiom? Ontology engineering tools Good news: competency questions and modelling solutions can be generalised and morphed (à la foundational ontology)
  9. 9. An ontology design pattern describes a formal expression that can be exemplified, morphed, instantiated, and expressed in order to solve a domain modelling problem • owl:Class:_:x rdfs:subClassOf owl:Restriction:_:y • Inflammation rdfs:subClassOf (localizedIn some BodyPart) • Colitis rdfs:subClassOf (localizedIn some Colon) • John’s_colitis isLocalizedIn John’s_colon • “John’s colon is inflammated”,“John has got colitis”,“Colitis is the inflammation of colon” Layered pattern morphisms Logical Pattern (MBox) Generic Content Pattern (TBox) Specific Content Pattern (TBox) Data Pattern (ABox) exemplifiedAs morphedAs instantiatedAs Linguistic Pattern expressedAs Logic Meaning Reference Expression expressedAs Abstraction Peter Clark, Bruce Porter: Knowledge Patterns, KR (2000) Aldo Gangemi,Valentina Presutti: Ontology Design Patterns. Handbook on Ontologies 2nd ed. (2009)
  10. 10. 10 Examples #1 Knowledge patterns
  11. 11. • Temporal indexing pattern – (R(a,b))+t sentence indexing • quads, external time stamps – R(a,b)+t relation indexing • reified n-ary relations (3D frames) – R(a+t,b+t) individual indexing • fluents, 4D, tropes,“context slices” (4D frames) – tR name nesting • ad hoc naming of binary relations • More indexes for additional arguments Alternative temporal n-ary patterns A Multi-dimensional Comparison of Ontology Design Patterns for Representing n-ary Relations. A Gangemi,V Presutti. SOFSEM 2013: 86-105 An Empirical Perspective on Representing Time. A Scheuermann, E Motta, P Mulholland, A Gangemi andV Presutti. K-CAP 2013 Formal Unifying Standards for the Representation of Spatiotemporal Knowledge. P. Hayes, Advanced Decision Architectures Alliance, 2004 A reusable ontology for fluents in OWL. C Welty, R Fikes, S Makarios. FOIS, Springer, 2006
  12. 12. 12 • Radiolaria are found as zooplankton since the Cambrian • Quad • dbr:Radiolaria :foundAs dbr:Zooplankton dbr:Cambrian . • Situation • :find_1 :theme dbr:Radiolaria ; :habitat dbr:Zooplankton ; :since dbr:Cambrian . • Fluent • dbr:Radiolaria_1 :foundAs dbr:Zooplankton_1 ; :since dbr:Cambrian . • Ad hoc naming • dbr:Radiolaria :foundAsInCambrian dbr:Zooplankton . In LD practice
  13. 13. 13 • Chad Smith was the drum player of Red Hot Chili Peppers when they recorded their album Stadium Arcadium from September 2004 to December 2005 •A person plays a certain role in a band during an album recording, taking place during a certain time interval • PlaySituation(person, musicianrole, band, album, timeinterval) – Quinary relation, needs adaptation to OWL • Methods: reification, reuse of a generic knowledge pattern, binary projections, identification constraint n-ary relation / Situation Concrete scenario Abstracted scenario FOL formaliza7on
  14. 14. 14 • PlaySituation ∈ owl:Class • PlaySituation ⊑ sit:Situation • personPlaying ⊑ (PlaySituation ⨉ Person) • playsRole ⊑ (PlaySituation ⨉ MusicianRole) • inBand ⊑ (PlaySituation ⨉ Band) • forAlbum ⊑ (PlaySituation ⨉ Album) • recordingTime ⊑ (PlaySituation ⨉ tim:TimeInterval) • PlaySituation hasKey[playsRole, forAlbum, inBand, recordingTime, personPlaying] (Intensional) reifica7on Binary projec7on Iden7fica7on constraint Knowledge paCern specializa7on n-ary relation / Situation
  15. 15. 15 • I want to represent that a car is composed of several parts • part of – transitive property • I also want to represent that each part can have “direct” components • e.g. the turbine is a component of the engine • The turbine is a component of the engine, hence it is part of the car, but not as “direct” component Transitive Reduction
  16. 16. 16 direct componency still inherits partonymy, but not transitivity Direct components in a car partOf partOf partOf
  17. 17. 17 • Transitive part-of • Object vs. Event (3D+1) • Situation • Judgment communication • Structure, Function, Process (GO) • Linnaean taxonomy • Invoicing • Resource abundance observation • Trajectory • Control flow • … More OWL Patterns
  18. 18. 18 Examples #2 Procedural patterns
  19. 19. 19 Procedural patterns • Precise – Classification – Subsumption – Inheritance – Materialization – Rule firing – Constructive query • Approximate – Fuzzy classification – Information extraction (NER, RE) – Similarity induction (e.g. alignment) – Taxonomy induction – Relevance detection – Latent semantic indexing • Thesaurus to SKOS • Relational DB to RDF • WordNet RDB to OWL • XML to RDF • FrameNet XML to RDF • Microformat to RDF • NER entities to ABox • NLP to RDF Reasoning patterns Alignment patterns Reengineering patterns
  20. 20. 20 • Partonomies or subject classifications as subsumption hierarchies • *City subClassOf Country • City subClassOf (partOf some Country) • *City subClassOf Geography • City broader Geography (e.g. in SKOS) • Linguistic disjunction as class disjointness • Dead or alive • *Dead or Alive • Dead disjointWith Alive • Linguistic conjunction as class disjunction • Pen and paper • *Pen and Paper • Pen or Paper | Collection subClassOf (hasMember some Paper ; some Pen) A catalogue of OWL ontology antipatterns. Roussey, Corcho, Vilches-Blázquez, ACM, 2009. A user oriented owl development environment designed to implement common patterns and minimise common errors. Horridge, Rector, Drummond, Springer, 2004. Anti-patterns (1/2)
  21. 21. 21 • Causality as entailment • Kaupthing bank behavior caused Iceland crisis • *KaupthingBankBehavior subClassOf IcelandCrisis • (since KBB “entails” IC) • KaupthingBankBehavior isCauseOf IcelandCrisis • Expressions as instances of the class representing their meaning • *dog(word) rdf:type Dog • dog(word) expresses Dog (with punning) •Multiple domains or ranges of properties as intersection • *hasInflammation rdfs:domain Epithelium ; Endothelium • hasInflammation rdfs:domain (Epithelium or Endothelium) •Collection membership as set membership • *John_Coltrane rdf:type Miles_Davis_Group • (since JC ∈ Miles_Davis_Group) • John_Coltrane memberOf Miles_Davis_Group Anti-patterns (2/2)
  22. 22. eXtreme Design (XD)
  23. 23. Imagine we have to model the following • Giovanni Sartor is the judge in the trial Berlusconi #57 that is held at Ravenna’s court during September and October 2030 23
  24. 24. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A person plays a role 24
  25. 25. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A person plays a role 25
  26. 26. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A person plays a role 26 • To represent objects and the roles they play.
  27. 27. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • The execution of some procedure 27
  28. 28. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • The execution of some procedure • To distinguish procedures from their concrete executions. 28
  29. 29. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A time period 29
  30. 30. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A time period • To represent time intervals, their start/end dates, and any dates falling into the period 30
  31. 31. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A person plays a role in a trial, held at a court during a time period • How can we relate them together? 31
  32. 32. Analyze the sentence, detect the modeling issues, and match to the CPs • Giovanni Sartor is the judge in the trial “Berlusconi #57” that is held at Ravenna’s court during September and October 2030 • A person plays a role in a trial, held at a court during a time period • To represent a situation, a set of circumstances in a defined setting 32
  33. 33. 33 Ontology design for roles: an exercise in flexibility
  34. 34. 34 • Definition: something (of a certain type) can play a role at a certain time, place, in a certain way, with something else, etc. • Example: John Coltrane was the sax player in the Miles Davis Quintet during the recording of the Kind of Blue album (for the tracks SoWhat, Freddie Freeloader,All Blues) for Columbia Records. Recording sessions took place at Columbia's 30th Street Studio in NewYork City on March 2 and April 22, 1959 • FOL: role(x,y,z,…) • DL? OWL? The Role Relation
  35. 35. 35 • Role as class • Role as individual • Role as property • Role as time-indexed situation (n-ary reification pattern) • Role as trope (or qua-entity) Role patterns
  36. 36. 36 • role(x,y,z,…) • → • role(x) • John_Coltrane ∈ SaxPlayer • (additional axioms) • John_Coltrane ∈ Person • SaxPlayer ⊑ Person • SaxPlayer ≣ Person ⨅ ∃plays.Sax • (alt) SaxPlayer ≣ Person ⨅ ∃plays.{Sax} • Sax ⊑ Instrument || Sax ∈ Instrument • … Role as class Notice the type reification, more frequently used with products, substances, etc.
  37. 37. 37 Role as individual • role(x,y,z,…) • → • hasRole(x,role) • (John_Coltrane, SaxPlayer) ∈ hasRole • (additional axioms) • John_Coltrane ∈ Person • SaxPlayer ∈ Role • SaxPlayer ∈ hasRole⁻(isRoleOf) ⨅ ∃plays.Sax • (alt) SaxPlayer ≣ Person ⨅ ∃plays.{Sax} • Sax ⊑ Instrument || Sax ∈ Instrument • ∃hasRole.SaxPlayer ⊑ ∃plays.Sax
  38. 38. 38 Pattern combination • SaxPlayer ≣ ∃hasRole.SaxPlayer
  39. 39. 39 Role as property • role(x,y,z,…) • → • role(x,z) • (John_Coltrane, Sax) ∈ player • (additional axioms) • John_Coltrane ∈ Person • Sax ∈ Instrument • player ⊑ Person X Instrument Notice the type reification
  40. 40. 40 Role as time-indexed situation • role(x,y,z,…) • → • situation(s) ⋀ r1 (s,x) ⋀ r2 (s,y) ⋀ r3 (s,z) ⋀ r4 (s,t) ⋀ ∀s’((r1 (s’,x) ⋀ r2 (s’,y) ⋀ r3 (s’,z) ⋀ r4 (s’,t)) s = s’ ) • JohnColtraneAtKindOfBlueSessions ∈ Situation • (JohnColtraneAtKindOfBlueSessions, John_Coltrane) ∈ r1 • (JohnColtraneAtKindOfBlueSessions, Player) ∈ r2 • (JohnColtraneAtKindOfBlueSessions, Sax) ∈ r3 • (JohnColtraneAtKindOfBlueSessions, March.2.1959) ∈ r4 • (JohnColtraneAtKindOfBlueSessions,April.22.1959) ∈ r4 • Situation ≣ ≥1r1 ⨅ ≥1r2 ⨅ ≥1r3 ⨅ ≥1r4 • (additional axioms) • John_Coltrane ∈ Person • Player ∈ Role • Sax ∈ Instrument • March.2.1959 ∈ Date Notice the relation reification Notice the projections Notice the key (id constraint)
  41. 41. 41 Role as trope /qua-entity • role(x,y,z,…) • → • hasTrope(x,q) ⋀ hasRole(q,r) ⋀ hasInstrument(r,i) • JohnColtraneAsSaxPlayer ∈ Trope • (John_Coltrane, JohnColtraneAsSaxPlayer) ∈ hasTrope • (JohnColtraneAsSaxPlayer, Player) ∈ hasRole • (additional axioms) • hasTrope o hasRole o hasInstrument ⊑ plays • John_Coltrane ∈ Person • Sax ∈ hasInstrument • SaxPlayer ∈ Role • Sax ∈ Instrument Notice the property chain: rel1 o rel2 o rel3 A trope is a “slice” of an object In principle, a trope can be used instead of a situation by adding axioms and keys to q (but has a different intensional intuition, see slide about time-indexing patterns)
  42. 42. 42 Experimental evidence
  43. 43. 43 •Content patterns improve the quality of ontologies – Experiments with master and PhD students – Quality measured in terms of • task-coverage • error-freedom • subjective perception of smooth and good design Blomqvist E., Gangemi A., Presutti V. Experiments in Pattern-based Ontology Design, Proceedings of KCAP09, Los Angeles, ACM Press, 2009 Experimental evidence (I)
  44. 44. 44 •eXtreme Design method further improves quality and also improves coverage of the proposed requirements – Experiment with 7 designer pairs (PhD students) Blomqvist E., Gangemi A., Daga E., Presutti V.. Experimenting with eXtreme Design. P. Cimiano and S: Pinto (eds.): Proceedings of the Conference on Knowledge Engineering and Knowledge Management (EKAW2010), LNCS, Springer, 2010 Experimental evidence (II)
  45. 45. 45 •ODP-based ontology learning improves results •Ontologies are better in terms of cohesion, consistency, functional quality, etc. •Experiment with OntoCase applied to Text2Onto ontology learning Eva Blomqvist, ISWC2009 Experimental evidence (III)
  46. 46. Paulheim, H. and Gangemi, A. Serving DBpedia with DOLCE – More than Just Adding a Cherry on Top. Proceedings of ISWC2015, the Thirteenth International Semantic Web Conference, LNCS, Springer, 2015 Experimental evidence (IV)
  47. 47. Pattern induction from data: centrality discovery in datasets mo:Track mo:MusicAr.st mo:Playlist mo:Torrent mo:ED2K tags:Tag mo:Record foaf:maker rdfs:Literal dc:6tle dc:datemo:image dc:descrip6on mo:track tags:taggedWithTag mo:available_as mo:available_as mo:available_as Extrac.ng Core Knowledge from Linked Data. PresuQ, Aroyo et al., COLD2011.

×