4.3 OWL in context
4.3.3 Common Logic
Ontology development does not need to occur with OWL. The main other logic that has been serialised is Common Logic (CL) [CLs07], which has been standard- ised by the ISO. It is a family of first-order logics that share a common abstract syntax, have a model-theoretic semantics, and it uses XML as well. It has three “di- alects” (syntaxes): 1) the Common Logic Interchange Format CLIF (one textual notation); 2) the Conceptual Graph Interchange Format (diagrams), CGIF; and 3) eXtended Common Logic Markup Language (XCL), based on XML (another textual notation).
It had its own design goals, which wasn’t concerned with computability. More specifically8, and in comparison with the earlier listed design goals of OWL, they were: 1) Common interlingua for variety of KR notations; 2) Syntactically as un- constrained as possible; 3) Semantically as simple and conventional as possible; 4) Full first-order logic with equality, at least; 5) web-savvy, up-to-date; 6) Historical origins in Knowledge Interchange Format (KIF).
Because CL is more expressive, the Semantic Web languages (including the OWL species) all can map into CL. Further, since DOL, it need not be ‘self stand- ing’, as the DOL framework as well as the tooling with Hets do provide support for CL; see also the “CL−” and “CL” boxes in the right-bottom corner in Figure 4.4.
4.4
Exercises
Review question 4.1. How does OWL/OWL 2 differ from a DL language? Review question 4.2. Describe what were the motivations to develop OWL 2. Review question 4.3. What are the new features in OWL 2 DL compared to OWL-DL?
8A clear brief overview can be found at https://www.w3.org/2004/12/rules-ws/slides/ pathayes.pdf
Review question 4.4. Which is the required format one has to serialise an OWL ontology in?
Review question 4.5. List all the species of OWL (both standards).
Review question 4.6. Which language features can be used on simple object properties only?
Review question 4.7. What are OWL 2 QL, OWL 2 RL, and OWL 2 EL tailed toward, respectively?
Review question 4.8. What is the major advantage of the OWL 2 Profiles over OWL 2 DL and OWL 2 full?
Review question 4.9. Which four ‘parameters’ are considered for complexity of an OWL species?
Review question 4.10. Describe in one sentence the purpose of DOL.
Exercise 4.1. Complete Table 4.4: Verify the question marks in the table (ten- tatively all “–”), fill in the dots, and any “±” should be qualified at to what the restriction is. You may prefer to distribute this exercise among your classmates. Exercise 4.2. Consider some medical ontology. You know that an injury (a cut, a fracture) to a bone in your hand is also an injury to your hand. How can you model this, and similar, information in an OWL 2 DL ontology such that it infers this not only for injuries to hands, but for any injury to any anatomical body part to an injury to its (direct/indirect) whole? Which OWL 2 DL feature do you need for this? Try to formalise it. *
Exercise 4.3. Install your ODE of choice, if not already done so, and acquaint yourself with the software. If you installed Prot´eg´e (5.x it is in 2018), you may want to have a look at the Pizza Ontology Tutorial (can be downloaded from the Web), but note that it was for a prior Prot´eg´e version, so there are slight differences in the screenshots there and the current interface. Also note that the Pizza tutorial was designed with the intention to acquaint the user the tool, not as a cookbook for best practices in ontology development (which it certainly is not).
Exercise 4.4. Recall Exercise 3.3: if you have not added the DL axiom renderer plug in yet, do so now. Load the AWO, or any other expressive ontology (i.e., one that is more than a simple bare hierarchy) and inspect both the DL rendering and the quasi natural language of the Prot´eg´e interface. Use this to familiarise yourself with the Prot´eg´e notation. Also, it may be of use when carrying out the next two exercises.
Exercise 4.5. Several axioms were listed in the chapter. You will now add them to a new ‘test ontology’ and experiment a bit with it.
a. Create a new ontology, give it a new URI, and save it in RDF/XML.
c. Take the OWL classifier (see footnote 5) and inspect the least expressive OWL species and violations. *
d. Update the previous axiom with the following one: Bicyclev ≥ 2 hasCompo- nent.Wheel.
e. Reload the ontology in the OWL classifier and inspect the OWL species and violations. What is the main difference? *
f. Experiment in a similar way with one or more of the other axioms listed in the chapter.
Exercise 4.6. Create a new ontology, add the vegan and vegetarian from Exer- cise 3.2, and check bothO `V eganvV egetarianandO `V egetarianvV egan. Describe the outcomes.
Exercise 4.7. Find another ontology development environment, be with a Web interface or stand-alone tool.
a. Repeat the previous exercise.
b. Compare the tools by considering, among others: do they both support OWL 2 DL? Which one is easier to navigate? Which one has the most features to help ontology development? Which one is easier for a collaborative ontology development project?
If you cannot find a tool, then consider the documentation of, e.g., MoKi and ACEWiki and compare them on their features.
Exercise 4.8. Load university.owl (note the OWL species) in your ODE, in- spect the contents, and try to represent:
a. AJoint Honors Maths & Computer Science Student, who is one who takes both Computer Science and Mathematics modules.
b. A Single Honours Maths Student (or [Computer Science, Economics]) is one who takes only Maths [Computer Science, Economics] modules.
Is it possible? If yes, how, if not, why not? *
Exercise 4.9. Classify the ontology of the previous question, and describe what happened and changed.
Exercise 4.10. The university has a regulation that each undergraduate student must take exactly 2 modules. Add this restriction to the ontology of the previous question.
a. Student 9 takes MT101, CS101, and CS102. Do you think your ontology is consistent? Describe why. Check your answer by adding the student and his courses, run the reasoner and examine the inferences. *
b. Student 10 takes MT101, CS101, and EC101. Do you think your ontology is consistent? Describe why. Check your answer by adding the data, running the reasoner, and examining the inferences. *
Exercise 4.11. Open the computerscience.owl file, find the principal errors in the ontology, and distinguish them from the ‘knock-on’ errors that are merely a consequence of the principal errors. What would you propose to a modeller how to fix it, and why? Note that “fixing” is to be understood as obtaining a satisfiable ontology other than just deleting the unsatisfiable classes. *
Table 4.4: Partial comparison of some OWL features
Language⇒ OWL 1 OWL 2 OWL 2 Profiles
Feature⇓ Lite DL DL EL QL RL
Role hierarchy + + + . + .
N-ary roles (wheren≥2) – – – . ? .
Role chaining – – + . – .
Role acyclicity – – – . – .
Symmetry + + + . + .
Role values – – – . – .
Qualified number restrictions – – + . – .
One-of, enumerated classes ? + + . – .
Functional dependency + + + . ? .
Covering constraint over concepts ? + + . – .
Complement of concepts ? + + . + . Complement of roles – – + . + . Concept identification – – – . – . Range typing – + + . + . Reflexivity – – + . – . Antisymmetry – – – . – . Transitivity + + + . – . Asymmetry ? ? + – + + Irreflexivity – – + . – . . . . .
Exercise 4.12. Consider again the content of the AWO. How would you represent the following information, if it is possible at all without running into inconsisten- cies?
a. There is also bird wildlife, and birds fly. Then there are penguins—a type of bird—not only on Antarctica, but also in South Africa, in the wild even, so they also have to be added to the AWO. Penguins don’t fly, however. * b. There are plenty of insects, too, which are also animals. Before we look
into human edible insects, let’s first try to represent the Lepidoptera family, which literally means “having scaled wings”, i.e., insects like butterflies and moths. The life of those insects goes through four stages where the entity is morphologically rather distinct: egg, larva (e.g., the caterpillar), pupa (or chrysalis), and adult (e.g., the butterfly). *
Note: you may wish to do this exercise together with a classmate to bounce of ideas. The caterpillar/butterfly challenge will return in Chapter 5 from a different viewpoint.
Exercise 4.13. From an educational perspective, you could do Practical Assign- ment 1 now (see Section B.1) or at the end of Block II. The advantage of doing it now is that you will appreciate the contents of Block II more and can revisit this assignment at the end of Block II, and it gives you a better understanding of both the language features and the automated reasoner. The disadvantage is that
it might be harder to do now than at the end of Block II and the quality of the ontology of your first attempt to create one is likely going to be low (which, on the other hand, is a good learning opportunity).
4.5
Literature and reference material
1. Ian Horrocks, Peter F. Patel-Schneider, and Frank van Harmelen. From SHIQ and RDF to OWL: The making of a web ontology language. Journal of Web Semantics, 1(1):7, 2003.
2. OWL Guide: http://www.w3.org/TR/owl-guide/
3. OWL Reference: http://www.w3.org/TR/owl-ref/
4. OWL Abstract Syntax and Semantics: http://www.w3.org/TR/owl-semantics/
5. B. Cuenca Grau, I. Horrocks, B. Motik, B. Parsia, P. Patel-Schneider, and U. Sattler. OWL 2: The next step for OWL. Journal of Web Semantics: Science, Services and Agents on the World Wide Web, 6(4):309-322, 2008. 6. Pascal Hitzler, Markus Kroetzsch, Sebastian Rudolph. Foundations of Se-
mantic Web Technologies. Chapman & Hall/CRC, 2009, 455p.
7. OWL 2 quick Reference: http://www.w3.org/TR/owl2-quick-reference/
8. OWL 2 Web Ontology Language Structural Specification and Functional- Style Syntax: http://www.w3.org/TR/owl2-syntax/
Developing good ontologies
Methods and Methodologies
In Block I we looked at languages for representing ontologies, and you obtained experience in reading existing ontologies, adding and removing some axioms, and using the automated reasoner. But how exactly did someone come up with the whole ontology in the first place? What can, or should, you do when you have to develop your own ontology? When is an ontology a good one? Just like in software engineering, there are methods and methodologies to guide you through it so that you will be able to answer these questions, or they at least will help out with one or more of the steps in the development of an ontology.
There is not just one way of doing it or a single up-to-date comprehensive methodology for ontology development that covers everything you possibly proba- bly need, but there some useful steps and combinations. There are several proposals along the line of generic ‘waterfall’ and ‘agile’ approaches that were inspired by soft- ware development methodologies. They are at the level of general guidelines and more and less detailed stages, which we shall cover in this chapter in Section 5.1. Diagrammatically, such (generalised!) methodologies have the tasks as shown in Figure 5.1: this one may look like a ‘waterfall’, but practically, it can be an itera- tive one not only within the ontology development, but within the “maintenance” that may involve substantial redesign or adding a new module that follows those development steps again, and a further refinement are methodologies for ontology authoring that permeate the whole development process. Particular aspects of such methodologies can be assisted by one or more methods and guidelines of the many ones available. A main reason for this state of affairs is that there is still much to be done, there are many different use-case scenarios, and it is—scientifically—hard to prove one methodology is better than another. This is easier to demonstrate for particular methods.
More specifically, in this chapter we start with high-level methodologies remi- niscent of those in software development—dubbed (process-oriented) ‘macro-level’ methodologies—and more detailed ones that focus on ontology authoring—called ‘micro-level’ development—in Section 5.1. We then proceed to a sampling of meth-
(scheduling, controlling, quality assurance)
Ontology management
Ontology development and support
Ontology use
Feasibility study (problems, opportunities, potential solutions, economic feasibility)
Conceptualisation (of the model, integration and extension of existing solutions)
Implementation (ontology authoring in a logic-based representation language)
Domain Analysis (motivating scenarios, competency questions, existing solutions)
Maintenance (adapting the ontology to new requirements)
Use (ontology-based search, integration, negotiation)
O n to lo g y re u se D o cu me n ta tio n Eva lu a tio n Kn o w le d g e a cq u isi tio n
Figure 5.1: Main tasks in ontology engineering (Source: based on [SMB10])
ods that can be used as a component within those methodologies (Section 5.2), which are roughly divided into one of the four categories of methods: logic-based only, purely based on philosophy, a combination of the two, and heuristics.
5.1
Methodologies for ontology development
Several specific methodologies for ontology development exist following the gen- eral idea depicted in Figure 5.1, notably the older Methontology and On-To- Knowledge, the more recent NeON and Melting Point methodologies, and the authoring-focused recent ones OntoSpec, DiDOn, and TDDonto, and the older “Ontology Development 101” (OD101)1. They are not simply interchangeable in that one could pick any one of them and it will work out well. Besides that some are older or outdated by now, they can be distinguished in core approach, being between:
• micro-level ontology authoring vs. a macro-level systems-view of ontology development;
• isolated, single, stand-alone, ontology development vs. collaborative devel- opment of ontologies and ontology networks.
Micro-level methodologies focus on the viewpoint of the details emphasising formal- isation aspects, which goes into ontology authoring, for it is about writing down the actual axioms and design choices that may even be driven by the language. Macro-level methodologies, on the other hand, emphasise the processes from an 1details can be found in [FGPPP99, SSSS01, SFdCB+08, GOG+10, Kas05, Kee12b, KL16,
information systems and IT viewpoint, such as depicted in Figure 5.1. They may merge into comprehensive methodologies in the near future.
Regarding the second difference, this reflects a division between ‘old’ and ‘new’ methodologies in the sense that the older ones assume a setting that was typical of 20 years ago: the development of a single monolithic ontology by one or a few people residing in one location, who were typically the knowledge engineers doing the actual authoring after having extracted the domain knowledge from the domain expert. The more recent ones take into account the changing landscape in ontology development over the years, being towards collaboratively building ontology net- works that cater for characteristics such as dynamics, context, collaborative, and distributed development. For instance, domain experts and knowledge engineers may author an ontology simultaneously, in collaboration, and residing in two dif- ferent locations, or the ontology may have been split up into inter-related modules so that each sub-group of the development team can work on their section, and the automated reasoning may well be distributed over other locations or remotely with more powerful machines.
The remainder of this section provides an overview of these two types of guide- lines.