scanning


OOPS! is scanning...

OOPS! (OntOlogy Pitfall Scanner!) helps you to detect some of the most common pitfalls appearing when developing ontologies.

To try it, enter a URI or paste an OWL document into the text field above. A list of pitfalls and the elements of your ontology where they appear will be displayed.

Scanner by URI:

Example: http://data.semanticweb.org/ns/swc/swc_2009-05-09.rdf


Scanner by direct input:

Uncheck this checkbox if you don't want us to keep a copy of your ontology.

Evaluation results

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:

  • Critical Critical : It is crucial to correct the pitfall. Otherwise, it could affect the ontology consistency, reasoning, applicability, etc.
  • Important Important : Though not critical for ontology function, it is important to correct this type of pitfall.
  • Minor Minor : It is not really a problem, but by correcting it we will make the ontology nicer.

Results for P04: Creating unconnected ontology elements. 7 cases | Minor Minor

Ontology elements (classes, object properties and datatype properties) are created isolated, with no relation to the rest of the ontology.

• This pitfall appears in the following elements:
http://purl.org/linguistics/gold/Class
http://purl.org/linguistics/gold/Thing
http://purl.org/linguistics/gold/Citation
http://purl.org/linguistics/gold/Ontology
http://purl.org/linguistics/gold/AnnotationProperty
http://purl.org/linguistics/gold/TransitiveProperty
http://purl.org/linguistics/gold/SymmetricProperty

Results for P08: Missing annotations. 24 cases | Minor Minor

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].

• The following elements have neither rdfs:comment or skos:definition defined:
http://purl.org/linguistics/gold/FirstPersonExclusive
http://purl.org/linguistics/gold/DiscourseProperty
http://purl.org/linguistics/gold/FirstPersonInclusive
http://purl.org/linguistics/gold/specifier
http://purl.org/linguistics/gold/head
http://purl.org/linguistics/gold/subject
http://purl.org/linguistics/gold/entails
http://purl.org/linguistics/gold/indirectObject
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasEntry
http://purl.org/linguistics/gold/semanticRole
http://purl.org/linguistics/gold/adjunct
http://purl.org/linguistics/gold/entailedBy
http://purl.org/linguistics/gold/derivedForm
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasCitation
http://purl.org/linguistics/gold/goal
http://purl.org/linguistics/gold/agent
http://purl.org/linguistics/gold/inflectedForm
http://purl.org/linguistics/gold/complement
http://purl.org/linguistics/gold/stringRep
http://purl.org/linguistics/gold/hasExample
http://purl.org/linguistics/gold/phonemicRep
http://purl.org/linguistics/gold/orthographicRep
http://purl.org/linguistics/gold/phoneticRep
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasPageInformation

Results for P10: Missing disjointness. ontology* | Important Important

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.

Results for P11: Missing domain or range in properties. 59 cases | Important Important

Object and/or datatype properties without domain or range (or none of them) are included in the ontology.

• This pitfall appears in the following elements:
http://purl.org/linguistics/gold/complement
http://purl.org/linguistics/gold/synonym
http://purl.org/linguistics/gold/hasTranslationLine
http://purl.org/linguistics/gold/nucleus
http://purl.org/linguistics/gold/dataStructureRelation
http://purl.org/linguistics/gold/patient
http://purl.org/linguistics/gold/feature
http://purl.org/linguistics/gold/inflectedForm
http://purl.org/linguistics/gold/rhyme
http://purl.org/linguistics/gold/literalTranslation
http://purl.org/linguistics/gold/agent
http://purl.org/linguistics/gold/goal
http://purl.org/linguistics/gold/agrees
http://purl.org/linguistics/gold/allophone
http://purl.org/linguistics/gold/syntacticRole
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasCitation
http://purl.org/linguistics/gold/antonym
http://purl.org/linguistics/gold/allomorph
http://purl.org/linguistics/gold/argument
http://purl.org/linguistics/gold/object
http://purl.org/linguistics/gold/derivedForm
http://purl.org/linguistics/gold/directObject
http://purl.org/linguistics/gold/hasLexicalUnit
http://purl.org/linguistics/gold/entailedBy
http://purl.org/linguistics/gold/circumscribes
http://purl.org/linguistics/gold/adjunct
http://purl.org/linguistics/gold/constituents
http://purl.org/linguistics/gold/hasSourceLine
http://purl.org/linguistics/gold/onset
http://purl.org/linguistics/gold/semanticRole
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasEntry
http://purl.org/linguistics/gold/indirectObject
http://purl.org/linguistics/gold/labels
http://purl.org/linguistics/gold/freeTranslation
http://purl.org/linguistics/gold/names
http://purl.org/linguistics/gold/hasGlosses
http://purl.org/linguistics/gold/hypernym
http://purl.org/linguistics/gold/entails
http://purl.org/linguistics/gold/subject
http://purl.org/linguistics/gold/suffix
http://purl.org/linguistics/gold/precedes
http://purl.org/linguistics/gold/translation
http://purl.org/linguistics/gold/follows
http://purl.org/linguistics/gold/infixedIn
http://purl.org/linguistics/gold/predicate
http://purl.org/linguistics/gold/head
http://purl.org/linguistics/gold/specifier
http://purl.org/linguistics/gold/lexicalRelation
http://purl.org/linguistics/gold/hasType
http://purl.org/linguistics/gold/meronym
http://purl.org/linguistics/gold/coda
http://purl.org/linguistics/gold/hasFeature
http://purl.org/linguistics/gold/prefix
http://purl.org/linguistics/gold/abbreviation
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasPageInformation
http://purl.org/linguistics/gold/phoneticRep
http://purl.org/linguistics/gold/orthographicRep
http://purl.org/linguistics/gold/phonemicRep
http://purl.org/linguistics/gold/hasExample

Tip: Solving this pitfall may lead to new results for other pitfalls and suggestions. We encourage you to solve all cases when needed and see what else you can get from OOPS!

Results for P13: Inverse relationships not explicitly declared. 78 cases | Minor Minor

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.

• OOPS! has the following suggestions for the relationships without inverse:
http://purl.org/linguistics/gold/orderingRelation could be inverse of http://purl.org/linguistics/gold/hasConstituent
http://purl.org/linguistics/gold/hasMorphologicalConstituent could be inverse of http://purl.org/linguistics/gold/morphologicalRelation
http://purl.org/linguistics/gold/geneticallyRelated could be inverse of http://purl.org/linguistics/gold/mutuallyIntelligible
http://purl.org/linguistics/gold/mutuallyIntelligible could be inverse of http://purl.org/linguistics/gold/ancestorVariety
http://purl.org/linguistics/gold/ancestorVariety could be inverse of http://purl.org/linguistics/gold/parentVariety

• Sorry, OOPS! has no suggestions for the following relationships without inverse:
http://purl.org/linguistics/gold/prefix
http://purl.org/linguistics/gold/hasLexicalItem
http://purl.org/linguistics/gold/writtenRealization
http://purl.org/linguistics/gold/hasFeature
http://purl.org/linguistics/gold/coda
http://purl.org/linguistics/gold/hasMeaning
http://purl.org/linguistics/gold/meronym
http://purl.org/linguistics/gold/hasType
http://purl.org/linguistics/gold/lexicalRelation
http://purl.org/linguistics/gold/specifier
http://purl.org/linguistics/gold/head
http://purl.org/linguistics/gold/predicate
http://purl.org/linguistics/gold/infixedIn
http://purl.org/linguistics/gold/hasForm
http://purl.org/linguistics/gold/follows
http://purl.org/linguistics/gold/translation
http://purl.org/linguistics/gold/precedes
http://purl.org/linguistics/gold/suffix
http://purl.org/linguistics/gold/subject
http://purl.org/linguistics/gold/entails
http://purl.org/linguistics/gold/hasConstraint
http://purl.org/linguistics/gold/inLanguage
http://purl.org/linguistics/gold/hypernym
http://purl.org/linguistics/gold/hasGlosses
http://purl.org/linguistics/gold/hasComplexValue
http://purl.org/linguistics/gold/hasSpecification
http://purl.org/linguistics/gold/names
http://purl.org/linguistics/gold/freeTranslation
http://purl.org/linguistics/gold/labels
http://purl.org/linguistics/gold/indirectObject
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasEntry
http://purl.org/linguistics/gold/semanticRole
http://purl.org/linguistics/gold/onset
http://purl.org/linguistics/gold/hasSourceLine
http://purl.org/linguistics/gold/constituents
http://purl.org/linguistics/gold/adjunct
http://purl.org/linguistics/gold/circumscribes
http://purl.org/linguistics/gold/entailedBy
http://purl.org/linguistics/gold/hasLexicalUnit
http://purl.org/linguistics/gold/directObject
http://purl.org/linguistics/gold/derivedForm
http://purl.org/linguistics/gold/object
http://purl.org/linguistics/gold/argument
http://purl.org/linguistics/gold/allomorph
http://purl.org/linguistics/gold/antonym
http://www.linguistics-ontology.org/bibliography/bibliography.owl#hasCitation
http://purl.org/linguistics/gold/syntacticRole
http://purl.org/linguistics/gold/hasSyntacticConstituent
http://purl.org/linguistics/gold/allophone
http://purl.org/linguistics/gold/agrees
http://purl.org/linguistics/gold/goal
http://purl.org/linguistics/gold/agent
http://purl.org/linguistics/gold/acousticRealization
http://purl.org/linguistics/gold/signedRealization
http://purl.org/linguistics/gold/literalTranslation
http://purl.org/linguistics/gold/rhyme
http://purl.org/linguistics/gold/inflectedForm
http://purl.org/linguistics/gold/realization
http://purl.org/linguistics/gold/feature
http://purl.org/linguistics/gold/patient
http://purl.org/linguistics/gold/dataStructureRelation
http://purl.org/linguistics/gold/hasGrammar
http://purl.org/linguistics/gold/nucleus
http://purl.org/linguistics/gold/hasTranslationLine
http://purl.org/linguistics/gold/synonym
http://purl.org/linguistics/gold/complement
http://purl.org/linguistics/gold/hasTerm
http://purl.org/linguistics/gold/hasProperty

Results for P20: Misusing ontology annotations. 4 cases | Minor Minor

The contents of some annotation properties are swapped or misused. This pitfall might affect annotation properties related to natural language information (for example, annotations for naming such as rdfs:label or for providing descriptions such as rdfs:comment). Other types of annotation could also be affected as temporal, versioning information, among others.

• This pitfall appears in the following elements:
http://purl.org/linguistics/gold/synonym
http://purl.org/linguistics/gold/antonym
http://purl.org/linguistics/gold/hypernym
http://purl.org/linguistics/gold/meronym

Results for P21: Using a miscellaneous class. 2 cases | Minor Minor

This pitfall refers to the creation of a class with the only goal of classifying the instances that do not belong to any of its sibling classes (classes with which the miscellaneous problematic class shares a common direct ancestor).

• This pitfall appears in the following elements:
http://purl.org/linguistics/gold/OtherSourceEvidentiality
http://purl.org/linguistics/gold/OtherThanVisualEvidentiality

Results for P30: Equivalent classes not explicitly declared. 6 cases | Important Important

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.

• The following classes might be equivalent:
http://purl.org/linguistics/gold/Copula, http://purl.org/linguistics/gold/Copulative
http://purl.org/linguistics/gold/Character, http://purl.org/linguistics/gold/Grapheme
http://purl.org/linguistics/gold/Root, http://purl.org/linguistics/gold/Stem
http://purl.org/linguistics/gold/Article, http://purl.org/linguistics/gold/Clause
http://purl.org/linguistics/gold/Dental, http://purl.org/linguistics/gold/Alveolar
http://purl.org/linguistics/gold/Connective, http://purl.org/linguistics/gold/Conjunction

Results for P34: Untyped class. 1 case | Important Important

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].

• This pitfall appears in the following elements:
http://purl.org/linguistics/gold/MorphologicalUnit

Results for P36: URI contains file extension. ontology* | Minor Minor

This pitfall occurs if file extensions such as ".owl", ".rdf", ".ttl", ".n3" and ".rdfxml" are included in an ontology URI. This pitfall is related with the recommendations provided in [9].

*This pitfall applies to the ontology in general instead of specific elements.

Results for P39: Ambiguous namespace. ontology* | Critical Critical

This pitfall consists in declaring neither the ontology URI nor the xml:base namespace. If this is the case, the ontology namespace is matched to the file location. This situation is not desirable, as the location of a file might change while the ontology should remain stable, as proposed in [12].

*This pitfall applies to the ontology in general instead of specific elements.

Results for P41: No license declared. ontology* | Important Important

The ontology metadata omits information about the license that applies to the ontology.

*This pitfall applies to the ontology in general instead of specific elements.

SUGGESTION: symmetric or transitive object properties. 9 cases

The domain and range axioms are equal for each of the following object properties. Could they be symmetric or transitive?
http://purl.org/linguistics/gold/orderingRelation
http://purl.org/linguistics/gold/hasMorphologicalConstituent
http://purl.org/linguistics/gold/geneticallyRelated
http://purl.org/linguistics/gold/mutuallyIntelligible
http://purl.org/linguistics/gold/morphologicalRelation
http://purl.org/linguistics/gold/hasSyntacticConstituent
http://purl.org/linguistics/gold/hasConstituent
http://purl.org/linguistics/gold/ancestorVariety
http://purl.org/linguistics/gold/parentVariety


According to the highest importance level of pitfall found in your ontology the conformace bagde suggested is "Critical pitfalls" (see below). You can use the following HTML code to insert the badge within your ontology documentation:


Critical pitfalls were found
<p>
<a href="http://oops.linkeddata.es"><img
	src="http://oops.linkeddata.es/resource/image/oops_critical.png"
	alt="Critical pitfalls were found" height="69.6" width="100" /></a>
</p>


References:

  • [1] Aguado-De Cea, G., Montiel-Ponsoda, E., Poveda-Villalón, M., and Giraldo-Pasmin, O.X. (2015). Lexicalizing Ontologies: The issues behind the labels. In Multimodal communication in the 21st century: Professional and academic challenges. 33rd Conference of the Spanish Association of Applied Linguistics (AESLA), XXXIII AESLA.
  • [2] Noy, N. F., McGuinness, D. L., et al. (2001). Ontology development 101: A guide to creating your first ontology.
  • [3] Gómez-Pérez, A. (1999). Evaluation of Taxonomic Knowledge in Ontologies and Knowledge Bases. Proceedings of the Banff Knowledge Acquisition for Knowledge-Based Systems Workshop. Alberta, Canada.
  • [4] Montiel-Ponsoda, E., Vila Suero, D., Villazón-Terrazas, B., Dunsire, G., Escolano Rodríguez, E., Gómez-Pérez, A. (2011). Style guidelines for naming and labeling ontologies in the multilingual web.
  • [5] Vrandecic, D. (2010). Ontology Evaluation. PhD thesis.
  • [6] Gómez-Pérez, A. (2004). Ontology evaluation. In Handbook on ontologies, pages 251-273. Springer.
  • [7] Rector, A., Drummond, N., Horridge, M., Rogers, J., Knublauch, H., Stevens, R., Wang, H., and Wroe, C. (2004). Owl pizzas: Practical experience of teaching owl-dl: Common errors & common patterns. In Engineering Knowledge in the Age of the Semantic Web, pages 63-81. Springer.
  • [8] Hogan, A., Harth, A., Passant, A., Decker, S., and Polleres, A. (2010). Weaving the pedantic web. In Proceedings of the WWW2010 Workshop on Linked Data on the Web, LDOW 2010, Raleigh, USA, April 27, 2010.
  • [9] Archer, P., Goedertier, S., and Loutas, N. (2012). D7. 1.3-study on persistent URIs, with identification of best practices and recommendations on the topic for the Mss and the EC. PwC EU Services.
  • [10] Bernes-Lee Tim. (2006). “Linked Data - Design issues”. http://www.w3.org/DesignIssues/LinkedData.html
  • [11] Heath, T. and Bizer, C. (2011). Linked Data: Evolving the Web into a Global Data Space. Morgan & Claypool, 1st edition.
  • [12] Vatant, B. (2012). Is your linked data vocabulary 5-star?. http://bvatant.blogspot.fr/2012/02/is-your-linked-data-vocabulary-5-star_9588.html

Please, help us making OOPS! better. Feedback is more than welcome!
In addition, you can also suggest new pitfalls so that they can be detected in future evaluations.

Want to help?

Documentation:

Related papers:

Web services:

Developed by:

OEG logo