xslt 选择不属于列表的一部分
xslt choose when not part of a list
我有以下 xml:
<?xml version="1.0" encoding="UTF-8"?>
<pi:Payroll_Extract_Employees xmlns:pi="urn:com.workday/picof">
<pi:company>
<pi:employee>
<pi:name>John</pi:name>
<pi:division>Accounting</pi:division>
</pi:employee>
<pi:employee>
<pi:name>Will</pi:name>
<pi:division>IT</pi:division>
</pi:employee>
<pi:employee>
<pi:name>Robert</pi:name>
<pi:division>Finance</pi:division>
</pi:employee>
</pi:company>
</pi:Payroll_Extract_Employees>
我想使用 for-each 循环来迭代所有不在会计或 IT 部门工作的员工。我为此使用此代码:
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:pi="urn:com.workday/picof">
<xsl:output method="text"/>
<xsl:template match="pi:Payroll_Extract_Employees/pi:company">
<xsl:for-each select="pi:employee[pi:division !=('Accounting','IT')]">
<xsl:value-of select="pi:name"/>
</xsl:for-each>
</xsl:template> </xsl:stylesheet>
但它输出所有员工,是否可以更改 for-each 语句中的 select 以获得我想要的内容。我想在那里使用否定。
用"pi:employee[not(pi:division =('Accounting','IT'))]
表示除法既不是Accounting
也不是IT
。
我有以下 xml:
<?xml version="1.0" encoding="UTF-8"?>
<pi:Payroll_Extract_Employees xmlns:pi="urn:com.workday/picof">
<pi:company>
<pi:employee>
<pi:name>John</pi:name>
<pi:division>Accounting</pi:division>
</pi:employee>
<pi:employee>
<pi:name>Will</pi:name>
<pi:division>IT</pi:division>
</pi:employee>
<pi:employee>
<pi:name>Robert</pi:name>
<pi:division>Finance</pi:division>
</pi:employee>
</pi:company>
</pi:Payroll_Extract_Employees>
我想使用 for-each 循环来迭代所有不在会计或 IT 部门工作的员工。我为此使用此代码:
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:pi="urn:com.workday/picof">
<xsl:output method="text"/>
<xsl:template match="pi:Payroll_Extract_Employees/pi:company">
<xsl:for-each select="pi:employee[pi:division !=('Accounting','IT')]">
<xsl:value-of select="pi:name"/>
</xsl:for-each>
</xsl:template> </xsl:stylesheet>
但它输出所有员工,是否可以更改 for-each 语句中的 select 以获得我想要的内容。我想在那里使用否定。
用"pi:employee[not(pi:division =('Accounting','IT'))]
表示除法既不是Accounting
也不是IT
。