CharData and escaping ]]>
Liam Quin
liamquin at interlog.com
Tue Dec 16 17:43:31 GMT 1997
Michael Kay at ICL wrote:
> If we assume that most XML will be software-generated, then it
> appears the only purpose of CDATA is to allow the software-writer
> to copy in a chunk of text without bothering to convert the <'s and
> &'s to < and &. But since he still has to check for any "]]>"
> in the text, and has no clear course of action if he finds one,
> it's not at all clear that it achieves this aim.
I'd say firstly that if you are writing software that works a character
at a time, it is generally easier to avoid CDATA marked sections and to
escape every < and & directly. If you use a marked section, you need up
to 3 characters of lookahead, and you need to make sure that all of the
following sequences pass through unscathed:
]]]]]]]]]]]
]>
a]b]]c]]]d
Secondly, the simplest way to escape ]]> is to insert a Unicode
zero-width non-printing non-combining space between the ] and the >.
This might be a pain for some applications, though.
> In practice I will just get round it by escaping all my >'s
> as well as my <'s.
That's what I would do too.
Lee
--
Liam Quin -- the barefoot typographer -- Toronto
lq-text: freely available Unix text retrieval
IRC: Learn about XML/SGML/XSL/XLL/DSSSL on irc.dragonnet.org in #xml
email address: l i a m q u i n, at host: i n t e r l o g dot c o m
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list