RE: xml to xml identity transforms, and reading the DTD

Subject: RE: xml to xml identity transforms, and reading the DTD
From: "DuCharme, Robert" <Robert.DuCharme@xxxxxxxxxx>
Date: Thu, 8 Jun 2000 18:49:09 -0400
>> XML parser is required to pass along an element's attribute values, and
>> various places to look for them (the start tag, the element type's
>> list declaration), but isn't required to report where it found them
>understood. so I need a parser which does NOT read the DTD to that
>depth, and that solves my problem, surely? 

Actually, they're all required to read it to that depth, unless the
attribute declarations are in an external subset or in entities referenced
by external parameter entities, which is a different issue (see below). Some
people think that an XML parser that merely checks for well-formedness can
completely ignore the DTD, but this isn't true, and supplying default
attribute values to the application using the parser is one of the
responsibilities of all XML parsers. See 5.1 of the XML spec
(, especially the last paragraph.

>> values substituted for the references": you're looking for a way to
>> the parser from doing something that it's required to do by the XML spec,
>a non-validating parser is surely not required to read the DTD itself?
>just the subset, I thought?

As the referenced spec paragraph indicates, just the internal subset. You
originally mentioned 

>You will say "remove the DOCTYPE", but thats a bore. And I might need a
>DTD subset.

When doing an XSLT identity transformation (I wanted to throw that in to
keep this thread from straying too far away from XSL) what would you want a
parser to do with DTD declarations if you don't want it to do the tasks
listed in 5.1 of the XML spec? Whatever they are, moving the parts of the
DTD that you need into an internal subset and the parts you don't need into
an external subset sounds pretty headache-inducing. 

Bob DuCharme           <bob@>  "The elements be kind to thee, and make thy
spirits all of comfort!" Anthony and Cleopatra, III ii

 XSL-List info and archive:

Current Thread