html2odt 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,114 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+
4
+ xhtml2odt - XHTML to ODT XML transformation.
5
+ Copyright (C) 2009 Aurelien Bompard
6
+ Inspired by the work on docbook2odt, by Roman Fordinal
7
+ http://open.comsultia.com/docbook2odf/
8
+
9
+ License: LGPL v2.1 or later <http://www.gnu.org/licenses/lgpl-2.1.html>
10
+
11
+ This library is free software; you can redistribute it and/or
12
+ modify it under the terms of the GNU Lesser General Public
13
+ License as published by the Free Software Foundation; either
14
+ version 2.1 of the License, or (at your option) any later version.
15
+
16
+ This library is distributed in the hope that it will be useful,
17
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19
+ Lesser General Public License for more details.
20
+
21
+ You should have received a copy of the GNU Lesser General Public
22
+ License along with this library; if not, write to the Free Software
23
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
24
+ MA 02110-1301 USA
25
+
26
+ -->
27
+ <xsl:stylesheet
28
+ xmlns:h="http://www.w3.org/1999/xhtml"
29
+ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
30
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
31
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
32
+ xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
33
+ xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
34
+ xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
35
+ xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
36
+ xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
37
+ xmlns:xlink="http://www.w3.org/1999/xlink"
38
+ xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
39
+ xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
40
+ xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
41
+ xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
42
+ xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
43
+ xmlns:math="http://www.w3.org/1998/Math/MathML"
44
+ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
45
+ xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
46
+ xmlns:dom="http://www.w3.org/2001/xml-events"
47
+ xmlns:xforms="http://www.w3.org/2002/xforms"
48
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
49
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
50
+ xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0"
51
+ version="1.0">
52
+
53
+ <!--
54
+ Create a specific automatic-style for each <span> tag with a style
55
+ attribute.
56
+ Parse the CSS values in the style attribute and convert them verbatim to
57
+ ODT XML. Luckily, the propreties are very often identical in name and
58
+ syntax. If not, they will be silently ignored by the application, so it's
59
+ not a big deal.
60
+ -->
61
+
62
+ <xsl:template name="inline">
63
+
64
+ <xsl:for-each select="//h:span[@style]">
65
+ <style:style style:family="text">
66
+ <xsl:attribute name="style:name">
67
+ <xsl:value-of select="concat('inline-style.', generate-id(.))"/>
68
+ </xsl:attribute>
69
+ <style:text-properties>
70
+ <xsl:call-template name="css.style.multi">
71
+ <xsl:with-param name="style" select="@style"/>
72
+ </xsl:call-template>
73
+ </style:text-properties>
74
+ </style:style>
75
+ </xsl:for-each>
76
+
77
+ </xsl:template>
78
+
79
+ <!-- pass the content of the style attribute to this template, it will split
80
+ the CSS properties -->
81
+ <xsl:template name="css.style.multi">
82
+ <xsl:param name="style"/>
83
+ <xsl:choose>
84
+ <xsl:when test="contains($style, ';')">
85
+ <xsl:call-template name="css.style.multi">
86
+ <xsl:with-param name="style" select="substring-before($style, ';')"/>
87
+ </xsl:call-template>
88
+ <xsl:call-template name="css.style.multi">
89
+ <xsl:with-param name="style" select="substring-after($style, ';')"/>
90
+ </xsl:call-template>
91
+ </xsl:when>
92
+ <xsl:otherwise>
93
+ <xsl:call-template name="css.style.single">
94
+ <xsl:with-param name="name" select="substring-before($style, ':')"/>
95
+ <xsl:with-param name="value" select="substring-after($style, ':')"/>
96
+ </xsl:call-template>
97
+ </xsl:otherwise>
98
+ </xsl:choose>
99
+ </xsl:template>
100
+
101
+ <!-- pass the individual CSS properties to this template, it will create the
102
+ ODT XML style attributes -->
103
+ <xsl:template name="css.style.single">
104
+ <xsl:param name="name"/>
105
+ <xsl:param name="value"/>
106
+ <xsl:if test="translate($name,' ','') != '' and
107
+ translate($value,' ','') != ''">
108
+ <xsl:attribute name="{concat('fo:',translate($name,' ',''))}">
109
+ <xsl:value-of select="translate($value,' ','')"/>
110
+ </xsl:attribute>
111
+ </xsl:if>
112
+ </xsl:template>
113
+
114
+ </xsl:stylesheet>
@@ -0,0 +1,455 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+
4
+ xhtml2odt - XHTML to ODT XML transformation.
5
+ Copyright (C) 2009 Aurelien Bompard
6
+ Inspired by the work on docbook2odt, by Roman Fordinal
7
+ http://open.comsultia.com/docbook2odf/
8
+
9
+ License: LGPL v2.1 or later <http://www.gnu.org/licenses/lgpl-2.1.html>
10
+
11
+ This library is free software; you can redistribute it and/or
12
+ modify it under the terms of the GNU Lesser General Public
13
+ License as published by the Free Software Foundation; either
14
+ version 2.1 of the License, or (at your option) any later version.
15
+
16
+ This library is distributed in the hope that it will be useful,
17
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19
+ Lesser General Public License for more details.
20
+
21
+ You should have received a copy of the GNU Lesser General Public
22
+ License along with this library; if not, write to the Free Software
23
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
24
+ MA 02110-1301 USA
25
+
26
+ -->
27
+ <xsl:stylesheet
28
+ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
29
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
30
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
31
+ xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
32
+ xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
33
+ xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
34
+ xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
35
+ xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
36
+ xmlns:xlink="http://www.w3.org/1999/xlink"
37
+ xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
38
+ xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
39
+ xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
40
+ xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
41
+ xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
42
+ xmlns:math="http://www.w3.org/1998/Math/MathML"
43
+ xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
44
+ xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
45
+ xmlns:dom="http://www.w3.org/2001/xml-events"
46
+ xmlns:xforms="http://www.w3.org/2002/xforms"
47
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
48
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
49
+ xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0"
50
+ version="1.0">
51
+
52
+ <xsl:template name="mainstyles">
53
+
54
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Caption']) = 0">
55
+ <style:style style:name="Caption" style:display-name="Caption" style:class="extra"
56
+ style:family="paragraph" style:parent-style-name="Standard">
57
+ <style:paragraph-properties fo:margin-top="0.2cm" fo:margin-bottom="0.2cm"
58
+ text:number-lines="false" text:line-number="0"/>
59
+ <style:text-properties fo:font-size="95%" fo:font-style="italic"/>
60
+ </style:style>
61
+ </xsl:if>
62
+
63
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Citation']) = 0">
64
+ <style:style style:name="Citation" style:display-name="Citation" style:family="text">
65
+ <style:text-properties fo:font-style="italic"/>
66
+ </style:style>
67
+ </xsl:if>
68
+
69
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Footnote']) = 0">
70
+ <style:style style:name="Footnote" style:display-name="Footnote"
71
+ style:family="paragraph" style:class="extra"
72
+ style:parent-style-name="Standard">
73
+ <style:paragraph-properties fo:margin-left="0.5cm" fo:margin-right="0cm"
74
+ fo:text-indent="-0.5cm" style:auto-text-indent="false"
75
+ text:number-lines="false" text:line-number="0"/>
76
+ <style:text-properties fo:font-size="10pt"/>
77
+ </style:style>
78
+ </xsl:if>
79
+
80
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Heading_20_1']) = 0">
81
+ <style:style style:name="Heading_20_1" style:display-name="Heading 1"
82
+ style:family="paragraph" style:parent-style-name="Heading"
83
+ style:next-style-name="Text_20_body" style:class="text"
84
+ style:default-outline-level="1">
85
+ <style:text-properties fo:font-size="115%" fo:font-weight="bold"/>
86
+ </style:style>
87
+ </xsl:if>
88
+
89
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Heading_20_2']) = 0">
90
+ <style:style style:name="Heading_20_2" style:display-name="Heading 2"
91
+ style:family="paragraph" style:parent-style-name="Heading"
92
+ style:next-style-name="Text_20_body" style:class="text"
93
+ style:default-outline-level="2">
94
+ <style:text-properties fo:font-size="110%" fo:font-weight="bold"
95
+ fo:font-style="italic"/>
96
+ </style:style>
97
+ </xsl:if>
98
+
99
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Heading_20_3']) = 0">
100
+ <style:style style:name="Heading_20_3" style:display-name="Heading 3"
101
+ style:family="paragraph" style:parent-style-name="Heading"
102
+ style:next-style-name="Text_20_body" style:class="text"
103
+ style:default-outline-level="3">
104
+ <style:text-properties fo:font-size="105%" fo:font-weight="bold"/>
105
+ </style:style>
106
+ </xsl:if>
107
+
108
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Heading_20_4']) = 0">
109
+ <style:style style:name="Heading_20_4" style:display-name="Heading 4"
110
+ style:family="paragraph" style:parent-style-name="Heading"
111
+ style:next-style-name="Text_20_body" style:class="text"
112
+ style:default-outline-level="4">
113
+ <style:text-properties fo:font-size="100%" fo:font-weight="bold"/>
114
+ </style:style>
115
+ </xsl:if>
116
+
117
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Heading_20_5']) = 0">
118
+ <style:style style:name="Heading_20_5" style:display-name="Heading 5"
119
+ style:family="paragraph" style:parent-style-name="Heading"
120
+ style:next-style-name="Text_20_body" style:class="text"
121
+ style:default-outline-level="5">
122
+ <style:text-properties fo:font-size="100%" fo:font-style="italic"/>
123
+ </style:style>
124
+ </xsl:if>
125
+
126
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Heading_20_6']) = 0">
127
+ <style:style style:name="Heading_20_6" style:display-name="Heading 6"
128
+ style:family="paragraph" style:parent-style-name="Heading"
129
+ style:next-style-name="Text_20_body" style:class="text"
130
+ style:default-outline-level="6">
131
+ <style:text-properties fo:font-size="90%" fo:font-weight="bold"
132
+ style:text-underline-style="solid"
133
+ style:text-underline-width="auto"
134
+ style:text-underline-color="font-color"/>
135
+ </style:style>
136
+ </xsl:if>
137
+
138
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Title']) = 0">
139
+ <style:style style:name="Title" style:display-name="Title"
140
+ style:family="paragraph" style:parent-style-name="Heading"
141
+ style:next-style-name="Subtitle" style:class="chapter">
142
+ <style:paragraph-properties fo:text-align="center"
143
+ style:justify-single-word="false"/>
144
+ <style:text-properties fo:font-size="120%" fo:font-weight="bold"/>
145
+ </style:style>
146
+ </xsl:if>
147
+
148
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Subtitle']) = 0">
149
+ <style:style style:name="Subtitle" style:display-name="Subtitle"
150
+ style:family="paragraph" style:parent-style-name="Heading"
151
+ style:next-style-name="Text_20_body" style:class="chapter">
152
+ <style:paragraph-properties fo:text-align="center"
153
+ style:justify-single-word="false"/>
154
+ <style:text-properties fo:font-size="110%" fo:font-style="italic"/>
155
+ </style:style>
156
+ </xsl:if>
157
+
158
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Horizontal_20_Line']) = 0">
159
+ <style:style style:name="Horizontal_20_Line" style:display-name="Horizontal Line"
160
+ style:family="paragraph" style:parent-style-name="Standard"
161
+ style:next-style-name="Text_20_body" style:class="html">
162
+ <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.5cm"
163
+ style:border-line-width-bottom="0.002cm 0.035cm 0.002cm"
164
+ fo:padding="0cm" fo:border-left="none" fo:border-right="none"
165
+ fo:border-top="none" fo:border-bottom="0.04cm double #808080"
166
+ text:number-lines="false" text:line-number="0"
167
+ style:join-border="false"/>
168
+ <style:text-properties fo:font-size="6pt"/>
169
+ </style:style>
170
+ </xsl:if>
171
+
172
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'List_20_1']) = 0">
173
+ <text:list-style style:name="List_20_1" style:display-name="List 1">
174
+ <text:list-level-style-bullet text:level="1"
175
+ text:style-name="Bullet_20_Symbols"
176
+ text:bullet-char="•">
177
+ <style:list-level-properties
178
+ text:space-before="0.5cm"
179
+ text:min-label-width="0.5cm"/>
180
+ </text:list-level-style-bullet>
181
+ <text:list-level-style-bullet text:level="2"
182
+ text:style-name="Bullet_20_Symbols"
183
+ text:bullet-char="◦">
184
+ <style:list-level-properties
185
+ text:space-before="1cm"
186
+ text:min-label-width="0.5cm"/>
187
+ </text:list-level-style-bullet>
188
+ <text:list-level-style-bullet text:level="3"
189
+ text:style-name="Bullet_20_Symbols"
190
+ text:bullet-char="▪">
191
+ <style:list-level-properties
192
+ text:space-before="1.5cm"
193
+ text:min-label-width="0.5cm"/>
194
+ </text:list-level-style-bullet>
195
+ <text:list-level-style-bullet text:level="4"
196
+ text:style-name="Bullet_20_Symbols"
197
+ text:bullet-char="•">
198
+ <style:list-level-properties
199
+ text:space-before="2cm"
200
+ text:min-label-width="0.5cm"/>
201
+ </text:list-level-style-bullet>
202
+ <text:list-level-style-bullet text:level="5"
203
+ text:style-name="Bullet_20_Symbols"
204
+ text:bullet-char="◦">
205
+ <style:list-level-properties
206
+ text:space-before="2.5cm"
207
+ text:min-label-width="0.5cm"/>
208
+ </text:list-level-style-bullet>
209
+ <text:list-level-style-bullet text:level="6"
210
+ text:style-name="Bullet_20_Symbols"
211
+ text:bullet-char="▪">
212
+ <style:list-level-properties
213
+ text:space-before="3cm"
214
+ text:min-label-width="0.5cm"/>
215
+ </text:list-level-style-bullet>
216
+ <text:list-level-style-bullet text:level="7"
217
+ text:style-name="Bullet_20_Symbols"
218
+ text:bullet-char="•">
219
+ <style:list-level-properties
220
+ text:space-before="3.5cm"
221
+ text:min-label-width="0.5cm"/>
222
+ </text:list-level-style-bullet>
223
+ <text:list-level-style-bullet text:level="8"
224
+ text:style-name="Bullet_20_Symbols"
225
+ text:bullet-char="◦">
226
+ <style:list-level-properties
227
+ text:space-before="4cm"
228
+ text:min-label-width="0.5cm"/>
229
+ </text:list-level-style-bullet>
230
+ <text:list-level-style-bullet text:level="9"
231
+ text:style-name="Bullet_20_Symbols"
232
+ text:bullet-char="▪">
233
+ <style:list-level-properties
234
+ text:space-before="4.5cm"
235
+ text:min-label-width="0.5cm"/>
236
+ </text:list-level-style-bullet>
237
+ <text:list-level-style-bullet text:level="10"
238
+ text:style-name="Bullet_20_Symbols"
239
+ text:bullet-char="•">
240
+ <style:list-level-properties
241
+ text:space-before="5cm"
242
+ text:min-label-width="0.5cm"/>
243
+ </text:list-level-style-bullet>
244
+ </text:list-style>
245
+ </xsl:if>
246
+
247
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Numbering_20_1']) = 0">
248
+ <text:list-style style:name="Numbering_20_1" style:display-name="Numbering 1">
249
+ <text:list-level-style-number text:level="1"
250
+ text:style-name="Numbering_20_Symbols"
251
+ style:num-suffix="."
252
+ style:num-format="1">
253
+ <style:list-level-properties
254
+ text:space-before="0.5cm"
255
+ text:min-label-width="0.5cm"/>
256
+ </text:list-level-style-number>
257
+ <text:list-level-style-number text:level="2"
258
+ text:style-name="Numbering_20_Symbols"
259
+ style:num-suffix="."
260
+ style:num-format="1">
261
+ <style:list-level-properties
262
+ text:space-before="1cm"
263
+ text:min-label-width="0.5cm"/>
264
+ </text:list-level-style-number>
265
+ <text:list-level-style-number text:level="3"
266
+ text:style-name="Numbering_20_Symbols"
267
+ style:num-suffix="."
268
+ style:num-format="1">
269
+ <style:list-level-properties
270
+ text:space-before="1.5cm"
271
+ text:min-label-width="0.5cm"/>
272
+ </text:list-level-style-number>
273
+ <text:list-level-style-number text:level="4"
274
+ text:style-name="Numbering_20_Symbols"
275
+ style:num-suffix="."
276
+ style:num-format="1">
277
+ <style:list-level-properties
278
+ text:space-before="2cm"
279
+ text:min-label-width="0.5cm"/>
280
+ </text:list-level-style-number>
281
+ <text:list-level-style-number text:level="5"
282
+ text:style-name="Numbering_20_Symbols"
283
+ style:num-suffix="."
284
+ style:num-format="1">
285
+ <style:list-level-properties
286
+ text:space-before="2.5cm"
287
+ text:min-label-width="0.5cm"/>
288
+ </text:list-level-style-number>
289
+ <text:list-level-style-number text:level="6"
290
+ text:style-name="Numbering_20_Symbols"
291
+ style:num-suffix="."
292
+ style:num-format="1">
293
+ <style:list-level-properties
294
+ text:space-before="3cm"
295
+ text:min-label-width="0.5cm"/>
296
+ </text:list-level-style-number>
297
+ <text:list-level-style-number text:level="7"
298
+ text:style-name="Numbering_20_Symbols"
299
+ style:num-suffix="."
300
+ style:num-format="1">
301
+ <style:list-level-properties
302
+ text:space-before="3.5cm"
303
+ text:min-label-width="0.5cm"/>
304
+ </text:list-level-style-number>
305
+ <text:list-level-style-number text:level="8"
306
+ text:style-name="Numbering_20_Symbols"
307
+ style:num-suffix="."
308
+ style:num-format="1">
309
+ <style:list-level-properties
310
+ text:space-before="4cm"
311
+ text:min-label-width="0.5cm"/>
312
+ </text:list-level-style-number>
313
+ <text:list-level-style-number text:level="9"
314
+ text:style-name="Numbering_20_Symbols"
315
+ style:num-suffix="."
316
+ style:num-format="1">
317
+ <style:list-level-properties
318
+ text:space-before="4.5cm"
319
+ text:min-label-width="0.5cm"/>
320
+ </text:list-level-style-number>
321
+ <text:list-level-style-number text:level="10"
322
+ text:style-name="Numbering_20_Symbols"
323
+ style:num-suffix="."
324
+ style:num-format="1">
325
+ <style:list-level-properties
326
+ text:space-before="5cm"
327
+ text:min-label-width="0.5cm"/>
328
+ </text:list-level-style-number>
329
+ </text:list-style>
330
+ </xsl:if>
331
+
332
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Definition_20_Term']) = 0">
333
+ <style:style style:name="Definition_20_Term"
334
+ style:display-name="Definition Term" style:family="paragraph"
335
+ style:parent-style-name="Text_20_body" style:class="html">
336
+ <style:text-properties fo:font-weight="bold"/>
337
+ <style:paragraph-properties fo:margin-bottom="0cm"/>
338
+ </style:style>
339
+ </xsl:if>
340
+
341
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Definition_20_Description']) = 0">
342
+ <style:style style:name="Definition_20_Description"
343
+ style:display-name="Definition Description" style:family="paragraph"
344
+ style:parent-style-name="Text_20_body" style:class="html">
345
+ <style:paragraph-properties fo:margin-top="0cm" fo:margin-left="1cm"
346
+ fo:margin-bottom="0.2cm"/>
347
+ </style:style>
348
+ </xsl:if>
349
+
350
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Preformatted_20_Text']) = 0">
351
+ <style:style style:name="Preformatted_20_Text"
352
+ style:display-name="Preformatted Text" style:family="paragraph"
353
+ style:parent-style-name="Standard" style:class="html">
354
+ <style:paragraph-properties fo:margin-left="1cm" fo:margin-right="1cm"
355
+ fo:margin-top="0cm" fo:margin-bottom="0cm"/>
356
+ <style:text-properties style:font-name="DejaVu Sans Mono"
357
+ fo:font-size="9pt"/>
358
+ </style:style>
359
+ </xsl:if>
360
+
361
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Source_20_Code']) = 0">
362
+ <style:style style:name="Source_20_Code"
363
+ style:display-name="Source Code" style:family="paragraph"
364
+ style:parent-style-name="Preformatted_20_Text">
365
+ <style:paragraph-properties fo:padding="0.05cm" style:shadow="none"
366
+ fo:border="0.002cm solid #c0c0c0"/>
367
+ </style:style>
368
+ </xsl:if>
369
+
370
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Source_20_Code_20_Numbered']) = 0">
371
+ <style:style style:name="Source_20_Code_20_Numbered"
372
+ style:display-name="Source Code Numbered" style:family="paragraph"
373
+ style:list-style-name="Numbering_20_1"
374
+ style:parent-style-name="Source_20_Code">
375
+ <style:paragraph-properties text:number-lines="true" text:line-number="1"/>
376
+ </style:style>
377
+ </xsl:if>
378
+
379
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Quotations']) = 0">
380
+ <style:style style:name="Quotations" style:family="paragraph"
381
+ style:display-name="Quotations"
382
+ style:parent-style-name="Standard" style:class="html">
383
+ <style:paragraph-properties fo:margin-left="1cm" fo:margin-right="1cm"
384
+ fo:margin-top="0cm" fo:margin-bottom="0.5cm"
385
+ fo:text-indent="0cm" style:auto-text-indent="false"
386
+ fo:padding="0.2cm"
387
+ fo:border-left="0.088cm solid #999999"/>
388
+ </style:style>
389
+ </xsl:if>
390
+
391
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Sender']) = 0">
392
+ <style:style style:name="Sender" style:display-name="Sender" style:class="extra"
393
+ style:family="paragraph" style:parent-style-name="Standard">
394
+ <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.100cm"
395
+ text:number-lines="false" text:line-number="0"/>
396
+ <style:text-properties fo:font-style="italic"/>
397
+ </style:style>
398
+ </xsl:if>
399
+
400
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Table_20_Contents']) = 0">
401
+ <style:style style:name="Table_20_Contents" style:display-name="Table Contents"
402
+ style:family="paragraph" style:parent-style-name="Standard"
403
+ style:class="extra">
404
+ <style:paragraph-properties text:number-lines="false" text:line-number="0"/>
405
+ </style:style>
406
+ </xsl:if>
407
+
408
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Table_20_Heading']) = 0">
409
+ <style:style style:name="Table_20_Heading" style:display-name="Table Heading"
410
+ style:family="paragraph" style:parent-style-name="Table_20_Contents"
411
+ style:class="extra">
412
+ <style:paragraph-properties fo:text-align="center" style:justify-single-word="false"
413
+ text:number-lines="false" text:line-number="0"/>
414
+ <style:text-properties fo:font-weight="bold"/>
415
+ </style:style>
416
+ </xsl:if>
417
+
418
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Teletype']) = 0">
419
+ <style:style style:name="Teletype" style:display-name="Teletype"
420
+ style:family="text">
421
+ <style:text-properties style:font-name="DejaVu Sans Mono"
422
+ fo:font-size="9pt"/>
423
+ </style:style>
424
+ </xsl:if>
425
+
426
+ <xsl:if test="count(//office:styles/style:style[@style:name = 'Marginalia']) = 0">
427
+ <style:style style:name="Marginalia" style:display-name="Marginalia"
428
+ style:family="graphic">
429
+ <style:graphic-properties svg:width="8.5cm" style:rel-width="50%"
430
+ fo:min-height="0.5cm"
431
+ text:anchor-type="paragraph"
432
+ svg:x="0cm" svg:y="0cm"
433
+ fo:margin-left="0.2cm"
434
+ fo:margin-right="0cm"
435
+ fo:margin-top="0.1cm"
436
+ fo:margin-bottom="0.1cm"
437
+ style:wrap="parallel"
438
+ style:number-wrapped-paragraphs="no-limit"
439
+ style:wrap-contour="false"
440
+ style:vertical-pos="top"
441
+ style:vertical-rel="paragraph"
442
+ style:horizontal-pos="right"
443
+ style:horizontal-rel="paragraph"
444
+ fo:background-color="transparent"
445
+ style:background-transparency="100%"
446
+ fo:padding="0.15cm"
447
+ fo:border="0.002cm solid #000000"
448
+ style:shadow="none">
449
+ </style:graphic-properties>
450
+ </style:style>
451
+ </xsl:if>
452
+
453
+ </xsl:template>
454
+
455
+ </xsl:stylesheet>