- From: Robin Berjon <robin.berjon@expway.fr>
- Date: Thu, 19 Jan 2006 18:28:26 +0100
- To: Anne van Kesteren <fora@annevankesteren.nl>
- Cc: www-svg@w3.org
On Jan 19, 2006, at 17:55, Anne van Kesteren wrote: > It only talks about modified attribute values (in one way or > another). The same > is true for the "style" attribute in (X)HTML documents which will > after being > modified give 'unexpected' results when you do a getAttribute on > it. Initially > though it represents what is being set. And I have either misread > the above > quote or implementations are not allowed to return a modified > (normalized) > attribute value when it is not modified. I won't say that you're misreading, rather that that paragraph was born to be misread (as has been made clear by the number of LC comments on the exact same topic). I think that big blurb of text can be made a bit clearer if analysed step by step: o "The way attribute value normalization is performed by the DOM implementation depends on how much the implementation knows about the schema in use." Knowledge that an implementation (in this case an SVG UA) may have of the XML language MAY influence normalisation. This sentence is a point of contention because it does not say "Implementations MAY normalise". That being said, if you don't read it that way the last sentence quoted below does not make much sense. o "*Typically*, the value and nodeValue attributes of an Attr node initially returns the normalized value given by the parser." (my emphasis) This is typical, but not mandated behaviour. o "But this may not be the case after mutation, independently of whether the mutation is performed(...)" Mutation may or may not influence the above non-mandatory behaviour. And the contentious bit: o "On the other hand, if the implementation knows about the schema in use when the attribute value is changed, and it is of a different type than CDATA, it may normalize it *again* at that time." (my emph.) This says that such implementations can normalise *again* at the time when mutation occurs. But the $1000 question is of course, "again" after what? After initial parse. Yes, this is spec exegesis, but hey, that's job security for you :-) The bottom line however is that this paragraph (and a few others) were added explicitly so that implementations such as SVG viewers would be allowed to perform normalisation immediately. If it turns out that the DOM does not allow this, then the bug is in the DOM. I think the above shows that the functionality is indeed there, but that the DOM spec could use an erratum to clarify that paragraph (which is reproduced multiple times). Now, since you seem interested, since DOM 3 Core errata are the responsibility of the Web API WG, and since you're a member of said WG... I smell an action item. Please let us know shortly if this does not address your concerns (about SVG Tiny 1.2), -- Robin Berjon Senior Research Scientist Expway, http://expway.com/
Received on Thursday, 19 January 2006 17:28:38 UTC