The following evaluation results have been generated by the RESTFul web service provided by OOPS! (OntOlogy Pitfall Scanner!).
It is obvious that not all the pitfalls are equally important; their impact in the ontology will depend on multiple factors. For this reason, each pitfall has an importance level attached indicating how important it is. We have identified three levels:
Ontology elements (classes, relationships or attributes) are created with no relation to the rest of the ontology. An example of this type of pitfall is to create the relationship "memberOfTeam" and to miss the class representing teams; thus, the relationship created is isolated in the ontology.
This pitfall affects to the following ontology elements:
Ontology terms lack annotations properties. This kind of properties improves the ontology understanding and usability from a user point of view.
This pitfall affects to the following ontology elements:
The ontology lacks disjoint axioms between classes or between properties that should be defined as disjoint. For example, we can create the classes "Odd" and "Even" (or the classes "Prime" and "Composite") without being disjoint; such representation is not correct based on the definition of these types of numbers.
*This pitfall applies to the ontology in general instead of specific elements
This pitfall appears when a relationship (except for the symmetric ones) has not an inverse relationship defined within the ontology. For example, the case in which the ontology developer omits the inverse definition between the relations "hasLanguageCode" and "isCodeOf", or between "hasReferee" and "isRefereeOf".
This pitfall affects to the following ontology elements:
Ontology elements are not named using the same convention within the whole ontology. It is considered a good practice that the rules and style of lexical encoding for naming the different ontology elements is homogeneous within the ontology. One possibility for rules is that concept names start with capital letters and property names start with non-capital letters. In the case of style, there are different options such as camel case, hyphen style, underscore style, and the combinations. Some notions about naming conventions are provided in [2].
*This pitfall applies to the ontology in general instead of specific elements
An ontology element is used in its own definition. For example, it is used to create the relationship "hasFork" and to establish as its range the following ���the set of restaurants that have at least one value for the relationship "hasFork".
This pitfall affects to the following ontology elements:
A relationship is defined as inverse of itself. In this case, this property could have been defined as "owl:SymmetricProperty" instead.
This pitfall affects to the following ontology elements:
A relationship is defined as "owl:SymmetricProperty" and there is also a relationship (it could be itself or another relationship) defined as its inverse.
This pitfall affects to the following ontology elements:
Guidelines in [5] suggest avoiding file extension in persistent URIs, particularly those related to the technology used, as for example ".php" or ".py". In our case we have adapted it to the ontology web languages used to formalized ontologies and their serializations. In this regard, we consider as pitfall including file extensions as ".owl", ".rdf", ".ttl", ".n3" and ".rdfxml" in an ontology URI. An example of this pitfall (at 29th June, 2012) could be found in the "BioPAX Level 3 ontology (biopax)" ontology��s URI (http://www.biopax.org/release/biopax-level3.owl) that contains the extension ".owl" related to the technology used.
*This pitfall applies to the ontology in general instead of specific elements and it appears in the ontology URI: http://jpo.imp.bg.ac.rs/cascade/airport-ontology/MXP/airportOntologyMXP_TBox.owl
References: