Multiple in-memory input documents... 2005-10-14 - By Brian Minchau
Chris, As indicated by Robert, if you want to handle the resolution of URIs to Source you need to implement URIResolver and call the setURIResolver() method, probably on your Transfomer object.
This is fine for any processor that implements the JAXP APIs, which is a standard. You will get problems for processors that don't implement the JAXP APIs.
- - - - - A few words of advice: - Set the system ID (i.e. URI) of any Source object that your URIResolver returns - The URI of the Source object you return is something you form from both the base and href URI values passed to its resolve method, the href may be either relative to the base, or if it is absolute. Do the appropriate logic in your code to set the appropriate URI on the Source object you return.
- Brian - - - - - - - - - - - - - - - - - - - - Brian Minchau XSLT Development, IBM Toronto e-mail: minchau@(protected)
"Robert Houben" <Robert.Houben@(protected) sionware.net> To "Chris Scott" 10/13/2005 09:45 <scott.chris@(protected)>, PM <xalan-j-users@(protected)> cc Subject RE: Multiple in-memory input documents...
You can define your own URIResolver class. That's what I did. Keep in mind that you are then using a non-standard extension, and other processors will fail when they encounter "dom:" in the URL.
-----Original Message----- From: Chris Scott [mailto:scott.chris@(protected)] Sent: Thursday, October 13, 2005 12:59 PM To: xalan-j-users@(protected) Subject: Multiple in-memory input documents...
Forgive me if this had been discuss before.
I'd like to be able to access multiple in-memory documents (ie DOM) via the document function. Something like document('dom://input2') or the like. I was wondering if there was some extention or vodoo magic in order to accomplish this.
I found a post at http://www.xslt.com/html/xsl-list/2002-09/msg00644.html outlining possible implementation choices, but since it's been three years since this post, I though I'd ask around.
Is there, at present, any predefined way to do this, or am I stuck writing an extention.
Thanks,
~Chris
|
|