DOM WG Issues with XML Query 1.0 XPath 2.0 Data Model


1. Different Data Models in W3C

a.  Shouldn't the XPath Data Model formally Extend the Infoset for inclusion of the PSVI subset it adds?

b.  The XPath data model seems to be subsetting the Infoset by not supporting significant attributes of the Infoset such as attribute specified, attribute type, etc. as well as others where the mapping seems not direct enough.

c.  It is confusing how the abstract accessors and constructors might affect this data model.

d.  How do the XML Infoset,  PSVI, and the XPath Data Model fit together?  How do they affect other specifications with overlapping functionality and requirements?  We recognize that this is an issue that is general to W3C, and one that perhaps should be raised to a body such as the TAG involving other working groups with a stake in this common data model, which were not permitted to have direct involvement in the XPath Data Model task force.

2. The style of the XPath Data Model specification

The XPath data model goes beyond the Infoset style of defining pure data by defining abstract costructors and accessors.  While the specification seems to be clear that all of the accessors/constructors with "dm" prefix are abstract, not part of the concrete XPath APIs, we find that defining a data model using abstract operations (never to be used?) is extremely misleading.

a.  Constructors.  The presence of constructors seems to imply that there are specific rules and constraints on how the processors should create objects.  Is this the intention of the WG?  If not, then the constuctors should not be part of the specifications.  If so, then perhaps some other form of expressing these constraints would be more suitable and cause less confusion than the functional notation that has been chosen.  If the functional constraints are to be taken literally, then there are numerous issues with the way they have been described here, including but not limited to lots of exception cases where the allowed arguments would seem to produce results inconsistent with the stated constraints of the data model, the fixup of namespaces, the copying of all the hierarchies received as input arguments, etc.

b.  We suggest that the XPath Data Model should use styles used by either XML Schema or Core (XML Infoset) groups, defining {properties} instead of accessors.  Only new properties should be defined in the XPath Data Model (i.e. {node type}). The existing ones (the ones defined in the Infoset and PSVI) should be just referenced (i.e. dm:base-uri).