Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xslt 在xsl中读取属性值而不指定节点名称_Xslt_Xpath - Fatal编程技术网

Xslt 在xsl中读取属性值而不指定节点名称

Xslt 在xsl中读取属性值而不指定节点名称,xslt,xpath,Xslt,Xpath,我有一个xsl:variable,如下所示 <xsl:variable name="flag" select="(/node1/@attr = 1) or (/node2/@attr = 1)"/> 是否可以在不指定节点名称的情况下读取属性值?因此,我可以删除或条件。基本上,我向xslt提供了两种类型的xml,node1和node2是根节点名。使用: /*/@attr = 1 or /*/@attr = 2 contains(' 1 2 ', concat('

我有一个xsl:variable,如下所示

<xsl:variable name="flag" 
       select="(/node1/@attr = 1) or (/node2/@attr = 1)"/>

是否可以在不指定节点名称的情况下读取属性值?因此,我可以删除
条件。基本上,我向xslt提供了两种类型的xml,
node1
node2
是根节点名。

使用

/*/@attr = 1 or /*/@attr = 2
contains(' 1 2 ', concat(' ', /*/@attr, ' '))
/*/@attr = (1, 2)
如果需要消除
操作符,请执行以下操作:

/*/@attr = 1 or /*/@attr = 2
contains(' 1 2 ', concat(' ', /*/@attr, ' '))
/*/@attr = (1, 2)
在XPath 2.0(XSLT 2.0)中,这可以进一步缩写为

/*/@attr = 1 or /*/@attr = 2
contains(' 1 2 ', concat(' ', /*/@attr, ' '))
/*/@attr = (1, 2)

我有一个问题。这个/*/@attr会同时检查所有子节点的该属性,还是只检查根节点?@Mark,只检查顶部元素——这是问题中所要求的。