我已经在XSLT中处理了一些遗留代码,以便用更广泛使用的语言替换它,并且我已经找到了一些我无法找到参考的东西。
之间的区别是什么
<xsl:variable name="following_actions" as="node()*">
和
<xsl:variable name="following_actions" as="node()?">
我习惯看到星号版本给我一个符合xsl:variable
块体内指定条件的记录列表,但我不认为我已经看过了之前的问号版本。
直接相关的补救参考被愉快地接受。我相信我正在使用XSLT 2.0,FWIW。
答案 0 :(得分:1)
与正则表达式一样,?
,*
和+
指定了可选性和多样性:
node()
表示1个节点。node()?
表示0或1个节点。node()+
表示一个或多个节点。node()*
表示0个或更多节点。