<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version = "1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml" xmlns:bka="http://www.bka.gv.at"> <!-- ///////////////////////////////////////////////////////////////// Autor: Hermann Anderl, Klaus Schipany Revision: 1.8.6 Erstellt: 03.10.2003 Modifiziert: 24.03.2004 ///////////////////////////////////////////////////////////////// --> <!-- Empfehlung Hr. Karlinger (23.12.03): keine DOCTYPE-Deklaration --> <!-- Vereinbarung Hr. Karlinger (29.12.03): keine MS-Extensions: <msxsl:script> --> <xsl:output method="xml" encoding="ISO-8859-1" omit-xml-declaration="yes" indent="yes"/> <!-- //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Bei der Erstellung dieses Stylesheets wurden folgende Kriterien angewandt: 1.) Das generierbare XHTML Dokument entspricht der XHTML 1.1 Spezifikation + CSS 2(W3C). 2.) Dar�ber hinaus folgt das Stylesheet den erweiterten Einschr�nkungen von SLXHTML in der Version 1.0.1 (18.12.2003), Gregor Karlinger. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// --> <!-- Bei Verwendung definieren: xmlns:msxsl="urn:schemas-microsoft-com:xslt" --> <!--msxsl:script language="JScript" implements-prefix="bka"> function replace(old) { return old.replace(/\./,"_"); } </msxsl:script--> <xsl:template match="bka:table" mode="sort"> <!-- Es wird verarbeitet: @width, @border, @cellspacing, @cellpadding, @style--> <xsl:text> </xsl:text> <xsl:value-of select="string('<!-- table -->')" disable-output-escaping="yes"/> <xsl:text> .</xsl:text><xsl:value-of select="generate-id(.)"/> <xsl:text> {</xsl:text> <xsl:if test="./@width"><!-- horizontal und vertikal.--> <xsl:text> width:</xsl:text><xsl:value-of select="./@width"/><xsl:text>;</xsl:text> </xsl:if> <xsl:if test="not(./@border[.=0])"><!-- Alle 4 Seiten, wenn nicht 0 --> <xsl:text> border:</xsl:text><xsl:value-of select="./@border"/><xsl:text>px solid black;</xsl:text> </xsl:if> <xsl:if test="./@cellspacing"><!-- horizontal und vertikal.--> <xsl:text> border-spacing:</xsl:text><xsl:value-of select="./@cellspacing"/><xsl:text>;</xsl:text> </xsl:if> <xsl:if test="./@cellpadding"><!-- Alle 4 Seiten --> <xsl:text> padding:</xsl:text><xsl:value-of select="./@cellpadding"/><xsl:text>;</xsl:text> </xsl:if> <xsl:value-of select="./@style"/> <xsl:text>}</xsl:text> <!-- Alle Zeilen (TR) --> <xsl:text> </xsl:text> <xsl:value-of select="string('<!-- tr -->')" disable-output-escaping="yes"/> <xsl:for-each select="bka:tr | bka:thead/bka:tr"> <!-- Es wird verarbeitet: @height, @style--> <xsl:if test="./@*"> <xsl:text> .</xsl:text><xsl:value-of select="generate-id(.)"/> <xsl:text> {</xsl:text> <xsl:if test="./@height"> <xsl:text> height:</xsl:text><xsl:value-of select="./@height"/><xsl:text>;</xsl:text> </xsl:if> <xsl:value-of select="./@style"/> <xsl:text>}</xsl:text> </xsl:if> </xsl:for-each> <!-- Alle Zellen (TD) --> <xsl:text> </xsl:text> <xsl:value-of select="string('<!-- td -->')" disable-output-escaping="yes"/> <xsl:for-each select="bka:tr/bka:td | bka:thead/bka:tr/bka:td"> <!-- Es wird verarbeitet: @width, @align, @valign, @style--> <xsl:text> .</xsl:text><xsl:value-of select="generate-id(.)"/> <xsl:text> {</xsl:text> <xsl:if test="./@width"> <xsl:text> width:</xsl:text><xsl:value-of select="./@width"/><xsl:text>;</xsl:text> </xsl:if> <xsl:if test="./@algin"> <xsl:text> text-align:</xsl:text><xsl:value-of select="./@align"/><xsl:text>;</xsl:text> </xsl:if> <xsl:if test="./@valign"> <xsl:text> vertical-align:</xsl:text><xsl:value-of select="./@valign"/><xsl:text>;</xsl:text> </xsl:if> <!-- Sur Sicherheit zum Schluss, da dahinter kein ";" steht. --> <xsl:value-of select="./@style"/> <xsl:text>}</xsl:text> </xsl:for-each> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Keys ///////////////////////////////////////////////////////////////// --> <xsl:key name="key_ueberschrift_typ" match="bka:ueberschrift" use="@typ"/> <xsl:key name="key_kzinhalt_typ" match="bka:kzinhalt" use="@typ"/> <xsl:key name="key_fzinhalt_typ" match="bka:fzinhalt" use="@typ"/> <!-- ///////////////////////////////////////////////////////////////// //// Aufbau des XHTML-Dokuments /////////////////////////////////////////////////////////////////--> <xsl:template match="bka:erechtdok"> <xsl:value-of disable-output-escaping="yes" select="string('<?xml version="1.0" encoding="ISO-8859-1"?>')"/> <xsl:element name="html"> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ////////////////////////////////////////////////////////////////// --> <xsl:template match="bka:metadaten"> <xsl:element name="head"> <xsl:element name="title">eRecht XHTML 1.1 Dokument</xsl:element> <xsl:element name="style"> <xsl:attribute name="type">text/css</xsl:attribute> <!-- Seitenr�nder dynamisch setzen --> <xsl:variable name="layoutdaten" select = "//bka:layoutdaten"></xsl:variable> <!-- Die Breiten sind in Points (pt) angegeben und werden so weitergereicht. --> <xsl:variable name="margt" select = "$layoutdaten/@margt"></xsl:variable> <xsl:variable name="margr" select = "$layoutdaten/@margr"></xsl:variable> <xsl:variable name="margb" select = "$layoutdaten/@margb"></xsl:variable> <xsl:variable name="margl" select = "$layoutdaten/@margl"></xsl:variable> <xsl:variable name="paperw" select = "$layoutdaten/@paperw"></xsl:variable> <xsl:variable name="paperh" select = "$layoutdaten/@paperh"></xsl:variable> <!-- Alle Breitenangaben (width) und generischen CSS-Angaben (style) durch CSS-classes ersetzen. --> <!-- width=Pixelangabe; in style/class=umgerechnet in pt/cm. z.B. 170(px) = 127.6pt oder 378(px) = 10cm --> <xsl:apply-templates select="//bka:table" mode="sort"/> <!-- In dieser Schleife werden alle H�henangaben (height) in td-Elementen durch CSS-classes ersetzt. --> <xsl:for-each select="//bka:td/@height"> <xsl:sort/> <xsl:text> .H</xsl:text><xsl:value-of select="generate-id(.)"/><!--xsl:value-of select="bka:replace(string(.))"/--><xsl:text> { height: </xsl:text><xsl:value-of select="."/><xsl:text>;}</xsl:text> </xsl:for-each> <!-- Aufz�hlungen: 1. Spalte 38 px, 2. Spalte 15 px, 3. Spalte 22 px, 4. Spalte 22 px (empirisch ermittelt)--> <xsl:text> .W38 { width:38px; }</xsl:text> <xsl:text> .W15 { width:15px; }</xsl:text> <xsl:text> .W22 { width:22px; }</xsl:text> <xsl:text> .wi100 { width:100%; }</xsl:text> <!-- Erlaeuterungsaufzaehlung --> <xsl:text> .WErl { width:15px; }</xsl:text> <!-- 2. Spalte: berechnet--> <xsl:text> .E1Sp2 { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperw - 38"/><xsl:text>px; }</xsl:text> <xsl:text> .E2Sp2 { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperw - 38 - 15"/><xsl:text>px; }</xsl:text> <xsl:text> .E3Sp2 { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperw - 38 - 15 - 22"/><xsl:text>px; }</xsl:text> <xsl:text> .E4Sp2 { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperw - 38 - 15 - 22 - 22"/><xsl:text>px; }</xsl:text> <xsl:text> .E5Sp2 { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperw - 38 - 15 - 22 - 22 - 22"/><xsl:text>px; }</xsl:text> <xsl:text> .ErlSp2 { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperw - 25"/><xsl:text>px; }</xsl:text> <xsl:text> .E1Sp2Q { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperh - 38"/><xsl:text>px; }</xsl:text> <xsl:text> .E2Sp2Q { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperh - 38 - 15"/><xsl:text>px; }</xsl:text> <xsl:text> .E3Sp2Q { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperh - 38 - 15 - 22"/><xsl:text>px; }</xsl:text> <xsl:text> .E4Sp2Q { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperh - 38 - 15 - 22 - 22"/><xsl:text>px; }</xsl:text> <xsl:text> .E5Sp2Q { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperh - 38 - 15 - 22 - 22 - 22"/><xsl:text>px; }</xsl:text> <xsl:text> .ErlSp2Q { width:</xsl:text><xsl:value-of select="$layoutdaten/@paperh - 25"/><xsl:text>px; }</xsl:text> <xsl:text> .nextpage { page-break-before:always; }</xsl:text> <xsl:if test="$layoutdaten/@margt | $layoutdaten/@margr | $layoutdaten/@margb | $layoutdaten/@margl"> <xsl:text> .margins {</xsl:text> <xsl:if test="$layoutdaten/@margt"> <xsl:value-of select="concat('margin-top:', $margt, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margr"> <xsl:value-of select="concat('margin-right:', $margr, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margb"> <xsl:value-of select="concat('margin-bottom:', $margb, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margl"> <xsl:value-of select="concat('margin-left:', $margl, 'pt;')"/> </xsl:if> <xsl:text>}</xsl:text> </xsl:if> <!-- Seitenbreite dynamisch setzen (Hochformat) --> <xsl:if test="$layoutdaten/@paperw"> <xsl:text> @media screen { .paperw {</xsl:text> <xsl:value-of select="concat('width:', $paperw, 'px;')"/> <xsl:if test="$layoutdaten/@margt"> <xsl:value-of select="concat('margin-top:', $margt, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margr"> <xsl:value-of select="concat('margin-right:', $margr, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margb"> <xsl:value-of select="concat('margin-bottom:', $margb, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margl"> <xsl:value-of select="concat('margin-left:', $margl, 'pt;')"/> </xsl:if> <xsl:text>}}</xsl:text> <xsl:text> @media print { .paperw {</xsl:text> <xsl:value-of select="concat('width:', $paperw, 'px;')"/> <xsl:text>margin-top:0.0pt;margin-right:0.0pt;margin-bottom:0.0pt;margin-left:0.0pt;size:portrait;</xsl:text> <xsl:text>}}</xsl:text> </xsl:if> <!-- Seitenbreite ist die H�he (Querformat), Drehung der R�nder nach "rechts" --> <xsl:if test="$layoutdaten/@paperh"> <xsl:text> @media screen { .paperh {</xsl:text> <xsl:value-of select="concat('width:', $paperh, 'px;')"/> <xsl:if test="$layoutdaten/@margt"> <xsl:value-of select="concat('margin-right:', $margt, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margr"> <xsl:value-of select="concat('margin-bottom:', $margr, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margb"> <xsl:value-of select="concat('margin-left:', $margb, 'pt;')"/> </xsl:if> <xsl:if test="$layoutdaten/@margl"> <xsl:value-of select="concat('margin-top:', $margl, 'pt;')"/> </xsl:if> <xsl:text>}}</xsl:text> <xsl:text> @media print { .paperh {</xsl:text> <xsl:value-of select="concat('width:', $paperh, 'px;')"/> <xsl:text>margin-top:0.0pt;margin-right:0.0pt;margin-bottom:0.0pt;margin-left:0.0pt;size:landscape</xsl:text> <xsl:text>}}</xsl:text> </xsl:if> <xsl:text> /***************************/ /* Revision: 1.8.6 */ /* Erstellt: 03.10.2003 */ /* Modifiziert: 24.03.2004 */ /***************************/ /* Allgemeine Angaben zum Anzeigen von Linien in Tabellen */ /*@page :left { size: 21cm 29.7cm; margin-left: 2cm; margin-right: 2cm; marks:crop; } @page :right { size: 21cm 29.7cm; margin-left: 2cm; margin-right: 2cm; marks:crop; } */ table.top { border-top-style: solid; border-top-width: thin; border-color: black; } table.bottom { border-bottom-style: solid; border-bottom-width: thin; border-color: black; } td.top { border-top-style:solid; border-top-width:1pt; } td.right { border-right-style:solid; border-right-width:1pt; } td.bottom { border-bottom-style:solid; border-bottom-width:1pt; } td.left { border-left-style:solid; border-left-width:1pt; } /*Text innerhalb einer Tabellenzelle*/ .AlignLeft { text-align:left; } .AlignRight { text-align:right; } .AlignCenter { text-align:center; } .AlignJustify { text-align:justify; } .VAlignTop { vertical-align:top; } /***************************************************************/ /* Legistik-Standard-Formatvorlage */ /***************************************************************/ /* Formatvorlage: 00_LegStandard */ .LegStandard { text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /***************************************************************/ /* Formatvorlagen fuer Absaetze */ /***************************************************************/ /* Formatvorlage: 01_Undefiniert */ p.Undefiniert { margin-top:1.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color: red; } /* Formatvorlage: 02_BDGesBlatt */ p.BDGesBlatt { margin-top:14.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:35.0pt; font-size:35.0pt; font-family:"Times New Roman"; color:black; text-transform:uppercase; letter-spacing:1.3pt; font-weight:bold; } /* Formatvorlage: 03_RepOesterr */ p.RepOesterr { margin-top:6.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; margin-bottom:12.0pt; text-align:center; line-height:20.0pt; border:none; padding:0cm; font-size:20.0pt; font-family:"Times New Roman"; color:black; text-transform:uppercase; letter-spacing:1.0pt; font-weight:bold; } /* Formatvorlage: 04_AusgabeDaten */ p.AusgabeDaten { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:14.0pt; padding:0cm; font-size:12.0pt; font-family:"Times New Roman"; color: black; font-weight:bold; } /* Formatvorlage: 05_Kurztitel */ /* Kurztitel in einer Spalte (wenn kein TAB vorhanden ist) */ p.Kurztitel1 { margin-top:2.0pt; margin-right: 0cm; margin-bottom:0cm; margin-left: 3.6cm; text-align:justify; text-indent: -3.6cm; border:none; padding:0cm; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Kurztitel in zwei Spalten (wenn ein TAB vorhanden ist) */ p.Kurztitel2 { margin-top:2.0pt; margin-right: 0cm; margin-bottom:0cm; margin-left: 0cm; text-align:justify; border:none; padding:0cm; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } span.Kurztitelbreite { width: 3.4cm; } /* Formatvorlage: 09_Abstand */ p.Abstand { margin:6.0pt; margin-bottom:6.0pt; line-height:10.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 10_Entwurf */ p.Entwurf { margin-top:80.0pt; margin-right:0cm; margin-bottom:64.0pt; margin-left:0cm; text-align:center; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; letter-spacing:1.3pt; } /* Formatvorlage: 11_Titel */ p.Titel { margin-top:24.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:11.0pt; font-family:"Times New Roman"; font-weight:bold; } /* Formatvorlage: 12_PromKl_EinlSatz */ p.PromKlEinlSatz { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; text-indent:19.85pt; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 18_Abbildung_oder_Objekt */ p.AbbildungoderObjekt { margin-top:6.0pt; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 18_Abbildung_oder_Objekt */ p.AbbildungoderObjektL { margin-top:6.0pt; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; text-align:left; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 18_Abbildung_oder_Objekt */ p.AbbildungoderObjektZ { margin-top:6.0pt; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; text-align:center; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 18_Abbildung_oder_Objekt */ p.AbbildungoderObjektR { margin-top:6.0pt; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; text-align:right; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 19_Beschriftung */ p.Beschriftung { margin-top:0cm; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 19_Beschriftung */ p.BeschriftungL { margin-top:0cm; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; line-height:11.0pt; text-align:left; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 19_Beschriftung */ p.BeschriftungZ { margin-top:0cm; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; line-height:11.0pt; text-align:center; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 19_Beschriftung */ p.BeschriftungR { margin-top:0cm; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; line-height:11.0pt; text-align:right; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 21_NovAo1 */ p.NovAo1 { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; font-style:italic; } /* Formatvorlage: 22_NovAo1 */ p.NovAo2 { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; font-style:italic; } /* Formatvorlage: 23_Satz_(nach_Novao) */ p.SatznachNovao { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 30_InhaltUeberschrift */ p.InhaltUeberschrift { margin-top:16.0pt; margin-right:0cm; margin-bottom:8.0pt; margin-left:0cm; text-align:center; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; font-weight:bold; } /* Formatvorlage: 31_InhaltSpalte */ p.InhaltSpalte { margin-top:4.0pt; margin-right:0cm; margin-bottom:4.0pt; margin-left:0cm; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; font-weight:bold; } /* Formatvorlage: 32_InhaltEintrag */ p.InhaltEintrag { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 41_UeberschrG1 */ p.UeberschrG1 { margin-top:16.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:11.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 42_UeberschrG1- */ p.UeberschrG1- { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:11.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 43_UeberschrG2 */ p.UeberschrG2 { margin-top:4.0pt; margin-right:0cm; margin-bottom:4.0pt; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:11.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 44_UeberschrArt */ p.UeberschrArt { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 45_UeberschrPara */ p.UeberschrPara { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 51_Abs */ p.Abs { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; text-indent:19.85pt; /* line-height:11.0pt; */ font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 52_Ziffer_e1 */ p.ZifferE1 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 52_Ziffer_e2 */ p.ZifferE2 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 52_Ziffer_e3 */ p.ZifferE3 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 52_Ziffer_mit_Betrag */ p.ZifferMitBetrag { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; punctuation-wrap:simple; text-autospace:none; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 52aT_Ziffer_mit_Betrag_TGUE */ p.ZifferMitBetragTGUE { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; punctuation-wrap:simple; text-autospace:none; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 53_Litera_e1 */ p.LiteraE1 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 53_Litera_e2 */ p.LiteraE2 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 53_Litera_e3 */ p.LiteraE3 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 53_Litera_mit_Betrag */ p.LiteraMitBetrag { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; punctuation-wrap:simple; text-autospace:none; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 53aT_Litera_mit_Betrag_TGUE */ p.LiteraMitBetragTGUE { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; punctuation-wrap:simple; text-autospace:none; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54_Sublitera_e1 */ p.SubliteraE1 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54_Sublitera_e2 */ p.SubliteraE2 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54_Sublitera_e3 */ p.SubliteraE3 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54_Sublitera_mit_Betrag */ p.SubliteraMitBetrag { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; punctuation-wrap:simple; text-autospace:none; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54aT_Sublitera_mit_Betrag_TGUE */ p.SubliteraMitBetragTGUE { margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; punctuation-wrap:simple; text-autospace:none; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54a_Strich_e1 */ p.StrichE1 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54a_Strich_e2 */ p.StrichE2 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54a_Strich_e3 */ p.StrichE3 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54a_Strich_e4 */ p.StrichE4 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54a_Strich_e5 */ p.StrichE5 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 54a_Strich_e6 */ p.StrichE6 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 54a_Strich_e7 */ p.StrichE7 { margin-top:2.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 55_SchlussteilAbs */ p.SchlussteilAbs { margin:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 56_SchlussteilZiff */ p.SchlussteilZiff { margin:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 57_SchlussteilLit */ p.SchlussteilLit { margin:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 61_TabText */ p.TabText { margin:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 61a_TabTextRechtsb */ p.TabTextRechtsb { margin:0cm; text-align:right; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 61b_TabTextZentriert */ p.TabTextZentriert { margin:0cm; text-align:center; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 61c_TabTextBlock */ p.TabTextBlock { margin:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 62_Kopfzeile */ p.Kopfzeile { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color: #C0C0C0; } /* Formatvorlage: 63_Fu�zeile */ p.Fusszeile { margin-top:10.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:9.0pt; font-family:"Times New Roman"; color: #C0C0C0; } /* Formatvorlage: 64_FN_Linie */ p.FNLinie { margin-top:11.0pt; margin-right:13.0cm; margin-bottom:1.0pt; margin-left:0cm; line-height:11.0pt; padding:0cm; font-size:10.0pt; font-family:"Times New Roman"; color:black; border-bottom-style: solid; border-bottom-color: Gray; border-bottom-width: 1px; } /* Formatvorlage: 65_FN_Text */ p.FNText { margin:0cm; text-align:justify; line-height:11.0pt; font-size:9.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 66_FN_Zeichen */ span.FNZeichen { vertical-align:super; } /* Formatvorlage: 68_UnterschrL */ p.UnterschrL { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:left; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 69_UnterschrM */ p.UnterschrM { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 71_Anlagenbez */ p.Anlagenbez { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:right; line-height:11.0pt; font-size:11.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 81_ErlUeberschrZ */ p.ErlUeberschrZ { margin-top:16.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:11.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 82_ErlUeberschrL */ p.ErlUeberschrL { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /* Formatvorlage: 83_ErlText */ p.ErlText { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; } /* Formatvorlage: 85_ErlAufzaehlg - noch nicht fertig */ p.ErlAufzaehlg { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; color:black; } /* Formatvorlage: 89_TGUE_UeberschrSpalte*/ p.TGUEUeberschrSpalte { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:center; line-height:11.0pt; page-break-after:avoid; font-size:10.0pt; font-family:"Times New Roman"; color:black; font-weight:bold; } /***************************************************************/ /* Formatvorlagen fuer Zeichenformatierung */ /***************************************************************/ /* Formatvorlage: 990_Fehler */ span.Fehler { color: red; } /* Formatvorlage: 991_GldSymbol */ span.GldSymbol { font-weight:bold; } /* Formatvorlage: 992_Normal */ span.Normal { font-style: normal; } /* Formatvorlage: 993_Fett */ span.Fett { font-weight:bold; } /* Formatvorlage: 994_Kursiv */ span.Kursiv { font-style:italic; } /* Formatvorlage: 995_Unterstrichen */ span.Unterstrichen { text-decoration:underline; } /* Formatvorlage: 996_Gesperrt */ span.Gesperrt { letter-spacing:1.3pt; } /* Formatvorlage: 997_Hoch */ span.Hoch { font-size: 50%; vertical-align:super; } /* Formatvorlage: 998_Tief */ span.Tief { font-size: 50%; vertical-align:sub; } /* Formatvorlage: 999_Fett_und_Kursiv */ span.FettundKursiv { font-weight:bold; font-style:italic; } /* Standardtabschrittweite aus Word */ span.Standardtabulator { width:35.45pt; } /***************************************************************/ /* Formatvorlagen der Parlamentsdirektion */ /***************************************************************/ p.PD_Allonge, li.PD_Allonge, div.PD_Allonge { margin-top:14.0pt; margin-right:0cm; margin-bottom:10.0pt; margin-left:0cm; text-align:center; font-size:14.0pt; font-family:"Times New Roman"; layout-grid-mode:line; } p.PD_AllongeB, li.PD_AllongeB, div.PD_AllongeB { margin-top:14.0pt; margin-right:0cm; margin-bottom:10.0pt; margin-left:0cm; text-align:justify; font-size:14.0pt; font-family:"Times New Roman"; layout-grid-mode:line; } p.PD_AllongeL, li.PD_AllongeL, div.PD_AllongeL { margin-top:14.0pt; margin-right:0cm; margin-bottom:10.0pt; margin-left:0cm; font-size:14.0pt; font-family:"Times New Roman"; layout-grid-mode:line; } p.PD_Antragsformel, li.PD_Antragsformel, div.PD_Antragsformel { margin-top:14.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; layout-grid-mode:line; } p.PD_Datum, li.PD_Datum, div.PD_Datum { margin-top:14.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; layout-grid-mode:line; } p.PD_Entschliessung, li.PD_Entschliessung, div.PD_Entschliessung { margin-top:8.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:11.0pt; font-family:"Times New Roman"; layout-grid-mode:line; font-weight:bold; } p.PD_K1, li.PD_K1, div.PD_K1 { margin:0cm; text-align:center; border:none; padding:0cm; font-size:12.0pt; font-family:"Times New Roman"; letter-spacing:-.4pt; font-weight:bold; } p.PD_K1Anlage, li.PD_K1Anlage, div.PD_K1Anlage { margin:0cm; text-align:right; font-size:12.0pt; font-family:"Times New Roman"; letter-spacing:-.4pt; font-weight:bold; } p.PD_K1Ausg, li.PD_K1Ausg, div.PD_K1Ausg { margin-top:62.9pt; margin-right:0cm; margin-bottom:27.0pt; margin-left:0cm; font-size:11.0pt; font-family:"Times New Roman"; font-weight:bold; } p.PD_K2, li.PD_K2, div.PD_K2 { margin-top:0cm; margin-right:0cm; margin-bottom:11.35pt; margin-left:0cm; font-size:22.0pt; font-family:"Times New Roman"; font-weight:bold; } p.PD_K3, li.PD_K3, div.PD_K3 { margin-top:0cm; margin-right:0cm; margin-bottom:20.0pt; margin-left:0cm; font-size:18.0pt; font-family:"Times New Roman"; font-weight:bold; } p.PD_K4, li.PD_K4, div.PD_K4 { margin-top:0cm; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; font-size:13.0pt; font-family:"Times New Roman"; font-weight:bold; } p.PD_Kopfzeile, li.PD_Kopfzeile, div.PD_Kopfzeile { margin-top:4.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; layout-grid-mode:line; } p.PD_U1, li.PD_U1, div.PD_U1 { margin-top:22.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:10.0pt; font-family:"Times New Roman"; font-weight:bold; } p.PD_U2, li.PD_U2, div.PD_U2 { margin-top:5.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; line-height:11.0pt; font-size:9.0pt; font-family:"Times New Roman"; } p.PD_Vorlage, li.PD_Vorlage, div.PD_Vorlage { margin-top:0cm; margin-right:0cm; margin-bottom:10.0pt; margin-left:0cm; text-align:justify; line-height:11.0pt; font-size:11.0pt; font-family:"Times New Roman"; layout-grid-mode:line; font-weight:bold; } </xsl:text> </xsl:element> </xsl:element> </xsl:template> <!-- ////////////////////////////////////////////////////////////////// --> <xsl:template match="bka:nutzdaten"> <xsl:element name="body"> <xsl:apply-templates/> <xsl:apply-templates select="//bka:fnen" mode="dokumentende"/> </xsl:element> </xsl:template> <!-- ////////////////////////////////////////////////////////////////// --> <xsl:template match="bka:abschnitt"> <xsl:variable name="layoutdaten" select = "//bka:layoutdaten"></xsl:variable> <xsl:element name="div"> <xsl:choose> <xsl:when test="@paperf[.='q']"><!-- Querformat? --> <xsl:if test="$layoutdaten/@paperh | @typ[.='ns']"> <xsl:attribute name="class"> <xsl:if test="$layoutdaten/@paperh"> <xsl:text>paperh</xsl:text> </xsl:if> <xsl:if test="@typ[.='ns']"> <xsl:if test="@nr[.>1]"> <xsl:text> nextpage</xsl:text> </xsl:if> </xsl:if> </xsl:attribute><!-- Abschnitt <xsl:value-of select="position()-1"/ --> </xsl:if> <xsl:apply-templates select="key('key_kzinhalt_typ', 'f')[1]" mode="dokumentanfang"/> <xsl:apply-templates/> <xsl:apply-templates select="key('key_fzinhalt_typ', 'f')[1]" mode="dokumentende"/> </xsl:when> <xsl:otherwise><!-- Hochformat (default) --> <xsl:if test="$layoutdaten/@paperw | @typ[.='ns']"> <xsl:attribute name="class"> <xsl:if test="$layoutdaten/@paperw"> <xsl:text>paperw</xsl:text> </xsl:if> <xsl:if test="@typ[.='ns']"> <xsl:if test="@nr[.>1]"> <xsl:text> nextpage</xsl:text> </xsl:if> </xsl:if> </xsl:attribute><!--Abschnitt <xsl:value-of select="position()-1"/--> </xsl:if> <xsl:apply-templates select="key('key_kzinhalt_typ', 'f')[1]" mode="dokumentanfang"/> <xsl:apply-templates/> <xsl:apply-templates select="key('key_fzinhalt_typ', 'f')[1]" mode="dokumentende"/> </xsl:otherwise> </xsl:choose> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Ausgabedaten ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:ausgabe"> <xsl:element name="table"> <xsl:attribute name="class">top bottom wi100</xsl:attribute> <xsl:element name="tr"> <xsl:apply-templates mode="erzeuge_ausgabe"/> </xsl:element> </xsl:element> </xsl:template> <xsl:template match="bka:adtext" mode="erzeuge_ausgabe"> <xsl:element name="td"> <xsl:element name="p"> <xsl:attribute name="class">AusgabeDaten AlignLeft</xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:element> </xsl:template> <xsl:template match="bka:addat" mode="erzeuge_ausgabe"> <xsl:element name="td"> <xsl:element name="p"> <xsl:attribute name="class">AusgabeDaten AlignCenter</xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:element> </xsl:template> <xsl:template match="bka:adid" mode="erzeuge_ausgabe"> <xsl:element name="td"> <xsl:element name="p"> <xsl:attribute name="class">AusgabeDaten AlignRight</xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Kurztitel ///////////////////////////////////////////////////////////////// --> <xsl:template match="*" mode="erzeuge_zeilen"></xsl:template><!-- nichts tun --> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="key('key_ueberschrift_typ', 'kurztitel')" mode="erzeuge_zeilen"> <xsl:element name="tr"> <xsl:if test="bka:tab[1]"> <xsl:element name="td"> <xsl:element name="p"> <xsl:attribute name="class">Kurztitel2 AlignLeft VAlignTop</xsl:attribute> <xsl:element name="span"> <xsl:attribute name="class">Kurztitelbreite</xsl:attribute> <!-- Verarbeite nun alles was vor dem 1. Tabulator kommt. --> <!-- tab[1]/preceding-sibling::text() bewirkt die Verarbeitung aller Textknoten vor dem 1. Tab. --> <!-- tab[1]/preceding-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:for-each select="bka:tab[1]/preceding-sibling::text() | bka:tab[1]/preceding-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:element name="p"> <xsl:attribute name="class">Kurztitel2 AlignLeft</xsl:attribute> <!-- Verarbeite nun den Rest ab dem 1. Tabulator. --> <!-- tab[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem 1. Tab. --> <!-- tab[1]/following-sibling::* bewirkt die Verarbeitung der restlichen Tabulatoren und enthaltener Subknoten. --> <xsl:for-each select="bka:tab[1]/following-sibling::text() | bka:tab[1]/following-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:if> <xsl:if test="not(bka:tab[1])"> <!-- Da es keinen Tabulator gibt, wird nur eine Spalte erzeugt. --> <xsl:element name="td"> <xsl:attribute name="colspan">2</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class">Kurztitel1 AlignLeft VAlignTop</xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:element> </xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Inhaltsverzeichnis, HTML-Tabellen //// ///////////////////////////////////////////////////////////////// --> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:inhaltsvz"> <xsl:choose > <xsl:when test="./@typ='ueberschrift'"> <xsl:element name="p"> <xsl:attribute name="class">InhaltUeberschrift</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='spalte'"> <xsl:element name="p"> <xsl:attribute name="class">InhaltSpalte</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='eintrag'"> <xsl:element name="p"> <xsl:attribute name="class">InhaltEintrag</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:table"> <xsl:element name="table"> <xsl:attribute name="class"><xsl:value-of select = "generate-id(.)"/></xsl:attribute> <xsl:apply-templates select="./@*"/> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:thead"> <xsl:element name="thead"> <xsl:apply-templates select="./@*"/> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:tr"> <xsl:element name="tr"> <xsl:if test="./@*"> <xsl:attribute name="class"><xsl:value-of select = "generate-id(.)"/></xsl:attribute> <xsl:apply-templates select="./@*"/> </xsl:if> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:td"> <xsl:element name="td"> <xsl:attribute name="class"><xsl:value-of select = "generate-id(.)"/></xsl:attribute> <xsl:apply-templates select="./@*"/> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@colspan"> <xsl:attribute name="colspan"><xsl:value-of select = "." /></xsl:attribute> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@rowspan"> <xsl:attribute name="rowspan"><xsl:value-of select = "." /></xsl:attribute> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@border"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@cellspacing"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@cellpadding"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@width"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@height"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@align"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@valign"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@style"> <!-- Wurde in die dyn. class aufgenommen --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@class"> <xsl:attribute name="class"><xsl:value-of select = "." /></xsl:attribute> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@nowrap"> <!-- Derzeit nichts tun --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@h-start"> <!-- nichts tun nur RTF-Info --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@h-xval"> <!-- nichts tun nur RTF-Info --> </xsl:template> <xsl:template name="checkForEmptyCell"> <xsl:if test="ancestor::bka:table"> <xsl:if test=". = ''"><xsl:value-of disable-output-escaping="yes" select="string('&#160;')"/></xsl:if> </xsl:if> <xsl:apply-templates/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Ueberschriften ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:ueberschrift"> <xsl:choose > <xsl:when test="./@typ='bdgesblatt'"> <xsl:element name="p"> <xsl:attribute name="class">BDGesBlatt</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='repoesterr'"> <xsl:element name="p"> <xsl:attribute name="class">RepOesterr</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='entwurf'"> <xsl:element name="p"> <xsl:attribute name="class">Entwurf</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='kurztitel'"> <xsl:if test="not(name(preceding-sibling::*[1]) = 'ueberschrift')"> <xsl:element name="table"> <xsl:attribute name="class">bottom wi100</xsl:attribute> <!-- <xsl:attribute name="parent"><xsl:value-of select="name(parent::*)"/></xsl:attribute> <xsl:attribute name="preceding"><xsl:value-of select="name(preceding::*)"/></xsl:attribute> <xsl:attribute name="preceding-sibling"><xsl:value-of select="name(preceding-sibling::*)"/></xsl:attribute> <xsl:attribute name="preceding-sibling-typ"><xsl:value-of select="preceding-sibling::*/@typ"/></xsl:attribute> <xsl:attribute name="count-preceding-sibling"><xsl:value-of select="count(preceding-sibling::*)"/></xsl:attribute> <xsl:attribute name="count-preceding"><xsl:value-of select="count(preceding::*)"/></xsl:attribute> <xsl:attribute name="yyy-sibling-typ"><xsl:value-of select="name(preceding-sibling::*[1])"/></xsl:attribute> <xsl:attribute name="zzz-sibling-typ"><xsl:value-of select="name(preceding::*[1])"/></xsl:attribute> --> <xsl:apply-templates select="../bka:ueberschrift" mode="erzeuge_zeilen"/> </xsl:element> </xsl:if> </xsl:when> <xsl:when test="./@typ='titel'"> <xsl:element name="p"> <xsl:attribute name="class">Titel</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='g1'"> <xsl:element name="p"> <xsl:attribute name="class">UeberschrG1</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='g2'"> <xsl:element name="p"> <xsl:attribute name="class">UeberschrG2</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='g1min'"> <xsl:element name="p"> <xsl:attribute name="class">UeberschrG1-</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='art'"> <xsl:element name="p"> <xsl:attribute name="class">UeberschrArt</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='para'"> <xsl:element name="p"> <xsl:attribute name="class">UeberschrPara</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='anlage'"> <xsl:element name="p"> <xsl:attribute name="class">Anlagenbez</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='erlz'"> <xsl:element name="p"> <xsl:attribute name="class">ErlUeberschrZ</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='erll'"> <xsl:element name="p"> <xsl:attribute name="class">ErlUeberschrL</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='tgue'"> <xsl:element name="p"> <xsl:attribute name="class">TGUEUeberschrSpalte</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Absaetze ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:absatz"> <xsl:choose > <xsl:when test="./@typ='undef'"> <xsl:element name="p"> <xsl:attribute name="class">Undefiniert</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='promkleinlsatz'"> <xsl:element name="p"> <xsl:attribute name="class">PromKlEinlSatz</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='abs'"> <xsl:element name="p"> <xsl:attribute name="class">Abs</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='abbobj'"> <xsl:element name="p"> <xsl:choose > <xsl:when test="./@halign='left'"> <xsl:attribute name="class">AbbildungoderObjektL</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:when> <xsl:when test="./@halign='center'"> <xsl:attribute name="class">AbbildungoderObjektZ</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:when> <xsl:when test="./@halign='right'"> <xsl:attribute name="class">AbbildungoderObjektR</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:when> <xsl:otherwise> <xsl:attribute name="class">AbbildungoderObjekt</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:otherwise> </xsl:choose> </xsl:element> </xsl:when> <xsl:when test="./@typ='novao1'"> <xsl:element name="p"> <xsl:attribute name="class">NovAo1</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='novao2'"> <xsl:element name="p"> <xsl:attribute name="class">NovAo2</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='satz'"> <xsl:element name="p"> <xsl:attribute name="class">SatznachNovao</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='tabtext'"> <xsl:element name="p"> <xsl:attribute name="class">TabText</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='tabtextr'"> <xsl:element name="p"> <xsl:attribute name="class">TabTextRechtsb</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='tabtextz'"> <xsl:element name="p"> <xsl:attribute name="class">TabTextZentriert</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='tabtextb'"> <xsl:element name="p"> <xsl:attribute name="class">TabTextBlock</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='erltext'"> <xsl:element name="p"> <xsl:attribute name="class">ErlText</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='kz'"> <xsl:element name="p"> <xsl:attribute name="class">Kopfzeile</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='fz'"> <xsl:element name="p"> <xsl:attribute name="class">Fusszeile</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:abstand"> <xsl:element name="p"> <xsl:attribute name="class">Abstand</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Normale Liste / Aufzaehlung ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:liste"> <xsl:element name="table"> <xsl:attribute name="class">wi100</xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:erlliste"> <xsl:apply-templates mode="erzeuge_erl_liste"> <xsl:with-param name="classname">ErlAufzaehlg</xsl:with-param> </xsl:apply-templates> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:ziffernliste"> <xsl:choose > <xsl:when test="./@ebene='1'"> <xsl:apply-templates mode="erzeuge_liste_ebene1"> <xsl:with-param name="classname">ZifferE1</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='2'"> <xsl:apply-templates mode="erzeuge_liste_ebene2"> <xsl:with-param name="classname">ZifferE2</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='3'"> <xsl:apply-templates mode="erzeuge_liste_ebene3"> <xsl:with-param name="classname">ZifferE3</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falsche Ebene: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:literaliste"> <xsl:choose > <xsl:when test="./@ebene='1'"> <xsl:apply-templates mode="erzeuge_liste_ebene1"> <xsl:with-param name="classname">LiteraE1</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='2'"> <xsl:apply-templates mode="erzeuge_liste_ebene2"> <xsl:with-param name="classname">LiteraE2</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='3'"> <xsl:apply-templates mode="erzeuge_liste_ebene3"> <xsl:with-param name="classname">LiteraE3</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falsche Ebene: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:subliteraliste"> <xsl:choose > <xsl:when test="./@ebene='1'"> <xsl:apply-templates mode="erzeuge_liste_ebene1"> <xsl:with-param name="classname">SubliteraE1</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='2'"> <xsl:apply-templates mode="erzeuge_liste_ebene2"> <xsl:with-param name="classname">SubliteraE2</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='3'"> <xsl:apply-templates mode="erzeuge_liste_ebene3"> <xsl:with-param name="classname">SubliteraE3</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falsche Ebene: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:strichliste"> <xsl:choose > <xsl:when test="./@ebene='1'"> <xsl:apply-templates mode="erzeuge_liste_ebene1"> <xsl:with-param name="classname">StrichE1</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='2'"> <xsl:apply-templates mode="erzeuge_liste_ebene2"> <xsl:with-param name="classname">StrichE2</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='3'"> <xsl:apply-templates mode="erzeuge_liste_ebene3"> <xsl:with-param name="classname">StrichE3</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@ebene='4'"> <xsl:apply-templates mode="erzeuge_liste_ebene4"> <xsl:with-param name="classname">StrichE4</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falsche Ebene: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_erl_liste"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"> <xsl:attribute name="class"><xsl:text>WErl AlignRight VAlignTop</xsl:text></xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class"> <xsl:text>AlignJustify </xsl:text> <xsl:choose> <xsl:when test="ancestor::bka:abschnitt/@paperf[.='q']"> <xsl:text>ErlSp2Q</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>ErlSp2</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> <xsl:attribute name="colspan">7</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_liste_ebene1"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"> <xsl:attribute name="class"><xsl:text>W38 AlignRight VAlignTop</xsl:text></xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class"> <xsl:text>AlignJustify </xsl:text> <xsl:choose> <xsl:when test="ancestor::bka:abschnitt/@paperf[.='q']"> <xsl:text>E1Sp2Q</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>E1Sp2</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> <xsl:attribute name="colspan">7</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_liste_ebene2"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"/> <xsl:element name="td"> <xsl:attribute name="class">W15 AlignRight VAlignTop</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class"> <xsl:text>AlignJustify </xsl:text> <xsl:choose> <xsl:when test="ancestor::bka:abschnitt/@paperf[.='q']"> <xsl:text>E2Sp2Q</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>E2Sp2</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> <xsl:attribute name="colspan">6</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_liste_ebene3"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"/> <xsl:element name="td"/> <xsl:element name="td"> <xsl:attribute name="class">W22 AlignRight VAlignTop</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class"> <xsl:text>AlignJustify </xsl:text> <xsl:choose> <xsl:when test="ancestor::bka:abschnitt/@paperf[.='q']"> <xsl:text>E3Sp2Q</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>E3Sp2</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> <xsl:attribute name="colspan">5</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_liste_ebene4"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"/> <xsl:element name="td"/> <xsl:element name="td"/> <xsl:element name="td"> <xsl:attribute name="class">W22 AlignRight VAlignTop</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class"> <xsl:text>AlignJustify </xsl:text> <xsl:choose> <xsl:when test="ancestor::bka:abschnitt/@paperf[.='q']"> <xsl:text>E4Sp2Q</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>E4Sp2</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> <xsl:attribute name="colspan">4</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:apply-templates select="."/> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:schluss"> <xsl:choose > <xsl:when test="./@typ='Abs'"><!-- Keine Einr�ckung --> <xsl:element name="tr"> <xsl:element name="td"> <xsl:attribute name="class">AlignJustify</xsl:attribute> <xsl:attribute name="colspan">8</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class">SchlussteilAbs</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:element> </xsl:element> </xsl:when> <xsl:when test="./@typ='Ziff'"><!-- wie Ebene 1 --> <xsl:element name="tr"> <xsl:element name="td"> <xsl:attribute name="class"><xsl:text>W38</xsl:text></xsl:attribute> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class">AlignJustify</xsl:attribute> <xsl:attribute name="colspan">7</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:text>SchlussteilZiff</xsl:text></xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:element> </xsl:element> </xsl:when> <xsl:when test="./@typ='Lit'"> <xsl:element name="tr"> <xsl:element name="td"/> <xsl:element name="td"> <xsl:attribute name="class">W15</xsl:attribute><!-- wie Ebene 2 --> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class">AlignJustify</xsl:attribute> <xsl:attribute name="colspan">6</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class">SchlussteilLit</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:element> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Liste mit Betrag ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:betragliste"> <xsl:choose > <xsl:when test="./@typ='ziffer'"> <xsl:apply-templates mode="erzeuge_betragliste_ebene1"> <xsl:with-param name="classname">ZifferMitBetrag</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@typ='litera'"> <xsl:apply-templates mode="erzeuge_betragliste_ebene2"> <xsl:with-param name="classname">LiteraMitBetrag</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@typ='sublitera'"> <xsl:apply-templates mode="erzeuge_betragliste_ebene3"> <xsl:with-param name="classname">SubliteraMitBetrag</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:betraglistetgue"> <xsl:choose > <xsl:when test="./@typ='ziffer'"> <xsl:apply-templates mode="erzeuge_betragliste_ebene1"> <xsl:with-param name="classname">ZifferMitBetragTGUE</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@typ='litera'"> <xsl:apply-templates mode="erzeuge_betragliste_ebene2"> <xsl:with-param name="classname">LiteraMitBetragTGUE</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:when test="./@typ='sublitera'"> <xsl:apply-templates mode="erzeuge_betragliste_ebene3"> <xsl:with-param name="classname">SubliteraMitBetragTGUE</xsl:with-param> </xsl:apply-templates> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_betragliste_ebene1"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"> <xsl:attribute name="class">AlignRight VAlignTop</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class">AlignJustify</xsl:attribute> <xsl:attribute name="colspan">5</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:if test="name() = 'tab'"> <xsl:value-of select="string('</p></td><td><p class="')" disable-output-escaping="yes"/> <xsl:value-of select = "$classname"/><xsl:value-of select="string('">')" disable-output-escaping="yes"/> </xsl:if> <xsl:if test="name() != 'tab'"> <xsl:apply-templates select="."/> </xsl:if> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_betragliste_ebene2"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"/> <xsl:element name="td"> <xsl:attribute name="class">AlignRight VAlignTop</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class">AlignJustify</xsl:attribute> <xsl:attribute name="colspan">4</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:if test="name() = 'tab'"> <xsl:value-of select="string('</p></td><td><p class="')" disable-output-escaping="yes"/> <xsl:value-of select = "$classname"/><xsl:value-of select="string('">')" disable-output-escaping="yes"/> </xsl:if> <xsl:if test="name() != 'tab'"> <xsl:apply-templates select="."/> </xsl:if> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:listelem" mode="erzeuge_betragliste_ebene3"> <xsl:param name = "classname"/> <xsl:element name="tr"> <xsl:element name="td"/> <xsl:element name="td"/> <xsl:element name="td"> <xsl:attribute name="class">AlignRight VAlignTop</xsl:attribute> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:apply-templates select="bka:symbol[1]"/> </xsl:element> </xsl:element> <xsl:element name="td"> <xsl:attribute name="class">AlignJustify</xsl:attribute> <xsl:attribute name="colspan">3</xsl:attribute> <!-- Verarbeite nun den Rest ab dem Symbolknoten. --> <!-- symbol[1]/following-sibling::text() bewirkt die Verarbeitung aller Textknoten nach dem Symbolknoten. --> <!-- symbol[1]/following-sibling::* bewirkt die Verarbeitung der enthaltenen Subknoten. --> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select = "$classname"/></xsl:attribute> <xsl:for-each select="bka:symbol[1]/following-sibling::text() | bka:symbol[1]/following-sibling::*"> <xsl:if test="name() = 'tab'"> <xsl:value-of select="string('</p></td><td><p class="')" disable-output-escaping="yes"/> <xsl:value-of select = "$classname"/><xsl:value-of select="string('">')" disable-output-escaping="yes"/> </xsl:if> <xsl:if test="name() != 'tab'"> <xsl:apply-templates select="."/> </xsl:if> </xsl:for-each> </xsl:element> </xsl:element> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Unterschrift ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:unterschrift"> <xsl:choose > <xsl:when test="./@typ='links'"> <xsl:element name="p"> <xsl:attribute name="class">UnterschrL</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='mitte'"> <xsl:element name="p"> <xsl:attribute name="class">UnterschrM</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='rechts'"> <xsl:element name="p"> <xsl:attribute name="class">UnterschrR</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Zeichenformatierung ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:error"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:gldsym"> <xsl:element name="span"> <xsl:attribute name="class">GldSymbol</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:n"> <xsl:element name="span"> <xsl:attribute name="class">Normal</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:f | bka:b"> <xsl:element name="span"> <xsl:attribute name="class">Fett</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:k | bka:i"> <xsl:element name="span"> <xsl:attribute name="class">Kursiv</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:u"> <xsl:element name="span"> <xsl:attribute name="class">Unterstrichen</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:gs"> <xsl:element name="span"> <xsl:attribute name="class">Gesperrt</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:h | bka:super"> <xsl:element name="span"> <xsl:attribute name="class">Hoch</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:t | bka:sub"> <xsl:element name="span"> <xsl:attribute name="class">Tief</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:fk"> <xsl:element name="span"> <xsl:attribute name="class">FettundKursiv</xsl:attribute> <xsl:if test=".=' '"><xsl:value-of select = "." /></xsl:if><!-- MSXSL reduziert mehrere Blanks auf eines. --> <xsl:if test="not(.=' ')"><xsl:apply-templates/></xsl:if> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Sonderzeichen ///////////////////////////////////////////////////////////////// --> <!-- ///////////////////////////////////////////////////////////////// gesch�tztes Leerzeichen --> <xsl:template match="bka:nbsp"> <xsl:value-of disable-output-escaping="yes" select="string('&#160;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// doppeltes Anf�hrungszeichen unten (typografisch) --> <xsl:template match="bka:bdquo"> <xsl:value-of disable-output-escaping="yes" select="string('&#8222;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// doppeltes Anf�hrungszeichen oben, links (typografisch) --> <xsl:template match="bka:ldquo"> <xsl:value-of disable-output-escaping="yes" select="string('&#8220;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// kurzer Gedankenstrich --> <xsl:template match="bka:kidea"> <xsl:value-of disable-output-escaping="yes" select="string('&#8211;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// langer Gedankenstrich --> <xsl:template match="bka:lidea"> <xsl:value-of disable-output-escaping="yes" select="string('&#8212;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// gesch�tzter Trennstrich --> <xsl:template match="bka:gdash"> <xsl:value-of disable-output-escaping="yes" select="string('&#45;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// bedingter Trennstrich (Silbentrennzeichen), Word spezifisch --> <xsl:template match="bka:bdash"><!-- nichts tun --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// Euro-Zeichen --> <xsl:template match="bka:euro"> <xsl:value-of disable-output-escaping="yes" select="string('&#8364;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// <-Zeichen --> <xsl:template match="bka:lt"> <xsl:value-of disable-output-escaping="yes" select="string('&lt;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// >-Zeichen --> <xsl:template match="bka:gt"> <xsl:value-of disable-output-escaping="yes" select="string('&gt;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// &-Zeichen --> <xsl:template match="bka:amp"> <xsl:value-of disable-output-escaping="yes" select="string('&amp;')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// Manueller Zeilenumbruch --> <xsl:template match="bka:br"> <xsl:value-of disable-output-escaping="yes" select="string('<br/>')"/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:tab"> <!-- Da weder in HTML noch in CSS2 Tabulatoren moeglich sind, wird ein Tabulator durch ein Blank ersetzt, das in span eingeschlossen ist. --> <xsl:element name="span"> <xsl:attribute name="class">Standardtabulator</xsl:attribute> <xsl:value-of disable-output-escaping="yes" select="string('&#160;')"/> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// Zeilenwechsel / Spaltenwechsel--> <xsl:template match="bka:wechsel"><!-- nichts tun --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Verweise ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:wwwlink"> <!-- SLXHTML 1.0.1 unterst�tzt das Hypertext Modul NICHT --> <xsl:text>[Verweis: </xsl:text> <xsl:value-of select="@url"/> <xsl:text>] </xsl:text> <xsl:apply-templates/> <!-- XHTML 1.1 --> <!--xsl:element name="a"> <xsl:apply-templates select="./@*"/> <xsl:apply-templates/> </xsl:element--> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="@url"> <xsl:attribute name="href"><xsl:value-of select = "." /></xsl:attribute> </xsl:template> <!-- ///////////////////////////////////////////////////////////////////////////// //// Eingebettete base64-codierte Bin�rdaten ///////////////////////////////////////////////////////////////////////////// Alle Bin�rdateien werden in ein Unterverzeichnis ausgelagert. Nach dem alten eRecht-Schema mu�te das binary-Element ein ref-Attribut besitzen, das den relativen Dateinamen der ausgelagerten Datei enth�lt. Nach dem neuen eRecht-Schema wird dieser relative Dateiname in einem src-Element (unter dem binary-Element) gehalten. Dieses Stylesheet-File unterstuetzt beide Varianten. --> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:binary"> <xsl:element name="img"> <xsl:if test="./@ref"> <xsl:if test="./@ref = ''"> <!-- Abfragen der Art <xsl:if test="./bka:src"> funktionieren nicht. --> <xsl:apply-templates select="./bka:src"/> </xsl:if> <xsl:if test="not(./@ref = '')"> <xsl:attribute name="src"><xsl:value-of select = "./@ref" /></xsl:attribute> </xsl:if> </xsl:if> <xsl:if test="not(./@ref)"> <!-- Abfragen der Art <xsl:if test="./bka:src"> funktionieren nicht. --> <xsl:apply-templates select="./bka:src"/> </xsl:if> <xsl:attribute name="alt"><xsl:value-of select = "./@alt" /></xsl:attribute> </xsl:element> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:src"> <xsl:attribute name="src"><xsl:value-of select = "." /></xsl:attribute> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Beschriftung zu Grafiken ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:beschr"> <xsl:choose > <xsl:when test="./@typ='links'"> <xsl:element name="p"> <xsl:attribute name="class">BeschriftungL</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='mitte'"> <xsl:element name="p"> <xsl:attribute name="class">BeschriftungZ</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:when test="./@typ='rechts'"> <xsl:element name="p"> <xsl:attribute name="class">BeschriftungR</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:attribute name="class">Beschriftung</xsl:attribute> <xsl:call-template name="checkForEmptyCell"/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Fu�- und Endnoten ///////////////////////////////////////////////////////////////// --> <!-- Fu�zeilen sollen erst am Ende verarbeitet werden --> <xsl:template match="bka:fnen"><!-- nichts tun --> </xsl:template> <xsl:template match="bka:fnen" mode="dokumentende"> <xsl:apply-templates/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <!-- In XHTML1.1: Statt dem Attribut "name" wird jetzt "id" verwendet. --> <xsl:template match="bka:fnzeichen"> <xsl:choose > <xsl:when test="./@typ='f'"> <!-- XHTML 1.1 L�sung --> <!--xsl:element name="a"> <xsl:attribute name="href"><xsl:value-of select = "string('#FN')" /><xsl:value-of select = "." /></xsl:attribute> <xsl:attribute name="id"><xsl:value-of select = "string('FNREF')" /><xsl:value-of select = "." /></xsl:attribute> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute> <xsl:value-of select = "string('[')" /> <xsl:apply-templates/> <xsl:value-of select = "string(']')" /> </xsl:element> </xsl:element--> <!-- SLXHTML 1.0.1 unterst�tzt das Hypertext Modul NICHT --> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute> <xsl:value-of select = "string('[')" /> <xsl:apply-templates/> <xsl:value-of select = "string(']')" /> </xsl:element> </xsl:when> <xsl:when test="./@typ='e'"> <!-- XHTML 1.1 L�sung --> <!--xsl:element name="a"> <xsl:attribute name="href"><xsl:value-of select = "string('#EN')" /><xsl:value-of select = "." /></xsl:attribute> <xsl:attribute name="id"><xsl:value-of select = "string('ENREF')" /><xsl:value-of select = "." /></xsl:attribute> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute> <xsl:value-of select = "string('[')" /> <xsl:apply-templates/> <xsl:value-of select = "string(']')" /> </xsl:element> </xsl:element--> <!-- SLXHTML 1.0.1 unterst�tzt das Hypertext Modul NICHT --> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute> <xsl:value-of select = "string('[')" /> <xsl:apply-templates/> <xsl:value-of select = "string(']')" /> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <!-- In XHTML1.1: Statt dem Attribut "name" wird jetzt "id" verwendet. --> <xsl:template match="bka:fntext"> <xsl:choose > <xsl:when test="./@typ='f'"> <xsl:if test="./@nr = 1"> <xsl:element name="p"> <xsl:attribute name="class">FNLinie</xsl:attribute> </xsl:element> </xsl:if> <xsl:element name="p"> <xsl:attribute name="class">FNText</xsl:attribute> <!-- XHTML 1.1 L�sung --> <!--xsl:element name="a"> <xsl:attribute name="href"><xsl:value-of select = "string('#FNREF')" /><xsl:value-of select = "./@nr" /></xsl:attribute> <xsl:attribute name="id"><xsl:value-of select = "string('FN')" /><xsl:value-of select = "./@nr" /></xsl:attribute> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute> <xsl:value-of select = "string('[')" /> <xsl:value-of select = "./@nr" /> <xsl:value-of select = "string(']')" /> </xsl:element> </xsl:element--> <!-- SLXHTML 1.0.1 unterst�tzt das Hypertext Modul NICHT --> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute><!-- unten kein FNZeichen! --> <xsl:value-of select = "string('[')" /> <xsl:value-of select = "./@nr" /> <xsl:value-of select = "string(']')" /> </xsl:element> <xsl:value-of disable-output-escaping="yes" select="string('&#160;')"/> <xsl:apply-templates/> </xsl:element> </xsl:when> <xsl:when test="./@typ='e'"> <xsl:if test="./@nr = 1"> <xsl:element name="p"> <xsl:attribute name="class">FNLinie</xsl:attribute> </xsl:element> </xsl:if> <xsl:element name="p"> <xsl:attribute name="class">FNText</xsl:attribute> <!-- XHTML 1.1 L�sung --> <!--xsl:element name="a"> <xsl:attribute name="href"><xsl:value-of select = "string('#ENREF')" /><xsl:value-of select = "./@nr" /></xsl:attribute> <xsl:attribute name="id"><xsl:value-of select = "string('EN')" /><xsl:value-of select = "./@nr" /></xsl:attribute> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute> <xsl:value-of select = "string('[')" /> <xsl:value-of select = "./@nr" /> <xsl:value-of select = "string(']')" /> </xsl:element> </xsl:element--> <!-- SLXHTML 1.0.1 unterst�tzt das Hypertext Modul NICHT --> <xsl:element name="span"> <xsl:attribute name="class">FNText</xsl:attribute><!-- unten kein FNZeichen! --> <xsl:value-of select = "string('[')" /> <xsl:value-of select = "./@nr" /> <xsl:value-of select = "string(']')" /> </xsl:element> <xsl:value-of disable-output-escaping="yes" select="string('&#160;')"/> <xsl:apply-templates/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// //// Kopf- und Fu�zeilen ///////////////////////////////////////////////////////////////// --> <!-- Kopf- und Fu�zeilen sollen an bestimmten Stellen verarbeitet werden und nicht dann wenn sie im XML-String vorkommen --> <xsl:template match="bka:kzinhalt | bka:fzinhalt"><!-- nichts tun --> </xsl:template> <!-- <xsl:template match="fzinhalt" mode="dokumentende"> <xsl:choose > <xsl:when test="./@typ='f'"> </xsl:when> <xsl:when test="./@typ='p'"> <xsl:apply-templates/> </xsl:when> <xsl:otherwise> <xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falscher Typ: Bitte melden Sie den Fehler:</xsl:text> </xsl:element> <xsl:apply-templates/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:template> --> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="key('key_kzinhalt_typ', 'f')" mode="dokumentanfang"> <!--xsl:apply-templates/--><!-- keine Ausgabe gewuenscht --> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="key('key_fzinhalt_typ', 'f')" mode="dokumentende"> <xsl:apply-templates/> </xsl:template> <!-- ///////////////////////////////////////////////////////////////// --> <xsl:template match="bka:symbol"> <xsl:apply-templates/> </xsl:template> <!-- //////////////Alle anderen Konstrukte//////////////////////////// --> <xsl:template match="*"> <!--xsl:element name="p"> <xsl:element name="span"> <xsl:attribute name="class">Fehler</xsl:attribute> <xsl:text>Falsches Konstrukt: Bitte melden Sie den Fehler:</xsl:text> <xsl:value-of select="name()"></xsl:value-of> </xsl:element> <xsl:apply-templates/> </xsl:element--> <xsl:element name="{name()}"> <xsl:for-each select = "./@*" > <xsl:attribute name="{name()}"><xsl:value-of select="."></xsl:value-of></xsl:attribute> </xsl:for-each> <xsl:apply-templates/> </xsl:element> </xsl:template> <!-- //////////// Folgende Elemente muessen ignoriert werden, da sie bereits anderweitig abgefragt werden. //////////// --> <xsl:template match="bka:layoutdaten | bka:aw | bka:pdeinst"><!-- nichts tun --> </xsl:template> <!-- ////////////// Parlamentsdirektion //////////////////////////// --> <xsl:template match="bka:pdvorlage"> <xsl:element name="p"> <xsl:attribute name="class"><xsl:value-of select="./bka:pdeinst[1]/@formatname"></xsl:value-of></xsl:attribute> <xsl:apply-templates/> </xsl:element> </xsl:template> </xsl:stylesheet>