[jdom-interest] CDATA sections?
bob
bob at werken.com
Fri Jun 2 12:53:22 PDT 2000
> In my exploratory cocoon usage, almost all of my XML files
> use CDATA to contain HTML or WML fragments. These files are
> transformed via XSL into HTML or WML streams where "<" and
> "<" are absolutely not equivalent.
If they are well-formed XML, can you not make that element
holding these fragments as taking 'any'? No point in wrapping them
with a CDATA. (Then again, I'm not especially good at DTDs...)
For your use-case
<MyFragment>
<b>some well-formed, but <i>fairly ignored</i> xml-ish stuff</b>
</MyFragment>
If the stuff within <MyFragment> is well-formed, then jdom
can still parse it in absence of a dtd/schema, and give you
a tree.
To output it as SAX events, take <MyFragment>, wrap in a
Document, and output it. (Or, use the currently non-existent
DocumentFragment...)
But I also might be making an over-assumption that you have
well-formed XML as your fragments of HTML/WML.
But if they are well-formed, I don't think you need a CDATA.
> It might be informative to conduct a quick inventory of
> users' XML data. How often do CDATA sections occur? If
> they are prevalent, as I suspect they are, then it tends to
> put CDATA on the 80 side of the 80/20 razor.
I personally avoid them, since they can't hold absolutely
any set of bytes (that pesky end-of-CDATA marker keeps you
from holding CDATA-containing XML in a CDATA section, without
some crufy escapage).
fwiw, if I find myself thinking 'hey, I need to use a CDATA',
I'll typically punt, and use a reference/link to yet-another
resource. But I'm also dealing with binary data, and like
my bytes MIME wrapped.
-bob
More information about the jdom-interest
mailing list