- From: Mary Fernandez <mff@research.att.com>
- Date: 10 Mar 2004 12:09:13 -0500
- To: public-qt-comments@w3.org
In the data model document, the relative document order between an element's attributes and children is not specified, which causes the definition of the following:: axis ambiguous. In XPath 1.0 (http://www.w3.org/TR/xpath#data-model), an element's attributes precede its children: "The attribute nodes and namespace nodes of an element occur before the children of the element." The above constraint is missing from the definition of document order in the XPath 2.0 data model (http://www.w3.org/TR/xpath-datamodel/#document-order): "Within a tree, document order satisfies the following constraints: 1. The root node is the first node. 2. The relative order of siblings is determined by their order in the XML representation of the tree. A node N1 occurs before a node N2 in document order if and only if the start of N1 occurs before the start of N2 in the XML representation. 3. Namespace nodes immediately follow the element node with which they are associated. The relative order of namespace nodes is stable but implementation-dependent. 4. Attribute nodes immediately follow the namespace nodes of the element with which they are associated. The relative order of attribute nodes is stable but implementation-dependent. 5. Element nodes occur before their children; children occur before following-siblings." Also the statement in point 5 above that "children occur before following-siblings" is circular: The definition of the following-sibling axis depends on document order, so the definition of document order can't depend on the following-sibling axis. Moreover, the data model should not mention axes at all as they are expressions in the XPath 2.0 language, not a construct in its data model. Mary Fernandez with help from Michael Rys and Michael Kay -- Mary Fernandez <mff@research.att.com> AT&T Labs - Research
Received on Wednesday, 10 March 2004 12:07:04 UTC