2017-03-21 4 views
0

誰でも私がここにいなくなっていることを知っていますか?私は、例えば、コード要素によって分割されたエクスポートを持っています。 SiteDataSetの下にある各サイト要素を表示しようとしています。場合によっては3つ以上のサイトがあることもあります。ここxsl - 複数の同じ名前のネストされた要素を取得する方法?

XML

<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> 
<export> 
    <run-date>03/20/2017 
     <code>items 
      <type>Job 
       <number>9999999990-01</number> 
       <SiteDataSet> 
        <Site>Accounting</Site> 
        <Site>Energy</Site> 
       </SiteDataSet> 
       <content><![CDATA[]]></content> 
      </type> 
     </code> 
     <code>items2 
      <type>Job 
       <number>9999999910-01</number> 
       <SiteDataSet> 
        <Site>Finance</Site> 
        <Site>Energy</Site> 
        <Site>Driving</Site> 
       </SiteDataSet> 
       <content><![CDATA[]]></content> 
      </type> 
     </code> 
    </run-date> 
</export> 

は、ここでは、XSL

<?xml version="1.0" encoding="UTF-8"?> 
<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="/*/*"> 
       <xsl:element name="Posting"> 
         <xsl:for-each select="code/type"> 
           <xsl:element name="Job"> 
             <xsl:element name="Number"><xsl:value-of select="translate(./*[local-name()='number'],'-','')"/></xsl:element> 
             <xsl:element name="Sites"/> 
           </xsl:element> 
         </xsl:for-each> 
       </xsl:element> 
     </xsl:template> 
</xsl:stylesheet> 

は、ここで私はそれはので、これは閉じることができ作業しまっ出力XML

<?xml version="1.0" encoding="utf-8"?> 
    <Posting> 
     <Job> 
      <Number>999999999001</Number> 
      <Sites/> 
     </Job> 
     <Job> 
      <Number>999999991001</Number> 
      <Sites/> 
     </Job> 
    </Posting> 
+0

「」タグがないため、XMLの形式が正しくありません。また、あなたのXSLTにはいくつかの行がありません。 ''タグの数は閉じず、 'もありません。あなたはあなたの質問でこれらを修正できますか?また、期待される成果を示すことができますか?ありがとう! –

答えて

0

ですされています。

<xsl:element name="Sites"> 
    <xsl:for-each select="SiteDataSet/Site"> 
     <Site><xsl:value-of select="."/></Site> 
    </xsl:for-each> 
</xsl:element> 
関連する問題