OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: XInclude vs SAX vs validation

At 9:29 AM -0700 8/21/01, David Brownell wrote:

>It's interesting that XInclude is specified as "infoset merging", which
>is a model that's very much attuned to SAX processing.  If only it
>didn't use XPointer/XPath, thereby precluding pure stream-based
>processing models!

I found another place where stream based processing is a problem. The result  infoset has to include the unparsed entities and notation information items from the included document. These would need to included in a DTD referenced from the DOCTYPE declaration. This is naturally emitted at the start of processing. However, you don't know the complete list of these things until processing is finished. I suppose you could put them in a separate document loaded as an external DTD subset, and not emit this DTD fragment until processing is finished. However, then the emitted document could not be parsed by another parser until inclusion was complete. 

Interestingly, this is even more of a problem for DOM than SAX. DOM2 does not identify notations or unparsed entities. DOM Level 3 core doesn't either, although you might be able to hack it together using Abstract Schemas. 

| Elliotte Rusty Harold | elharo@metalab.unc.edu | Writer/Programmer |
|          The XML Bible, 2nd Edition (Hungry Minds, 2001)           |
|              http://www.ibiblio.org/xml/books/bible2/              |
|   http://www.amazon.com/exec/obidos/ISBN=0764547607/cafeaulaitA/   |
|  Read Cafe au Lait for Java News:  http://www.cafeaulait.org/      | 
|  Read Cafe con Leche for XML News: http://www.ibiblio.org/xml/     |