Re: XML Schema for OWL/XML

Ok, here's an example of what I *think* but am not *sure* needs  
changing.

The current schema makes heavy use of element groups. For example:

<xsd:group name="ClassAxiom">
   <xsd:choice>
     <xsd:element ref="owl:SubClassOf"/>
     <xsd:element ref="owl:EquivalentClasses"/>
     <xsd:element ref="owl:DisjointClasses"/>
     <xsd:element ref="owl:DisjointUnion"/>
   </xsd:choice>
</xsd:group>

Now, suppose you had an ontology and you wanted to retrieve all the  
ClassAxioms. It seems like you should be able to just query for  
"ClassAxiom". That information is in the schema!

But because ClassAxiom is a group and not a type, I *believe* that you  
have to query with the disjunction of the elements instead of just the  
group name.

I'm not 100% sure of this. What I do know is that you can query in  
Schema Aware XPath for the supertype in an XML schema and get the  
subtypes (or the elements matching that supertype). With the current  
XML Schema, I have not yet managed to get that effect and have some  
reason to believe that it's impossible.

(One might be able to work around this with functions in XQuery and  
XSLT, but at quite a bit of cost. My personal first move would be to  
rewrite the schema and then use that instead of the normative one.)

I further suspect that groups would prevent the automatic generation  
of nice type hierarchies from the schema using standard techniques.

So, my basic LC comment would be to restructure the XML Schema to be  
amenable to such techniques (while recognizing the same set of  
documents). I'd be willing to consider this an editorial change, but I  
think it'd be hard to argue.

If I'm wrong about groups, then there's no problem :)

Cheers,
Bijan.

Received on Friday, 23 January 2009 23:31:45 UTC