0
我有以下XML:XSLT「當測試」工作不正常
<?xml version="1.0" encoding="UTF-8"?>
<ClaimSystemConfig>
<MHC>
<businessArea>Test2</businessArea>
</MHC>
<MHC>
<businessArea>Test1</businessArea>
</MHC>
<PowerSTEPP>
<businessArea>Test3</businessArea>
</PowerSTEPP>
<Amisys>
<businessArea>CSAAQA</businessArea>
<WADL>
<url>Blah</url>
<services>
<service>
<name>authSearch</name>
<tenant>rest/clientd/</tenant>
<version>1</version>
</service>
<service>
<name>memberSearch</name>
<tenant>rest/clientd/</tenant>
<version>1</version>
</service>
<service>
<name>memberSummary</name>
<tenant>rest/clientd/</tenant>
<version>3</version>
</service>
</services>
</WADL>
</Amisys>
</ClaimSystemConfig>
現在,我想用XSLT僅在<service>
標籤中的任何一個有權修改上面的XML <name>
爲memberSummary
和<version>
如3
。我正在嘗試以下條件,但不起作用。
<xsl:choose>
<xsl:when test="//ClaimSystemConfig/Amisys/WADL/services/service[name='memberSummary' and version=3]">
......do something.....
</xsl:when>
<xsl:otherwise>
...do nothing...
</xsl:otherwise>
</xsl:choose>
任何人可以幫助我在制定正確的條件?
下面是部分XSLT:
<xsl:choose>
<xsl:when test="//ClaimSystemConfig/Amisys/WADL/services/service[name='memberSummary' and version=3]">
<type>WADL</type>
<METHOD>POST</METHOD>
<service>memberSummary</service>
<requestSpecific>healthplan/memberstatuses</requestSpecific>
<inputSchema>
<ver:routeData xmlns:ver="version3">
</ver:routeData>
</inputSchema>
<parms>
<parm>
<name>eao</name>
<value><xsl:value-of select="eao"/></value>
</parm>
</parms>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
如果您更詳細地瞭解什麼是不工作解釋這會有所幫助。在這種情況下,您會收到錯誤消息還是意外輸出?顯示預期的輸出以及實際輸出將會有所幫助。謝謝! – 2014-12-04 09:33:50
@Tim C,當我測試外使用任何XPath測試器工具的條件下,它返回我結果'元= ' memberSummary 其餘/ clientd/ '',但是,當我在我的應用程序中加入了相同的更改,控件不會處於'when'狀態。看起來有點不對勁。 –
2014-12-04 09:39:53
我認爲你需要展示更多的XSLT。如果您可以提供一個完整但很少的XSLT示例來演示問題,那將有所幫助。例如,你確定它甚至可以達到'xsl:choose'嗎? – 2014-12-04 09:42:37