XSLT Help:复制元素<choose>

时间:2017-06-02 16:43:45

标签: xslt xslt-1.0

由于我对XSL编程知识有限,我提出了这个代码:

(发布更新:XSLT现在正在运行 - 如果有的话,更新为其他人的利益!)

new_func = lambda x: old_func(x, 5)

目的是处理文件(在帖子的末尾)并得到以下结果:

“错误”文件的必填结果:

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:nm="http://fsag.de/BusinessTransaction"
xmlns:env="http://www.w3.org/2001/12/soap-envelope" 
exclude-result-prefixes="env">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>

<xsl:template match="/nm:Responses">
    <xsl:copy-of select="/"/>
</xsl:template>


<xsl:template match="/Envelope">
    <nm:Responses xmlns:nm="http://fsag.de/BusinessTransaction">
        <BTEMessages/>
        <SystemContext/>
                <Error>
        <xsl:copy-of select="Body"/>
               </Error>
    </nm:Responses>
</xsl:template>
</xsl:stylesheet>

“响应”文件的必填结果:

<?xml version="1.0" encoding="UTF-8"?>
<nm:Response xmlns:nm="http://fsag.de/BusinessTransaction">
   <BTEMessages/>
   <SystemContext/>
   <Error>
      <Body>
         <Response status="1">
            <Description>DESC</Description>
            <Errors>
               <Error>500</Error>
            </Errors>
         </Response>
      </Body>
   </Error>
</nm:Response>

*文件1:错误*

<?xml version="1.0" encoding="UTF-8"?>
<nm:Response xmlns:nm="http://fsag.de/BusinessTransaction">
   <BTEMessages>
      <InOrderContext xmlns:n0="http://fsag.de/BusinessTransaction">
         <SendTimestamp>01-06-2017:0506230000</SendTimestamp>
      </InOrderContext>
      <SystemContext>
         <Client>FDP</Client>
         <CorrelationId>34553FTG25543SFD134</CorrelationId>
         <BusinessContext>RECONCL</BusinessContext>
      </SystemContext>
   </BTEMessages>
</nm:Response>

文件2:回复:

<Envelope >
    <Body>
      <Response status="1">
        <Description>DESC</Description>
        <Errors>
          <Error>500</Error>
        </Errors>
      </Response>
    </Body>
  </Envelope>

当我尝试运行XSL失败时。请帮忙吗?

1 个答案:

答案 0 :(得分:0)

使用工作版更新XSL。