[xsl] problem with document(concat

Subject: [xsl] problem with document(concat
From: Wolfhart Totschnig <a9507073@xxxxxxxxxxxxxxxxx>
Date: Thu, 26 May 2005 16:18:51 +0200
Hi,
I am having a problem related to the document() function and would be thankful if anyone could help me.


The xslt script I am working on serves to transform an xml file to html. The original xml file reads

...
<related>314</related>
....

which is to indicate that the current file is related to file "314.xml" in the same directory. What I would like to do is integrate the title of the referenced file into the output html. I tried the following:

...
<xsl:for-each select="related">
<xsl:value-of select="document(concat(.,'.xml'))//rdf:RDF/rdf:Description/dc:title"/>
</xsl:for-each>
...


Yet it doesn't work. When changing the content of the xml file from "314" to "314.xml" and doing
<xsl:value-of select="document(.)//rdf:RDF/rdf:Description/dc:title"/>
it works.
Furthermore, concat(.,'.xml') produces the correct string when put elsewhere, when put inside document(), however, it doesn't work.


Could anyone tell me why what I originally had in mind doesn't work? I tried to integrate the string() function in any way I could think of, use variables, nothing helped.

Thanks for your help,
Wolfhart

Current Thread