Re: add CDATA element to an xml schema?
X. Lee wrote:
[color=blue]
> I am creating an xml schema, and I want one of the elements to include
> html text.[/color]
You mean HTML markup? In general, this is A Bad Idea. If the markup is
important, represent it in the schema. If it's not, remove it.
[color=blue]
> Therefore, I want to make that element a CDATA elements so
> that it can accept html tags as part of it's value. I'm having
> trouble doing this though. Can anyone give me a sample of how to do
> that?[/color]
You can't do this in XML. If you want to declare CDATA content you have
to use SGML instead, eg
<!element foo - - CDATA>
but even so most SGML parsers will reject any attempt to use an end-tag
inside the element.
[color=blue]
> so if this is my xml instance:
>
> <root>
> <element><!CDATA[something]]></element>
> </root>
>
> how would I create an xml schema so that my instance is valid against
> that schema?[/color]
Doing it that way (with a manually-inserted CDATA Marked Section) is fine
(except you're missing an open-square bracket before the keyword CDATA).
The instance will always be valid, because the parser will suspend the
recognition of < and & until it encounters ]]>.
///Peter
--
"The cat in the box is both a wave and a particle"
-- Terry Pratchett, introducing quantum physics in _The Authentic Cat_ |