SlideShare a Scribd company logo
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-20
Lange 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 Devices




Lange 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 machine




Lange 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” column
Lange 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
               serializations
Lange 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.de
Lange 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 ontology
Lange 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 ontology
Lange 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 ontologies
Lange 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) YAML




Lange 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) YAML




Lange 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 installation
Lange 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 of

Lange 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 certification


Lange 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

More Related Content

PDF
A Mathematical Approach to Ontology Authoring and Documentation
PDF
Linked Open (Geo)Data and the Distributed Ontology Language – a perfect match
PDF
Translating Ontologies in Real-World Settings
PDF
USING MACHINE LEARNING TO BUILD A SEMI-INTELLIGENT BOT
PDF
Matching and merging anonymous terms from web sources
PDF
Tutorial - Introduction to Rule Technologies and Systems
PPT
Data Integration Ontology Mapping
PDF
Using linguistic analysis to translate
A Mathematical Approach to Ontology Authoring and Documentation
Linked Open (Geo)Data and the Distributed Ontology Language – a perfect match
Translating Ontologies in Real-World Settings
USING MACHINE LEARNING TO BUILD A SEMI-INTELLIGENT BOT
Matching and merging anonymous terms from web sources
Tutorial - Introduction to Rule Technologies and Systems
Data Integration Ontology Mapping
Using linguistic analysis to translate

What's hot (17)

PDF
Hyponymy extraction of domain ontology
PPTX
Ontology mapping for the semantic web
PDF
Swoogle: Showcasing the Significance of Semantic Search
PDF
Nguyen
PDF
Learning ontologies
PDF
Using translation memory_to_speed_up_tra
PPTX
Context, Perspective, and Generalities in a Knowledge Ontology
PDF
Ontology development
PPT
Ontology Mapping
PDF
A category theoretic model of rdf ontology
PDF
Introduction to Ontology Concepts and Terminology
PDF
Fact forge20 edf
PPTX
Ontology Engineering for Big Data
PPTX
Ontology-based Data Integration
PDF
Automatically converting tabular data to
PDF
SemFacet paper
PDF
Ontology Mapping
Hyponymy extraction of domain ontology
Ontology mapping for the semantic web
Swoogle: Showcasing the Significance of Semantic Search
Nguyen
Learning ontologies
Using translation memory_to_speed_up_tra
Context, Perspective, and Generalities in a Knowledge Ontology
Ontology development
Ontology Mapping
A category theoretic model of rdf ontology
Introduction to Ontology Concepts and Terminology
Fact forge20 edf
Ontology Engineering for Big Data
Ontology-based Data Integration
Automatically converting tabular data to
SemFacet paper
Ontology Mapping
Ad

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

PDF
Ontology Integration and Interoperability (OntoIOp) – Part 1: The Distributed...
PDF
Ontology Integration and Interoperability (OntoIOp) – Part 1: The Distributed...
PDF
Making Heterogeneous Ontologies Interoperable Through Standardisation
PDF
8 ontology integration and interoperability (onto i op)
PDF
8 ontology integration and interoperability (onto i op)
PPTX
Langchainfdgdfsggfdgfsdgsdgdfsgfdgfdgfdgfd
PDF
ESWC SS 2012 - Tuesday Tutorial Elena Simperl: Creating and Using Ontologies
PDF
Question answer template
PDF
Pal gov.tutorial4.session1 1.needforsharedsemantics
PDF
Pal gov.tutorial4.session1 1.needforsharedsemantics
PDF
A Comparative Study Ontology Building Tools for Semantic Web Applications
PDF
A Comparative Study Ontology Building Tools for Semantic Web Applications
PDF
A Comparative Study of Ontology building Tools in Semantic Web Applications
PPTX
A Methodological Framework for Ontology and Multilingual Termontological Data...
PDF
Languages, Ontologies and Automatic Grammar Generation - Prof. Pedro Rangel H...
DOCX
Proposal of an Ontology Applied to Technical Debt on PL/SQL Development
PDF
Php oops interview questions
PPT
Word Tree Corpus Interface
PDF
Semantic Rules Representation in Controlled Natural Language in FluentEditor
PDF
A Strong Object Recognition Using Lbp, Ltp And Rlbp
Ontology Integration and Interoperability (OntoIOp) – Part 1: The Distributed...
Ontology Integration and Interoperability (OntoIOp) – Part 1: The Distributed...
Making Heterogeneous Ontologies Interoperable Through Standardisation
8 ontology integration and interoperability (onto i op)
8 ontology integration and interoperability (onto i op)
Langchainfdgdfsggfdgfsdgsdgdfsgfdgfdgfdgfd
ESWC SS 2012 - Tuesday Tutorial Elena Simperl: Creating and Using Ontologies
Question answer template
Pal gov.tutorial4.session1 1.needforsharedsemantics
Pal gov.tutorial4.session1 1.needforsharedsemantics
A Comparative Study Ontology Building Tools for Semantic Web Applications
A Comparative Study Ontology Building Tools for Semantic Web Applications
A Comparative Study of Ontology building Tools in Semantic Web Applications
A Methodological Framework for Ontology and Multilingual Termontological Data...
Languages, Ontologies and Automatic Grammar Generation - Prof. Pedro Rangel H...
Proposal of an Ontology Applied to Technical Debt on PL/SQL Development
Php oops interview questions
Word Tree Corpus Interface
Semantic Rules Representation in Controlled Natural Language in FluentEditor
A Strong Object Recognition Using Lbp, Ltp And Rlbp
Ad

More from Christoph Lange (20)

PDF
Faire Datenökonomie für Wirtschaft, Wissenschaft und Gesellschaft: Was brauch...
PDF
Research Careers in Applied Computer Science
PDF
OSCOSS: Opening Scholarly Communication in Social Sciences
PDF
WDAqua ITN – Answering Questions using Web Data
PDF
Machine Support for Interacting with Scientific Publications Improving Inform...
PDF
Interlinking Data and Knowledge in Enterprises, Research and Society with Lin...
PDF
Linking Big Data to Rich Process Descriptions
PDF
Bringing Mathematics To the Web of Data: the Case of the Mathematics Subject ...
PDF
Semantic Web Technology: The Key to Making Scientific Information Systems Social
PDF
TCP – zuverlässiger Ende-zu-Ende-Datenstrom
PDF
Previewing OWL Changes and Refactorings Using a Flexible XML Database
PDF
JOBAD – Interactive Mathematical Documents
PDF
Publishing Math Lecture Notes as Linked Data
PDF
sTeX+ – a System for Flexible Formalization of Linked Data
PDF
Krextor – An Extensible Framework for Contributing Content Math to the Web of...
PDF
Mathematical Semantics of Statistical Data
PDF
Enabling Collaboration on Semiformal Mathematical Knowledge by Semantic Web I...
PDF
Processing and Publishing Content Math with JOMDoc and JOBAD
PDF
TNTBase – a Versioned Database for XML (Mathematical) Documents
PDF
wiki.openmath.org – how it works, how you can participate
Faire Datenökonomie für Wirtschaft, Wissenschaft und Gesellschaft: Was brauch...
Research Careers in Applied Computer Science
OSCOSS: Opening Scholarly Communication in Social Sciences
WDAqua ITN – Answering Questions using Web Data
Machine Support for Interacting with Scientific Publications Improving Inform...
Interlinking Data and Knowledge in Enterprises, Research and Society with Lin...
Linking Big Data to Rich Process Descriptions
Bringing Mathematics To the Web of Data: the Case of the Mathematics Subject ...
Semantic Web Technology: The Key to Making Scientific Information Systems Social
TCP – zuverlässiger Ende-zu-Ende-Datenstrom
Previewing OWL Changes and Refactorings Using a Flexible XML Database
JOBAD – Interactive Mathematical Documents
Publishing Math Lecture Notes as Linked Data
sTeX+ – a System for Flexible Formalization of Linked Data
Krextor – An Extensible Framework for Contributing Content Math to the Web of...
Mathematical Semantics of Statistical Data
Enabling Collaboration on Semiformal Mathematical Knowledge by Semantic Web I...
Processing and Publishing Content Math with JOMDoc and JOBAD
TNTBase – a Versioned Database for XML (Mathematical) Documents
wiki.openmath.org – how it works, how you can participate

Recently uploaded (20)

PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Electronic commerce courselecture one. Pdf
PDF
Approach and Philosophy of On baking technology
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Cloud computing and distributed systems.
PDF
Empathic Computing: Creating Shared Understanding
PDF
cuic standard and advanced reporting.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Understanding_Digital_Forensics_Presentation.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The AUB Centre for AI in Media Proposal.docx
Per capita expenditure prediction using model stacking based on satellite ima...
Electronic commerce courselecture one. Pdf
Approach and Philosophy of On baking technology
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Cloud computing and distributed systems.
Empathic Computing: Creating Shared Understanding
cuic standard and advanced reporting.pdf
Encapsulation theory and applications.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Unlocking AI with Model Context Protocol (MCP)
20250228 LYD VKU AI Blended-Learning.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Programs and apps: productivity, graphics, security and other tools
Profit Center Accounting in SAP S/4HANA, S4F28 Col11

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

  • 1. 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-20 Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 1
  • 2. Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Smart Devices Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 2
  • 3. Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Smart Devices interoperable with washing machine Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 2
  • 4. 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” column Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 3
  • 5. 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 serializations Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 4
  • 6. 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
  • 7. Interoperability DOL Use Cases Syntax Extensibility Conclusion & Roadmap Ontohub Features: Welcome Page http://ontohub.informatik.uni-bremen.de Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 6
  • 8. 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
  • 9. 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
  • 10. 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
  • 11. 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
  • 12. 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 ontology Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 11
  • 13. 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 ontology Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 12
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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
  • 18. 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 ontologies Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 15
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. 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
  • 23. 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) YAML Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 17
  • 24. 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) YAML Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 17
  • 25. 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
  • 26. 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
  • 27. 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
  • 28. 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 installation Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 19
  • 29. 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 of Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 20
  • 30. 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 certification Lange et al. The Distributed Ontology Language (DOL): Use Cases, Syntax, and Extensibility 2012-06-20 21
  • 31. 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