Second version of a DOM2 XInclude parser for cocoon. This revision
should support the bulk of the 2000-07-17 version of the XInclude working
draft. Notably excluded is inclusion loop checking
(section 3.2.1). Note
also that included namespaces may not be handled properly
(section 3.2.2) -
I'd love feedback on this. Namespaces are simple - but the DOM2 (and SAX2)
methods for interacting with them aren't. Finally, note that the order of
include element processing as noted in
section 3.1 is not
correct - internal xpointer links are not necessarily resolved against
the original source document. I haven't figured out a good way to resolve
that without cloning the entire source document first, which would be
a terrible wasteful of memory.
Returns false if the requested resource hasn't changed, true
otherwise. This method is called by the cache system to
ensure the validity of the cached response. It is the
producer responsibility to provide the fastest possible
implementation of this method or, whether this is not
possible and the costs of the change evaluation is
comparable to the production costs, to return
true directly with no further delay, thus reducing
the evaluation overhead to a minimum.
This method is guaranteed to be called after at least
a single call to any production methods getStream or getDocument.
The context is the trigger of the changeable point and may
differ between implementations.