Hello,
I'm trying to look for the starting element of nodes in another document, store the results of what I find in an xsl:variable and then use the information in the $results variable (get the values of various attributes in the elements returned, etc.)
I can get a start element into $results but, I can't seem to use $results as a node set. I've tried using the nodeset() extension function but still can't seem to get the values of the attributes from within $results.
Does anyone have any suggestions? (Is there a better way to handle the same situation)?
TIA
PS. I've also noticed that even when there are multiple matches I only ever get the first match in document order. How come?
------------------------------------------------------------ Here's an example of what I'm trying to do:
$file contains: ... <test1 id="1"> <test2 id="2"> <test3 id="3"/> </test2> </test1> ...
xsl stylesheet fragment:
... <xsl:variable name="results"> <xsl:for-each select="document($file)//*[local-name() = $x]"> <xsl:copy> <xsl:copy-of select="@*"/> </xsl:copy> </xsl:for-each> </xsl:variable> ...
if $x = "test2"
then, in $results I get: <test2 id="2"/>
Now, I'm trying to get the value of the id attribute.
Here are the things I've tried (but all fail): <xsl:value-of select="$results/@id"/> <xsl:value-of select="exslt:node-set($results)/@id"/> <xsl:value-of select="local-name(exslt:node-set($results))/@id"/>