Training:PhD Course on Computational Ontologies @ University of Bologna 2011/Ontology Testing:Unrestricted testing

From Odp

(Difference between revisions)
Jump to: navigation, search
(New page: == Ontology Testing == Parts of the ontology requirements are usually expressed as competency questions (CQs), i.e. natural language questions that the ontology should be able to provide...)
Line 1: Line 1:
-
 
== Ontology Testing ==
== Ontology Testing ==
-
Parts of the ontology requirements are usually expressed as competency questions (CQs), i.e. natural language questions that the ontology should be able to provide answers to. Assuming that your module attempts to solve the two CQs, CQ1 and CQ2. Then in the ontology module there needs to be the facilities, i.e. classes, properties, axioms etc., such that it is possible to retrieve instances and/or literals that constitute the answer to the CQs.
+
Parts of the ontology requirements are usually expressed as competency questions (CQs), i.e. natural language questions that the ontology should be able to provide answers to. Assuming that your module attempts to solve the two CQs, CQ1 and CQ2, obviously then in the ontology module there needs to be the facilities, i.e. classes, properties, axioms etc., such that it is possible to retrieve instances and/or literals that constitute the answer to the CQs.
-
Although CQs express what information the ontology should be able to provide, they do not say how this information is produced, i.e. if it is input into the ontology explicitly or produced through some inference mechanism. Therefore an ontology can have additional requirements, describing some desired inferences that the ontology should support. For instance, in an ontology about people we may define the class "parent" and say that any person who has at least one child is a parent. If we are not expecting the information about being a parent or not to be explicitly entered into the ontology's knowledge base, we are instead expecting it to be derived from the presence of "hasChild" relations. This is a reasoning requirement that requires the ontology to include the appropriate axioms to make this inference.  
+
Although CQs express what information the ontology should be able to provide, they do not say how this information is produced, i.e. if it is input into the ontology explicitly as assertions or produced through some inference mechanism. Therefore an ontology can have additional requirements, describing some desired inferences that the ontology should support. For instance, in an ontology about people we may define the class "parent" and say that any person who has at least one child is a parent. If we are not expecting the information about being a parent or not to be explicitly entered into the ontology's knowledge base, we are instead expecting it to be derived from the presence of "hasChild" relations. This is a reasoning requirement that requires the ontology to include the appropriate axioms to make this inference.  
Although the ability to perform correct inferences, and provide the resulting information as a result of queries, allow us to see that the ontology actually realizes its requirements, another important characteristic of an ontology is to allow as few erroneous facts and/or inferences as possible. A high-quality ontology allows exactly the desired inferences and queries, while avoiding to produce irrelevant or erroneous side-effects.
Although the ability to perform correct inferences, and provide the resulting information as a result of queries, allow us to see that the ontology actually realizes its requirements, another important characteristic of an ontology is to allow as few erroneous facts and/or inferences as possible. A high-quality ontology allows exactly the desired inferences and queries, while avoiding to produce irrelevant or erroneous side-effects.
Line 11: Line 10:
'''Task:'''
'''Task:'''
-
Below are the links to three different ontologies. Your task is to test the ontologies with the above mentioned aspects in mind. However, your first task is to decide ''how'' to test the ontologies? Can you imagine ways to test the different aspects? Try out your ideas and see what kind of mistakes, or problems, you can find! While you are performing the testing, please document what you are doing, i.e.:
+
Below you find a link to an ontology, and a set of requirements that it realizes. Your task is to test the ontology with the above mentioned aspects in mind.  
-
* What mehtod are you using?
+
-
* How did you apply the method, what did you do?
+
-
* What was the result? What mistakes did you find?
+
-
* How long time did it take you to test an ontology in that way?
+
-
* Do you see any limitations or problems with the way you tested the ontology?
+
 +
Your first task is to decide ''how'' to test the ontologies? Can you imagine ways to test the different aspects? Then, try out your ideas and see what kind of mistakes, or problems, you can find!
-
''' Ontologies:'''
+
While you are performing the testing, please document what you are doing, i.e.:
 +
# What method/approach are you using?
 +
# How did you apply the method, i.e. what did you do, what steps did you take?
 +
# What was the result of applying this method? What mistakes did you find? List them!
 +
# How long time did it take you to test the ontology using each approach you tried? Approximate the time you spent on it!
 +
# Do you see any limitations or problems with the way you tested the ontology? Would you be able to find any kind of error/mistake/problem using that method? Why/why not?
-
Ontology 1: xxx.owl
 
-
Requirements:
+
''' Ontology:'''
-
*...
+
-
*...
+
-
*...
+
-
Ontology 2: xxx.owl
+
Ontology file: xxx.owl
Requirements:
Requirements:
-
*...
 
-
*...
 
-
*...
 
-
Ontology 3: xxx.owl
+
CQs:
 +
* ...
 +
* ...
 +
* ...
-
Requirements:
+
Contextual statements:
-
*...
+
* ...
-
*...
+
 
-
*...
+
Reasoning requirements:
 +
* ...

Revision as of 13:34, 9 May 2011

Ontology Testing

Parts of the ontology requirements are usually expressed as competency questions (CQs), i.e. natural language questions that the ontology should be able to provide answers to. Assuming that your module attempts to solve the two CQs, CQ1 and CQ2, obviously then in the ontology module there needs to be the facilities, i.e. classes, properties, axioms etc., such that it is possible to retrieve instances and/or literals that constitute the answer to the CQs.

Although CQs express what information the ontology should be able to provide, they do not say how this information is produced, i.e. if it is input into the ontology explicitly as assertions or produced through some inference mechanism. Therefore an ontology can have additional requirements, describing some desired inferences that the ontology should support. For instance, in an ontology about people we may define the class "parent" and say that any person who has at least one child is a parent. If we are not expecting the information about being a parent or not to be explicitly entered into the ontology's knowledge base, we are instead expecting it to be derived from the presence of "hasChild" relations. This is a reasoning requirement that requires the ontology to include the appropriate axioms to make this inference.

Although the ability to perform correct inferences, and provide the resulting information as a result of queries, allow us to see that the ontology actually realizes its requirements, another important characteristic of an ontology is to allow as few erroneous facts and/or inferences as possible. A high-quality ontology allows exactly the desired inferences and queries, while avoiding to produce irrelevant or erroneous side-effects.


Task:

Below you find a link to an ontology, and a set of requirements that it realizes. Your task is to test the ontology with the above mentioned aspects in mind.

Your first task is to decide how to test the ontologies? Can you imagine ways to test the different aspects? Then, try out your ideas and see what kind of mistakes, or problems, you can find!

While you are performing the testing, please document what you are doing, i.e.:

  1. What method/approach are you using?
  2. How did you apply the method, i.e. what did you do, what steps did you take?
  3. What was the result of applying this method? What mistakes did you find? List them!
  4. How long time did it take you to test the ontology using each approach you tried? Approximate the time you spent on it!
  5. Do you see any limitations or problems with the way you tested the ontology? Would you be able to find any kind of error/mistake/problem using that method? Why/why not?


Ontology:

Ontology file: xxx.owl

Requirements:

CQs:

  • ...
  • ...
  • ...

Contextual statements:

  • ...

Reasoning requirements:

  • ...
Personal tools
Quality Committee
Content OP publishers