Re: [xsl] Implementing XPointer Resolution With saxon:evaluate()

Subject: Re: [xsl] Implementing XPointer Resolution With saxon:evaluate()
From: "W. Eliot Kimber" <eliot@xxxxxxxxxx>
Date: Wed, 14 Aug 2002 11:33:40 -0500
Jeni Tennison wrote:

> or (if you want to be able to handle multiple points), rejig the code
> so that you use recursion to collect together all the nodes that you
> want to return from the function.

Ok, I'm feeling a bit dim here, but we've puzzled on this a bit and
can't see a way to solve this problem using recursion in the context of
XSLT-based implementation because we don't see a way to append to a node
list within the scope of a func:result element--there is no way to
simply call a function in order to get its value (copy-of isn't the
correct semantics). 

That is, I would expect to be able to do something like this:

<func:function name="xindrf:resolve-xpointer">
<func:result>
  <xsl:for-each select="$direct-result-set">
    <xsl:choose>
      <xsl:when test="self::xindr:indirector":>
    	<xsl:get-node-set select="xindrf:resolve-xpointer(.)"/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:get-node-set select="."/>
      </xsl:otherwise>
  </xsl:for-each>
</func:result>
</func:function>

This would have the effect of constructing the node set I want, but
without "get-node-set" I don't see a way to do it.

What have I missed?

Thanks,

E.
-- 
W. Eliot Kimber, eliot@xxxxxxxxxx
Consultant, ISOGEN International

1016 La Posada Dr., Suite 240
Austin, TX  78752 Phone: 512.656.4139

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


Current Thread