Lists Home |
Date Index |
Personally, I like attribute normalization. Being able to use an XPath
like @x="y" rather than normalize-space(@x)="y" save keystrokes.
In fact, for me, one of the most common problems of using using tokens
in data content is that I invariably forget to normalize-space() the data
first. This is a nasty problem, of course, because it only shows up when
certain kinds of markup is used.
Getting rid of attribute normalization is a eumphemism for getting rid of
tokens at the XML level. Tokens are useful, and they are a major use of
attributes. Arbitrary strings containing significant whitespace is a minority
use for which there is a workaround. Also, best practise I18n
says that strings-for-humans should not be marked-up as attributes; so
some of the use-cases may have a trade-off that makes them not as
Programmers who don't delimit data being serialized into text (or, as Dare
points out, use APIs to take care of this) have only themselves to blame:
it is the nature of representing text-in-text that it needs delimiting (or
escaping, or references, or formatting-conventions).
----- Original Message -----
From: "Tim Bray" <firstname.lastname@example.org>
Sent: Saturday, June 21, 2003 4:10 AM
Subject: Re: [xml-dev] Create XML
> James Clark wrote:
> > If you still think it's easy, try serializing the infoset you get from
> > this:
> > <!DOCTYPE doc [
> > <!ENTITY e "<?x y ?>">
> > ]>
> > <doc>&e;</doc>
> Which proves that *re*-serializing data sourced from XML is
> substantially harder than generating XML from scratch. Obvious when you
> think about it.
> I think I still claim that in the normal case of generating XML output
> from your internal program data, all you really need are print
> statements and an escape() function. And yes, you might as well escape
> *all* instances of <, &, ', ", and >, since this costs nothing and
> avoids potential risks.
> James is right, we screwed up in letting attribute normalization into
> XML. It still boggles my mind in retrospect that during the discussions
> back in 96-97, nobody piped up to say "why are you morons doing this?"
> Because we probably would have said "D'oh, right, lose it." Sigh.
> Cheers, Tim Bray
> (ongoing fragmented essay: http://www.tbray.org/ongoing/)
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> The list archives are at http://lists.xml.org/archives/xml-dev/
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>