Link Frage
Jürgen Seebacher
- xsl
Habe da eine Frage zu XML (XSLT):
Wie kann ich unter XSLT folgendes umse´tzen:
<a href="http://www.rpa-online.net">RPA - Da nxt generation</a>
Mir ist kommt es darauf an was zwischen den <a> und dem </a> steht! Bisher kann ich es nur soweit, dass ich den Pfad als Link ausgeben kann, aber keinen Beschreibungstext. Habe in der SelfHTML 8 gesucht aber keine Infos dazu gefunden.
Bitte helft mir
Hallo Jürgen,
Mir ist kommt es darauf an was zwischen den <a> und dem </a> steht! Bisher kann ich es nur soweit, dass ich den Pfad als Link ausgeben kann, aber keinen Beschreibungstext. Habe in der SelfHTML 8 gesucht aber keine Infos dazu gefunden.
Hier mal ein Beispiel:
Die XML-Datei:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE verweise [
<!ELEMENT verweise (link*)>
<!ELEMENT link (#PCDATA)>
<!ATTLIST link
ziel CDATA #REQUIRED
>
]>
<?xml-stylesheet type="text/xsl" href="text.xsl" ?>
<verweise>
<link ziel="ziel.html">Inhalt1</link>
<link ziel="ziel2.html">Inhalt2</link>
</verweise>
Und die zugehörige xsl-Datei könnte so aussehen:
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
</head>
<body>
<xsl:apply-templates />
</body></html>
</xsl:template>
<xsl:template match="link">
<!-- Element erzeugen -->
<xsl:element name="a">
<!-- Attribut setzen -->
<xsl:attribute name="href"><xsl:value-of select="@ziel" /></xsl:attribute>
<!-- Setzt den Inhalt des Elementes -->
<xsl:value-of select="." />
</xsl:element>
<br />
</xsl:template>
</xsl:stylesheet>
Viele Grüße
Antje
Hallo Antje,
Und die zugehörige xsl-Datei könnte so aussehen:
Ja, könnte, aber man muss sich es nicht schwerer machen als nötig ;-)
<xsl:template match="link">
<a href="{@ziel}"><xsl:value-of select="." /></a>
</xsl:template>
<xsl:element name="..."> würde ich bei HTML als Zielformat nicht verwenden, dazu hat man schließlich die "literal result elements" d.h. in diesem fall, die HTML elemente selbst.
Grüße
Thomas