2016-09-20 131 views
-1
- <SAPAccounts> <SAPAccount ChargeNumber="0FPT15068806" 
    WSDescription="CCEC 32 - Rotor Standstill Inspection" /> <SAPAccount 
    ChargeNumber="dfgdfgfgg" WSDescription="gfghfghfhhs" /> 
    </SAPAccounts> 

我想將XML轉換爲不同類型的XML。我想要訪問多個子節點值。轉換XML子節點值

<AddChargeNumberIDto> 
<SAP> 
<ChargeNumber>0FPT15068806</ChargeNumber> 
<Description>CCEC 32 - Rotor Standstill Inspection</Description> 
<SAP> 
<SAP> 
<ChargeNumber>dfgdfgfgg</ChargeNumber> 
<Description>gfghfghfhhs</Description> 
<SAP> 
</AddChargeNumberIDto> 
+0

我們期望您開始嘗試自己。如果您的代碼有問題,請回來,顯示代碼,我們會爲您提供幫助。 –

+0

我的xslt在下面 –

回答

0

以下樣式:

XSLT 1.0

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> 

<xsl:template match="SAPAccounts"> 
    <AddChargeNumberIDto> 
     <xsl:for-each select="SAPAccount"> 
      <SAP> 
       <ChargeNumber> 
        <xsl:value-of select="@ChargeNumber"/> 
       </ChargeNumber> 
       <Description> 
        <xsl:value-of select="@WSDescription"/> 
       </Description> 
      </SAP> 
     </xsl:for-each> 
    </AddChargeNumberIDto> 
</xsl:template> 

</xsl:stylesheet> 

當應用到你的輸入例如,將返回預期的結果:

<?xml version="1.0" encoding="UTF-8"?> 
<AddChargeNumberIDto> 
    <SAP> 
     <ChargeNumber>0FPT15068806</ChargeNumber> 
     <Description>CCEC 32 - Rotor Standstill Inspection</Description> 
    </SAP> 
    <SAP> 
     <ChargeNumber>dfgdfgfgg</ChargeNumber> 
     <Description>gfghfghfhhs</Description> 
    </SAP> 
</AddChargeNumberIDto> 

注意:你的樣式表指的是OpenJobInfo - 但是在你的輸入中沒有這樣的元素。