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:
This pitfall consists in creating an ontology element and failing to provide human readable annotations attached to it. Consequently, ontology elements lack annotation properties that label them (e.g. rdfs:label, lemon:LexicalEntry, skos:prefLabel or skos:altLabel) or that define them (e.g. rdfs:comment or dc:description). This pitfall is related to the guidelines provided in [5].
This pitfall affects to the following ontology elements:
The ontology lacks disjoint axioms between classes or between properties that should be defined as disjoint. This pitfall is related with the guidelines provided in [6], [2] and [7].
*This pitfall applies to the ontology in general instead of specific elements
Object and/or datatype properties without domain or range (or none of them) are included in the ontology.
This pitfall affects to the following ontology elements:
This pitfall appears when any relationship (except for those that are defined as symmetric properties using owl:SymmetricProperty) does not have an inverse relationship (owl:inverseOf) defined within the ontology.
This pitfall affects to the following ontology elements:
The domain or range (or both) of a property (relationships and attributes) is defined by stating more than one rdfs:domain or rdfs:range statements. In OWL multiple rdfs:domain or rdfs:range axioms are allowed, but they are interpreted as conjunction, being, therefore, equivalent to the construct owl:intersectionOf. This pitfall is related to the common error that appears when defining domains and ranges described in [7].
This pitfall affects to the following ontology elements:
The ontology elements are not named following the same convention (for example CamelCase or use of delimiters as "-" or "_") . Some notions about naming conventions are provided in [2].
*This pitfall applies to the ontology in general instead of specific elements
Two classes are defined as equivalent, using owl:equivalentClass, when they are not necessarily equivalent.
This pitfall affects to the following ontology elements:
References: