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. 1 case | 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://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Object

Results for P07: Merging different concepts in the same class. 1 case | Minor Minor

A class whose name refers to two or more different concepts is created.

• This pitfall appears in the following elements:
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#DateAndTime

Results for P08: Missing annotations. 91 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:label or rdfs:comment (nor skos:definition) defined:
http://www.opengis.net/ont/gml#Point
http://www.opengis.net/ont/gml#Surface
http://www.opengis.net/ont/gml#OrientableSurface
http://www.opengis.net/ont/gml#OrientableCurve
http://www.opengis.net/ont/gml#AbstractGeometricPrimitive
http://www.opengis.net/ont/gml#AbstractGeometry
http://www.opengis.net/ont/gml#Curve
http://www.opengis.net/ont/gml#GeometricComplex
http://www.opengis.net/ont/gml#Solid

• The following elements have neither rdfs:comment or skos:definition defined:
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#SpatialTemporalExtent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#GeographicDescription
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#VerticalExtent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#TemporalExtent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#GeographicExtent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#Extent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#BoundingPolygon
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#GeographicBoundingBox
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#OrientableSurface
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#OrientablePrimitive
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#OrientableCurve
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Solid
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Aggregate
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Surface
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Curve
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Point
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Object
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Node
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Calendar
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#OrdinalPosition
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#TopologicalPrimitive
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Complex
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#ClockTime
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Clock
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#OrdinalEra
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#CalDate
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#ReferenceSystem
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#TemporalPosition
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Coordinate
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#DateAndTime
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#OrdinalReferenceSystem
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#TopologicalComplex
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Period
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Edge
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#CoordinateSystem
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#GeometricPrimitive
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Instant
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#GeometricComplex
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Primitive
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#verticalElement
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#verticalCRS
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#temporalElement
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#spatialExtent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#polygon
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#geographicIdentifier
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#geographicElement
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#extent
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#upperCorner
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#srs
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#position
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#lowerCorner
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#boundingBox
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#ordinalValue
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#endedBy
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#component
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#member
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#temporalPosition
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#group
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#begunBy
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#complex
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#topology
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#geometry
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#name
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#primitive
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#time
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#date
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#domainOfValidity
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#previousEdge
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#system
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#nextEdge
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#westBoundLongitude
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#southBoundLatitude
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#northBoundLatitude
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#minumumValue
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#maximumValue
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#extentTypeCode
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#eastBoundLongitude
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#description
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#coordinates
http://def.seegrid.csiro.au/isotc211/iso19150/-2/2012/basic#tvalue
http://def.seegrid.csiro.au/isotc211/iso19150/-2/2012/basic#ttag
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#value

Results for P11: Missing domain or range in properties. 14 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://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#measure
http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#uom
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#name
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#temporalPosition
http://def.seegrid.csiro.au/isotc211/iso19150/-2/2012/basic#valueAssignment
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#boundingBox
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#position
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#srs
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#geographicIdentifier
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#verticalCRS
http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#ordinates
http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#value
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#value
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#coordinates

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 P12: Equivalent properties not explicitly declared. 1 case | Important Important

The ontology lacks information about equivalent properties (owl:equivalentProperty) in the cases of duplicated relationships and/or attributes.

• The following attributes could be defined as equivalent:
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#value, http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#value

Results for P13: Inverse relationships not explicitly declared. 25 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.

• This pitfall appears in the following elements:
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#verticalElement
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#verticalCRS
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#temporalElement
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#spatialExtent
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#polygon
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#geographicIdentifier
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#geographicElement
http://def.seegrid.csiro.au/isotc211/iso19115/2003/extent#extent
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#upperCorner
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#srs
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#position
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#lowerCorner
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#boundingBox
http://def.seegrid.csiro.au/isotc211/iso19150/-2/2012/basic#valueAssignment
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#ordinalValue
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#temporalPosition
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#frame
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#name
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#time
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#date
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#domainOfValidity
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#previousEdge
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#nextEdge
http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#uom
http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#measure

Results for P30: Equivalent classes not explicitly declared. 3 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://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#Mass, http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#Volume
http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#Length, http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#Distance
http://www.opengis.net/ont/gml#Point, http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#Period, http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Point

Results for P31: Defining wrong equivalent classes. 1 case | Critical Critical

Two classes are defined as equivalent, using owl:equivalentClass, when they are not necessarily equivalent.

• The following classes might not be equivalent:
http://def.seegrid.csiro.au/isotc211/iso19107/2003/geometry#Object, http://www.opengis.net/ont/gml#AbstractGeometry

Results for P34: Untyped class. 10 cases | 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://www.opengis.net/ont/gml#OrientableSurface
http://www.opengis.net/ont/gml#Surface
http://www.opengis.net/ont/gml#OrientableCurve
http://www.opengis.net/ont/gml#Curve
http://www.opengis.net/ont/gml#GeometricComplex
http://www.opengis.net/ont/gml#Solid
http://www.opengis.net/ont/gml#AbstractGeometricPrimitive
http://www.opengis.net/ont/gml#Point
http://www.opengis.net/ont/gml#AbstractGeometry
http://purl.org/vocommons/voaf#Vocabulary

Results for P35: Untyped property. 1 case | Important Important

An ontology element is used as a property without having been explicitly declared as such using the primitives rdf:Property, owl:ObjectProperty or owl:DatatypeProperty. This pitfall is related with the common problems listed in [8].

• This pitfall appears in the following elements:
http://www.w3.org/2004/02/skos/core#hasTopConcept

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. 2 cases

The domain and range axioms are equal for each of the following object properties. Could they be symmetric or transitive?
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#member
http://def.seegrid.csiro.au/isotc211/iso19108/2002/temporal#group


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