[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
[xsl] inserting structure
Subject: [xsl] inserting structure From: Manfred Staudinger <manfred.staudinger@xxxxxxxxx> Date: Sat, 2 Jul 2005 19:54:52 +0200 |
Hi, I'm new to both the list and xsl. I've build a test case: <?xml version="1.0" encoding="UTF-8" ?> <?xml-stylesheet type="text/xsl" href="doc1.xsl"?> <!DOCTYPE doc [ <!ELEMENT doc (index,name)> <!ELEMENT index (EMPTY)> <!ATTLIST index level1 CDATA #REQUIRED> <!ELEMENT name (#PCDATA)> <!ATTLIST name reg CDATA #IMPLIED> <!ENTITY HHStA "Wien, HHStA,"> ]> <doc> <index level1="Pernstein, Vratislav von -" /> <index level1="Philipp II. von Spanien" /> Zeitungsbericht 1560 April 17, Toledo Der Herr von Pernstain ist auf 8. diz von hinnen mit seiner gsellschafft nach Sarragossa vnd Barzalana verrugkht, von dannen well er vber- fol. 394r farn auf Genua, Maylannd vnd durch Tyroll p[er] Wienn. Er hat dem Kunig ausser dess so er von Kay Mt. vnd Khu: w:e von Behem wegen gethan, fur sich selbst ain schon zobln pelz vereert, Ime hat aber der Kunig mer nit als ain Kettin von 2000 [] vereert, gleichwol er sich merers verseh[en]. ... D[er] Kunig soll den <name reg="Ragier Patie">Ragier Patie</name> angenomen haben, hieuor der <name reg="Maria">Kunigin Maria</name> Camerling vnd hofmeist[er] In Spania gwest, gibt im Jarlich 2000 Ducat[en] dem Tirgarten vnd annderm nach Niderlenndisch[en] brauch zu wartten vnd zue zurichten. &HHStA; Reichskanzlei, Geschriebene Zeitungen 7, fol. 393v, 394r. </doc> <?xml version="1.0" encoding="UTF-8" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method = "html" /> <xsl:template match="/" name="replaceLineBreaks"> <xsl:param name="string" select="." /> <xsl:param name="switch" select="0" /> <xsl:choose> <xsl:when test="contains($string, '
')"> <xsl:choose> <xsl:when test="starts-with($string, ' ')"> <![CDATA[</p><p>]]> <br /> <xsl:value-of select="$switch" /> <xsl:text>6*</xsl:text> <xsl:value-of select="substring-before($string, '
')" /> <xsl:call-template name="replaceLineBreaks"> <xsl:with-param name="string" select="substring-after($string, '
')" /> <xsl:with-param name="switch" select="1" /> </xsl:call-template> </xsl:when> <xsl:when test="starts-with($string, ' ')"> <br /> <xsl:value-of select="$switch" /> <xsl:text>3*</xsl:text> <xsl:if test="$switch=0"> <![CDATA[<p>]]> </xsl:if> <xsl:value-of select="substring-before($string, '
')" /> <xsl:call-template name="replaceLineBreaks"> <xsl:with-param name="string" select="substring-after($string, '
')" /> <xsl:with-param name="switch" select="1" /> </xsl:call-template> </xsl:when> <xsl:when test="starts-with($string, 'fol.')"> <xsl:text>[</xsl:text> <xsl:value-of select="substring-before($string, '
')" /> <xsl:text>]</xsl:text> <xsl:call-template name="replaceLineBreaks"> <xsl:with-param name="string" select="substring-after($string, '
')" /> <xsl:with-param name="switch" select="1" /> </xsl:call-template> </xsl:when> <xsl:otherwise> <br /> <xsl:value-of select="$switch" /> <xsl:text>x*</xsl:text> <xsl:if test="$switch=1"> <![CDATA[</p>]]> </xsl:if> <xsl:value-of select="substring-before($string, '
')" /> <xsl:call-template name="replaceLineBreaks"> <xsl:with-param name="string" select="substring-after($string, '
')" /> <xsl:with-param name="switch" select="0" /> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:value-of select="$string" /> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet> wich gives the output (Firefox 1.04): 0x* 0x* 0x*Zeitungsbericht 0x*1560 April 17, Toledo 03* <p> Der Herr von Pernstain ist auf 8. diz von hinnen mit seiner gsellschafft nach Sarragossa vnd 13* Barzalana verrugkht, von dannen well er vber- [fol. 394r] 13* farn auf Genua, Maylannd vnd durch 13* Tyroll p[er] Wienn. Er hat dem Kunig ausser dess so er von Kay Mt. vnd Khu: w:e von Behem 13* wegen gethan, fur sich selbst ain schon zobln pelz vereert, Ime hat aber der Kunig mer nit als ain 13* Kettin von 2000 [] vereert, gleichwol er sich merers verseh[en]. ... </p><p> 16* D[er] Kunig soll den Ragier Patie angenomen haben, 13* hieuor der Kunigin Maria Camerling vnd hofmeist[er] In Spania 13* gwest, gibt im Jarlich 2000 Ducat[en] dem Tirgarten vnd annderm nach Niderlenndisch[en] 13* brauch zu wartten vnd zue zurichten. 1x* </p> Wien, HHStA, Reichskanzlei, Geschriebene Zeitungen 7, fol. 393v, 394r. I wanted to get for example <p> and other stuff inserted, but had to cover it by cdata to become well formed. Also the recursive template prevents me from adding html header information. In addition to a solution I would appreciate poiters to further readings about this... Manfred Staudinger, Vienna, Austria
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Sort, group, flatten, con, Aron Bock | Thread | RE: [xsl] inserting structure, Michael Kay |
RE: [xsl] Sort, group, flatten, con, Aron Bock | Date | RE: [xsl] inserting structure, Michael Kay |
Month |