Re: how to test parsers?

> How does one test an OWL parser?  We had some discussion about this, but
> I don't remember any conclusion.  If anyone knows of a good solution,
> I'd appreciate hearing about it.
> 
> For example, a test case (WebOnt-Thing-003) says:
> 
>   <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing">
>     <owl:equivalentClass rdf:resource
>        ="http://www.w3.org/2002/07/owl#Nothing"/>
>  
> which owlapi (version 3, thanks Matthew!) converts to:
> 
>     <EquivalentClasses>
>         <Class abbreviatedIRI="owlapi:Nothing"/>
>         <Class abbreviatedIRI="owlapi:Thing"/>
>     </EquivalentClasses>
> 
> which my xslt converts back to:
> 
>   <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Nothing">
>       <owl:equivalentClass>
>          <owl:Class rdf:about="http://www.w3.org/2002/07/owl#Thing"/>
>       </owl:equivalentClass>
>    </owl:Class>
> 
> Swapped the subject and object on equivalentClass and adding the triple
> { owl:Nothing a owl:Class} are fine semantically, but it sure makes it
> hard to automate testing.  I guess one has to know the OWL semantics to
> know if the parser and serializer are correct.
> 
> As I recall, we talked about this under the subject of parser/serializer
> conformance.  Maybe my best bet is to make sure the two ontologies each
> entail each other....  Is that good enough?  Is there anything simpler I
> can do?

Of course, the mutual entailment check doesn't even work for this
particular example (which happened to be randomly chosen --
"WebOnt-Thing-003" sounded nice and simple), since the ontology being
converted is inconsistent.

But I guess we don't really need to worry about this case.  If the
parsers work for consistent ontologies, they'll probably work for
inconsistent ones.

     -- Sandro

Received on Thursday, 30 July 2009 14:19:38 UTC