Subject: RE: search other xml document from xsl
From: JAY SCHERER <jay.scherer@xxxxxxxxxx>
Date: Thu, 31 Jan 2002 09:46:13 -0600
|
Bryan,
I want to select the "value" element in the messages.xml file and it appears that we're selecting the id value in the original document. BTW, I'm using java and xalan/xerces to parse this and apparently the xpath you gave me is returning a BOOLEAN and it's expecting a NODELIST.
org.apache.xpath.XPathException: Can not convert #BOOLEAN to a NodeList!
-----Original Message-----
From: Bryan Rasmussen [mailto:bry@xxxxxxxxxx]
Sent: Thursday, January 31, 2002 9:19 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: search other xml document from xsl
-----Original Message-----
From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
[mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of JAY SCHERER
Sent: 31. januar 2002 15:50
>If I have the following xml
><root>
> <message id="foo.msg"/>
></root>
>and I want to be able to lookup the message id in another xml file from
with my xsl file,
><messages>
> <message id="foo.error" value="Hello Foo" />
> <message id="bar.msg" value="Hello Bar" />
></messages>
>I'm thought that the fragment would look something like
> <xsl:template match="message">
> <xsl:value-of
select="document('messages.xml')/message/message/@id='@id'
> </xsl:template>
<xsl:template match="message">
<xsl:param name="id" select="@id"/>
<xsl:for-each select="document('messages.xml')/messages/message/@id=$id">
<xsl:value-of select="@id"/>
</xsl:for-each>
</xsl:template>
could also apply-templates against the messages document
<xsl:apply-templates select="document('messages.xml')/messages" mode="doc"/>
for example
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|