XSLT';测试时';工作不正常
我有以下xml:XSLT';测试时';工作不正常,xslt,xslt-1.0,xslt-2.0,Xslt,Xslt 1.0,Xslt 2.0,我有以下xml: <?xml version="1.0" encoding="UTF-8"?> <ClaimSystemConfig> <MHC> <businessArea>Test2</businessArea> </MHC> <MHC> <businessArea>Test1</businessArea> </MHC>
<?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:
<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>
小河
邮递
成员摘要
健康计划/会员状态
eao
当前,当您在XML上运行以下XSLT时,结果确实是“…做点什么…”
如果你能更详细地解释什么是不起作用的,这会有所帮助。在这种情况下,您是否收到错误消息或意外输出?显示预期输出和实际输出会有很大帮助。谢谢@Tim C,当我使用任何Xpath测试工具在外部测试条件时,它会返回结果
元素='memberSummary rest/clientd/3'
,但是当我在应用程序中加入相同的更改时,控件不会在条件下运行。看起来好像出了什么问题。我认为您需要展示更多的XSLT。如果您可以提供一个完整但最少的XSLT示例来演示这个问题,这将有所帮助。例如,您确定它甚至达到了xsl:choose
吗?@TimC现在将xsl添加到问题中。请看一看。当`条件满足时,控件似乎将通过
。
<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>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="/">
<xsl:choose>
<xsl:when test="//ClaimSystemConfig/Amisys/WADL/services/service[3][name='memberSummary' and version=3]">
......do something.....
</xsl:when>
<xsl:otherwise>
...do nothing...
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
<xsl:when test="//ClaimSystemConfig/Amisys/WADL/services/service[name='memberSummary' and version=3]">