XSLT-获取节点组的最大子节点数
是否有可能在所有子节点中获得最大的孙子节点,而不通过它们循环?在下面的示例中,有四个文档节点,分别有4、5、1和2个值节点。理想情况下,我希望返回5作为表达式/函数的答案 不在XSLT2.0中循环或使用xpath,这是可能的吗 XML:XSLT-获取节点组的最大子节点数,xslt,xpath,Xslt,Xpath,是否有可能在所有子节点中获得最大的孙子节点,而不通过它们循环?在下面的示例中,有四个文档节点,分别有4、5、1和2个值节点。理想情况下,我希望返回5作为表达式/函数的答案 不在XSLT2.0中循环或使用xpath,这是可能的吗 XML: <File> <Document> <Value>..</Value> <Value>..</Value> <Value>
<File>
<Document>
<Value>..</Value>
<Value>..</Value>
<Value>..</Value>
<Value>..</Value>
</Document>
<Document>
<Value>..</Value>
<Value>..</Value>
<Value>..</Value>
<Value>..</Value>
<Value>..</Value>
</Document>
<Document>
<Value>..</Value>
</Document>
<Document>
<Value>..</Value>
<Value>..</Value>
</Document>
</File>
..
..
..
..
..
..
..
..
..
..
..
..
假设文件
元素是当前上下文项,您可以使用
max(Document/count(Value))
Document/count(Value)
为您提供一个整数序列(每个Document
的Value
子级数),max
从该序列中选择最大值。您可以使用max(/File/Document/count(*)
我错过了一个节点。但是如果所有的值节点都被一个节点包围
我可以直接调用max(Document/count(node/value))
?@iswinky是的,这样就可以了。如果对于单个路径表达式来说太复杂,您可以使用显式的序列理解操作(对于文档返回中的$d…
)