Liebes Forum,
ich bin Anfänger in XML/XSLT, neu in diesem Forum und möchte mich langfristig in TEI (Text Encoding Initiative) XML einarbeiten, das in den Geisteswissenschaften zur Auszeichnung aller Arten literarischer Texte verwendet wird.
Mein Problem ist vermutlich eine FAQ, aber trotzdem finde ich nicht die richtigen Stichworte, um eine Lösung recherchieren zu können.
Folgende xml-Beispiel-Datei möchte in XHTML darstellen, wobei der leere tag <zeilenumbruch/> durch den XHTML-Tag <br/> ersetzt werden soll:
Ich habe mich an einem Beispiel aus dem Internet orientiert versuche es mit folgendem Stylesheet test.xsl:
Leider wird der Zeilenumbruch im Browser nicht dargestellt, und in dem vom Browser erzeugten Code taucht dementsprechend kein <br/> auf:
Wo liegt mein Fehler? Über Hilfe würde ich mich sehr freuen!
Herzliche Grüße,
Peisistratos
ich bin Anfänger in XML/XSLT, neu in diesem Forum und möchte mich langfristig in TEI (Text Encoding Initiative) XML einarbeiten, das in den Geisteswissenschaften zur Auszeichnung aller Arten literarischer Texte verwendet wird.
Mein Problem ist vermutlich eine FAQ, aber trotzdem finde ich nicht die richtigen Stichworte, um eine Lösung recherchieren zu können.
Folgende xml-Beispiel-Datei möchte in XHTML darstellen, wobei der leere tag <zeilenumbruch/> durch den XHTML-Tag <br/> ersetzt werden soll:
Code:
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="test.xsl"?> <text> <ueberschrift>Überschrift</ueberschrift> <inschrift> Das ist eine Zeile. <zeilenumbruch/> Das ist noch eine Zeile. <zeilenumbruch/> Das ist eine dritte Zeile. </inschrift> </text>
Code:
<?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:html="http://www.w3.org/1999/xhtml"> <xsl:template match="/"> <html> <head/> <body> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="text"> <xsl:element name="h1"> <xsl:value-of select="ueberschrift"/> </xsl:element> <xsl:element name="p"> <xsl:value-of select="inschrift"/> </xsl:element> </xsl:template> <xsl:template match="text/inschrift"> <xsl:element name="br"> <xsl:apply-templates select="zeilenumbruch"/> </xsl:element> </xsl:template> </xsl:stylesheet>
Code:
<html><head><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"></head><body><h1>Überschrift</h1><p> Das ist eine Zeile. Das ist noch eine Zeile. Das ist eine dritte Zeile. </p></body></html>
Herzliche Grüße,
Peisistratos
Comment