- From: Ian Hickson <ian@hixie.ch>
- Date: Thu, 14 Jun 2007 23:51:11 +0000 (UTC)
On Thu, 2 Nov 2006, Henri Sivonen wrote: > The spec says: > > The rules for parsing XML documents (and thus XHTML documents) into DOM > > trees are covered by the XML and Namespaces in XML specifications, and are > > out of scope of this specification. > > However, the spec says the following about the id attribute: > > > If the value is not the empty string, user agents must associate the element > > with the given value (exactly) for the purposes of ID matching (e.g. for > > selectors in CSS or for the getElementById() method in the DOM). > > [...] there is a piece of code somewhere between the XML processor and > the resulting DOM tree that is analogous to an xml:id processor and that > assigns IDness to attributes that are not in a namespace, have the local > name "id" and belong to elements in the XHTML namespace. Right, that piece of code is the XHTML UA. Is that a problem? Why would the rules resulting from HTML element semantics have to be dealt with by the lower level layers? > The second quote implies that the first quote is not the full story and > building a DOM tree from an XHTML document byte stream is not entirely > covered by the XML and Namespaces in XML specifications [...] "Not entirely" is a polite way of putting it. There's a huge gaping whole between the XML spec and the DOM spec, with no actual definition anywhere that says how you get from one to the other -- there's no equivalent of the HTML parser spec for XML/DOM. It's only because for most things there's an "obvious" mapping that the implementations are interoperable, IMHO. This is one reason why I've punted on defining document.write() for XML -- without a strict parser spec that defines at which stage the DOM is updated, there's no clear definition of how you insert things into the parser's input stream, for example. -- Ian Hickson U+1047E )\._.,--....,'``. fL http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
Received on Thursday, 14 June 2007 16:51:11 UTC