RE: [xsl] Returning a document fragment from Xalan extension function

Subject: RE: [xsl] Returning a document fragment from Xalan extension function
From: Joseph Kesselman <keshlam@xxxxxxxxxx>
Date: Wed, 11 Jun 2003 09:05:47 -0400



This might be a better question for Xalan's mailing list, and this may
differ from Xalan-J to Xalan-XSLTC to Xalan-C, but...

The return types from Xalan-j extension functions, and how they're
interpreted, are described at http://xml.apache.org/xalan-j/extensions.html
under "return values".  If your extension passes back an object that
implements org.w3c.dom.DocumentFragment, Xalan-J should iterpret it as a
Result Tree Fragment. If you pass back other DOM types, they will be
interpreted as Node Sets.

In XSLT 1.0, Node Sets and Result Tree Fragments are different datatypes
(though that distinction is expected to go away in XSLT 2.0, as "temporary
trees" replace both). So depending on what you want to do with the returned
value, you may need to use an extension function to convert one to the
other. The EXSLT node-set() function is the closest thing to a portable
solution currently available, and Xalan does support it, or you can use
Xalan's own nodeset() function. See
http://xml.apache.org/xalan-j/extensionslib.html#nodeset for some
documentation.

Hope that helps to get you pointed in the right direction...

______________________________________
Joe Kesselman, IBM Next-Generation Web Technologies: XML, XSL and more.
"The world changed profoundly and unpredictably the day Tim Berners Lee
got bitten by a radioactive spider." -- Rafe Culpin, in r.m.filk


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


Current Thread