Re: i18n reviews of DOM 3 Core and Load&Save

On Fri, 2003-08-29 at 14:01, Philippe Le Hegaret wrote:
> > C4) Node interface, "normalize()" method: this should also perform character
> > normalization, perhaps conditional to the config of the containing Document.
> > This method's business in life is to concatenate Text nodes; concatenation
> > is one of the well-known cases that actually *produces* character
> > denormalization.  It would be silly to have a method called normalize()
> > which actually denormalizes, so any denormalizations caused by concatenation
> > should be repaired as part of the method's normal functioning.  Backward
> > compatibility can probably be addressed by making the repairs conditional on
> > xmlVersion or the config of the containing document or both.
> 
> normalize() is a DOM Level 1 method. The name is unfortunate since it
> collides character normalization but we cannot change its semantics or
> rename it. This explains the introduction of normalizeDocument(),
> instead of reusing normalize() on Document nodes. An other example of
> discrepancy with names is our namespaceURI and the [namespace name]
> Infoset property.

As an update, the following text was added on the description of the
DOMString type:
[[
If the normalization happened at load time, or the method
Document.normalizeDocument() was invoked (in both cases, the parameter
"normalize-characters" needs to be true), characters are
fully-normalized according to the rules defined in [CharModel]
supplemented by the definitions of relevant constructs from Section 2.13
of [XML 1.1]. Note that, with the exception of
Document.normalizeDocument(), manipulating characters using DOM methods
does not guarantee to preserve a fully-normalized text.
]]


Philippe

Received on Thursday, 18 September 2003 10:41:11 UTC