[erlang-questions] beginner: xmerl:export_simple/2 wihtout changing > into >
Richard A. O'Keefe
Fri Feb 14 04:17:58 CET 2014
On 14/02/2014, at 12:32 PM, Carsten Bormann wrote:
>> Not many people are aware of the illegality of ]]> in plain
>> text. None of the XML parsers I use is aware of it. But it
>> has always been illegal according to the XML specifications.
> If you know about CDATA sections, you should have made that conclusion…
> I would be very wary of an XML tool that doesn’t implement them.
> $ echo '<foo> ]]> </foo>' | xmllint -
> -:1: parser error : Sequence ']]>' not allowed in content
> <foo> ]]> </foo>
]]> is used to close CDATA sections.
When there _isn't_ any CDATA section,
there's no good reason for ]]> to be reserved.
It just is.
As it happens, I know very well, as my messages have made clear,
that ]]> is reserved; but since there is no obvious reason why
it should be, and since it is a pretty rare sequence, other
people aren't always aware of that.
And they should never have had to be.
Let's face it, > is _also_ used to close something,
but > is *not* reserved in SGML or XML text.
By the way, when I try that example xmllint, I get
-:1: parser error : internal error: detected an error in element content
-:1: parser error : Extra content at the end of the document
(o)nsgmls also warns about this, but as I wrote,
the parsers I normally use -- as they are much faster --
happen to be silent about this.
More information about the erlang-questions