XML CDATA and escaping
October 25th, 2007 tonyg
XML’s syntax for CDATA looks like this:
<![CDATA[some text]]>
Tag syntax within a CDATA section is suspended, so this is well-formed XML:
<![CDATA[some <more> text]]>
even though it looks like the “<more>” tag is unclosed.
There’s only one thing you can’t say in a CDATA section: “]]>”. But there’s a trick to save us, even here. To print an arbitrary string in a CDATA enclosure, replace each instance of “]]>” with “]]]]><![CDATA[>”, and then put the normal “<![CDATA[”/”]]>” brackets around it:
my ]]> text
becomes
<![CDATA[my ]]]]><![CDATA[> text]]>
Entry Filed under: Technology, Water cooler, Web
1 Comment Add your own
1. Chui Tey | October 27th, 2007 at 4:16 am
I’m (pleasantly) surprised that Google Feed Reader actually formatted your post correctly!
Leave a Comment
Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>
Trackback this post | Subscribe to the comments via RSS Feed