#45 RDF parser ignores unintelligible triples


According to the OWL 2 specification, the "the graph G MUST be empty" after parsing an RDF graph into OWL objects. If this is not the case, the OWL object model is not defined for the input, and the input must be rejected. The OWL API seems to ignore this requirement at least in some cases.

The issue is illustrated by the OWL 2 test case http://owl.semanticweb.org/page/TestCase:WebOnt-I5.26-010 which has triples in its conclusion that do not belong to any axiom. The OWL API wrongly accepts this input and classifies it as belonging to all profiles (which cannot be right, since profiles are only specified in terms of functional-style syntax which the example ontology does not have at all).


  • Matthew Horridge

    • assigned_to: nobody --> matthewhorridge
    • status: open --> open-accepted
  • Ignazio Palmisano

    • assigned_to: matthewhorridge --> nobody
    • status: open-accepted --> open
  • Ignazio Palmisano

    This is a violation of the specs, in fact, but the API accepts a number of malformed ontologies whose errors the authors seem to know (the API recognizes those errors during validation) but are not going to change, and third prties would not be able to load such ontologies at all if we stopped accepting these inputs. I would add stricter validation for all constructs, but I don't think it would be wise to do this outside of a major release. Moving it to feature requests so we can discuss and plan it better.


Log in to post a comment.