Scheduled Technical Discussion for February 24, 2005 (ASD)
- Topic submitter: NicolasRouquette (ASE)
- Discussion topic: Meta-Ontologies & Ontologies: practical considerations (ASF)
Background (ASG)
Using the analogy associating an ontology as an analog to the concept of a reusable software library with its API, then we can look towards modern approaches of reusable software development practices as an inspiration for modular ontology development. The naive approach for modular, object-oriented software development relies heavily on subclassing as the mechanism to decouple a reusable module (i.e., the superclass) with a specific usage of that module in a given application context (i.e., the subclass that derives from the module's superclass). There is a growing body of evidence that this approach is inherently brittle in software engineering. (for more on this topic, see see Clemens Szyperski's Component Software book, chapters 5 & 6 -- http://research.microsoft.com/~cszypers/Books/component-software.htm) (ASH)
The analogy holds for formal ontologies as well. Here, "formal ontology" refers to an ontology that has rigorous formalization of some kind suitable for a reasoning process to make inferences based on the ontology's axioms, properties and rules. Well-known examples of formal ontologies include: SUMO, PSL, DOLCE. The OntoClean methodology is an excellent case explaining the pitfalls and limitations of subsumption for organizing extensible or modular ontologies. This has led to the notion of "meta-ontology", initially used as an ontology where the (meta) ontology provides a taxonomy of concepts and properties used for capturing the meaning of things in the application-specific ontology using annotations expressed in terms of the meta-ontology. This idea has been documented in the semantic web best practices group http://www.w3.org/2001/sw/BestPractices/, e.g., with the "classes-as-values" pattern http://www.w3.org/TR/swbp-classes-as-values/ commonly used for annotation purposes. (ASI)
Problems & questions for discussion (ASJ)
While adequate for documentation purposes, the use of a meta-ontology as an annotation language presents a number of practical problems for OWL ontologies. (ASK)
- 1. Most reasoning tools (e.g., RACER, FaCT) ignore annotations; consequently, such annotations have no useful semantic value for automated reasoning purposes. (ASL)
- (ASM)
- Question: What practical & technical recommendations can someone make w.r.t. augmenting a specific reasoning tool to include data from annotations? (ASN)
- 2. There is rarely a practical separation of the ontology itself vs. the annotations about it. In other words, the data (i.e., the elements of the ontology) and the meta-data (i.e., the annotations about the ontology elements expressed in terms of elements of the meta-ontology) are co-mingled in one logical document, the ontology itself. This practice is wrong because the logical document creates an artificial coupling of two independent things: the ontology vs. the possibly many annotations necessary about that ontology. (ASO)
- (ASP)
- Question: What practical & technical recommendations can someone make w.r.t. relevant standards & practices to logically decouple an OWL ontology from an annotation of that ontology into two separate documents that behave as if they were one integrated OWL document? (ASQ)
- (ASR)
- Question: What practical & technical recommendations can someone make w.r.t. tool support for ontology develpment with annotations kept as separate metadata from the ontology data? (ASS)
- 3. Further evidence for decoupling an ontology from the annotations about it stems from the definite nature of the former vs. the open-ended nature of the latter. An ontology, once published with due considerations to configuration management, is a definite, immutable document that can only change via distinct versions. In principle, there is no arbitrary limit on the possible uses of an ontology nor interpretations of it; therefore, the set of annotations of an ontology is not fixed over time. (AST)
Specifically, this means that an ontology may have: (ASU)
These situations raise a number of questions about reasoning over the annotations of an ontology. In practice, this is not easily doable without a significant amount of tooling effort. Such efforts transform the status of an annotation from that of a comment to that of an logical element in an ontology of annotation attachments. This raises the prospect of shifting from a practice of ontology annotations to "meta-ontology" development, i.e., ontologies about ontologies. (ASY)
- (ASZ)
- Question: ChrisWelty recently made brief comments on a similar idea for "reified properties", see: http://lists.w3.org/Archives/Public/public-swbp-wg/2004Dec/0066.html. (AT0)
- (AT1)
- Are there more practical & specific recommendations that someone can make w.r.t. applying this idea in practice? (AT2)
This topic is particularly interesting to me as I am wrestling with practical strategies for applying OntoClean(*) in the context of engineering models, a culture with a large tradition of "attribute=value" parametric view on modeling. In this context, the risk of ontological error in alignming domain-specific vocabularies and taxonomies is very high. (AT3)