• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility
 

The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility

on

  • 610 views

Terminology and Knowledge Engineering (TKE), June 20, 2012, Madríd, Spain.

Terminology and Knowledge Engineering (TKE), June 20, 2012, Madríd, Spain.

Statistics

Views

Total Views
610
Views on SlideShare
610
Embed Views
0

Actions

Likes
0
Downloads
9
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility Presentation Transcript

    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility Terminology and Knowledge Engineering 2012 Christoph Lange1,2 , Till Mossakowski1,3 , Oliver Kutz1 , Christian Galinski4 , Michael Grüninger5 , Daniel Couto Vale1 1 Research Center on Spatial cognition, University of Bremen, Germany 2 School of Computer Science, Univ. of Birmingham, UK 3 DFKI GmbH, Bremen, Germany 4 International Information Centre for Terminology (Infoterm), Vienna, Austria 5 Department of Mechanical and Industrial Engineering, University of Toronto, Canada Project page: http://ontoiop.org 2012-06-20Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 1
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Smart DevicesLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 2
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Smart Devices interoperable with washing machineLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 2
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap The Big Picture of Interoperability Knowledge Infrastructure Service-Oriented Smart Environment Architecture Concepts/Data/Individuals Service Target (Device) Device rabil r ity fo Ontology Service Description Target Description inte ppings rope ma Ontology Language/Logic Service Descr. Language Target Descr. Language Data Concepts/Data/Individuals processes Service accesses Target (Device) Device represented in terms of satisfies conforms to Models Ontology refers to Service Description Target Description written in written in written in Metamodels Ontology Language/Logic Service Descr. Language Target Descr. Language Knowledge Software Agents Hardware For now we focus on the “content”/ “knowledge” columnLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 3
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Overview of OntoIOp and DOL (Distributed Ontology Language) In practical applications, one ontology language and one logic doesn’t suffice to achieve semantic integration and interoperability ISO Standard 17347 “Ontology Integration and Interoperability” (developed by ISO/TC 37/SC 3) will provide a meta-language (DOL) for: logically heterogeneous ontologies modular ontologies formal and informal links between ontologies/modules annotation and documentation of ontologies DOL has a formal semantics and concrete XML, RDF and text serializationsLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 4
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ontohub Repository Engine: Motivation Open Ontology Repository (OOR) initiative promoting global sharing of ontologies by (i) a hosted registry-repository; (ii) facilitating open, federated, collaborative ontology repositories, and (iii) establishing best practices for expressing interoperable ontologies. http://ontolog.cim3.net/cgi- In an ontology repository ontologies and bin/wiki.pl?OpenOntologyRepository related information artifacts can be stored, retrieved and managed.Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 5
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ontohub Features: Welcome Page http://ontohub.informatik.uni-bremen.deLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 6
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ontohub Features: Ontology Overview http://ontohub.informatik.uni-bremen.de/ontologies/Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 7
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ontohub: View of One Basic Ontology http://ontohub.informatik.uni-bremen.de/ontologies/<ID>Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 8
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ontohub Repository Engine: Database Schema Ontologies OntoIOp Registry (→ Extensibility)Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 9
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap COLORE Repository: Metadata and Relations Common Logic Repository (http://colore.googlecode.com) more than 500 generic ontologies in Common Logic verification of ontologies for commonsense domains: time, space, shape, processes, . . . (prove equivalence to core mathematical concepts: orderings, incidence structures, graphs, algebraic structure, . . . ) Interesting features for DOL: metadata (module provenance, axiom provenance; currently represented in XML w/o formal semantics): DOL allows for reusing, e.g., the OMV OWL vocabulary for that (near future) meta-theoretical relations (first results): DOL has built-in support for signature morphisms, definitional extensions, conservative extensions, inconsistencies between modules, imports, relative interpretations, faithful interpretations, and definable equivalence. Hets supports their automatic validation.Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 10
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap DO-ROAM: Ontology-driven Map UI Data and Ontology driven Route-finding Of Activity-oriented Mobility web service (http://www.do-roam.org) places tagged with terms from a set of aligned OWL ontologies map-based UI with multilingual labels ↔ ontology terms DOL port in progress: coherent representation of the aligned ontologies as one distributed ontology easier maintenance of labels as annotations inside the ontologyLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 11
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ambient Assisted Living (AAL): Devices of Differing Complexity Different devices (e.g. wheelchair, door, freezer), which interact with their users (e.g. elderly persons or persons with disabilities) with each other and possibly with a central home controller DOL’s potential over single-logic approaches (e.g. the OpenAAL OWL ontology): greater coverage full width of the domain: not just OpenAAL’s assisted persons and assistive devices, but also nutrition requirements (and product descriptions) full depth of the representation light switch can be described in propositional logic smart wheelchair needs spatial calculus for navigation ⇒ FOL ⇒ logically heterogeneous ontologyLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 12
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Generic Example: Mereology (I) %prefix( : <http://www.example.org/mereology#> %% prefix for this distributed ontology owl: <http://www.w3.org/2002/07/owl#> %% OWL basic ontology language log: <http://purl.net/dol/logics/> %% DOL-conforming logics trans: <http://purl.net/dol/translations/> %% translations between these logics ser: <http://purl.net/dol/serializations/> %) %% serializations, i.e. concrete syntaxes distributed-ontology Mereology logic log:Propositional syntax ser:Prop/Hets %% non-standard serialization built into Hets ontology Taxonomy = %% basic taxonomic information about mereology reused from DOLCE props PT, T, S, AR, PD . S ∨ T ∨ AR ∨ PD → PT %% PT is the top concept . S ∧ T → %% PD, S, T, AR are pairwise disjoint . T ∧ AR → %% and so on logic log:SROIQ syntax ser:OWL2/Manchester %% OWL Manchester syntax ontology BasicParthood = %% Parthood in SROIQ, as far as expressible Class: ParticularCategory SubClassOf: Particular %% omitted similar declarations of the other classes DisjointUnionOf: SpaceRegion, TimeInterval, AbstractRegion, Perdurant %% pairwise disjointness more compact thanks to an OWL built-in ObjectProperty: isPartOf Characteristics: Transitive ObjectProperty: isProperPartOf Characteristics: Asymmetric SubPropertyOf: isPartOf Class: Atom EquivalentTo: inverse isProperPartOf only owl:Nothing interpretation TaxonomyToParthood : Taxonomy to BasicParthood = translate with trans:PropositionalToSROIQ, %% translate the logic, then rename the entities PT ↦ Particular, S ↦ SpaceRegion, T ↦ TimeInterval, A ↦ AbstractRegion, %[ and so on ]%Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 13
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Generic Example: Mereology (I) %prefix( : <http://www.example.org/mereology#> %% prefix for this distributed ontology owl: <http://www.w3.org/2002/07/owl#> %% OWL basic ontology language log: <http://purl.net/dol/logics/> %% DOL-conforming logics trans: <http://purl.net/dol/translations/> %% translations between these logics ser: <http://purl.net/dol/serializations/> %) %% serializations, i.e. concrete syntaxes distributed-ontology Mereology logic log:Propositional syntax ser:Prop/Hets %% non-standard serialization built into Hets ontology Taxonomy = %% basic taxonomic information about mereology reused from DOLCE props PT, T, S, AR, PD . S ∨ T ∨ AR ∨ PD → PT %% PT is the top concept . S ∧ T → %% PD, S, T, AR are pairwise disjoint . T ∧ AR → %% and so on logic log:SROIQ syntax ser:OWL2/Manchester %% OWL Manchester syntax ontology BasicParthood = %% Parthood in SROIQ, as far as expressible Class: ParticularCategory SubClassOf: Particular %% omitted similar declarations of the other classes DisjointUnionOf: SpaceRegion, TimeInterval, AbstractRegion, Perdurant %% pairwise disjointness more compact thanks to an OWL built-in ObjectProperty: isPartOf Characteristics: Transitive ObjectProperty: isProperPartOf Characteristics: Asymmetric SubPropertyOf: isPartOf Class: Atom EquivalentTo: inverse isProperPartOf only owl:Nothing interpretation TaxonomyToParthood : Taxonomy to BasicParthood = translate with trans:PropositionalToSROIQ, %% translate the logic, then rename the entities PT ↦ Particular, S ↦ SpaceRegion, T ↦ TimeInterval, A ↦ AbstractRegion, %[ and so on ]%Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 13
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Generic Example: Mereology (I) %prefix( : <http://www.example.org/mereology#> %% prefix for this distributed ontology owl: <http://www.w3.org/2002/07/owl#> %% OWL basic ontology language log: <http://purl.net/dol/logics/> %% DOL-conforming logics trans: <http://purl.net/dol/translations/> %% translations between these logics ser: <http://purl.net/dol/serializations/> %) %% serializations, i.e. concrete syntaxes distributed-ontology Mereology logic log:Propositional syntax ser:Prop/Hets %% non-standard serialization built into Hets ontology Taxonomy = %% basic taxonomic information about mereology reused from DOLCE props PT, T, S, AR, PD . S ∨ T ∨ AR ∨ PD → PT %% PT is the top concept . S ∧ T → %% PD, S, T, AR are pairwise disjoint . T ∧ AR → %% and so on logic log:SROIQ syntax ser:OWL2/Manchester %% OWL Manchester syntax ontology BasicParthood = %% Parthood in SROIQ, as far as expressible Class: ParticularCategory SubClassOf: Particular %% omitted similar declarations of the other classes DisjointUnionOf: SpaceRegion, TimeInterval, AbstractRegion, Perdurant %% pairwise disjointness more compact thanks to an OWL built-in ObjectProperty: isPartOf Characteristics: Transitive ObjectProperty: isProperPartOf Characteristics: Asymmetric SubPropertyOf: isPartOf Class: Atom EquivalentTo: inverse isProperPartOf only owl:Nothing interpretation TaxonomyToParthood : Taxonomy to BasicParthood = translate with trans:PropositionalToSROIQ, %% translate the logic, then rename the entities PT ↦ Particular, S ↦ SpaceRegion, T ↦ TimeInterval, A ↦ AbstractRegion, %[ and so on ]%Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 13
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Generic Example: Mereology (II) logic log:CommonLogic syntax ser:CommonLogic/CLIF %% syntax: the Lisp-like CLIF dialect of Common Logic ontology ClassicalExtensionalParthood = BasicParthood translate with trans:SROIQtoCL %% import the OWL ontology from above, translate it ... then { %% ... to Common Logic, then extend it there: (forall (X) (if (or (= X S) (= X T) (= X AR) (= X PD)) (forall (x y z) (if (and (X x) (X y) (X z)) (and %% now list all the axioms (if (and (isPartOf x y) (isPartOf y x)) (= x y)) %% antisymmetry (if (and (isProperPartOf x y) (isProperPartOf y z)) (isProperPartOf x z)) %% transitivity; can’t be expressed in OWL together with asymmetry (iff (overlaps x y) (exists (pt) (and (isPartOf pt x) (isPartOf pt y)))) (iff (isAtomicPartOf x y) (and (isPartOf x y) (Atom x))) (iff (sum z x y) (forall (w) (iff (overlaps w z) (and (overlaps w x) (overlaps w y))))) (exists (s) (sum s x y))))))) %% existence of the sum }Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 14
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Web-scalable Identification with IRIs DOL uses IRIs for web-scalable, Unicode-aware identification, and retrieval of ontologies and all of their parts. Ontology authors like to abbreviate long IRIs using prefixes: %prefix( : <http://www.example.org/mereology#> %% prefix for this distributed ontology owl: <http://www.w3.org/2002/07/owl#> %% OWL basic ontology language log: <http://purl.net/dol/logics/> %% DOL-conforming logics trans: <http://purl.net/dol/translations/> %% translations between these logics ser: <http://purl.net/dol/serializations/> %) %% serializations, i.e. concrete syntaxes DOL RDF employs abbreviation facilities of the respective RDF serializations; DOL Text and DOL XML use RDFa’s CURIEs Example: “empty prefix” bound as above ⇒ isAtomicPartOf ex- pands to http://www.example.org/mereology#isAtomicPartOf Prefix bindings hold on DOL level, and propagate into basic ontologies useful for languages that don’t support IRI identifiers or don’t enforce them, e.g. Common Logic ⇒ their entities become reusable in distributed ontologiesLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 15
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Expressing Complex Interpretations (COLORE) Interpreting linear orders as orders between time intervals: %prefix( %% log: and ser: prefix declarations omitted : <http://code.google.com/p/colore/.../owltime/owltime_interval/mappings/owltime_le.dol#> int: <http://code.google.com/p/colore/.../owltime/owltime_interval/> %% namespaces of the ontologies ord: <http://code.google.com/p/colore/.../orderings/> )% %% in this distributed ontology logic log:CommonLogic syntax ser:CommonLogic/CLIF ontology ord:linear_ordering = %% here using Common Logic’s import facility as an alternative to ... (cl-imports ord:partial_ordering) (forall (x y) (or (leq x y) (leq y x) (= x y))) %% ... DOL’s general one: We create the ontology of linearly ordered time intervals that ... ontology int:owltime_le = int:owltime_linear then int:owltime_e %% ... begin and end with an instant %% ... by extending linearly ordered time intervals with intervals that begin and end with an instant ontology int:mappings/owltime2orderings = (forall (x y) (iff (leq x y) (or (before x y) (= x y)))) (forall (x y) (iff (lt x y) (before x y))) %% map time intervals to general linear orderings interpretation i %mcons : %% interpreting linear orderings as time interval orders ord:linear_ordering to {int:owltime_le and %def int:mappings/owltime2orderings}Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 16
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Expressing Complex Interpretations (COLORE) Interpreting linear orders as orders between time intervals: %prefix( %% log: and ser: prefix declarations omitted : <http://code.google.com/p/colore/.../owltime/owltime_interval/mappings/owltime_le.dol#> int: <http://code.google.com/p/colore/.../owltime/owltime_interval/> %% namespaces of the ontologies ord: <http://code.google.com/p/colore/.../orderings/> )% %% in this distributed ontology logic log:CommonLogic syntax ser:CommonLogic/CLIF ontology ord:linear_ordering = %% here using Common Logic’s import facility as an alternative to ... (cl-imports ord:partial_ordering) (forall (x y) (or (leq x y) (leq y x) (= x y))) %% ... DOL’s general one: We create the ontology of linearly ordered time intervals that ... ontology int:owltime_le = int:owltime_linear then int:owltime_e %% ... begin and end with an instant %% ... by extending linearly ordered time intervals with intervals that begin and end with an instant ontology int:mappings/owltime2orderings = (forall (x y) (iff (leq x y) (or (before x y) (= x y)))) (forall (x y) (iff (lt x y) (before x y))) %% map time intervals to general linear orderings interpretation i %mcons : %% interpreting linear orderings as time interval orders ord:linear_ordering to {int:owltime_le and %def int:mappings/owltime2orderings}Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 16
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Expressing Complex Interpretations (COLORE) Interpreting linear orders as orders between time intervals: %prefix( %% log: and ser: prefix declarations omitted : <http://code.google.com/p/colore/.../owltime/owltime_interval/mappings/owltime_le.dol#> int: <http://code.google.com/p/colore/.../owltime/owltime_interval/> %% namespaces of the ontologies ord: <http://code.google.com/p/colore/.../orderings/> )% %% in this distributed ontology logic log:CommonLogic syntax ser:CommonLogic/CLIF ontology ord:linear_ordering = %% here using Common Logic’s import facility as an alternative to ... (cl-imports ord:partial_ordering) (forall (x y) (or (leq x y) (leq y x) (= x y))) %% ... DOL’s general one: We create the ontology of linearly ordered time intervals that ... ontology int:owltime_le = int:owltime_linear then int:owltime_e %% ... begin and end with an instant %% ... by extending linearly ordered time intervals with intervals that begin and end with an instant ontology int:mappings/owltime2orderings = (forall (x y) (iff (leq x y) (or (before x y) (= x y)))) (forall (x y) (iff (lt x y) (before x y))) %% map time intervals to general linear orderings interpretation i %mcons : %% interpreting linear orderings as time interval orders ord:linear_ordering to {int:owltime_le and %def int:mappings/owltime2orderings}Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 16
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Expressing Complex Interpretations (COLORE) Interpreting linear orders as orders between time intervals: %prefix( %% log: and ser: prefix declarations omitted : <http://code.google.com/p/colore/.../owltime/owltime_interval/mappings/owltime_le.dol#> int: <http://code.google.com/p/colore/.../owltime/owltime_interval/> %% namespaces of the ontologies ord: <http://code.google.com/p/colore/.../orderings/> )% %% in this distributed ontology logic log:CommonLogic syntax ser:CommonLogic/CLIF ontology ord:linear_ordering = %% here using Common Logic’s import facility as an alternative to ... (cl-imports ord:partial_ordering) (forall (x y) (or (leq x y) (leq y x) (= x y))) %% ... DOL’s general one: We create the ontology of linearly ordered time intervals that ... ontology int:owltime_le = int:owltime_linear then int:owltime_e %% ... begin and end with an instant %% ... by extending linearly ordered time intervals with intervals that begin and end with an instant ontology int:mappings/owltime2orderings = (forall (x y) (iff (leq x y) (or (before x y) (= x y)))) (forall (x y) (iff (lt x y) (before x y))) %% map time intervals to general linear orderings interpretation i %mcons : %% interpreting linear orderings as time interval orders ord:linear_ordering to {int:owltime_le and %def int:mappings/owltime2orderings}Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 16
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Complex Alignments, Multilingual Labels (DO-ROAM) %prefix( do-roam: <https://raw.github.com/doroam/planning-do-roam/master/> activ: <https://raw.github.com/doroam/planning-do-roam/master/Ontology/activities.owl#> tags: <https://raw.github.com/doroam/planning-do-roam/master/Ontology/tags.owl#> )% language lang:OWL2/DL alignment do-roam:ActivitiesToTags : activ: to tags: = activ:Restaurant = ∃ tags:has_k_amenity . tags:v_restaurant, %% "=" is equivalence as defined in the Alignment API activ:ChargingStation = ∃ tags:has_k_amenity . tags:v_charging_station ⊔ (∃ tags:has_k_amenity . tags:v_fuel ⊓ ∃ tags:has_k_fuel:electricity . tags:yes), %% We give OWL complex OWL class expressions in German DL notation for brevity; actually one would %% use, e.g., OWL Manchester Syntax here. ... ontology do-roam:ActivityTranslation = activ: project with proj:OWL2DLtoRDF %% project activity ontology down to RDF then language lang:RDF syntax ser:RDF/YAML : %% add German translations as RDF from a file do-roam:config/locales/de.yml %% serialized in (non-standard) YAMLLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 17
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Complex Alignments, Multilingual Labels (DO-ROAM) %prefix( do-roam: <https://raw.github.com/doroam/planning-do-roam/master/> activ: <https://raw.github.com/doroam/planning-do-roam/master/Ontology/activities.owl#> tags: <https://raw.github.com/doroam/planning-do-roam/master/Ontology/tags.owl#> )% language lang:OWL2/DL alignment do-roam:ActivitiesToTags : activ: to tags: = activ:Restaurant = ∃ tags:has_k_amenity . tags:v_restaurant, %% "=" is equivalence as defined in the Alignment API activ:ChargingStation = ∃ tags:has_k_amenity . tags:v_charging_station ⊔ (∃ tags:has_k_amenity . tags:v_fuel ⊓ ∃ tags:has_k_fuel:electricity . tags:yes), %% We give OWL complex OWL class expressions in German DL notation for brevity; actually one would %% use, e.g., OWL Manchester Syntax here. ... ontology do-roam:ActivityTranslation = activ: project with proj:OWL2DLtoRDF %% project activity ontology down to RDF then language lang:RDF syntax ser:RDF/YAML : %% add German translations as RDF from a file do-roam:config/locales/de.yml %% serialized in (non-standard) YAMLLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 17
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Reusing Linked Open Datasets (AAL) %prefix( pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> productdb: <http://productdb.org/ean/> )% language lang:OWL2/DL %% here: characterizing ontologies by language, not by logic ontology FreezerInMyHome = { pizza: project with proj:OWL2DLtoRDF %% Project Pizza OWL 2 DL ontology down to RDF and productdb: %% Merge with ProductDB RDF ontology then language lang:RDF syntax ser:RDF/Turtle : { %% Add the RDF part of our ABox %% Talk about a concrete pizza. This item doesn’t actually exist in the ProductDB linked open %% dataset, but we pretend so. productdb:4001724819806 pizza:hasTopping [ a pizza:TomatoTopping ], [ a pizza:MozzarellaTopping ] . } translate with trans:RDFtoOWL2DL then { pizza: %% Pizza ontology once more, now keep it in OWL 2 DL then syntax ser:OWL2/Manchester : { %% Add the OWL part of our ABox Individual: productdb:4001724819806 %% Redeclare the concrete pizza as an OWL individual %% We need OWL for expressing that besides tomato and mozzarella this pizza does not have any %% other toppings (and note that the two toppings of our concrete pizza are assumed to be %% different because the Pizza ontology declares TomatoTopping and MozzarellaTopping disjoint). Types: pizza:hasTopping exactly 2 }Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 18
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Reusing Linked Open Datasets (AAL) %prefix( pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> productdb: <http://productdb.org/ean/> )% language lang:OWL2/DL %% here: characterizing ontologies by language, not by logic ontology FreezerInMyHome = { pizza: project with proj:OWL2DLtoRDF %% Project Pizza OWL 2 DL ontology down to RDF and productdb: %% Merge with ProductDB RDF ontology then language lang:RDF syntax ser:RDF/Turtle : { %% Add the RDF part of our ABox %% Talk about a concrete pizza. This item doesn’t actually exist in the ProductDB linked open %% dataset, but we pretend so. productdb:4001724819806 pizza:hasTopping [ a pizza:TomatoTopping ], [ a pizza:MozzarellaTopping ] . } translate with trans:RDFtoOWL2DL then { pizza: %% Pizza ontology once more, now keep it in OWL 2 DL then syntax ser:OWL2/Manchester : { %% Add the OWL part of our ABox Individual: productdb:4001724819806 %% Redeclare the concrete pizza as an OWL individual %% We need OWL for expressing that besides tomato and mozzarella this pizza does not have any %% other toppings (and note that the two toppings of our concrete pizza are assumed to be %% different because the Pizza ontology declares TomatoTopping and MozzarellaTopping disjoint). Types: pizza:hasTopping exactly 2 }Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 18
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Reusing Linked Open Datasets (AAL) %prefix( pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#> productdb: <http://productdb.org/ean/> )% language lang:OWL2/DL %% here: characterizing ontologies by language, not by logic ontology FreezerInMyHome = { pizza: project with proj:OWL2DLtoRDF %% Project Pizza OWL 2 DL ontology down to RDF and productdb: %% Merge with ProductDB RDF ontology then language lang:RDF syntax ser:RDF/Turtle : { %% Add the RDF part of our ABox %% Talk about a concrete pizza. This item doesn’t actually exist in the ProductDB linked open %% dataset, but we pretend so. productdb:4001724819806 pizza:hasTopping [ a pizza:TomatoTopping ], [ a pizza:MozzarellaTopping ] . } translate with trans:RDFtoOWL2DL then { pizza: %% Pizza ontology once more, now keep it in OWL 2 DL then syntax ser:OWL2/Manchester : { %% Add the OWL part of our ABox Individual: productdb:4001724819806 %% Redeclare the concrete pizza as an OWL individual %% We need OWL for expressing that besides tomato and mozzarella this pizza does not have any %% other toppings (and note that the two toppings of our concrete pizza are assumed to be %% different because the Pizza ontology declares TomatoTopping and MozzarellaTopping disjoint). Types: pizza:hasTopping exactly 2 }Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 18
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Extending the OntoIOp Framework DOL supports different ontology languages, logics, serializations, and mappings But OntoIOp is not limited to a fixed set of ontology languages. Any existing or future ontology language, logic, serialization, or mapping will work, if one establishes its conformance with the OntoIOp criteria Any such resource shall . . . be globally and uniquely identified by an IRI have a machine-readable description (at least RDF) Why? So that, e.g., agents can find out what an ontology language can be translated to! There shall be a central registry of authoritative and contributed resources, published as linked open data for now maintained as a static RDF file soon served through a dedicated Ontohub installationLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 19
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap The OntoIOp Registry (Subset) Serializations Ontology Languages Logics CLIF Common Logic Common Logic XCL OWL 2 RL DL-RL Manchester Syntax OWL 2 DL OWL 2 QL DL-LiteR SROIQ OWL 2 XML OWL 2 EL ++ EL RDFS RDFS RDF / XML Turtle RDF RDF supports serialization sublanguage of translatable to induced translation exact logical expressivity sublogic ofLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 20
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Conclusion: DOL Enables Interoperability Standardization of DOL enables interoperability between data, ontologies, logics, and thus service-oriented architectures based on them: We formulate consensual rules under participation of major stakeholders (here: ontology language communities). Standards improve suitability of products, processes and services, . . . facilitate communication, . . . reduce complexity (and thus costs), and increase quality via certificationLange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 21
    • Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Further Roadmap of ISO 17347 currently: Third (last) Working Draft 2012-06-25: ISO/TC 37/SC 3 meeting (here) 2012-08-15: Committee Draft then: 3 months review/ballot period Aug 2013: DIS (Draft International Standard) Feb 2015: FDIS (Final Draft International Standard) Aug 2015: IS (International Standard) Mailing list: ontoiop-forum@ontolog.cim3.net Homepage: ontoiop.org Become an OntoIOp expert!Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 22