2017-08-29 5 views
0

Unten ist meine Anforderung Ich habe Auftragseingabe enthält Artikel und jeder Artikel enthält Unterartikel, aber der Tag-Name ist gleich "Artikel".Wie die gleiche Struktur von der Quelle zum Ziel zu pflegen, wenn Eltern und Kind xml Tags hat den gleichen Namen in xslt

<OrderInput> 
    <Item> 
     <ItemId> 
     <ItemName> 
     <ItemDesc> 
     <Item> 
      <ItemId> 
      <ItemName> 
      <ItemDesc> 
      <Item> 
       <ItemId> 
       <ItemName> 
       <ItemDesc> 
      </Item> 
     </Item> 
    </Item> 
    <Item> 
     <ItemId> 
     <ItemName> 
     <ItemDesc> 
     <Item> 
      <ItemId> 
      <ItemName> 
      <ItemDesc> 
     </Item> 
    </Item> 
</OrderInput> 

Nach der Transformation mit xslt sollte es wie folgt aussehen. Eltern- und Chilknoten haben den gleichen Namen "Linie" wie Quelle "Element"

Bitte helfen Sie mir, dies zu lösen.

+1

Transformation Wo kommt das 'OrderLine' in der Ausgabe kommen und warum ist es nicht geschlossen? –

+0

Sorry..I verpasste es..bitte annehmen –

Antwort

1

können Sie in Elementnamen ersetzen verwenden, während

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

    <xsl:template match="OrderInput"> 
     <OrderOutput> 
      <xsl:apply-templates/> 
     </OrderOutput> 
    </xsl:template> 

    <xsl:template match="*[starts-with(name(.), 'Item')]"> 
     <xsl:element name="{replace(name(.), '^Item', 'Line')}"> 
      <xsl:apply-templates/> 
     </xsl:element> 
    </xsl:template> 
</xsl:stylesheet> 
+0

Hallo Rupesh..Thanks für schnelle Antwort ... Meine Anforderung ist nicht Ersatz der Zeichenfolge ... nur zur Veranschaulichung Zweck gab ich das Ausgabeformat. –

+0

@VamsiKrishna für das können Sie einfach als Element in Element-Mapping konvertieren, für verschachtelt von Element, wenn Sie die Zuordnung des Dokuments nicht ändern, als es auf die Ausgabe nicht auswirken würde. genau wie die erste Vorlage des obigen Codes. – Rupesh

Verwandte Themen