This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Problem with document() function
> <xsl:variable name="data" select="document('contact1.xml')"/>
Yes, with this expression you get the whole document. But you can restrict
the returned nodeset already here.
<xsl:variable name="data" select="document('contact1.xml')/root_elem"/> for
example. So multiple times working on this nodeset would be faster. In this
case not very much, because only the root_elem will not be returned, but you
can restrict it still more of course.
> And also:
>
> <xsl:value-of select="$data/*//organization"/>
> ^
> (to find nested contact info)
>
> It works, but still I'm not sure how to read the XPath expression
> "$data/*//organization". In particular, I'm not yet sure what the '*' adds
> to it. Since '$data' returns the document (starting from the root node I
> assume), it seems logical that only the '//' + [element name] should be
able
> to return the content from any element.
>
> Regards,
>
> Gustaf Liljegren
This means also that the root_elem will not be tested, if it is
'organization'. Only the descendants of the root_elem will be tested.
And be aware: <xsl:value-of select="$data/*//organization"/> returns only
the content of the first occurence of organization in contact1.xml!!
Joerg
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list