> This is an interesting interpretation, but it requires some
> clarification:
Hey, I like that: a polite way of saying "You're all wet."
> 1. There is no such thing as a "CDATA element"
A mere blunder for "CDATA section".
> [A] CDATA section['s]
> contents are equivalent to character data (see clause 2.7).
You're kicking the ball through your own goalposts here. Clause
3.2.1 says:
# [E]lement content [...] must contain only child elements
# (no character data), optionally separated by white space
# (characters matching the nonterminal S).
So if CDATA sections are equivalent to character data, they are
unequivocally forbidden. Only whitespace is permitted. To suppose
otherwise is to suppose that CDATA sections with whitespace are
allowable anywhere that whitespace is allowable, which is absurd:
"<FOO<![CDATA[ ]]>bar=baz>" anyone?
(I realize this argument may prove too much, and exclude the
whitespace/empty entity references as well.)
> Presumably, because of #1, the rule in clause 2.10 that "an XML
> processor must always pass all characters in a document that are
> not markup through to the application" applies here.
I take that merely to mean that none of the content of the CDATA
section can be elided, not that the parser is forbidden to mark
content coming from a CDATA section as such.
> [A]ll of the contents must match the production Char [2],
Picky, picky, picky. *Everything* in a parsed entity must match
the production Char, no?
-- John Cowan http://www.ccil.org/~cowan cowan@ccil.org You tollerday donsk? N. You tolkatiff scowegian? Nn. You spigotty anglease? Nnn. You phonio saxo? Nnnn. Clear all so! 'Tis a Jute.... (Finnegans Wake 16.5)