Umwandlung XML Datei mit XSLT

holo1981

Grünschnabel
Hallo zusammen,

ich bin recht neu im Gebiet der XML-Umwandlung und möchte mit Hilfe von XSLT eine XML-Datei umwandeln.
Vielleicht kann mir hier der eine oder andere bei meinem Problem helfen.

Ausgangsdatei:

XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<UNIT_LIST>
   <ITEMID number="1-234568">
      <ATTRIBUTES>
         <ATTRIBUTE name="NUMBER">1-234568</ATTRIBUTE>
         <ATTRIBUTE name="NAME">dies ist ein Test</ATTRIBUTE>
         <ATTRIBUTE name="VERSION">A.2</ATTRIBUTE>
         <ATTRIBUTE name="LCSTATE">Bearbeitung</ATTRIBUTE>
         <ATTRIBUTE name="TEILEGRUPPE">700</ATTRIBUTE>
      </ATTRIBUTES>
   </ITEMID>
</UNIT_LIST>

Umwandlungsdatei:

XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes"/>

<xsl:template match="UNIT_LIST">
 <ITEMS>
  <ITEM>
   <xsl:for-each select="ITEMID">
    <xsl:attribute name="TLIDNR">
     <xsl:value-of select="@number"/>
    </xsl:attribute>
   </xsl:for-each>
   <xsl:element name="FIELD">
    <xsl:for-each select="ITEMID/ATTRIBUTES/ATTRIBUTE">
     <xsl:attribute name="VALUE">
      <xsl:value-of select="../>
     </xsl:attribute>
    </xsl:for-each>
    <xsl:attribute name="NAME">TLIDNR</xsl:attribute>
    <xsl:attribute name="DB">UTLSTP</xsl:attribute>
   </xsl:element>
  </ITEM>
 </ITEMS>
</xsl:template>

</xsl:stylesheet>

Zieldatei:

XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<ITEMS>
   <ITEM TLIDNR="1-234568">
      <FIELD VALUE="1-234568dies ist ein TestA.2Freigegeben700" NAME="TLIDNR" DB="UTLSTP"/>
   </ITEM>
</ITEMS>


Wie muss ich die Zeile
XML:
<xsl:value-of select="../>
schreiben, dass ich nur die erste Zeile
XML:
<ATTRIBUTE name="NUMBER">1-234568</ATTRIBUTE>
ausgegeben bekomme und nicht alle Werte, die sich in der Ausgangsdatei befinden?

Danke schon mal im Vorraus für eure Hilfe
 

Neue Beiträge

Zurück