XSLT Auf Attribute eines Tagelementes zugreifen - wie geht das?

Luxor

Mitglied
Hallo,

ich (als Anfänger) habe leider keine Ahnung wie ich auf ein Tagelementattribute zugreifen kann bei einer XSLT-transformation. Ich habe eine XML-Datei die mir eine UI-Beschreibung gibt und ich will sie in XUL überführen.
Beispiel:
das Tagelement frame soll in das XUL-Tagelement group überführt werden dann sehe ja der XSLT-Code ungefähr so aus:
Code:
<xsl:template match="frame">
    <group>
        Gruppe
    </group>
</xsl:template>
Der XML-Code:
Code:
<frame>
...
</frame>
und der gewünschte XUL-Code:
Code:
<group>
Gruppe
</group>
Wenn nun das Frametag um das Attribute caption erweitert ist müsste ich auf den Wert von caption zugreifen können. Ich dachte eigentlich dass es mit dem value-of gehen würde aber wie ich feststellt greife ich "nur" auf die Werte innerhalb des Tags zu und nicht auf das Attribute des Tags.
XML-Code:
Code:
<frame caption="Ueberschirft">
...
</frame>
soll in gewünschten XUL-Code überführt werden:
Code:
<group caption="Ueberschrift">
....
</group>
oder es ginge ja auch in XUL
Code:
<group>
<caption value="Ueberschrift">
....
</group>

Wie kann ich auf das caption-Attribute zugreifen ?
Es soll ja nacher sowas hier herrauskommen können: XUL-Periodic Table
Dort sieht man ja bei den Gruppen eine Überschrift stehen, z.b. erste Gruppe heist flexiness.

Gruß

Luxor

P.S: W3school & die Bücher die ich durchgelesen haben hatten leider nie das Problem beim Transformieren :(
 
Hab die Lösung gefunden:
Code:
<xsl:template match="frame">
    <group>
         <xsl:attribute name="caption">
         <xsl:value-of select="@caption"/>
    </group>
</xsl:template>
Damit wird dann aus:
Code:
<frame caption="Ueberschirft">  ...  </frame>
zu:
Code:
<group caption="Ueberschrift">  ....  </group>
 

Neue Beiträge

Zurück