2016-09-20 2 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 - но на вашем входе нет такого элемента.

Смежные вопросы