这是我的xml表 -
<ErrorLog_list>
<error><download_list>/home/fes/logs/ErrorLog-20111109.gz</download_list></error>
<error><download_list>/home/fes/logs/ErrorLog-20111110.gz</download_list></error>
<error><download_list>/home/fes/logs/ErrorLog-20111114.gz</download_list></error>
</ErrorLog_list>
我想要做的是创建一个指向error/download_list
所以我使用了这个标签
<a href="{ErrorLog_list/error/download_list}"><xsl:value-of select="Title"/></a><br/>
但它不起作用......
我意识到问题可能是因为它被陈述为 - xmlns attributes are not interpreted as attribute value templates
我的问题是如何更改我的命名空间以使用上述方法?任何帮助将不胜感激。
请忽略我的疏忽。 感谢
答案 0 :(得分:0)
我们应该让整个XML文档做出完整的答案,但这就是我能说的。
由于您编写了<xsl:value-of select="Title"/>
但我们看不到任何Title
元素,我想我们所处的模板规则与包含Title
且包含{的元素相匹配{1}}。
因此,当您使用属性值模板ErrorLog_list
时,您尝试使用XPath获取所有{ErrorLog_list/error/download_list}
。我想返回的节点集将与字符串值一致,因此将使用节点集的第一个值,而不是其他值。
您应该使用download_list
或制作与for-each
匹配的模板规则。如果您想避免使用属性模板值,也可以在模板规则体内使用ErrorLog_list/error/download_list
。
xsl:attribute