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
If statement 如何将XSLT与If条件和元素副本一起使用_If Statement_Xslt - Fatal编程技术网

If statement 如何将XSLT与If条件和元素副本一起使用

If statement 如何将XSLT与If条件和元素副本一起使用,if-statement,xslt,If Statement,Xslt,我有一个XSLT <xsl:copy-of select="ABCDEFG"/> 我尝试在以下情况下应用: <xsl:if test="(string(STAT)='E0001') or (string(STAT)='I0002')"> <xsl:copy-of select="ABCDEFG"/> </xsl:if> 我有多个节点:XML中的ABCDEFG和 系统当前

我有一个XSLT

<xsl:copy-of select="ABCDEFG"/>

我尝试在以下情况下应用:

<xsl:if test="(string(STAT)='E0001') or (string(STAT)='I0002')">
    <xsl:copy-of select="ABCDEFG"/>
</xsl:if>

我有多个节点:XML中的ABCDEFG和 系统当前未选择任何ABCDEFG节点 使用上述IF条件。 请让我知道如何写If条件。 还想知道如何用“NOT”代替If条件 多个“或”的

实际的输入XML是

<ABCDEFG>
   <STAT>E0001</STAT>
   <PQRS>Z000002</PQRS>
</ABCDEFG>
<ABCDEFG>
   <STAT>E0002</STAT>
   <PQRS>Z000002</PQRS>
</ABCDEFG>
<ABCDEFG>
   <STAT>I0002</STAT>
   <PQRS>Z000002</PQRS>
</ABCDEFG>

E0001
Z000002
E0002
Z000002
I0002
Z000002
XSLT之后需要的输出是

<ABCDEFG>
   <STAT>E0001</STAT>
   <PQRS>Z000002</PQRS>
</ABCDEFG>
<ABCDEFG>
   <STAT>I0002</STAT>
   <PQRS>Z000002</PQRS>
</ABCDEFG>

E0001
Z000002
I0002
Z000002
我猜(!)您希望执行以下操作:

<xsl:copy-of select="ABCDEFG[STAT='E0001' or STAT='I0002']"/>


请发布一个iSHOW输入、您在上下文中的指令和预期输出。“如何使用'NOT'而不是'multiple'OR'来编写If条件”不确定这意味着什么。请显示您的If语句的上下文。或者换言之:在哪一个匹配中,或者对于每一个,您使用这个if.michael.hor257k解决方案对我有效,使用它时不等于:对我有效!不需要IF语句。我将添加上下文以供参考