/[formed]/trunk/contrib/convert-formedtree2html.xsl
ViewVC logotype

Annotation of /trunk/contrib/convert-formedtree2html.xsl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 53 - (hide annotations)
Fri Aug 17 16:13:36 2007 UTC (17 years, 6 months ago) by frank
File MIME type: application/xml
File size: 3763 byte(s)
* contrib/convert-formedtree2html.xsl: 
	Heading level depending on depth of group node. 
	In case of radio/choice/check only list of options.


1 torsten 50 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2     <!--
3     (c) 2007 by Intevation GmbH
4 frank 53 Authors: Torsten Irlaender
5     Frank Koormann
6     Converts the Formed xml tree into html
7    
8     TODO:
9     - Verstaendliche Typenbezeichnung:
10     radio: Radiobutton
11     choice: Auswahlliste
12     checkbox: Checkbox
13     text: Textfeld
14     textarea: Textbereich
15     int: Zahl
16     date: Datum
17     bool: s.u.
18 torsten 50 -->
19     <xsl:output indent="yes" method="html" encoding="UTF-8"/>
20     <xsl:template match="/">
21 torsten 51 <xsl:text disable-output-escaping="yes">
22     <![CDATA[
23     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
24     ]]>
25     </xsl:text>
26     <html>
27     <head>
28     <title> Formularfelder Auflistung </title>
29     </head>
30     <body>
31     <table>
32     <tr>
33     <th>Formular Bezeichnung</th>
34     <th>Typ</th>
35     <th>Datenbank Id</th>
36     <th>Textfeld Laenge</th>
37     <th>Textfeld max. Laenge</th>
38     <th>Int min. Wert</th>
39     <th>Int max. Wert</th>
40     <th>Textbereich anz. Reihen</th>
41     <th>Textbereich anz. Spalten</th>
42     </tr>
43     <xsl:apply-templates/>
44     </table>
45     </body>
46     </html>
47 torsten 50 </xsl:template>
48    
49     <xsl:template match="group">
50     <tr>
51     <td colspan="9">
52 frank 53 <xsl:choose>
53     <xsl:when test="count(ancestor::*) = 1">
54     <h1><xsl:value-of select="@description"/></h1>
55     </xsl:when>
56     <xsl:when test="count(ancestor::*) = 2">
57     <h2><xsl:value-of select="@description"/></h2>
58     </xsl:when>
59     <xsl:when test="count(ancestor::*) = 3">
60     <h3><xsl:value-of select="@description"/></h3>
61     </xsl:when>
62     <xsl:when test="count(ancestor::*) = 4">
63     <h4><xsl:value-of select="@description"/></h4>
64     </xsl:when>
65     <xsl:when test="count(ancestor::*) = 5">
66     <h5><xsl:value-of select="@description"/></h5>
67     </xsl:when>
68     <xsl:otherwise>
69     <h6><xsl:value-of select="@description"/></h6>
70     </xsl:otherwise>
71     </xsl:choose>
72 torsten 50 </td>
73     </tr>
74     <xsl:apply-templates/>
75     </xsl:template>
76    
77     <xsl:template match="switch">
78     <tr>
79     <td colspan="9">
80     <h2>
81     <xsl:text>{</xsl:text>
82     <xsl:value-of select="local-name()"/>
83     <xsl:text>} </xsl:text> <xsl:value-of select="@description"/>
84     </h2>
85     </td>
86     </tr>
87     <xsl:apply-templates/>
88     <tr>
89     <td colspan="9">
90     <h2>
91     <xsl:text>{/</xsl:text>
92     <xsl:value-of select="local-name()"/>
93     <xsl:text>} </xsl:text> <xsl:value-of select="@description"/>
94     </h2>
95     </td>
96     </tr>
97     </xsl:template>
98     <xsl:template match="radio|choice|checkbox">
99     <tr>
100     <td>
101     <b>
102     <xsl:text>[</xsl:text>
103     <xsl:value-of select="@description"/>
104     <xsl:text>]</xsl:text>
105     </b>
106     </td>
107     <td> <xsl:value-of select="local-name()"/> </td>
108     <td> <xsl:value-of select="@name"/> </td>
109     <td colspan="6">
110     </td>
111     </tr>
112 frank 53 <xsl:apply-templates select="bool" mode="select"/>
113 torsten 50 <tr>
114     <td colspan="9">
115     <b>
116     <xsl:text>[/</xsl:text>
117     <xsl:value-of select="@description"/>
118     <xsl:text>]</xsl:text>
119     </b>
120     </td>
121     </tr>
122     </xsl:template>
123    
124     <xsl:template match="text|textarea|int|date|bool">
125     <tr>
126     <td> <xsl:value-of select="@description"/> </td>
127     <td> <xsl:value-of select="local-name()"/> </td>
128     <td> <xsl:value-of select="@name"/> </td>
129     <td> <xsl:value-of select="@size"/> </td>
130     <td> <xsl:value-of select="@maxlength"/> </td>
131     <td> <xsl:value-of select="@minvalue"/> </td>
132     <td> <xsl:value-of select="@maxvalue"/> </td>
133     <td> <xsl:value-of select="@rows"/> </td>
134     <td> <xsl:value-of select="@cols"/> </td>
135     </tr>
136     </xsl:template>
137 frank 53
138    
139     <xsl:template match="bool" mode="select">
140     <tr>
141     <td></td>
142     <td> <xsl:value-of select="@description"/> </td>
143     <td colspan="7"></td>
144     </tr>
145     </xsl:template>
146    
147 torsten 50 <!-- suppress unneeded textual content -->
148     <xsl:template match="text()"/>
149     </xsl:stylesheet>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26