This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: Implementing XPointer Resolution With saxon:evaluate()
- From: "Dion Houston" <dionh at microsoft dot com>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Tue, 13 Aug 2002 14:38:45 -0700
- Subject: RE: [xsl] Implementing XPointer Resolution With saxon:evaluate()
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hi Eliot:
It'd be eminently helpful to have your XML here, but I see some issues
already with some of the things you've done:
<xsl:text>ID of ultimate target: </xsl:text>
<xsl:variable name="members">
<xsl:call-template name="resolve-xpointer"/>
</xsl:variable>
<xsl:for-each select="$members">
In this case, your variable "members" is calling a specific template.
In this case, the result is an RTF, and therefore you cannot do a
for-each. You will need to use your favorite RTF->Nodeset function to
be able to iterate through this.
For your other question:
<xsl:for-each select="$direct-result">
<xsl:choose>
<xsl:when test="xindr:indirector">
<!-- Never gets here -->
The reason for this one is that the _context_ node as you indicate at
the when element is xindr:indirector. Keep in mind that your test here
translates to:
<xsl:when test="child::xindr:indirector">
Therefore it is looking to see if your xindr:indirector element has a
child which is also xindr:indirector. Probably what you want is:
<xsl:when test="self::xindr:indirector">
Otherwise, please pass a few more details. Looks like you're doing
interesting things!
Dion
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list