- From: Bijan Parsia <bparsia@cs.manchester.ac.uk>
- Date: Fri, 23 Jan 2009 23:30:54 +0000
- To: W3C OWL Working Group <public-owl-wg@w3.org>
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