OOPS! (OntOlogy Pitfall Scanner!) compares an ontology with a catalogue of frequent modelling mistakes. The catalogue calls each mistake a pitfall, and gives it an importance: critical, important or minor. This page lists the pitfalls that OOPS! found in OntoGSN 1.3.0.

OntologyOntoGSN 1.3.0, ontology/serializations/ontogsn.rdf
ToolOOPS! 0.3.0-SNAPSHOT
Result8 pitfalls (0 critical, 4 important, 4 minor), P06 not evaluated
Dataoops.json, build.json

Pitfalls

CodePitfallImportanceCasesAffected elements
P10Missing disjoint-nessImportant1the ontology as a whole
P11Missing domain or range in propertiesImportant2schema:description, schema:identifier
P24Using recursive definitionsImportant3gsn:Goal, gsn:Module, gsn:Relationship
P30Equivalent classes not explicitly declaredImportant1rdf:Statement and gsn:Argument
P08-AMissing annotations - Label & CommentMinor2schema:description, schema:identifier
P13-NInverse relationships not explicitly declared - No SuggestionMinor14gsn:associatedWith, gsn:attachedTo, gsn:challenges, gsn:contains, gsn:depicts, gsn:inContextOf, gsn:inModule, gsn:instantiationOf, gsn:refersTo, gsn:relatedTo, gsn:substitutedBy, gsn:transitivelyChallenges, gsn:transitivelyInContextOf, gsn:transitivelySupportedBy
P13-SInverse relationships not explicitly declared - Symmetric or Transitive?Minor1gsn:relatedTo
P34Untyped classMinor8swrl:AtomList, swrl:BuiltinAtom, swrl:ClassAtom, swrl:DatavaluedPropertyAtom, swrl:DifferentIndividualsAtom, swrl:Imp, swrl:IndividualPropertyAtom, swrl:Variable

What the pitfalls mean

P10 Missing disjoint-ness
The ontology lacks disjoint axioms between classes or between properties that should be defined as disjoint. This pitfall is related to the guidelines provided in [6], [2] and [7].
P11 Missing domain or range in properties
Object and/or datatype properties missing domain or range (or both of them) are included in the ontology.
P24 Using recursive definitions
An ontology element (a class, an object property or a datatype property) is used in its own definition. Some examples of this would be: (a) the definition of a class as the enumeration of several classes including itself; (b) the appearance of a class within its owl:equivalentClass or rdfs:subClassOf axioms; (c) the appearance of an object property in its rdfs:domain or range rdfs:range definitions; or (d) the appearance of a datatype property in its rdfs:domain definition.
P30 Equivalent classes not explicitly declared
This pitfall consists in missing the definition of equivalent classes (owl:equivalentClass) in case of duplicated concepts. When an ontology reuses terms from other ontologies, classes that have the same meaning should be defined as equivalent in order to benefit the interoperability between both ontologies.
P08-A Missing annotations - Label & Comment
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].
P13-N Inverse relationships not explicitly declared - No Suggestion
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.
P13-S Inverse relationships not explicitly declared - Symmetric or Transitive?
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.
P34 Untyped class
An ontology element is used as a class without having been explicitly declared as such using the primitives owl:Class or rdfs:Class. This pitfall is related with the common problems listed in [8].

Not evaluated

The checker for each pitfall below stopped with an error. OOPS! did not evaluate these pitfalls, so the tables above do not show them, even if the ontology has them.

PitfallError
P06java.util.ConcurrentModificationException