Do I need to use a validating parser?

Chris Lilley chris at
Wed May 5 15:25:39 BST 1999

"Joshua E. Smith" wrote:
> 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?

I would say "an application of XML" or "written in XML" depending on who
I was talking to.

For the language definition, if it was defined using DTD syntax, I might
say it was valid (if it was).

For a document instance, if it was well formed, then you could say it
was a "well-formed XML document"; otherwise, you would say it was

If an instance was in addition valid, then you could say that too.

> 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.

Great if there was a way to ask the browser if you could use *it's* XML
parser that it already has, huh?

> 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.

Using a DTD is a separate thing from validation. And, assuming you use
the browser cache, you only need to get it once.

> But in my reading  [XML Specification Guide: Graham, Quin, 1999], it
> appears that non-validating parsers are allowed to ignore tons of stuff.

Yes. Which means it has to occur explicitly in each document that you
create, rather than once in the DTD, thus giving you a per-download
filesize hit on your content.

> 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,
> right?

That is my understanding. 


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