2012-05-27 38 views
1

从天气饲料我在XSLT片段得到这个元素:XMl newbie - 如何从其他XML返回特定元素?

<xsl:value-of select="data/current_condition/weatherCode"/> 

这例如返回一个数122

我有另一种XML,它列出了天气代码的细节例如为:

<condition> 
<code>122</code> 
<description>Overcast</description> 
<day_icon>wsymbol_0004_black_low_cloud</day_icon> 
<night_icon>wsymbol_0004_black_low_cloud</night_icon> 
</condition> 
<condition> 
<code>119</code> 
<description>Cloudy</description> 
<day_icon>wsymbol_0003_white_cloud</day_icon> 
<night_icon>wsymbol_0004_black_low_cloud</night_icon> 
</condition> 

那么,如何动态获取例如代码122的描述,图标等?

+0

因此,您希望单个XSLT样式表能够处理两个XML文档,对吗?将第一个XML文档和您的XSLT配合使用会更有用。 – Borodin

回答

1
<xsl:variable name="weather_desc" select="document('2.xml')/root"/> 

<xsl:variable name="weather_code" select="data/current_condition/weatherCode"/> 
<xsl:value-of select="$weather_desc/condition[code=$weather_code]/description"/> 
+0

Borodin - 是的,我想要一个XSLT样式表来处理两个XML文档。熊猫34 - 非常感谢 - 明智的回答(我必须删除'/ root',否则是一个完美的回应)。非常感谢。 – webewitch