Hi Gary-
Doh... Thought I had something here. It's nice to use the built-in
functions, though.
Thanks for your help! Things are working great.
--Jason
Gary L Peskin wrote:
>
> Jason --
>
> Just FYI, there is already such an extension function in Xalan called
> nodeset (http://xml.apache.org/xalan-j/extensionslib.html#nodeset) that
> does what you want, I think.
>
> Gary
>
> jason heddings wrote:
> >
> > Gary-
> >
> > Thanks for looking into this! I am able to use a Node in the argument
> > list and the processor does find the function. Thank you very much!
> >
> > Here's what I was able to accomplish (in case you're curious):
> >
> > I was trying to mimic the XSL 1.1 spec behavior of creating a tree
> > fragment in an XSL variable and being able to use that tree as a node
> > set (i.e. call apply-templates on it). According to XSL 1.0, you can
> > only copy that tree to the output, or use it to pass to other
> > functions. With this extension function, I am able to return a Node of
> > the fragment and call apply-templates against it.
> >
> > OK, so the only thing my extension does is:
> >
> > <java-source>
> >
> > /** Converts a DocumentFragment to a NodeSet.
> > */
> > public Node nodetree( Node frag ) {
> > return frag ;
> > }
> >
> > </java-source>
> >
> > Not terribly exciting, but it was the only way I could get it to work,
> > so it's actually very cool! Thanks again!
> > --jah
> >
> > Gary L Peskin wrote:
> > >
> > > Jason --
> > >
> > > Hi. The problem is that we don't currently support DocumentFragment as
> > > an argument in a java extension for receiving an RTF. I seem to recall
> > > that there was a good reason for this but I don't remember that reason
> > > at the moment. So, I'll do some more thinking and either come up with
> > > the reason or add in the support for the java argument being a
> > > DocumentFragment.
> > >
> > > In the meantime, can you substitute a NodeIterator or NodeList or Node?
> > > The Node will get you the first child of the DocumentFragment.
> > >
> > > Gary
> > >
> > > jason heddings wrote:
> > > >
> > > > Hello!
> > > >
> > > > I am trying to create an extension that will accept a Result Tree
> > > > Fragment as it's argument. From the Xalan Extensions doc on the site, I
> > > > gathered this is of type org.w3c.dom.DocumentFragment and I created a
> > > > method that accepts this argument. The processor is unable to find this
> > > > method, however.
> > > >
> > > > As a sanity check just to make sure that the class and method were
> > > > found, I changed the method to accept a String and it worked fine.
> > > >
> > > > <java-source>
> > > >
> > > > public String parse( DocumentFragment frag ) {
> > > > return "running parse( )" ;
> > > > }
> > > >
> > > > </java-source>
> > > >
> > > > <xsl-source>
> > > >
> > > > <xsl:variable name="tree-frag">
> > > > <new-element>
> > > > <child />
> > > > </new-element>
> > > > </xsl:variable>
> > > >
> > > > <xsl:value-of select="ext:parse( $tree-frag )" />
> > > >
> > > > </xsl-source>
> > > >
> > > > Should this work?
> > > >
> > > > Thanks in advance for any help!
> > > > --jah
> >
> > --
> >
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > \\\|/// Jason Heddings ((
> > \\ ~ ~ // 303.272.5166 (x75166) C|~~|
> > (/ @ @ /) [EMAIL PROTECTED] `__'
> > ~~oOOo~(_)~oOOo~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\\\|/// Jason Heddings ((
\\ ~ ~ // 303.272.5166 (x75166) C|~~|
(/ @ @ /) [EMAIL PROTECTED] `__'
~~oOOo~(_)~oOOo~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~