Do I need to use a validating parser?

Joshua E. Smith jesmith at
Tue May 4 16:59:04 BST 1999

More questions from the new guy...

First, an easy one: If a language is defined in XML, you would say that
language is XML-______.  Compliant?  Derived?  ish?  ey?  Compatible?

Now the harder ones...

I'm trying to choose a parser to use in my plugin.  I see a choice between
expat, which is non-validating, and will increase my download size by
<100K, and SP which is validating, and will increase my download size by
about 1MB.  Gak.

I suppose that the validation should really be done a priori by the content
developer using a validating editor, so doing validation in my plugin is
really unnecessary.  Is that true?

Do commercial validating XML editors exist yet?

I also suppose that my DTD is going to be pretty big by the time it's done,
and downloading it every time someone wants to use my plugin is kind of
stupid.  Right?  So that's another reason NOT to use a validating parser.

I think I'm starting to understand why they went to the trouble of
distinguishing well-formed from valid.

But in my reading  [XML Specification Guide: Graham, Quin, 1999], it
appears that non-validating parsers are allowed to ignore tons of stuff.
Is there ANY documentation of what expat actually *does*?  (For that
matter, is there any documentation at all?)  I assume it ignores external
entities, right?  That means I can't rely on putting boilerplate (think C
#include files) into an external parsed general entity if I go with expat,

If you were using a programming language which is XML-ish, what XML
features would you be annoyed to see left out (substitution of entities is
an obvious one, which I've seen 3DML slammed for)?  Of those features,
which does expat not do (and therefore I'll have to do in my application,
or extend expat to do -- three cheers for open source!)?

I'd rather not have any DLLs hanging around with my plugin -- do any of you
have experience linking xmltok and xmlparse statically under Win32?  Any
surprises, or tricks I need to know about?

I have another related question, but I'll post it separately.

Thanks in advance for any insights!!!!

-Joshua Smith

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list