RE: [xsl] Using document()

Subject: RE: [xsl] Using document()
From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx>
Date: Fri, 11 Oct 2002 10:24:34 +0100
> > So it makes sense to me that URIResolver would only return the 
> > document, not the fragment.
> 
> But in your resolver you could trigger a process (SaxFilter?) 
> that returns you the fragment.
> 
> if # exists then
>   get the document
>   get the id'd section
>   return as a Source to the transformation.
> 

If the fragment identifier were passed to the URIResolver, then the
URIResolver could do this. What it could not do, at all easily, would be
to ensure that

  document("a.xml#john")

and

  document("a.xml#mary")

returned two nodes in the same tree. This is because there is no way of
knowing whether the XSLT processor will use a DOMSource "in situ", or
copy it. In the case of Saxon, and I suspect other processors too, the
decision whether to copy depends on what DOM implementation you are
using.

Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread