I have an XML document like:
<data>
<item type="apple">
<misc>something</misc>
<appleValue>23</appleValue>
<misc2>something else</misc2>
</item>
<item type="banana">
<bananaValue>47</bananaValue>
<random>something</random>
</item>
</data>
我可以使用
doc("data.xml")/data/item
获取项目,但我需要从以Value
结尾的元素中获取文本。所以我想要得到 "23" 和 "47",但我并不一定知道元素名称,也就是说,我只知道有些元素以 Value
结尾,我不知道是 appleValue
,还是 bananaValue
等等。除非我查看type
属性并构建一个字符串。let $type := (doc("data.xml")/data/item)[1]/@type
doc("data.xml")/data/item/$typeValue
我试图表达的是最后一行,显然那不正确,但我需要查找元素,这些元素的名称基于一个变量(存储在像$type
这样的变量中)和“Value”。
有什么想法吗?我意识到这种变量元素命名方式很奇怪/不寻常/糟糕...但这就是现实,我必须处理它。