Paul Brunner: xml-Inhalt in hash

Beitrag lesen

Hallo zusammen,

ich versuche gerade ein xsl-Sheet zu erstellen das den Inhalt eines xml-files mit beliebigen tags in ein hash der Form [name]->[inhalt] überträgt.

Meine ersten Veruche sind kläglich gescheitert:

*-------------

<xsl:template match="/">
  <xsl:for-each select="*">
    <xsl:value-of select="name(.)"/>
 xsl:text - </xsl:text>
 <xsl:value-of select="."/><br />
  </xsl:for-each>
</xsl:template>

*--------------

Zur Veranschaulichung ein kleines Beispiel
Aus...

*------------
<document>
 <header>
  <name>Ein Dokument</name>
  <title>Untertitel</title>
  <date>20020518</date>
  <author>ich</author>
 </header>
 <content>
             <text>blabla</text>
 </content>
</document>

*----------

soll werden:

*----------
document -
header -
name - Ein Dokument
title - Untertitel
date - 20020518
content -
text - blabla
*----------

im Endausbau soll daraus werden
*----------
document/header/name - Ein Dokument
document/header/title - Untertitel
document/header/date - 20020518
document/content/text - blabla
*----------
 also statt der Namen die kompletten Achsen und Tags ohne Text-Knoten ignorieren. Damit ist das xml-file dann auch wieder reproduzierbar.

Aber für Anregungen zum ersten Schritt währe ich schon sehr dankbar

Gruß
Paul