ODFPY: odf/attrconverters.py Source File

ODFPY 1.2.0 |

All Classes Namespaces Files Functions Variables
attrconverters.py
Go to the documentation of this file.
1 # -*- coding: utf-8 -*-
2 # Copyright (C) 2006-2013 Søren Roug, European Environment Agency
3 #
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License, or (at your option) any later version.
8 #
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # Lesser General Public License for more details.
13 #
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 #
18 # Contributor(s):
19 #
20
21 import sys, os.path
22 sys.path.append(os.path.dirname(__file__))
23 from namespaces import *
24 import re, types
25
26 pattern_color = re.compile(r'#[0-9a-fA-F]{6}')
27 pattern_vector3D = re.compile(r'\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\)')
28
29 def make_NCName(arg):
30 for c in (':',' '):
31 arg = arg.replace(c,"_%x_" % ord(c))
32 return arg
33
34 def cnv_angle(attribute, arg, element):
35 if sys.version_info.major==2:
36 return unicode(arg)
37 else:
38 return str(arg)
39
40 def cnv_anyURI(attribute, arg, element):
41 return str(arg)
42
43 ##
44 # XML Schema Part 2: Datatypes Second Edition
45 # An instance of a datatype that is defined as boolean can have the
46 # following legal literals {true, false, 1, 0}
47 #
48 def cnv_boolean(attribute, arg, element):
49 if str(arg).lower() in ("0","false","no"):
50 return "false"
51 if str(arg).lower() in ("1","true","yes"):
52 return "true"
53 raise ValueError( "'%s' not allowed as Boolean value for %s" % (str(arg), attribute[1]))
54
55 # Potentially accept color values
56 ##
57 # A RGB color in conformance with §5.9.11 of [XSL], that is a RGB color in notation “#rrggbb”, where
58 # rr, gg and bb are 8-bit hexadecimal digits.
59 #
60 def cnv_color(attribute, arg, element):
61 return str(arg)
62
63 def cnv_configtype(attribute, arg, element):
64 if str(arg) not in ("boolean", "short", "int", "long",
65 "double", "string", "datetime", "base64Binary"):
66 raise ValueError( "'%s' not allowed" % str(arg))
67 return str(arg)
68
69 def cnv_data_source_has_labels(attribute, arg, element):
70 if str(arg) not in ("none","row","column","both"):
71 raise ValueError( "'%s' not allowed" % str(arg))
72 return str(arg)
73
74 # Understand different date formats
75 ##
76 # A dateOrDateTime value is either an [xmlschema-2] date value or an [xmlschema-2] dateTime
77 # value.
78 #
79 def cnv_date(attribute, arg, element):
80 return str(arg)
81
82 ##
83 # A dateOrDateTime value is either an [xmlschema-2] date value or an [xmlschema-2] dateTime
84 # value.
85 #
86 def cnv_dateTime(attribute, arg, element):
87 return str(arg)
88
89 def cnv_double(attribute, arg, element):
90 return str(arg)
91
92 def cnv_draw_aspect(attribute, arg, element):
93 if str(arg) not in ("content", "thumbnail", "icon", "print-view"):
94 raise ValueError( "'%s' not allowed" % str(arg))
95 return str(arg)
96
97 def cnv_duration(attribute, arg, element):
98 return str(arg)
99
100 ##
101 # A style family
102 def cnv_family(attribute, arg, element):
103 if str(arg) not in ("text", "paragraph", "section", "ruby", "table", "table-column", "table-row", "table-cell",
104 "graphic", "presentation", "drawing-page", "chart"):
105 raise ValueError( "'%s' not allowed" % str(arg))
106 return str(arg)
107
108 def __save_prefix(attribute, arg, element):
109 prefix = arg.split(':',1)[0]
110 if prefix == arg:
111 return str(arg)
112 namespace = element.get_knownns(prefix)
113 if namespace is None:
114 #raise ValueError( "'%s' is an unknown prefix" % str(prefix))
115 return str(arg)
116 p = element.get_nsprefix(namespace)
117 return str(arg)
118
119 ##
120 # A string containing a formula. Formulas do not have a predefined syntax, but the string should
121 # begin with a namespace prefix, followed by a “:” (COLON, U+003A) separator, followed by the text
122 # of the formula. The namespace bound to the prefix determines the syntax and semantics of the
123 # formula.
124 #
125 def cnv_formula(attribute, arg, element):
126 return __save_prefix(attribute, arg, element)
127
128 def cnv_ID(attribute, arg, element):
129 return str(arg)
130
131 def cnv_IDREF(attribute, arg, element):
132 return str(arg)
133
134 def cnv_integer(attribute, arg, element):
135 return str(arg)
136
137 pattern_language = re.compile(r'[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*')
138
139 def cnv_language(attribute, arg, element):
140 global pattern_language
141 if not pattern_language.match(arg):
142 raise ValueError( "'%s' is not a valid language token" % arg)
143 return arg
144
145 def cnv_legend_position(attribute, arg, element):
146 if str(arg) not in ("start", "end", "top", "bottom", "top-start", "bottom-start", "top-end", "bottom-end"):
147 raise ValueError( "'%s' not allowed" % str(arg))
148 return str(arg)
149
150 pattern_length = re.compile(r'-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))')
151
152 ##
153 # A (positive or negative) physical length, consisting of magnitude and unit, in conformance with the
154 # Units of Measure defined in §5.9.13 of [XSL].
155 #
156 def cnv_length(attribute, arg, element):
157 global pattern_length
158 if not pattern_length.match(arg):
159 raise ValueError( "'%s' is not a valid length" % arg)
160 return arg
161
162 def cnv_lengthorpercent(attribute, arg, element):
163 failed = False
164 try: return cnv_length(attribute, arg, element)
165 except: failed = True
166 try: return cnv_percent(attribute, arg, element)
167 except: failed = True
168 if failed:
169 raise ValueError( "'%s' is not a valid length or percent" % arg)
170 return arg
171
172 def cnv_list_linkage_type(attribute, arg, element):
173 if arg not in ('selection','selection-indices'):
174 raise ValueError( "'%s' is not either 'selection' or 'selection-indices'" % arg)
175 return str(arg)
176
177 def cnv_metavaluetype(attribute, arg, element):
178 if str(arg) not in ("float", "date", "time", "boolean", "string"):
179 raise ValueError( "'%s' not allowed" % str(arg))
180 return str(arg)
181
182 def cnv_major_minor(attribute, arg, element):
183 if arg not in ('major','minor'):
184 raise ValueError( "'%s' is not either 'minor' or 'major'" % arg)
185 return str(arg)
186
187 pattern_namespacedToken = re.compile(r'[0-9a-zA-Z_]+:[0-9a-zA-Z._\-]+')
188
189 def cnv_namespacedToken(attribute, arg, element):
190 global pattern_namespacedToken
191
192 if not pattern_namespacedToken.match(arg):
193 raise ValueError( "'%s' is not a valid namespaced token" % arg)
194 return __save_prefix(attribute, arg, element)
195
196 ##
197 # NCName is defined in http://www.w3.org/TR/REC-xml-names/#NT-NCName
198 # Essentially an XML name minus ':'
199 #
200 def cnv_NCName(attribute, arg, element):
201 if (sys.version_info.major==3 and isinstance(arg, str)) or (sys.version_info.major==2 and type(arg) in types.StringTypes):
202 return make_NCName(arg)
203 else:
204 return arg.getAttrNS(STYLENS, 'name')
205
206 # This function takes either an instance of a style (preferred)
207 # or a text string naming the style. If it is a text string, then it must
208 # already have been converted to an NCName
209 # The text-string argument is mainly for when we build a structure from XML
210 def cnv_StyleNameRef(attribute, arg, element):
211 try:
212 return arg.getAttrNS(STYLENS, 'name')
213 except:
214 return arg
215
216 # This function takes either an instance of a style (preferred)
217 # or a text string naming the style. If it is a text string, then it must
218 # already have been converted to an NCName
219 # The text-string argument is mainly for when we build a structure from XML
220 def cnv_DrawNameRef(attribute, arg, element):
221 try:
222 return arg.getAttrNS(DRAWNS, 'name')
223 except:
224 return arg
225
226 # Must accept list of Style objects
227 def cnv_NCNames(attribute, arg, element):
228 return ' '.join(arg)
229
230 def cnv_nonNegativeInteger(attribute, arg, element):
231 return str(arg)
232
233 pattern_percent = re.compile(r'-?([0-9]+(\.[0-9]*)?|\.[0-9]+)%')
234
235 def cnv_percent(attribute, arg, element):
236 global pattern_percent
237 if not pattern_percent.match(arg):
238 raise ValueError( "'%s' is not a valid length" % arg)
239 return arg
240
241 # Real one doesn't allow floating point values
242 pattern_points = re.compile(r'-?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)*')
243 #pattern_points = re.compile(r'-?[0-9.]+,-?[0-9.]+([ ]+-?[0-9.]+,-?[0-9.]+)*')
244 def cnv_points(attribute, arg, element):
245 global pattern_points
246 if (sys.version_info.major==3 and isinstance(arg, str)) or (sys.version_info.major==2 and type(arg) in types.StringTypes):
247 if not pattern_points.match(arg):
248 raise ValueError( "x,y are separated by a comma and the points are separated by white spaces")
249 return arg
250 else:
251 try:
252 strarg = ' '.join([ "%d,%d" % p for p in arg])
253 except:
254 raise ValueError( "Points must be string or [(0,0),(1,1)] - not %s" % arg)
255 return strarg
256
257 def cnv_positiveInteger(attribute, arg, element):
258 return str(arg)
259
260 def cnv_rowOrCol(attribute, arg, element):
261 if str(arg) not in ("row","column"):
262 raise ValueError( "'%s' not allowed" % str(arg))
263 return str(arg)
264
265 def cnv_string(attribute, arg, element):
266 if sys.version_info.major==2:
267 return unicode(arg)
268 else:
269 return str(arg)
270
271 def cnv_stroke_linecap(attribute, arg, element):
272 if str(arg) not in ("butt", "square", "round"):
273 raise ValueError( "'%s' not allowed" % str(arg))
274 return str(arg)
275
276 def cnv_textnoteclass(attribute, arg, element):
277 if str(arg) not in ("footnote", "endnote"):
278 raise ValueError( "'%s' not allowed" % str(arg))
279 return str(arg)
280
281 # Understand different time formats
282 def cnv_time(attribute, arg, element):
283 return str(arg)
284
285 def cnv_token(attribute, arg, element):
286 return str(arg)
287
288 pattern_viewbox = re.compile(r'-?[0-9]+([ ]+-?[0-9]+){3}$')
289
290 def cnv_viewbox(attribute, arg, element):
291 global pattern_viewbox
292 if not pattern_viewbox.match(arg):
293 raise ValueError( "viewBox must be four integers separated by whitespaces")
294 return arg
295
296 def cnv_xlinkshow(attribute, arg, element):
297 if str(arg) not in ("new", "replace", "embed"):
298 raise ValueError( "'%s' not allowed" % str(arg))
299 return str(arg)
300
301 def cnv_xlinktype(attribute, arg, element):
302 if arg != "simple":
303 raise ValueError( "Value of '%s' must be 'simple'" % attribute[1])
304 return arg
305
306
307 attrconverters = {
308 ((ANIMNS,u'audio-level'), None): cnv_double,
309 ((ANIMNS,u'color-interpolation'), None): cnv_string,
310 ((ANIMNS,u'color-interpolation-direction'), None): cnv_string,
311 ((ANIMNS,u'command'), None): cnv_string,
312 ((ANIMNS,u'formula'), None): cnv_string,
313 ((ANIMNS,u'id'), None): cnv_ID,
314 ((ANIMNS,u'iterate-interval'), None): cnv_duration,
315 ((ANIMNS,u'iterate-type'), None): cnv_string,
316 ((ANIMNS,u'name'), None): cnv_string,
317 ((ANIMNS,u'sub-item'), None): cnv_string,
318 ((ANIMNS,u'value'), None): cnv_string,
319 # ((DBNS,u'type'), None): cnv_namespacedToken,
320 ((CHARTNS,u'angle-offset'), None): cnv_angle,
321 ((CHARTNS,u'automatic-content'), None): cnv_boolean,
322 ((CHARTNS,u'auto-position'), None): cnv_boolean,
323 ((CHARTNS,u'auto-size'), None): cnv_boolean,
324 ((CHARTNS,u'axis-label-position'), None): cnv_string, # Multi-value
325 ((CHARTNS,u'axis-position'), None): cnv_string, # Multi-value
326 ((CHARTNS,u'attached-axis'), None): cnv_string,
327 ((CHARTNS,u'class'), (CHARTNS,u'grid')): cnv_major_minor,
328 ((CHARTNS,u'class'), None): cnv_namespacedToken,
329 ((CHARTNS,u'column-mapping'), None): cnv_string,
330 ((CHARTNS,u'connect-bars'), None): cnv_boolean,
331 ((CHARTNS,u'data-label-number'), None): cnv_string,
332 ((CHARTNS,u'data-label-symbol'), None): cnv_boolean,
333 ((CHARTNS,u'data-label-text'), None): cnv_boolean,
334 ((CHARTNS,u'data-source-has-labels'), None): cnv_data_source_has_labels,
335 ((CHARTNS,u'deep'), None): cnv_boolean,
336 ((CHARTNS,u'dimension'), None): cnv_string,
337 ((CHARTNS,u'display-equation'), None): cnv_boolean,
338 ((CHARTNS,u'display-label'), None): cnv_boolean,
339 ((CHARTNS,u'display-r-square'), None): cnv_boolean,
340 ((CHARTNS,u'error-category'), None): cnv_string,
341 ((CHARTNS,u'error-lower-indicator'), None): cnv_boolean,
342 ((CHARTNS,u'error-lower-limit'), None): cnv_string,
343 ((CHARTNS,u'error-margin'), None): cnv_string,
344 ((CHARTNS,u'error-percentage'), None): cnv_string,
345 ((CHARTNS,u'error-lower-range'), None): cnv_string,
346 ((CHARTNS,u'error-upper-indicator'), None): cnv_boolean,
347 ((CHARTNS,u'error-upper-limit'), None): cnv_string,
348 ((CHARTNS,u'error-upper-range'), None): cnv_string,
349 ((CHARTNS,u'gap-width'), None): cnv_string,
350 ((CHARTNS,u'group-bars-per-axis'), None): cnv_boolean,
351 ((CHARTNS,u'hole-size'), None): cnv_percent,
352 ((CHARTNS,u'include-hidden-cells'), None): cnv_boolean,
353 ((CHARTNS,u'interpolation'), None): cnv_string,
354 ((CHARTNS,u'interval-major'), None): cnv_string,
355 ((CHARTNS,u'interval-minor-divisor'), None): cnv_string,
356 ((CHARTNS,u'japanese-candle-stick'), None): cnv_boolean,
357 ((CHARTNS,u'label-arrangement'), None): cnv_string,
358 ((CHARTNS,u'label-cell-address'), None): cnv_string,
359 ((CHARTNS,u'label-position'), None): cnv_string, # Multi-value
360 ((CHARTNS,u'label-position-negative'), None): cnv_string, # Multi-value
361 ((CHARTNS,u'legend-align'), None): cnv_string,
362 ((CHARTNS,u'legend-position'), None): cnv_legend_position,
363 ((CHARTNS,u'lines'), None): cnv_boolean,
364 ((CHARTNS,u'link-data-style-to-source'), None): cnv_boolean,
365 ((CHARTNS,u'logarithmic'), None): cnv_boolean,
366 ((CHARTNS,u'maximum'), None): cnv_string,
367 ((CHARTNS,u'mean-value'), None): cnv_boolean,
368 ((CHARTNS,u'minimum'), None): cnv_string,
369 ((CHARTNS,u'name'), None): cnv_string,
370 ((CHARTNS,u'origin'), None): cnv_string,
371 ((CHARTNS,u'overlap'), None): cnv_string,
372 ((CHARTNS,u'percentage'), None): cnv_boolean,
373 ((CHARTNS,u'pie-offset'), None): cnv_string,
374 ((CHARTNS,u'regression-type'), None): cnv_string,
375 ((CHARTNS,u'repeated'), None): cnv_nonNegativeInteger,
376 ((CHARTNS,u'reverse-direction'), None): cnv_boolean,
377 ((CHARTNS,u'right-angled-axes'), None): cnv_boolean,
378 ((CHARTNS,u'row-mapping'), None): cnv_string,
379 ((CHARTNS,u'scale-text'), None): cnv_boolean,
380 ((CHARTNS,u'series-source'), None): cnv_string,
381 ((CHARTNS,u'solid-type'), None): cnv_string,
382 ((CHARTNS,u'sort-by-x-values'), None): cnv_boolean,
383 ((CHARTNS,u'spline-order'), None): cnv_string,
384 ((CHARTNS,u'spline-resolution'), None): cnv_string,
385 ((CHARTNS,u'stacked'), None): cnv_boolean,
386 ((CHARTNS,u'style-name'), None): cnv_StyleNameRef,
387 ((CHARTNS,u'symbol-height'), None): cnv_string,
388 ((CHARTNS,u'symbol-name'), None): cnv_string,
389 ((CHARTNS,u'symbol-type'), None): cnv_string,
390 ((CHARTNS,u'symbol-width'), None): cnv_string,
391 ((CHARTNS,u'text-overlap'), None): cnv_boolean,
392 ((CHARTNS,u'three-dimensional'), None): cnv_boolean,
393 ((CHARTNS,u'tick-mark-position'), None): cnv_string, # Multi-value
394 ((CHARTNS,u'tick-marks-major-inner'), None): cnv_boolean,
395 ((CHARTNS,u'tick-marks-major-outer'), None): cnv_boolean,
396 ((CHARTNS,u'tick-marks-minor-inner'), None): cnv_boolean,
397 ((CHARTNS,u'tick-marks-minor-outer'), None): cnv_boolean,
398 ((CHARTNS,u'treat-empty-cells'), None): cnv_string, # Multi-value
399 ((CHARTNS,u'values-cell-range-address'), None): cnv_string,
400 ((CHARTNS,u'vertical'), None): cnv_boolean,
401 ((CHARTNS,u'visible'), None): cnv_boolean,
402 ((CONFIGNS,u'name'), None): cnv_formula,
403 ((CONFIGNS,u'type'), None): cnv_configtype,
404 ((DR3DNS,u'ambient-color'), None): cnv_string,
405 ((DR3DNS,u'back-scale'), None): cnv_string,
406 ((DR3DNS,u'backface-culling'), None): cnv_string,
407 ((DR3DNS,u'center'), None): cnv_string,
408 ((DR3DNS,u'close-back'), None): cnv_boolean,
409 ((DR3DNS,u'close-front'), None): cnv_boolean,
410 ((DR3DNS,u'depth'), None): cnv_length,
411 ((DR3DNS,u'diffuse-color'), None): cnv_string,
412 ((DR3DNS,u'direction'), None): cnv_string,
413 ((DR3DNS,u'distance'), None): cnv_length,
414 ((DR3DNS,u'edge-rounding'), None): cnv_string,
415 ((DR3DNS,u'edge-rounding-mode'), None): cnv_string,
416 ((DR3DNS,u'emissive-color'), None): cnv_string,
417 ((DR3DNS,u'enabled'), None): cnv_boolean,
418 ((DR3DNS,u'end-angle'), None): cnv_string,
419 ((DR3DNS,u'focal-length'), None): cnv_length,
420 ((DR3DNS,u'horizontal-segments'), None): cnv_string,
421 ((DR3DNS,u'lighting-mode'), None): cnv_boolean,
422 ((DR3DNS,u'max-edge'), None): cnv_string,
423 ((DR3DNS,u'min-edge'), None): cnv_string,
424 ((DR3DNS,u'normals-direction'), None): cnv_string,
425 ((DR3DNS,u'normals-kind'), None): cnv_string,
426 ((DR3DNS,u'projection'), None): cnv_string,
427 ((DR3DNS,u'shade-mode'), None): cnv_string,
428 ((DR3DNS,u'shadow'), None): cnv_string,
429 ((DR3DNS,u'shadow-slant'), None): cnv_nonNegativeInteger,
430 ((DR3DNS,u'shininess'), None): cnv_string,
431 ((DR3DNS,u'size'), None): cnv_string,
432 ((DR3DNS,u'specular'), None): cnv_boolean,
433 ((DR3DNS,u'specular-color'), None): cnv_string,
434 ((DR3DNS,u'texture-filter'), None): cnv_string,
435 ((DR3DNS,u'texture-generation-mode-x'), None): cnv_string,
436 ((DR3DNS,u'texture-generation-mode-y'), None): cnv_string,
437 ((DR3DNS,u'texture-kind'), None): cnv_string,
438 ((DR3DNS,u'texture-mode'), None): cnv_string,
439 ((DR3DNS,u'transform'), None): cnv_string,
440 ((DR3DNS,u'vertical-segments'), None): cnv_string,
441 ((DR3DNS,u'vpn'), None): cnv_string,
442 ((DR3DNS,u'vrp'), None): cnv_string,
443 ((DR3DNS,u'vup'), None): cnv_string,
444 ((DRAWNS,u'align'), None): cnv_string,
445 ((DRAWNS,u'angle'), None): cnv_integer,
446 ((DRAWNS,u'archive'), None): cnv_string,
447 ((DRAWNS,u'auto-grow-height'), None): cnv_boolean,
448 ((DRAWNS,u'auto-grow-width'), None): cnv_boolean,
449 ((DRAWNS,u'background-size'), None): cnv_string,
450 ((DRAWNS,u'blue'), None): cnv_string,
451 ((DRAWNS,u'border'), None): cnv_string,
452 ((DRAWNS,u'caption-angle'), None): cnv_string,
453 ((DRAWNS,u'caption-angle-type'), None): cnv_string,
454 ((DRAWNS,u'caption-escape'), None): cnv_string,
455 ((DRAWNS,u'caption-escape-direction'), None): cnv_string,
456 ((DRAWNS,u'caption-fit-line-length'), None): cnv_boolean,
457 ((DRAWNS,u'caption-gap'), None): cnv_string,
458 ((DRAWNS,u'caption-line-length'), None): cnv_length,
459 ((DRAWNS,u'caption-point-x'), None): cnv_string,
460 ((DRAWNS,u'caption-point-y'), None): cnv_string,
461 ((DRAWNS,u'caption-id'), None): cnv_IDREF,
462 ((DRAWNS,u'caption-type'), None): cnv_string,
463 ((DRAWNS,u'chain-next-name'), None): cnv_string,
464 ((DRAWNS,u'class-id'), None): cnv_string,
465 ((DRAWNS,u'class-names'), None): cnv_NCNames,
466 ((DRAWNS,u'code'), None): cnv_string,
467 ((DRAWNS,u'color'), None): cnv_string,
468 ((DRAWNS,u'color-inversion'), None): cnv_boolean,
469 ((DRAWNS,u'color-mode'), None): cnv_string,
470 ((DRAWNS,u'concave'), None): cnv_string,
471 ((DRAWNS,u'concentric-gradient-fill-allowed'), None): cnv_boolean,
472 ((DRAWNS,u'contrast'), None): cnv_string,
473 ((DRAWNS,u'control'), None): cnv_IDREF,
474 ((DRAWNS,u'copy-of'), None): cnv_string,
475 ((DRAWNS,u'corner-radius'), None): cnv_length,
476 ((DRAWNS,u'corners'), None): cnv_positiveInteger,
477 ((DRAWNS,u'cx'), None): cnv_string,
478 ((DRAWNS,u'cy'), None): cnv_string,
479 ((DRAWNS,u'data'), None): cnv_string,
480 ((DRAWNS,u'decimal-places'), None): cnv_string,
481 ((DRAWNS,u'display'), None): cnv_string,
482 ((DRAWNS,u'display-name'), None): cnv_string,
483 ((DRAWNS,u'distance'), None): cnv_lengthorpercent,
484 ((DRAWNS,u'dots1'), None): cnv_integer,
485 ((DRAWNS,u'dots1-length'), None): cnv_lengthorpercent,
486 ((DRAWNS,u'dots2'), None): cnv_integer,
487 ((DRAWNS,u'dots2-length'), None): cnv_lengthorpercent,
488 ((DRAWNS,u'draw-aspect'), None): cnv_draw_aspect,
489 ((DRAWNS,u'end-angle'), None): cnv_angle,
490 ((DRAWNS,u'end'), None): cnv_string,
491 ((DRAWNS,u'end-color'), None): cnv_string,
492 ((DRAWNS,u'end-glue-point'), None): cnv_nonNegativeInteger,
493 ((DRAWNS,u'end-guide'), None): cnv_length,
494 ((DRAWNS,u'end-intensity'), None): cnv_string,
495 ((DRAWNS,u'end-line-spacing-horizontal'), None): cnv_string,
496 ((DRAWNS,u'end-line-spacing-vertical'), None): cnv_string,
497 ((DRAWNS,u'end-shape'), None): cnv_IDREF,
498 ((DRAWNS,u'engine'), None): cnv_namespacedToken,
499 ((DRAWNS,u'enhanced-path'), None): cnv_string,
500 ((DRAWNS,u'escape-direction'), None): cnv_string,
501 ((DRAWNS,u'extrusion-allowed'), None): cnv_boolean,
502 ((DRAWNS,u'extrusion-brightness'), None): cnv_string,
503 ((DRAWNS,u'extrusion'), None): cnv_boolean,
504 ((DRAWNS,u'extrusion-color'), None): cnv_boolean,
505 ((DRAWNS,u'extrusion-depth'), None): cnv_double,
506 ((DRAWNS,u'extrusion-diffusion'), None): cnv_string,
507 ((DRAWNS,u'extrusion-first-light-direction'), None): cnv_string,
508 ((DRAWNS,u'extrusion-first-light-harsh'), None): cnv_boolean,
509 ((DRAWNS,u'extrusion-first-light-level'), None): cnv_string,
510 ((DRAWNS,u'extrusion-light-face'), None): cnv_boolean,
511 ((DRAWNS,u'extrusion-metal'), None): cnv_boolean,
512 ((DRAWNS,u'extrusion-number-of-line-segments'), None): cnv_integer,
513 ((DRAWNS,u'extrusion-origin'), None): cnv_double,
514 ((DRAWNS,u'extrusion-rotation-angle'), None): cnv_double,
515 ((DRAWNS,u'extrusion-rotation-center'), None): cnv_string,
516 ((DRAWNS,u'extrusion-second-light-direction'), None): cnv_string,
517 ((DRAWNS,u'extrusion-second-light-harsh'), None): cnv_boolean,
518 ((DRAWNS,u'extrusion-second-light-level'), None): cnv_string,
519 ((DRAWNS,u'extrusion-shininess'), None): cnv_string,
520 ((DRAWNS,u'extrusion-skew'), None): cnv_double,
521 ((DRAWNS,u'extrusion-specularity'), None): cnv_string,
522 ((DRAWNS,u'extrusion-viewpoint'), None): cnv_string,
523 ((DRAWNS,u'fill'), None): cnv_string,
524 ((DRAWNS,u'fill-color'), None): cnv_string,
525 ((DRAWNS,u'fill-gradient-name'), None): cnv_string,
526 ((DRAWNS,u'fill-hatch-name'), None): cnv_string,
527 ((DRAWNS,u'fill-hatch-solid'), None): cnv_boolean,
528 ((DRAWNS,u'fill-image-height'), None): cnv_lengthorpercent,
529 ((DRAWNS,u'fill-image-name'), None): cnv_DrawNameRef,
530 ((DRAWNS,u'fill-image-ref-point'), None): cnv_string,
531 ((DRAWNS,u'fill-image-ref-point-x'), None): cnv_string,
532 ((DRAWNS,u'fill-image-ref-point-y'), None): cnv_string,
533 ((DRAWNS,u'fill-image-width'), None): cnv_lengthorpercent,
534 ((DRAWNS,u'filter-name'), None): cnv_string,
535 ((DRAWNS,u'fit-to-contour'), None): cnv_boolean,
536 ((DRAWNS,u'fit-to-size'), None): cnv_string, # ODF 1.2 says boolean
537 ((DRAWNS,u'formula'), None): cnv_string,
538 ((DRAWNS,u'frame-display-border'), None): cnv_boolean,
539 ((DRAWNS,u'frame-display-scrollbar'), None): cnv_boolean,
540 ((DRAWNS,u'frame-margin-horizontal'), None): cnv_string,
541 ((DRAWNS,u'frame-margin-vertical'), None): cnv_string,
542 ((DRAWNS,u'frame-name'), None): cnv_string,
543 ((DRAWNS,u'gamma'), None): cnv_string,
544 ((DRAWNS,u'glue-point-leaving-directions'), None): cnv_string,
545 ((DRAWNS,u'glue-point-type'), None): cnv_string,
546 ((DRAWNS,u'glue-points'), None): cnv_string,
547 ((DRAWNS,u'gradient-step-count'), None): cnv_string,
548 ((DRAWNS,u'green'), None): cnv_string,
549 ((DRAWNS,u'guide-distance'), None): cnv_string,
550 ((DRAWNS,u'guide-overhang'), None): cnv_length,
551 ((DRAWNS,u'handle-mirror-horizontal'), None): cnv_boolean,
552 ((DRAWNS,u'handle-mirror-vertical'), None): cnv_boolean,
553 ((DRAWNS,u'handle-polar'), None): cnv_string,
554 ((DRAWNS,u'handle-position'), None): cnv_string,
555 ((DRAWNS,u'handle-radius-range-maximum'), None): cnv_string,
556 ((DRAWNS,u'handle-radius-range-minimum'), None): cnv_string,
557 ((DRAWNS,u'handle-range-x-maximum'), None): cnv_string,
558 ((DRAWNS,u'handle-range-x-minimum'), None): cnv_string,
559 ((DRAWNS,u'handle-range-y-maximum'), None): cnv_string,
560 ((DRAWNS,u'handle-range-y-minimum'), None): cnv_string,
561 ((DRAWNS,u'handle-switched'), None): cnv_boolean,
562 # ((DRAWNS,u'id'), None): cnv_ID,
563 # ((DRAWNS,u'id'), None): cnv_nonNegativeInteger, # ?? line 6581 in RNG
564 ((DRAWNS,u'id'), None): cnv_string,
565 ((DRAWNS,u'image-opacity'), None): cnv_string,
566 ((DRAWNS,u'kind'), None): cnv_string,
567 ((DRAWNS,u'layer'), None): cnv_string,
568 ((DRAWNS,u'line-distance'), None): cnv_string,
569 ((DRAWNS,u'line-skew'), None): cnv_string,
570 ((DRAWNS,u'luminance'), None): cnv_string,
571 ((DRAWNS,u'marker-end-center'), None): cnv_boolean,
572 ((DRAWNS,u'marker-end'), None): cnv_string,
573 ((DRAWNS,u'marker-end-width'), None): cnv_length,
574 ((DRAWNS,u'marker-start-center'), None): cnv_boolean,
575 ((DRAWNS,u'marker-start'), None): cnv_string,
576 ((DRAWNS,u'marker-start-width'), None): cnv_length,
577 ((DRAWNS,u'master-page-name'), None): cnv_StyleNameRef,
578 ((DRAWNS,u'may-script'), None): cnv_boolean,
579 ((DRAWNS,u'measure-align'), None): cnv_string,
580 ((DRAWNS,u'measure-vertical-align'), None): cnv_string,
581 ((DRAWNS,u'mime-type'), None): cnv_string,
582 ((DRAWNS,u'mirror-horizontal'), None): cnv_boolean,
583 ((DRAWNS,u'mirror-vertical'), None): cnv_boolean,
584 ((DRAWNS,u'modifiers'), None): cnv_string,
585 ((DRAWNS,u'name'), None): cnv_NCName,
586 # ((DRAWNS,u'name'), None): cnv_string,
587 ((DRAWNS,u'nav-order'), None): cnv_IDREF,
588 ((DRAWNS,u'nohref'), None): cnv_string,
589 ((DRAWNS,u'notify-on-update-of-ranges'), None): cnv_string,
590 ((DRAWNS,u'object'), None): cnv_string,
591 ((DRAWNS,u'ole-draw-aspect'), None): cnv_string,
592 ((DRAWNS,u'opacity'), None): cnv_string,
593 ((DRAWNS,u'opacity-name'), None): cnv_string,
594 ((DRAWNS,u'page-number'), None): cnv_positiveInteger,
595 ((DRAWNS,u'parallel'), None): cnv_boolean,
596 ((DRAWNS,u'path-stretchpoint-x'), None): cnv_double,
597 ((DRAWNS,u'path-stretchpoint-y'), None): cnv_double,
598 ((DRAWNS,u'placing'), None): cnv_string,
599 ((DRAWNS,u'points'), None): cnv_points,
600 ((DRAWNS,u'protected'), None): cnv_boolean,
601 ((DRAWNS,u'recreate-on-edit'), None): cnv_boolean,
602 ((DRAWNS,u'red'), None): cnv_string,
603 ((DRAWNS,u'rotation'), None): cnv_integer,
604 ((DRAWNS,u'secondary-fill-color'), None): cnv_string,
605 ((DRAWNS,u'shadow'), None): cnv_string,
606 ((DRAWNS,u'shadow-color'), None): cnv_string,
607 ((DRAWNS,u'shadow-offset-x'), None): cnv_length,
608 ((DRAWNS,u'shadow-offset-y'), None): cnv_length,
609 ((DRAWNS,u'shadow-opacity'), None): cnv_string,
610 ((DRAWNS,u'shape-id'), None): cnv_IDREF,
611 ((DRAWNS,u'sharpness'), None): cnv_string,
612 ((DRAWNS,u'show-unit'), None): cnv_boolean,
613 ((DRAWNS,u'start-angle'), None): cnv_angle,
614 ((DRAWNS,u'start'), None): cnv_string,
615 ((DRAWNS,u'start-color'), None): cnv_string,
616 ((DRAWNS,u'start-glue-point'), None): cnv_nonNegativeInteger,
617 ((DRAWNS,u'start-guide'), None): cnv_length,
618 ((DRAWNS,u'start-intensity'), None): cnv_string,
619 ((DRAWNS,u'start-line-spacing-horizontal'), None): cnv_string,
620 ((DRAWNS,u'start-line-spacing-vertical'), None): cnv_string,
621 ((DRAWNS,u'start-shape'), None): cnv_IDREF,
622 ((DRAWNS,u'stroke'), None): cnv_string,
623 ((DRAWNS,u'stroke-dash'), None): cnv_string,
624 ((DRAWNS,u'stroke-dash-names'), None): cnv_string,
625 ((DRAWNS,u'stroke-linejoin'), None): cnv_string,
626 ((DRAWNS,u'style'), None): cnv_string,
627 ((DRAWNS,u'style-name'), None): cnv_StyleNameRef,
628 ((DRAWNS,u'symbol-color'), None): cnv_string,
629 ((DRAWNS,u'text-areas'), None): cnv_string,
630 ((DRAWNS,u'text-path-allowed'), None): cnv_boolean,
631 ((DRAWNS,u'text-path'), None): cnv_boolean,
632 ((DRAWNS,u'text-path-mode'), None): cnv_string,
633 ((DRAWNS,u'text-path-same-letter-heights'), None): cnv_boolean,
634 ((DRAWNS,u'text-path-scale'), None): cnv_string,
635 ((DRAWNS,u'text-rotate-angle'), None): cnv_double,
636 ((DRAWNS,u'text-style-name'), None): cnv_StyleNameRef,
637 ((DRAWNS,u'textarea-horizontal-align'), None): cnv_string,
638 ((DRAWNS,u'textarea-vertical-align'), None): cnv_string,
639 ((DRAWNS,u'tile-repeat-offset'), None): cnv_string,
640 ((DRAWNS,u'transform'), None): cnv_string,
641 ((DRAWNS,u'type'), None): cnv_string,
642 ((DRAWNS,u'unit'), None): cnv_string,
643 ((DRAWNS,u'value'), None): cnv_string,
644 ((DRAWNS,u'visible-area-height'), None): cnv_string,
645 ((DRAWNS,u'visible-area-left'), None): cnv_string,
646 ((DRAWNS,u'visible-area-top'), None): cnv_string,
647 ((DRAWNS,u'visible-area-width'), None): cnv_string,
648 ((DRAWNS,u'wrap-influence-on-position'), None): cnv_string,
649 ((DRAWNS,u'z-index'), None): cnv_nonNegativeInteger,
650 ((FONS,u'background-color'), None): cnv_string,
651 ((FONS,u'border-bottom'), None): cnv_string,
652 ((FONS,u'border'), None): cnv_string,
653 ((FONS,u'border-left'), None): cnv_string,
654 ((FONS,u'border-right'), None): cnv_string,
655 ((FONS,u'border-top'), None): cnv_string,
656 ((FONS,u'break-after'), None): cnv_string,
657 ((FONS,u'break-before'), None): cnv_string,
658 ((FONS,u'clip'), None): cnv_string,
659 ((FONS,u'color'), None): cnv_string,
660 ((FONS,u'column-count'), None): cnv_positiveInteger,
661 ((FONS,u'column-gap'), None): cnv_length,
662 ((FONS,u'country'), None): cnv_token,
663 ((FONS,u'end-indent'), None): cnv_length,
664 ((FONS,u'font-family'), None): cnv_string,
665 ((FONS,u'font-size'), None): cnv_string,
666 ((FONS,u'font-style'), None): cnv_string,
667 ((FONS,u'font-variant'), None): cnv_string,
668 ((FONS,u'font-weight'), None): cnv_string,
669 ((FONS,u'height'), None): cnv_string,
670 ((FONS,u'hyphenate'), None): cnv_boolean,
671 ((FONS,u'hyphenation-keep'), None): cnv_string,
672 ((FONS,u'hyphenation-ladder-count'), None): cnv_string,
673 ((FONS,u'hyphenation-push-char-count'), None): cnv_string,
674 ((FONS,u'hyphenation-remain-char-count'), None): cnv_string,
675 ((FONS,u'keep-together'), None): cnv_string,
676 ((FONS,u'keep-with-next'), None): cnv_string,
677 ((FONS,u'language'), None): cnv_token,
678 ((FONS,u'letter-spacing'), None): cnv_string,
679 ((FONS,u'line-height'), None): cnv_string,
680 ((FONS,u'margin-bottom'), None): cnv_string,
681 ((FONS,u'margin'), None): cnv_string,
682 ((FONS,u'margin-left'), None): cnv_string,
683 ((FONS,u'margin-right'), None): cnv_string,
684 ((FONS,u'margin-top'), None): cnv_string,
685 ((FONS,u'max-height'), None): cnv_string,
686 ((FONS,u'max-width'), None): cnv_string,
687 ((FONS,u'min-height'), None): cnv_length,
688 ((FONS,u'min-width'), None): cnv_string,
689 ((FONS,u'orphans'), None): cnv_string,
690 ((FONS,u'padding-bottom'), None): cnv_string,
691 ((FONS,u'padding'), None): cnv_string,
692 ((FONS,u'padding-left'), None): cnv_string,
693 ((FONS,u'padding-right'), None): cnv_string,
694 ((FONS,u'padding-top'), None): cnv_string,
695 ((FONS,u'page-height'), None): cnv_length,
696 ((FONS,u'page-width'), None): cnv_length,
697 ((FONS,u'script'), None): cnv_token,
698 ((FONS,u'space-after'), None): cnv_length,
699 ((FONS,u'space-before'), None): cnv_length,
700 ((FONS,u'start-indent'), None): cnv_length,
701 ((FONS,u'text-align'), None): cnv_string,
702 ((FONS,u'text-align-last'), None): cnv_string,
703 ((FONS,u'text-indent'), None): cnv_string,
704 ((FONS,u'text-shadow'), None): cnv_string,
705 ((FONS,u'text-transform'), None): cnv_string,
706 ((FONS,u'widows'), None): cnv_string,
707 ((FONS,u'width'), None): cnv_string,
708 ((FONS,u'wrap-option'), None): cnv_string,
709 ((FORMNS,u'allow-deletes'), None): cnv_boolean,
710 ((FORMNS,u'allow-inserts'), None): cnv_boolean,
711 ((FORMNS,u'allow-updates'), None): cnv_boolean,
712 ((FORMNS,u'apply-design-mode'), None): cnv_boolean,
713 ((FORMNS,u'apply-filter'), None): cnv_boolean,
714 ((FORMNS,u'auto-complete'), None): cnv_boolean,
715 ((FORMNS,u'automatic-focus'), None): cnv_boolean,
716 ((FORMNS,u'bound-column'), None): cnv_string,
717 ((FORMNS,u'button-type'), None): cnv_string,
718 ((FORMNS,u'command'), None): cnv_string,
719 ((FORMNS,u'command-type'), None): cnv_string,
720 ((FORMNS,u'control-implementation'), None): cnv_namespacedToken,
721 ((FORMNS,u'convert-empty-to-null'), None): cnv_boolean,
722 ((FORMNS,u'current-selected'), None): cnv_boolean,
723 ((FORMNS,u'current-state'), None): cnv_string,
724 # ((FORMNS,u'current-value'), None): cnv_date,
725 # ((FORMNS,u'current-value'), None): cnv_double,
726 ((FORMNS,u'current-value'), None): cnv_string,
727 # ((FORMNS,u'current-value'), None): cnv_time,
728 ((FORMNS,u'data-field'), None): cnv_string,
729 ((FORMNS,u'datasource'), None): cnv_string,
730 ((FORMNS,u'default-button'), None): cnv_boolean,
731 ((FORMNS,u'delay-for-repeat'), None): cnv_duration,
732 ((FORMNS,u'detail-fields'), None): cnv_string,
733 ((FORMNS,u'disabled'), None): cnv_boolean,
734 ((FORMNS,u'dropdown'), None): cnv_boolean,
735 ((FORMNS,u'echo-char'), None): cnv_string,
736 ((FORMNS,u'enctype'), None): cnv_string,
737 ((FORMNS,u'escape-processing'), None): cnv_boolean,
738 ((FORMNS,u'filter'), None): cnv_string,
739 ((FORMNS,u'focus-on-click'), None): cnv_boolean,
740 ((FORMNS,u'for'), None): cnv_string,
741 ((FORMNS,u'id'), None): cnv_ID,
742 ((FORMNS,u'ignore-result'), None): cnv_boolean,
743 ((FORMNS,u'image-align'), None): cnv_string,
744 ((FORMNS,u'image-data'), None): cnv_anyURI,
745 ((FORMNS,u'image-position'), None): cnv_string,
746 ((FORMNS,u'is-tristate'), None): cnv_boolean,
747 ((FORMNS,u'label'), None): cnv_string,
748 ((FORMNS,u'linked-cell'), None): cnv_string,
749 ((FORMNS,u'list-linkage-type'), None): cnv_list_linkage_type,
750 ((FORMNS,u'list-source'), None): cnv_string,
751 ((FORMNS,u'list-source-type'), None): cnv_string,
752 ((FORMNS,u'master-fields'), None): cnv_string,
753 ((FORMNS,u'max-length'), None): cnv_nonNegativeInteger,
754 # ((FORMNS,u'max-value'), None): cnv_date,
755 # ((FORMNS,u'max-value'), None): cnv_double,
756 ((FORMNS,u'max-value'), None): cnv_string,
757 # ((FORMNS,u'max-value'), None): cnv_time,
758 ((FORMNS,u'method'), None): cnv_string,
759 # ((FORMNS,u'min-value'), None): cnv_date,
760 # ((FORMNS,u'min-value'), None): cnv_double,
761 ((FORMNS,u'min-value'), None): cnv_string,
762 # ((FORMNS,u'min-value'), None): cnv_time,
763 ((FORMNS,u'multi-line'), None): cnv_boolean,
764 ((FORMNS,u'multiple'), None): cnv_boolean,
765 ((FORMNS,u'name'), None): cnv_string,
766 ((FORMNS,u'navigation-mode'), None): cnv_string,
767 ((FORMNS,u'order'), None): cnv_string,
768 ((FORMNS,u'orientation'), None): cnv_string,
769 ((FORMNS,u'page-step-size'), None): cnv_positiveInteger,
770 ((FORMNS,u'printable'), None): cnv_boolean,
771 ((FORMNS,u'property-name'), None): cnv_string,
772 ((FORMNS,u'readonly'), None): cnv_boolean,
773 ((FORMNS,u'repeat'), None): cnv_boolean,
774 ((FORMNS,u'selected'), None): cnv_boolean,
775 ((FORMNS,u'size'), None): cnv_nonNegativeInteger,
776 ((FORMNS,u'source-cell-range'), None): cnv_string,
777 ((FORMNS,u'spin-button'), None): cnv_boolean,
778 ((FORMNS,u'state'), None): cnv_string,
779 ((FORMNS,u'step-size'), None): cnv_positiveInteger,
780 ((FORMNS,u'tab-cycle'), None): cnv_string,
781 ((FORMNS,u'tab-index'), None): cnv_nonNegativeInteger,
782 ((FORMNS,u'tab-stop'), None): cnv_boolean,
783 ((FORMNS,u'text-style-name'), None): cnv_StyleNameRef,
784 ((FORMNS,u'title'), None): cnv_string,
785 ((FORMNS,u'toggle'), None): cnv_boolean,
786 ((FORMNS,u'validation'), None): cnv_boolean,
787 # ((FORMNS,u'value'), None): cnv_date,
788 # ((FORMNS,u'value'), None): cnv_double,
789 ((FORMNS,u'value'), None): cnv_string,
790 # ((FORMNS,u'value'), None): cnv_time,
791 ((FORMNS,u'visual-effect'), None): cnv_string,
792 ((FORMNS,u'xforms-list-source'), None): cnv_string,
793 ((FORMNS,u'xforms-submission'), None): cnv_string,
794 ((GRDDLNS,u'transformation'), None): cnv_string,
795 ((MANIFESTNS,u'algorithm-name'), None): cnv_string,
796 ((MANIFESTNS,u'checksum'), None): cnv_string,
797 ((MANIFESTNS,u'checksum-type'), None): cnv_string,
798 ((MANIFESTNS,u'full-path'), None): cnv_string,
799 ((MANIFESTNS,u'initialisation-vector'), None): cnv_string,
800 ((MANIFESTNS,u'iteration-count'), None): cnv_nonNegativeInteger,
801 ((MANIFESTNS,u'key-derivation-name'), None): cnv_string,
802 ((MANIFESTNS,u'media-type'), None): cnv_string,
803 ((MANIFESTNS,u'preferred-view-mode'), None): cnv_string,
804 ((MANIFESTNS,u'salt'), None): cnv_string,
805 ((MANIFESTNS,u'size'), None): cnv_nonNegativeInteger,
806 ((MANIFESTNS,u'version'), None): cnv_string,
807 ((METANS,u'cell-count'), None): cnv_nonNegativeInteger,
808 ((METANS,u'character-count'), None): cnv_nonNegativeInteger,
809 ((METANS,u'date'), None): cnv_dateTime,
810 ((METANS,u'delay'), None): cnv_duration,
811 ((METANS,u'draw-count'), None): cnv_nonNegativeInteger,
812 ((METANS,u'frame-count'), None): cnv_nonNegativeInteger,
813 ((METANS,u'image-count'), None): cnv_nonNegativeInteger,
814 ((METANS,u'name'), None): cnv_string,
815 ((METANS,u'non-whitespace-character-count'), None): cnv_nonNegativeInteger,
816 ((METANS,u'object-count'), None): cnv_nonNegativeInteger,
817 ((METANS,u'ole-object-count'), None): cnv_nonNegativeInteger,
818 ((METANS,u'page-count'), None): cnv_nonNegativeInteger,
819 ((METANS,u'paragraph-count'), None): cnv_nonNegativeInteger,
820 ((METANS,u'row-count'), None): cnv_nonNegativeInteger,
821 ((METANS,u'sentence-count'), None): cnv_nonNegativeInteger,
822 ((METANS,u'syllable-count'), None): cnv_nonNegativeInteger,
823 ((METANS,u'table-count'), None): cnv_nonNegativeInteger,
824 ((METANS,u'value-type'), None): cnv_metavaluetype,
825 ((METANS,u'word-count'), None): cnv_nonNegativeInteger,
826 ((NUMBERNS,u'automatic-order'), None): cnv_boolean,
827 ((NUMBERNS,u'calendar'), None): cnv_string,
828 ((NUMBERNS,u'country'), None): cnv_token,
829 ((NUMBERNS,u'decimal-places'), None): cnv_integer,
830 ((NUMBERNS,u'decimal-replacement'), None): cnv_string,
831 ((NUMBERNS,u'denominator-value'), None): cnv_integer,
832 ((NUMBERNS,u'display-factor'), None): cnv_double,
833 ((NUMBERNS,u'format-source'), None): cnv_string,
834 ((NUMBERNS,u'grouping'), None): cnv_boolean,
835 ((NUMBERNS,u'language'), None): cnv_token,
836 ((NUMBERNS,u'min-denominator-digits'), None): cnv_integer,
837 ((NUMBERNS,u'min-exponent-digits'), None): cnv_integer,
838 ((NUMBERNS,u'min-integer-digits'), None): cnv_integer,
839 ((NUMBERNS,u'min-numerator-digits'), None): cnv_integer,
840 ((NUMBERNS,u'position'), None): cnv_integer,
841 ((NUMBERNS,u'possessive-form'), None): cnv_boolean,
842 ((NUMBERNS,u'rfc-language-tag'), None): cnv_language,
843 ((NUMBERNS,u'script'), None): cnv_token,
844 ((NUMBERNS,u'style'), None): cnv_string,
845 ((NUMBERNS,u'textual'), None): cnv_boolean,
846 ((NUMBERNS,u'title'), None): cnv_string,
847 ((NUMBERNS,u'transliteration-country'), None): cnv_token,
848 ((NUMBERNS,u'transliteration-format'), None): cnv_string,
849 ((NUMBERNS,u'transliteration-language'), None): cnv_token,
850 ((NUMBERNS,u'transliteration-style'), None): cnv_string,
851 ((NUMBERNS,u'truncate-on-overflow'), None): cnv_boolean,
852 ((OFFICENS,u'automatic-update'), None): cnv_boolean,
853 ((OFFICENS,u'boolean-value'), None): cnv_boolean,
854 ((OFFICENS,u'conversion-mode'), None): cnv_string,
855 ((OFFICENS,u'currency'), None): cnv_string,
856 ((OFFICENS,u'date-value'), None): cnv_dateTime,
857 ((OFFICENS,u'dde-application'), None): cnv_string,
858 ((OFFICENS,u'dde-item'), None): cnv_string,
859 ((OFFICENS,u'dde-topic'), None): cnv_string,
860 ((OFFICENS,u'display'), None): cnv_boolean,
861 ((OFFICENS,u'mimetype'), None): cnv_string,
862 ((OFFICENS,u'name'), None): cnv_string,
863 ((OFFICENS,u'process-content'), None): cnv_boolean,
864 ((OFFICENS,u'server-map'), None): cnv_boolean,
865 ((OFFICENS,u'string-value'), None): cnv_string,
866 ((OFFICENS,u'target-frame'), None): cnv_string,
867 ((OFFICENS,u'target-frame-name'), None): cnv_string,
868 ((OFFICENS,u'time-value'), None): cnv_duration,
869 ((OFFICENS,u'title'), None): cnv_string,
870 ((OFFICENS,u'value'), None): cnv_double,
871 ((OFFICENS,u'value-type'), None): cnv_string,
872 ((OFFICENS,u'version'), None): cnv_string,
873 ((PRESENTATIONNS,u'action'), None): cnv_string,
874 ((PRESENTATIONNS,u'animations'), None): cnv_string,
875 ((PRESENTATIONNS,u'background-objects-visible'), None): cnv_boolean,
876 ((PRESENTATIONNS,u'background-visible'), None): cnv_boolean,
877 ((PRESENTATIONNS,u'class'), None): cnv_string,
878 ((PRESENTATIONNS,u'class-names'), None): cnv_NCNames,
879 ((PRESENTATIONNS,u'delay'), None): cnv_duration,
880 ((PRESENTATIONNS,u'direction'), None): cnv_string,
881 ((PRESENTATIONNS,u'display-date-time'), None): cnv_boolean,
882 ((PRESENTATIONNS,u'display-footer'), None): cnv_boolean,
883 ((PRESENTATIONNS,u'display-header'), None): cnv_boolean,
884 ((PRESENTATIONNS,u'display-page-number'), None): cnv_boolean,
885 ((PRESENTATIONNS,u'duration'), None): cnv_string,
886 ((PRESENTATIONNS,u'effect'), None): cnv_string,
887 ((PRESENTATIONNS,u'endless'), None): cnv_boolean,
888 ((PRESENTATIONNS,u'force-manual'), None): cnv_boolean,
889 ((PRESENTATIONNS,u'full-screen'), None): cnv_boolean,
890 ((PRESENTATIONNS,u'group-id'), None): cnv_string,
891 ((PRESENTATIONNS,u'master-element'), None): cnv_IDREF,
892 ((PRESENTATIONNS,u'mouse-as-pen'), None): cnv_boolean,
893 ((PRESENTATIONNS,u'mouse-visible'), None): cnv_boolean,
894 ((PRESENTATIONNS,u'name'), None): cnv_string,
895 ((PRESENTATIONNS,u'node-type'), None): cnv_string,
896 ((PRESENTATIONNS,u'object'), None): cnv_string,
897 ((PRESENTATIONNS,u'pages'), None): cnv_string,
898 ((PRESENTATIONNS,u'path-id'), None): cnv_string,
899 ((PRESENTATIONNS,u'pause'), None): cnv_duration,
900 ((PRESENTATIONNS,u'placeholder'), None): cnv_boolean,
901 ((PRESENTATIONNS,u'play-full'), None): cnv_boolean,
902 ((PRESENTATIONNS,u'presentation-page-layout-name'), None): cnv_StyleNameRef,
903 ((PRESENTATIONNS,u'preset-class'), None): cnv_string,
904 ((PRESENTATIONNS,u'preset-id'), None): cnv_string,
905 ((PRESENTATIONNS,u'preset-sub-type'), None): cnv_string,
906 ((PRESENTATIONNS,u'show'), None): cnv_string,
907 ((PRESENTATIONNS,u'show-end-of-presentation-slide'), None): cnv_boolean,
908 ((PRESENTATIONNS,u'show-logo'), None): cnv_boolean,
909 ((PRESENTATIONNS,u'source'), None): cnv_string,
910 ((PRESENTATIONNS,u'speed'), None): cnv_string,
911 ((PRESENTATIONNS,u'start-page'), None): cnv_string,
912 ((PRESENTATIONNS,u'start-scale'), None): cnv_string,
913 ((PRESENTATIONNS,u'start-with-navigator'), None): cnv_boolean,
914 ((PRESENTATIONNS,u'stay-on-top'), None): cnv_boolean,
915 ((PRESENTATIONNS,u'style-name'), None): cnv_StyleNameRef,
916 ((PRESENTATIONNS,u'transition-on-click'), None): cnv_string,
917 ((PRESENTATIONNS,u'transition-speed'), None): cnv_string,
918 ((PRESENTATIONNS,u'transition-style'), None): cnv_string,
919 ((PRESENTATIONNS,u'transition-type'), None): cnv_string,
920 ((PRESENTATIONNS,u'use-date-time-name'), None): cnv_string,
921 ((PRESENTATIONNS,u'use-footer-name'), None): cnv_string,
922 ((PRESENTATIONNS,u'use-header-name'), None): cnv_string,
923 ((PRESENTATIONNS,u'user-transformed'), None): cnv_boolean,
924 ((PRESENTATIONNS,u'verb'), None): cnv_nonNegativeInteger,
925 ((PRESENTATIONNS,u'visibility'), None): cnv_string,
926 ((SCRIPTNS,u'event-name'), None): cnv_formula,
927 ((SCRIPTNS,u'language'), None): cnv_formula,
928 ((SCRIPTNS,u'macro-name'), None): cnv_string,
929 ((SMILNS,u'accelerate'), None): cnv_double,
930 ((SMILNS,u'accumulate'), None): cnv_string,
931 ((SMILNS,u'additive'), None): cnv_string,
932 ((SMILNS,u'attributeName'), None): cnv_string,
933 ((SMILNS,u'autoReverse'), None): cnv_boolean,
934 ((SMILNS,u'begin'), None): cnv_string,
935 ((SMILNS,u'by'), None): cnv_string,
936 ((SMILNS,u'calcMode'), None): cnv_string,
937 ((SMILNS,u'decelerate'), None): cnv_double,
938 ((SMILNS,u'direction'), None): cnv_string,
939 ((SMILNS,u'dur'), None): cnv_string,
940 ((SMILNS,u'end'), None): cnv_string,
941 ((SMILNS,u'endsync'), None): cnv_string,
942 ((SMILNS,u'fadeColor'), None): cnv_string,
943 ((SMILNS,u'fill'), None): cnv_string,
944 ((SMILNS,u'fillDefault'), None): cnv_string,
945 ((SMILNS,u'from'), None): cnv_string,
946 ((SMILNS,u'keySplines'), None): cnv_string,
947 ((SMILNS,u'keyTimes'), None): cnv_string,
948 ((SMILNS,u'mode'), None): cnv_string,
949 ((SMILNS,u'repeatCount'), None): cnv_nonNegativeInteger,
950 ((SMILNS,u'repeatDur'), None): cnv_string,
951 ((SMILNS,u'restart'), None): cnv_string,
952 ((SMILNS,u'restartDefault'), None): cnv_string,
953 ((SMILNS,u'subtype'), None): cnv_string,
954 ((SMILNS,u'targetElement'), None): cnv_IDREF,
955 ((SMILNS,u'to'), None): cnv_string,
956 ((SMILNS,u'type'), None): cnv_string,
957 ((SMILNS,u'values'), None): cnv_string,
958 ((STYLENS,u'adjustment'), None): cnv_string,
959 ((STYLENS,u'apply-style-name'), None): cnv_StyleNameRef,
960 ((STYLENS,u'auto-text-indent'), None): cnv_boolean,
961 ((STYLENS,u'auto-update'), None): cnv_boolean,
962 ((STYLENS,u'background-transparency'), None): cnv_string,
963 ((STYLENS,u'base-cell-address'), None): cnv_string,
964 ((STYLENS,u'border-line-width-bottom'), None): cnv_string,
965 ((STYLENS,u'border-line-width'), None): cnv_string,
966 ((STYLENS,u'border-line-width-left'), None): cnv_string,
967 ((STYLENS,u'border-line-width-right'), None): cnv_string,
968 ((STYLENS,u'border-line-width-top'), None): cnv_string,
969 ((STYLENS,u'cell-protect'), None): cnv_string,
970 ((STYLENS,u'char'), None): cnv_string,
971 ((STYLENS,u'class'), None): cnv_string,
972 ((STYLENS,u'color'), None): cnv_string,
973 ((STYLENS,u'column-width'), None): cnv_string,
974 ((STYLENS,u'condition'), None): cnv_string,
975 ((STYLENS,u'country-asian'), None): cnv_string,
976 ((STYLENS,u'country-complex'), None): cnv_string,
977 ((STYLENS,u'data-style-name'), None): cnv_StyleNameRef,
978 ((STYLENS,u'decimal-places'), None): cnv_string,
979 ((STYLENS,u'default-outline-level'), None): cnv_positiveInteger,
980 ((STYLENS,u'diagonal-bl-tr'), None): cnv_string,
981 ((STYLENS,u'diagonal-bl-tr-widths'), None): cnv_string,
982 ((STYLENS,u'diagonal-tl-br'), None): cnv_string,
983 ((STYLENS,u'diagonal-tl-br-widths'), None): cnv_string,
984 ((STYLENS,u'direction'), None): cnv_string,
985 ((STYLENS,u'display'), None): cnv_boolean,
986 ((STYLENS,u'display-name'), None): cnv_string,
987 ((STYLENS,u'distance-after-sep'), None): cnv_length,
988 ((STYLENS,u'distance-before-sep'), None): cnv_length,
989 ((STYLENS,u'distance'), None): cnv_length,
990 ((STYLENS,u'dynamic-spacing'), None): cnv_boolean,
991 ((STYLENS,u'editable'), None): cnv_boolean,
992 ((STYLENS,u'family'), None): cnv_family,
993 ((STYLENS,u'filter-name'), None): cnv_string,
994 ((STYLENS,u'first-page-number'), None): cnv_string,
995 ((STYLENS,u'flow-with-text'), None): cnv_boolean,
996 ((STYLENS,u'font-adornments'), None): cnv_string,
997 ((STYLENS,u'font-charset'), None): cnv_string,
998 ((STYLENS,u'font-charset-asian'), None): cnv_string,
999 ((STYLENS,u'font-charset-complex'), None): cnv_string,
1000 ((STYLENS,u'font-family-asian'), None): cnv_string,
1001 ((STYLENS,u'font-family-complex'), None): cnv_string,
1002 ((STYLENS,u'font-family-generic-asian'), None): cnv_string,
1003 ((STYLENS,u'font-family-generic'), None): cnv_string,
1004 ((STYLENS,u'font-family-generic-complex'), None): cnv_string,
1005 ((STYLENS,u'font-independent-line-spacing'), None): cnv_boolean,
1006 ((STYLENS,u'font-name-asian'), None): cnv_string,
1007 ((STYLENS,u'font-name'), None): cnv_string,
1008 ((STYLENS,u'font-name-complex'), None): cnv_string,
1009 ((STYLENS,u'font-pitch-asian'), None): cnv_string,
1010 ((STYLENS,u'font-pitch'), None): cnv_string,
1011 ((STYLENS,u'font-pitch-complex'), None): cnv_string,
1012 ((STYLENS,u'font-relief'), None): cnv_string,
1013 ((STYLENS,u'font-size-asian'), None): cnv_string,
1014 ((STYLENS,u'font-size-complex'), None): cnv_string,
1015 ((STYLENS,u'font-size-rel-asian'), None): cnv_length,
1016 ((STYLENS,u'font-size-rel'), None): cnv_length,
1017 ((STYLENS,u'font-size-rel-complex'), None): cnv_length,
1018 ((STYLENS,u'font-style-asian'), None): cnv_string,
1019 ((STYLENS,u'font-style-complex'), None): cnv_string,
1020 ((STYLENS,u'font-style-name-asian'), None): cnv_string,
1021 ((STYLENS,u'font-style-name'), None): cnv_string,
1022 ((STYLENS,u'font-style-name-complex'), None): cnv_string,
1023 ((STYLENS,u'font-weight-asian'), None): cnv_string,
1024 ((STYLENS,u'font-weight-complex'), None): cnv_string,
1025 ((STYLENS,u'footnote-max-height'), None): cnv_length,
1026 ((STYLENS,u'glyph-orientation-vertical'), None): cnv_string,
1027 ((STYLENS,u'height'), None): cnv_string,
1028 ((STYLENS,u'horizontal-pos'), None): cnv_string,
1029 ((STYLENS,u'horizontal-rel'), None): cnv_string,
1030 ((STYLENS,u'join-border'), None): cnv_boolean,
1031 ((STYLENS,u'justify-single-word'), None): cnv_boolean,
1032 ((STYLENS,u'language-asian'), None): cnv_string,
1033 ((STYLENS,u'language-complex'), None): cnv_string,
1034 ((STYLENS,u'layout-grid-base-height'), None): cnv_length,
1035 ((STYLENS,u'layout-grid-base-width'), None): cnv_length,
1036 ((STYLENS,u'layout-grid-color'), None): cnv_string,
1037 ((STYLENS,u'layout-grid-display'), None): cnv_boolean,
1038 ((STYLENS,u'layout-grid-lines'), None): cnv_string,
1039 ((STYLENS,u'layout-grid-mode'), None): cnv_string,
1040 ((STYLENS,u'layout-grid-print'), None): cnv_boolean,
1041 ((STYLENS,u'layout-grid-ruby-below'), None): cnv_boolean,
1042 ((STYLENS,u'layout-grid-ruby-height'), None): cnv_length,
1043 ((STYLENS,u'layout-grid-snap-to'), None): cnv_boolean,
1044 ((STYLENS,u'layout-grid-standard-mode'), None): cnv_boolean,
1045 ((STYLENS,u'leader-char'), None): cnv_string,
1046 ((STYLENS,u'leader-color'), None): cnv_string,
1047 ((STYLENS,u'leader-style'), None): cnv_string,
1048 ((STYLENS,u'leader-text'), None): cnv_string,
1049 ((STYLENS,u'leader-text-style'), None): cnv_StyleNameRef,
1050 ((STYLENS,u'leader-type'), None): cnv_string,
1051 ((STYLENS,u'leader-width'), None): cnv_string,
1052 ((STYLENS,u'legend-expansion-aspect-ratio'), None): cnv_double,
1053 ((STYLENS,u'legend-expansion'), None): cnv_string,
1054 ((STYLENS,u'length'), None): cnv_positiveInteger,
1055 ((STYLENS,u'letter-kerning'), None): cnv_boolean,
1056 ((STYLENS,u'line-break'), None): cnv_string,
1057 ((STYLENS,u'line-height-at-least'), None): cnv_string,
1058 ((STYLENS,u'line-spacing'), None): cnv_length,
1059 ((STYLENS,u'line-style'), None): cnv_string,
1060 ((STYLENS,u'lines'), None): cnv_positiveInteger,
1061 ((STYLENS,u'list-level'), None): cnv_positiveInteger,
1062 ((STYLENS,u'list-style-name'), None): cnv_StyleNameRef,
1063 ((STYLENS,u'master-page-name'), None): cnv_StyleNameRef,
1064 ((STYLENS,u'may-break-between-rows'), None): cnv_boolean,
1065 ((STYLENS,u'min-row-height'), None): cnv_string,
1066 ((STYLENS,u'mirror'), None): cnv_string,
1067 ((STYLENS,u'name'), None): cnv_NCName,
1068 ((STYLENS,u'name'), (STYLENS,u'font-face')): cnv_string,
1069 ((STYLENS,u'next-style-name'), None): cnv_StyleNameRef,
1070 ((STYLENS,u'num-format'), None): cnv_string,
1071 ((STYLENS,u'num-letter-sync'), None): cnv_boolean,
1072 ((STYLENS,u'num-prefix'), None): cnv_string,
1073 ((STYLENS,u'num-suffix'), None): cnv_string,
1074 ((STYLENS,u'number-wrapped-paragraphs'), None): cnv_string,
1075 ((STYLENS,u'overflow-behavior'), None): cnv_string,
1076 ((STYLENS,u'page-layout-name'), None): cnv_StyleNameRef,
1077 ((STYLENS,u'page-number'), None): cnv_string,
1078 ((STYLENS,u'page-usage'), None): cnv_string,
1079 ((STYLENS,u'paper-tray-name'), None): cnv_string,
1080 ((STYLENS,u'parent-style-name'), None): cnv_StyleNameRef,
1081 ((STYLENS,u'percentage-data-style-name'), None): cnv_StyleNameRef,
1082 ((STYLENS,u'position'), (STYLENS,u'tab-stop')): cnv_length,
1083 ((STYLENS,u'position'), None): cnv_string,
1084 ((STYLENS,u'print'), None): cnv_string,
1085 ((STYLENS,u'print-content'), None): cnv_boolean,
1086 ((STYLENS,u'print-orientation'), None): cnv_string,
1087 ((STYLENS,u'print-page-order'), None): cnv_string,
1088 ((STYLENS,u'protect'), (STYLENS,u'section-properties')): cnv_boolean,
1089 ((STYLENS,u'protect'), (STYLENS,u'graphic-properties')): cnv_string,
1090 # ((STYLENS,u'protect'), None): cnv_boolean,
1091 ((STYLENS,u'punctuation-wrap'), None): cnv_string,
1092 ((STYLENS,u'register-true'), None): cnv_boolean,
1093 ((STYLENS,u'register-truth-ref-style-name'), None): cnv_string,
1094 ((STYLENS,u'rel-column-width'), None): cnv_string,
1095 ((STYLENS,u'rel-height'), None): cnv_string,
1096 ((STYLENS,u'rel-width'), None): cnv_string,
1097 ((STYLENS,u'repeat'), None): cnv_string,
1098 ((STYLENS,u'repeat-content'), None): cnv_boolean,
1099 ((STYLENS,u'rfc-language-tag'), None): cnv_language,
1100 ((STYLENS,u'rfc-language-tag-asian'), None): cnv_language,
1101 ((STYLENS,u'rfc-language-tag-complex'), None): cnv_language,
1102 ((STYLENS,u'rotation-align'), None): cnv_string,
1103 ((STYLENS,u'rotation-angle'), None): cnv_string,
1104 ((STYLENS,u'row-height'), None): cnv_string,
1105 ((STYLENS,u'ruby-align'), None): cnv_string,
1106 ((STYLENS,u'ruby-position'), None): cnv_string,
1107 ((STYLENS,u'run-through'), None): cnv_string,
1108 ((STYLENS,u'scale-to'), None): cnv_string,
1109 ((STYLENS,u'scale-to-pages'), None): cnv_string,
1110 ((STYLENS,u'script-asian'), None): cnv_string,
1111 ((STYLENS,u'script-complex'), None): cnv_string,
1112 ((STYLENS,u'script-type'), None): cnv_string,
1113 ((STYLENS,u'shadow'), None): cnv_string,
1114 ((STYLENS,u'shrink-to-fit'), None): cnv_boolean,
1115 ((STYLENS,u'snap-to-layout-grid'), None): cnv_boolean,
1116 ((STYLENS,u'style'), None): cnv_string,
1117 ((STYLENS,u'style-name'), None): cnv_StyleNameRef,
1118 ((STYLENS,u'tab-stop-distance'), None): cnv_string,
1119 ((STYLENS,u'table-centering'), None): cnv_string,
1120 ((STYLENS,u'text-align-source'), None): cnv_string,
1121 ((STYLENS,u'text-autospace'), None): cnv_string,
1122 ((STYLENS,u'text-blinking'), None): cnv_boolean,
1123 ((STYLENS,u'text-combine'), None): cnv_string,
1124 ((STYLENS,u'text-combine-end-char'), None): cnv_string,
1125 ((STYLENS,u'text-combine-start-char'), None): cnv_string,
1126 ((STYLENS,u'text-emphasize'), None): cnv_string,
1127 ((STYLENS,u'text-line-through-color'), None): cnv_string,
1128 ((STYLENS,u'text-line-through-mode'), None): cnv_string,
1129 ((STYLENS,u'text-line-through-style'), None): cnv_string,
1130 ((STYLENS,u'text-line-through-text'), None): cnv_string,
1131 ((STYLENS,u'text-line-through-text-style'), None): cnv_string,
1132 ((STYLENS,u'text-line-through-type'), None): cnv_string,
1133 ((STYLENS,u'text-line-through-width'), None): cnv_string,
1134 ((STYLENS,u'text-outline'), None): cnv_boolean,
1135 ((STYLENS,u'text-overline-color'), None): cnv_string,
1136 ((STYLENS,u'text-overline-mode'), None): cnv_string,
1137 ((STYLENS,u'text-overline-style'), None): cnv_string,
1138 ((STYLENS,u'text-overline-type'), None): cnv_string,
1139 ((STYLENS,u'text-overline-width'), None): cnv_string,
1140 ((STYLENS,u'text-position'), None): cnv_string,
1141 ((STYLENS,u'text-rotation-angle'), None): cnv_string,
1142 ((STYLENS,u'text-rotation-scale'), None): cnv_string,
1143 ((STYLENS,u'text-scale'), None): cnv_string,
1144 ((STYLENS,u'text-underline-color'), None): cnv_string,
1145 ((STYLENS,u'text-underline-mode'), None): cnv_string,
1146 ((STYLENS,u'text-underline-style'), None): cnv_string,
1147 ((STYLENS,u'text-underline-type'), None): cnv_string,
1148 ((STYLENS,u'text-underline-width'), None): cnv_string,
1149 ((STYLENS,u'type'), None): cnv_string,
1150 ((STYLENS,u'use-optimal-column-width'), None): cnv_boolean,
1151 ((STYLENS,u'use-optimal-row-height'), None): cnv_boolean,
1152 ((STYLENS,u'use-window-font-color'), None): cnv_boolean,
1153 ((STYLENS,u'vertical-align'), None): cnv_string,
1154 ((STYLENS,u'vertical-pos'), None): cnv_string,
1155 ((STYLENS,u'vertical-rel'), None): cnv_string,
1156 ((STYLENS,u'volatile'), None): cnv_boolean,
1157 ((STYLENS,u'width'), None): cnv_string,
1158 ((STYLENS,u'wrap'), None): cnv_string,
1159 ((STYLENS,u'wrap-contour'), None): cnv_boolean,
1160 ((STYLENS,u'wrap-contour-mode'), None): cnv_string,
1161 ((STYLENS,u'wrap-dynamic-threshold'), None): cnv_length,
1162 ((STYLENS,u'writing-mode-automatic'), None): cnv_boolean,
1163 ((STYLENS,u'writing-mode'), None): cnv_string,
1164 ((SVGNS,u'accent-height'), None): cnv_integer,
1165 ((SVGNS,u'alphabetic'), None): cnv_integer,
1166 ((SVGNS,u'ascent'), None): cnv_integer,
1167 ((SVGNS,u'bbox'), None): cnv_string,
1168 ((SVGNS,u'cap-height'), None): cnv_integer,
1169 ((SVGNS,u'cx'), None): cnv_string,
1170 ((SVGNS,u'cy'), None): cnv_string,
1171 ((SVGNS,u'd'), None): cnv_string,
1172 ((SVGNS,u'descent'), None): cnv_integer,
1173 ((SVGNS,u'fill-rule'), None): cnv_string,
1174 ((SVGNS,u'font-family'), None): cnv_string,
1175 ((SVGNS,u'font-size'), None): cnv_string,
1176 ((SVGNS,u'font-stretch'), None): cnv_string,
1177 ((SVGNS,u'font-style'), None): cnv_string,
1178 ((SVGNS,u'font-variant'), None): cnv_string,
1179 ((SVGNS,u'font-weight'), None): cnv_string,
1180 ((SVGNS,u'fx'), None): cnv_string,
1181 ((SVGNS,u'fy'), None): cnv_string,
1182 ((SVGNS,u'gradientTransform'), None): cnv_string,
1183 ((SVGNS,u'gradientUnits'), None): cnv_string,
1184 ((SVGNS,u'hanging'), None): cnv_integer,
1185 ((SVGNS,u'height'), None): cnv_length,
1186 ((SVGNS,u'ideographic'), None): cnv_integer,
1187 ((SVGNS,u'mathematical'), None): cnv_integer,
1188 ((SVGNS,u'name'), None): cnv_string,
1189 ((SVGNS,u'offset'), None): cnv_string,
1190 ((SVGNS,u'origin'), None): cnv_string,
1191 ((SVGNS,u'overline-position'), None): cnv_integer,
1192 ((SVGNS,u'overline-thickness'), None): cnv_integer,
1193 ((SVGNS,u'panose-1'), None): cnv_string,
1194 ((SVGNS,u'path'), None): cnv_string,
1195 ((SVGNS,u'r'), None): cnv_length,
1196 ((SVGNS,u'rx'), None): cnv_length,
1197 ((SVGNS,u'ry'), None): cnv_length,
1198 ((SVGNS,u'slope'), None): cnv_integer,
1199 ((SVGNS,u'spreadMethod'), None): cnv_string,
1200 ((SVGNS,u'stemh'), None): cnv_integer,
1201 ((SVGNS,u'stemv'), None): cnv_integer,
1202 ((SVGNS,u'stop-color'), None): cnv_string,
1203 ((SVGNS,u'stop-opacity'), None): cnv_double,
1204 ((SVGNS,u'strikethrough-position'), None): cnv_integer,
1205 ((SVGNS,u'strikethrough-thickness'), None): cnv_integer,
1206 ((SVGNS,u'string'), None): cnv_string,
1207 ((SVGNS,u'stroke-color'), None): cnv_string,
1208 ((SVGNS,u'stroke-linecap'), None): cnv_stroke_linecap,
1209 ((SVGNS,u'stroke-opacity'), None): cnv_string,
1210 ((SVGNS,u'stroke-width'), None): cnv_length,
1211 ((SVGNS,u'type'), None): cnv_string,
1212 ((SVGNS,u'underline-position'), None): cnv_integer,
1213 ((SVGNS,u'underline-thickness'), None): cnv_integer,
1214 ((SVGNS,u'unicode-range'), None): cnv_string,
1215 ((SVGNS,u'units-per-em'), None): cnv_integer,
1216 ((SVGNS,u'v-alphabetic'), None): cnv_integer,
1217 ((SVGNS,u'v-hanging'), None): cnv_integer,
1218 ((SVGNS,u'v-ideographic'), None): cnv_integer,
1219 ((SVGNS,u'v-mathematical'), None): cnv_integer,
1220 ((SVGNS,u'viewBox'), None): cnv_viewbox,
1221 ((SVGNS,u'width'), None): cnv_length,
1222 ((SVGNS,u'widths'), None): cnv_string,
1223 ((SVGNS,u'x'), None): cnv_length,
1224 ((SVGNS,u'x-height'), None): cnv_integer,
1225 ((SVGNS,u'x1'), None): cnv_lengthorpercent,
1226 ((SVGNS,u'x2'), None): cnv_lengthorpercent,
1227 ((SVGNS,u'y'), None): cnv_length,
1228 ((SVGNS,u'y1'), None): cnv_lengthorpercent,
1229 ((SVGNS,u'y2'), None): cnv_lengthorpercent,
1230 ((TABLENS,u'acceptance-state'), None): cnv_string,
1231 ((TABLENS,u'add-empty-lines'), None): cnv_boolean,
1232 ((TABLENS,u'algorithm'), None): cnv_formula,
1233 ((TABLENS,u'align'), None): cnv_string,
1234 ((TABLENS,u'allow-empty-cell'), None): cnv_boolean,
1235 ((TABLENS,u'application-data'), None): cnv_string,
1236 ((TABLENS,u'automatic-find-labels'), None): cnv_boolean,
1237 ((TABLENS,u'base-cell-address'), None): cnv_string,
1238 ((TABLENS,u'bind-styles-to-content'), None): cnv_boolean,
1239 ((TABLENS,u'border-color'), None): cnv_string,
1240 ((TABLENS,u'border-model'), None): cnv_string,
1241 ((TABLENS,u'buttons'), None): cnv_string,
1242 ((TABLENS,u'buttons'), None): cnv_string,
1243 ((TABLENS,u'case-sensitive'), None): cnv_boolean,
1244 ((TABLENS,u'case-sensitive'), None): cnv_string,
1245 ((TABLENS,u'cell-address'), None): cnv_string,
1246 ((TABLENS,u'cell-range-address'), None): cnv_string,
1247 ((TABLENS,u'cell-range-address'), None): cnv_string,
1248 ((TABLENS,u'cell-range'), None): cnv_string,
1249 ((TABLENS,u'column'), None): cnv_integer,
1250 ((TABLENS,u'comment'), None): cnv_string,
1251 ((TABLENS,u'condition'), None): cnv_formula,
1252 ((TABLENS,u'condition-source'), None): cnv_string,
1253 ((TABLENS,u'condition-source-range-address'), None): cnv_string,
1254 ((TABLENS,u'contains-error'), None): cnv_boolean,
1255 ((TABLENS,u'contains-header'), None): cnv_boolean,
1256 ((TABLENS,u'content-validation-name'), None): cnv_string,
1257 ((TABLENS,u'copy-back'), None): cnv_boolean,
1258 ((TABLENS,u'copy-formulas'), None): cnv_boolean,
1259 ((TABLENS,u'copy-styles'), None): cnv_boolean,
1260 ((TABLENS,u'count'), None): cnv_positiveInteger,
1261 ((TABLENS,u'country'), None): cnv_token,
1262 ((TABLENS,u'data-cell-range-address'), None): cnv_string,
1263 ((TABLENS,u'data-field'), None): cnv_string,
1264 ((TABLENS,u'data-type'), None): cnv_string,
1265 ((TABLENS,u'database-name'), None): cnv_string,
1266 ((TABLENS,u'database-table-name'), None): cnv_string,
1267 ((TABLENS,u'date-end'), None): cnv_string,
1268 ((TABLENS,u'date-start'), None): cnv_string,
1269 ((TABLENS,u'date-value'), None): cnv_date,
1270 ((TABLENS,u'default-cell-style-name'), None): cnv_StyleNameRef,
1271 ((TABLENS,u'direction'), None): cnv_string,
1272 ((TABLENS,u'display-border'), None): cnv_boolean,
1273 ((TABLENS,u'display'), None): cnv_boolean,
1274 ((TABLENS,u'display-duplicates'), None): cnv_boolean,
1275 ((TABLENS,u'display-filter-buttons'), None): cnv_boolean,
1276 ((TABLENS,u'display-list'), None): cnv_string,
1277 ((TABLENS,u'display-member-mode'), None): cnv_string,
1278 ((TABLENS,u'drill-down-on-double-click'), None): cnv_boolean,
1279 ((TABLENS,u'embedded-number-behavior'), None): cnv_string,
1280 ((TABLENS,u'enabled'), None): cnv_boolean,
1281 ((TABLENS,u'end-cell-address'), None): cnv_string,
1282 ((TABLENS,u'end'), None): cnv_string,
1283 ((TABLENS,u'end-column'), None): cnv_integer,
1284 ((TABLENS,u'end-position'), None): cnv_integer,
1285 ((TABLENS,u'end-row'), None): cnv_integer,
1286 ((TABLENS,u'end-table'), None): cnv_integer,
1287 ((TABLENS,u'end-x'), None): cnv_length,
1288 ((TABLENS,u'end-y'), None): cnv_length,
1289 ((TABLENS,u'execute'), None): cnv_boolean,
1290 ((TABLENS,u'expression'), None): cnv_formula,
1291 ((TABLENS,u'field-name'), None): cnv_string,
1292 ((TABLENS,u'field-number'), None): cnv_nonNegativeInteger,
1293 ((TABLENS,u'field-number'), None): cnv_string,
1294 ((TABLENS,u'filter-name'), None): cnv_string,
1295 ((TABLENS,u'filter-options'), None): cnv_string,
1296 ((TABLENS,u'first-row-end-column'), None): cnv_rowOrCol,
1297 ((TABLENS,u'first-row-start-column'), None): cnv_rowOrCol,
1298 ((TABLENS,u'formula'), None): cnv_formula,
1299 ((TABLENS,u'function'), None): cnv_string,
1300 ((TABLENS,u'function'), None): cnv_string,
1301 ((TABLENS,u'grand-total'), None): cnv_string,
1302 ((TABLENS,u'group-by-field-number'), None): cnv_nonNegativeInteger,
1303 ((TABLENS,u'grouped-by'), None): cnv_string,
1304 ((TABLENS,u'has-persistent-data'), None): cnv_boolean,
1305 ((TABLENS,u'id'), None): cnv_string,
1306 ((TABLENS,u'identify-categories'), None): cnv_boolean,
1307 ((TABLENS,u'ignore-empty-rows'), None): cnv_boolean,
1308 ((TABLENS,u'index'), None): cnv_nonNegativeInteger,
1309 ((TABLENS,u'is-active'), None): cnv_boolean,
1310 ((TABLENS,u'is-data-layout-field'), None): cnv_string,
1311 ((TABLENS,u'is-selection'), None): cnv_boolean,
1312 ((TABLENS,u'is-sub-table'), None): cnv_boolean,
1313 ((TABLENS,u'label-cell-range-address'), None): cnv_string,
1314 ((TABLENS,u'language'), None): cnv_token,
1315 ((TABLENS,u'language'), None): cnv_token,
1316 ((TABLENS,u'last-column-spanned'), None): cnv_positiveInteger,
1317 ((TABLENS,u'last-row-end-column'), None): cnv_rowOrCol,
1318 ((TABLENS,u'last-row-spanned'), None): cnv_positiveInteger,
1319 ((TABLENS,u'last-row-start-column'), None): cnv_rowOrCol,
1320 ((TABLENS,u'layout-mode'), None): cnv_string,
1321 ((TABLENS,u'link-to-source-data'), None): cnv_boolean,
1322 ((TABLENS,u'marked-invalid'), None): cnv_boolean,
1323 ((TABLENS,u'matrix-covered'), None): cnv_boolean,
1324 ((TABLENS,u'maximum-difference'), None): cnv_double,
1325 ((TABLENS,u'member-count'), None): cnv_nonNegativeInteger,
1326 ((TABLENS,u'member-name'), None): cnv_string,
1327 ((TABLENS,u'member-type'), None): cnv_string,
1328 ((TABLENS,u'message-type'), None): cnv_string,
1329 ((TABLENS,u'mode'), None): cnv_string,
1330 ((TABLENS,u'multi-deletion-spanned'), None): cnv_integer,
1331 ((TABLENS,u'name'), None): cnv_string,
1332 ((TABLENS,u'name'), None): cnv_string,
1333 ((TABLENS,u'null-year'), None): cnv_positiveInteger,
1334 ((TABLENS,u'number-columns-repeated'), None): cnv_positiveInteger,
1335 ((TABLENS,u'number-columns-spanned'), None): cnv_positiveInteger,
1336 ((TABLENS,u'number-matrix-columns-spanned'), None): cnv_positiveInteger,
1337 ((TABLENS,u'number-matrix-rows-spanned'), None): cnv_positiveInteger,
1338 ((TABLENS,u'number-rows-repeated'), None): cnv_positiveInteger,
1339 ((TABLENS,u'number-rows-spanned'), None): cnv_positiveInteger,
1340 ((TABLENS,u'object-name'), None): cnv_string,
1341 ((TABLENS,u'on-update-keep-size'), None): cnv_boolean,
1342 ((TABLENS,u'on-update-keep-styles'), None): cnv_boolean,
1343 ((TABLENS,u'operator'), None): cnv_string,
1344 ((TABLENS,u'operator'), None): cnv_string,
1345 ((TABLENS,u'order'), None): cnv_string,
1346 ((TABLENS,u'orientation'), None): cnv_string,
1347 ((TABLENS,u'orientation'), None): cnv_string,
1348 ((TABLENS,u'page-breaks-on-group-change'), None): cnv_boolean,
1349 ((TABLENS,u'paragraph-style-name'), None): cnv_StyleNameRef,
1350 ((TABLENS,u'parse-sql-statement'), None): cnv_boolean,
1351 ((TABLENS,u'password'), None): cnv_string,
1352 ((TABLENS,u'position'), None): cnv_integer,
1353 ((TABLENS,u'precision-as-shown'), None): cnv_boolean,
1354 ((TABLENS,u'print'), None): cnv_boolean,
1355 ((TABLENS,u'print-ranges'), None): cnv_string,
1356 ((TABLENS,u'protect'), None): cnv_boolean,
1357 ((TABLENS,u'protected'), None): cnv_boolean,
1358 ((TABLENS,u'protection-key'), None): cnv_string,
1359 ((TABLENS,u'protection-key-digest-algorithm'), None): cnv_anyURI,
1360 ((TABLENS,u'query-name'), None): cnv_string,
1361 ((TABLENS,u'range-usable-as'), None): cnv_string,
1362 ((TABLENS,u'rfc-language-tag'), None): cnv_language,
1363 ((TABLENS,u'refresh-delay'), None): cnv_boolean,
1364 ((TABLENS,u'refresh-delay'), None): cnv_duration,
1365 ((TABLENS,u'rejecting-change-id'), None): cnv_string,
1366 ((TABLENS,u'row'), None): cnv_integer,
1367 ((TABLENS,u'scenario-ranges'), None): cnv_string,
1368 ((TABLENS,u'script'), None): cnv_string,
1369 ((TABLENS,u'search-criteria-must-apply-to-whole-cell'), None): cnv_boolean,
1370 ((TABLENS,u'selected-page'), None): cnv_string,
1371 ((TABLENS,u'show-details'), None): cnv_boolean,
1372 ((TABLENS,u'show-empty'), None): cnv_boolean,
1373 ((TABLENS,u'show-empty'), None): cnv_string,
1374 ((TABLENS,u'show-filter-button'), None): cnv_boolean,
1375 ((TABLENS,u'sort-mode'), None): cnv_string,
1376 ((TABLENS,u'source-cell-range-addresses'), None): cnv_string,
1377 ((TABLENS,u'source-cell-range-addresses'), None): cnv_string,
1378 ((TABLENS,u'source-field-name'), None): cnv_string,
1379 ((TABLENS,u'source-field-name'), None): cnv_string,
1380 ((TABLENS,u'source-name'), None): cnv_string,
1381 ((TABLENS,u'sql-statement'), None): cnv_string,
1382 ((TABLENS,u'start'), None): cnv_string,
1383 ((TABLENS,u'start-column'), None): cnv_integer,
1384 ((TABLENS,u'start-position'), None): cnv_integer,
1385 ((TABLENS,u'start-row'), None): cnv_integer,
1386 ((TABLENS,u'start-table'), None): cnv_integer,
1387 ((TABLENS,u'status'), None): cnv_string,
1388 ((TABLENS,u'step'), None): cnv_double,
1389 ((TABLENS,u'steps'), None): cnv_positiveInteger,
1390 ((TABLENS,u'structure-protected'), None): cnv_boolean,
1391 ((TABLENS,u'style-name'), None): cnv_StyleNameRef,
1392 ((TABLENS,u'table-background'), None): cnv_boolean,
1393 ((TABLENS,u'table'), None): cnv_integer,
1394 ((TABLENS,u'table-name'), None): cnv_string,
1395 ((TABLENS,u'target-cell-address'), None): cnv_string,
1396 ((TABLENS,u'target-cell-address'), None): cnv_string,
1397 ((TABLENS,u'target-range-address'), None): cnv_string,
1398 ((TABLENS,u'target-range-address'), None): cnv_string,
1399 ((TABLENS,u'template-name'), None): cnv_string,
1400 ((TABLENS,u'title'), None): cnv_string,
1401 ((TABLENS,u'track-changes'), None): cnv_boolean,
1402 ((TABLENS,u'type'), None): cnv_string,
1403 ((TABLENS,u'use-banding-columns-styles'), None): cnv_boolean,
1404 ((TABLENS,u'use-banding-rows-styles'), None): cnv_boolean,
1405 ((TABLENS,u'use-first-column-styles'), None): cnv_boolean,
1406 ((TABLENS,u'use-first-row-styles'), None): cnv_boolean,
1407 ((TABLENS,u'use-labels'), None): cnv_string,
1408 ((TABLENS,u'use-last-column-styles'), None): cnv_boolean,
1409 ((TABLENS,u'use-last-row-styles'), None): cnv_boolean,
1410 ((TABLENS,u'use-regular-expressions'), None): cnv_boolean,
1411 ((TABLENS,u'use-wildcards'), None): cnv_boolean,
1412 ((TABLENS,u'used-hierarchy'), None): cnv_integer,
1413 ((TABLENS,u'user-name'), None): cnv_string,
1414 ((TABLENS,u'value'), None): cnv_string,
1415 ((TABLENS,u'value'), None): cnv_string,
1416 ((TABLENS,u'value-type'), None): cnv_string,
1417 ((TABLENS,u'visibility'), None): cnv_string,
1418 ((TEXTNS,u'active'), None): cnv_boolean,
1419 ((TEXTNS,u'address'), None): cnv_string,
1420 ((TEXTNS,u'alphabetical-separators'), None): cnv_boolean,
1421 ((TEXTNS,u'anchor-page-number'), None): cnv_positiveInteger,
1422 ((TEXTNS,u'anchor-type'), None): cnv_string,
1423 ((TEXTNS,u'animation'), None): cnv_string,
1424 ((TEXTNS,u'animation-delay'), None): cnv_string,
1425 ((TEXTNS,u'animation-direction'), None): cnv_string,
1426 ((TEXTNS,u'animation-repeat'), None): cnv_string,
1427 ((TEXTNS,u'animation-start-inside'), None): cnv_boolean,
1428 ((TEXTNS,u'animation-steps'), None): cnv_length,
1429 ((TEXTNS,u'animation-stop-inside'), None): cnv_boolean,
1430 ((TEXTNS,u'annote'), None): cnv_string,
1431 ((TEXTNS,u'author'), None): cnv_string,
1432 ((TEXTNS,u'bibliography-data-field'), None): cnv_string,
1433 ((TEXTNS,u'bibliography-type'), None): cnv_string,
1434 ((TEXTNS,u'booktitle'), None): cnv_string,
1435 ((TEXTNS,u'bullet-char'), None): cnv_string,
1436 ((TEXTNS,u'bullet-relative-size'), None): cnv_string,
1437 ((TEXTNS,u'c'), None): cnv_nonNegativeInteger,
1438 ((TEXTNS,u'capitalize-entries'), None): cnv_boolean,
1439 ((TEXTNS,u'caption-sequence-format'), None): cnv_string,
1440 ((TEXTNS,u'caption-sequence-name'), None): cnv_string,
1441 ((TEXTNS,u'change-id'), None): cnv_IDREF,
1442 ((TEXTNS,u'chapter'), None): cnv_string,
1443 ((TEXTNS,u'citation-body-style-name'), None): cnv_StyleNameRef,
1444 ((TEXTNS,u'citation-style-name'), None): cnv_StyleNameRef,
1445 ((TEXTNS,u'class-names'), None): cnv_NCNames,
1446 ((TEXTNS,u'column-name'), None): cnv_string,
1447 ((TEXTNS,u'combine-entries'), None): cnv_boolean,
1448 ((TEXTNS,u'combine-entries-with-dash'), None): cnv_boolean,
1449 ((TEXTNS,u'combine-entries-with-pp'), None): cnv_boolean,
1450 ((TEXTNS,u'comma-separated'), None): cnv_boolean,
1451 ((TEXTNS,u'cond-style-name'), None): cnv_StyleNameRef,
1452 ((TEXTNS,u'condition'), None): cnv_formula,
1453 ((TEXTNS,u'connection-name'), None): cnv_string,
1454 ((TEXTNS,u'consecutive-numbering'), None): cnv_boolean,
1455 ((TEXTNS,u'continue-list'), None): cnv_IDREF,
1456 ((TEXTNS,u'continue-numbering'), None): cnv_boolean,
1457 ((TEXTNS,u'copy-outline-levels'), None): cnv_boolean,
1458 ((TEXTNS,u'count-empty-lines'), None): cnv_boolean,
1459 ((TEXTNS,u'count-in-text-boxes'), None): cnv_boolean,
1460 ((TEXTNS,u'current-value'), None): cnv_boolean,
1461 ((TEXTNS,u'custom1'), None): cnv_string,
1462 ((TEXTNS,u'custom2'), None): cnv_string,
1463 ((TEXTNS,u'custom3'), None): cnv_string,
1464 ((TEXTNS,u'custom4'), None): cnv_string,
1465 ((TEXTNS,u'custom5'), None): cnv_string,
1466 ((TEXTNS,u'database-name'), None): cnv_string,
1467 ((TEXTNS,u'date-adjust'), None): cnv_duration,
1468 ((TEXTNS,u'date-value'), None): cnv_date,
1469 # ((TEXTNS,u'date-value'), None): cnv_dateTime,
1470 ((TEXTNS,u'default-style-name'), None): cnv_StyleNameRef,
1471 ((TEXTNS,u'description'), None): cnv_string,
1472 ((TEXTNS,u'display'), None): cnv_string,
1473 ((TEXTNS,u'display-levels'), None): cnv_positiveInteger,
1474 ((TEXTNS,u'display-outline-level'), None): cnv_nonNegativeInteger,
1475 ((TEXTNS,u'dont-balance-text-columns'), None): cnv_boolean,
1476 ((TEXTNS,u'duration'), None): cnv_duration,
1477 ((TEXTNS,u'edition'), None): cnv_string,
1478 ((TEXTNS,u'editor'), None): cnv_string,
1479 ((TEXTNS,u'filter-name'), None): cnv_string,
1480 ((TEXTNS,u'fixed'), None): cnv_boolean,
1481 ((TEXTNS,u'footnotes-position'), None): cnv_string,
1482 ((TEXTNS,u'formula'), None): cnv_formula,
1483 ((TEXTNS,u'global'), None): cnv_boolean,
1484 ((TEXTNS,u'howpublished'), None): cnv_string,
1485 ((TEXTNS,u'id'), None): cnv_ID,
1486 # ((TEXTNS,u'id'), None): cnv_string,
1487 ((TEXTNS,u'identifier'), None): cnv_string,
1488 ((TEXTNS,u'ignore-case'), None): cnv_boolean,
1489 ((TEXTNS,u'increment'), None): cnv_nonNegativeInteger,
1490 ((TEXTNS,u'index-name'), None): cnv_string,
1491 ((TEXTNS,u'index-scope'), None): cnv_string,
1492 ((TEXTNS,u'institution'), None): cnv_string,
1493 ((TEXTNS,u'is-hidden'), None): cnv_boolean,
1494 ((TEXTNS,u'is-list-header'), None): cnv_boolean,
1495 ((TEXTNS,u'isbn'), None): cnv_string,
1496 ((TEXTNS,u'issn'), None): cnv_string,
1497 ((TEXTNS,u'issn'), None): cnv_string,
1498 ((TEXTNS,u'journal'), None): cnv_string,
1499 ((TEXTNS,u'key'), None): cnv_string,
1500 ((TEXTNS,u'key1'), None): cnv_string,
1501 ((TEXTNS,u'key1-phonetic'), None): cnv_string,
1502 ((TEXTNS,u'key2'), None): cnv_string,
1503 ((TEXTNS,u'key2-phonetic'), None): cnv_string,
1504 ((TEXTNS,u'kind'), None): cnv_string,
1505 ((TEXTNS,u'label'), None): cnv_string,
1506 ((TEXTNS,u'label-followed-by'), None): cnv_string,
1507 ((TEXTNS,u'level'), None): cnv_positiveInteger,
1508 ((TEXTNS,u'line-break'), None): cnv_boolean,
1509 ((TEXTNS,u'line-number'), None): cnv_string,
1510 ((TEXTNS,u'list-id'), None): cnv_NCName,
1511 ((TEXTNS,u'list-level-position-and-space-mode'), None): cnv_string,
1512 ((TEXTNS,u'list-tab-stop-position'), None): cnv_length,
1513 ((TEXTNS,u'main-entry'), None): cnv_boolean,
1514 ((TEXTNS,u'main-entry-style-name'), None): cnv_StyleNameRef,
1515 ((TEXTNS,u'master-page-name'), None): cnv_StyleNameRef,
1516 ((TEXTNS,u'min-label-distance'), None): cnv_string,
1517 ((TEXTNS,u'min-label-width'), None): cnv_string,
1518 ((TEXTNS,u'month'), None): cnv_string,
1519 ((TEXTNS,u'name'), None): cnv_string,
1520 ((TEXTNS,u'note-class'), None): cnv_textnoteclass,
1521 ((TEXTNS,u'note'), None): cnv_string,
1522 ((TEXTNS,u'number'), None): cnv_string,
1523 ((TEXTNS,u'number-lines'), None): cnv_boolean,
1524 ((TEXTNS,u'number-position'), None): cnv_string,
1525 ((TEXTNS,u'numbered-entries'), None): cnv_boolean,
1526 ((TEXTNS,u'offset'), None): cnv_string,
1527 ((TEXTNS,u'organizations'), None): cnv_string,
1528 ((TEXTNS,u'outline-level'), None): cnv_string,
1529 ((TEXTNS,u'page-adjust'), None): cnv_integer,
1530 ((TEXTNS,u'pages'), None): cnv_string,
1531 ((TEXTNS,u'placeholder-type'), None): cnv_string,
1532 ((TEXTNS,u'prefix'), None): cnv_string,
1533 ((TEXTNS,u'protected'), None): cnv_boolean,
1534 ((TEXTNS,u'protection-key'), None): cnv_string,
1535 ((TEXTNS,u'protection-key-digest-algorithm'), None): cnv_anyURI,
1536 ((TEXTNS,u'publisher'), None): cnv_string,
1537 ((TEXTNS,u'ref-name'), None): cnv_string,
1538 ((TEXTNS,u'reference-format'), None): cnv_string,
1539 ((TEXTNS,u'relative-tab-stop-position'), None): cnv_boolean,
1540 ((TEXTNS,u'report-type'), None): cnv_string,
1541 ((TEXTNS,u'restart-numbering'), None): cnv_boolean,
1542 ((TEXTNS,u'restart-on-page'), None): cnv_boolean,
1543 ((TEXTNS,u'row-number'), None): cnv_nonNegativeInteger,
1544 ((TEXTNS,u'school'), None): cnv_string,
1545 ((TEXTNS,u'section-name'), None): cnv_string,
1546 ((TEXTNS,u'select-page'), None): cnv_string,
1547 ((TEXTNS,u'separation-character'), None): cnv_string,
1548 ((TEXTNS,u'series'), None): cnv_string,
1549 ((TEXTNS,u'sort-algorithm'), None): cnv_string,
1550 ((TEXTNS,u'sort-ascending'), None): cnv_boolean,
1551 ((TEXTNS,u'sort-by-position'), None): cnv_boolean,
1552 ((TEXTNS,u'space-before'), None): cnv_string,
1553 ((TEXTNS,u'start-numbering-at'), None): cnv_string,
1554 ((TEXTNS,u'start-value'), None): cnv_nonNegativeInteger,
1555 ((TEXTNS,u'start-value'), None): cnv_positiveInteger,
1556 ((TEXTNS,u'string-value'), None): cnv_string,
1557 ((TEXTNS,u'string-value-if-false'), None): cnv_string,
1558 ((TEXTNS,u'string-value-if-true'), None): cnv_string,
1559 ((TEXTNS,u'string-value-phonetic'), None): cnv_string,
1560 ((TEXTNS,u'style-name'), None): cnv_StyleNameRef,
1561 ((TEXTNS,u'style-override'), None): cnv_StyleNameRef,
1562 ((TEXTNS,u'suffix'), None): cnv_string,
1563 ((TEXTNS,u'tab-ref'), None): cnv_nonNegativeInteger,
1564 ((TEXTNS,u'table-name'), None): cnv_string,
1565 ((TEXTNS,u'table-type'), None): cnv_string,
1566 ((TEXTNS,u'time-adjust'), None): cnv_duration,
1567 ((TEXTNS,u'time-value'), None): cnv_dateTime,
1568 ((TEXTNS,u'time-value'), None): cnv_time,
1569 ((TEXTNS,u'title'), None): cnv_string,
1570 ((TEXTNS,u'track-changes'), None): cnv_boolean,
1571 ((TEXTNS,u'url'), None): cnv_string,
1572 ((TEXTNS,u'use-caption'), None): cnv_boolean,
1573 ((TEXTNS,u'use-chart-objects'), None): cnv_boolean,
1574 ((TEXTNS,u'use-draw-objects'), None): cnv_boolean,
1575 ((TEXTNS,u'use-floating-frames'), None): cnv_boolean,
1576 ((TEXTNS,u'use-graphics'), None): cnv_boolean,
1577 ((TEXTNS,u'use-index-marks'), None): cnv_boolean,
1578 ((TEXTNS,u'use-index-source-styles'), None): cnv_boolean,
1579 ((TEXTNS,u'use-keys-as-entries'), None): cnv_boolean,
1580 ((TEXTNS,u'use-math-objects'), None): cnv_boolean,
1581 ((TEXTNS,u'use-objects'), None): cnv_boolean,
1582 ((TEXTNS,u'use-other-objects'), None): cnv_boolean,
1583 ((TEXTNS,u'use-outline-level'), None): cnv_boolean,
1584 ((TEXTNS,u'use-soft-page-breaks'), None): cnv_boolean,
1585 ((TEXTNS,u'use-spreadsheet-objects'), None): cnv_boolean,
1586 ((TEXTNS,u'use-tables'), None): cnv_boolean,
1587 ((TEXTNS,u'value'), None): cnv_nonNegativeInteger,
1588 ((TEXTNS,u'visited-style-name'), None): cnv_StyleNameRef,
1589 ((TEXTNS,u'volume'), None): cnv_string,
1590 ((TEXTNS,u'year'), None): cnv_string,
1591 ((XFORMSNS,u'bind'), None): cnv_string,
1592 ((XHTMLNS,u'about'), None): cnv_anyURI,
1593 ((XHTMLNS,u'content'), None): cnv_string,
1594 ((XHTMLNS,u'datatype'), None): cnv_anyURI,
1595 ((XHTMLNS,u'property'), None): cnv_anyURI,
1596 ((XLINKNS,u'actuate'), None): cnv_string,
1597 ((XLINKNS,u'href'), None): cnv_anyURI,
1598 ((XLINKNS,u'show'), None): cnv_xlinkshow,
1599 ((XLINKNS,u'title'), None): cnv_string,
1600 ((XLINKNS,u'type'), None): cnv_xlinktype,
1601 ((XMLNS,u'id'), None): cnv_NCName,
1602 }
1603
1604 class AttrConverters:
1605 ##
1606 # Based on the element, figures out how to check/convert the attribute value
1607 # All values are converted to string
1608 #
1609 def convert(self, attribute, value, element):
1610 conversion = attrconverters.get((attribute, element.qname), None)
1611 if conversion is not None:
1612 return conversion(attribute, value, element)
1613 else:
1614 conversion = attrconverters.get((attribute, None), None)
1615 if conversion is not None:
1616 return conversion(attribute, value, element)
1617 if sys.version_info.major==2:
1618 return unicode(value)
1619 else:
1620 return str(value)
1621
odf.attrconverters.cnv_rowOrCol
def cnv_rowOrCol
Definition: attrconverters.py:260
odf.attrconverters.cnv_NCName
def cnv_NCName
NCName is defined in http://www.w3.org/TR/REC-xml-names/#NT-NCName Essentially an XML name minus ':'...
Definition: attrconverters.py:200
odf.attrconverters.cnv_lengthorpercent
def cnv_lengthorpercent
Definition: attrconverters.py:162
odf.attrconverters.cnv_dateTime
def cnv_dateTime
A dateOrDateTime value is either an [xmlschema-2] date value or an [xmlschema-2] dateTime value...
Definition: attrconverters.py:86
odf.attrconverters.cnv_time
def cnv_time
Definition: attrconverters.py:282
odf.attrconverters.cnv_anyURI
def cnv_anyURI
Definition: attrconverters.py:40
odf.attrconverters.cnv_nonNegativeInteger
def cnv_nonNegativeInteger
Definition: attrconverters.py:230
odf.attrconverters.cnv_integer
def cnv_integer
Definition: attrconverters.py:134
odf.attrconverters.cnv_list_linkage_type
def cnv_list_linkage_type
Definition: attrconverters.py:172
odf.attrconverters.cnv_formula
def cnv_formula
A string containing a formula.
Definition: attrconverters.py:125
odf.attrconverters.cnv_token
def cnv_token
Definition: attrconverters.py:285
odf.attrconverters.cnv_language
def cnv_language
Definition: attrconverters.py:139
odf.attrconverters.cnv_angle
def cnv_angle
Definition: attrconverters.py:34
odf.attrconverters.cnv_namespacedToken
def cnv_namespacedToken
Definition: attrconverters.py:189
odf.attrconverters.cnv_stroke_linecap
def cnv_stroke_linecap
Definition: attrconverters.py:271
odf.attrconverters.cnv_percent
def cnv_percent
Definition: attrconverters.py:235
odf.attrconverters.cnv_color
def cnv_color
A RGB color in conformance with §5.9.11 of [XSL], that is a RGB color in notation “::rrggbb”...
Definition: attrconverters.py:60
odf.attrconverters.cnv_length
def cnv_length
A (positive or negative) physical length, consisting of magnitude and unit, in conformance with the U...
Definition: attrconverters.py:156
odf.attrconverters.cnv_duration
def cnv_duration
Definition: attrconverters.py:97
odf.attrconverters.cnv_string
def cnv_string
Definition: attrconverters.py:265
odf.element.unicode
unicode
Definition: element.py:34
odf.attrconverters.cnv_data_source_has_labels
def cnv_data_source_has_labels
Definition: attrconverters.py:69
odf.attrconverters.cnv_draw_aspect
def cnv_draw_aspect
Definition: attrconverters.py:92
odf.attrconverters.cnv_xlinktype
def cnv_xlinktype
Definition: attrconverters.py:301
odf.attrconverters.cnv_boolean
def cnv_boolean
XML Schema Part 2: Datatypes Second Edition An instance of a datatype that is defined as boolean can ...
Definition: attrconverters.py:48
odf.attrconverters.cnv_date
def cnv_date
A dateOrDateTime value is either an [xmlschema-2] date value or an [xmlschema-2] dateTime value...
Definition: attrconverters.py:79
odf.attrconverters.AttrConverters
Definition: attrconverters.py:1604
odf.attrconverters.cnv_DrawNameRef
def cnv_DrawNameRef
Definition: attrconverters.py:220
odf.attrconverters.cnv_ID
def cnv_ID
Definition: attrconverters.py:128
odf.attrconverters.cnv_viewbox
def cnv_viewbox
Definition: attrconverters.py:290
odf.attrconverters.cnv_textnoteclass
def cnv_textnoteclass
Definition: attrconverters.py:276
odf.attrconverters.cnv_major_minor
def cnv_major_minor
Definition: attrconverters.py:182
odf.attrconverters.cnv_IDREF
def cnv_IDREF
Definition: attrconverters.py:131
odf.attrconverters.cnv_configtype
def cnv_configtype
Definition: attrconverters.py:63
odf.attrconverters.cnv_points
def cnv_points
Definition: attrconverters.py:244
odf.attrconverters.cnv_xlinkshow
def cnv_xlinkshow
Definition: attrconverters.py:296
odf.attrconverters.cnv_legend_position
def cnv_legend_position
Definition: attrconverters.py:145
odf.attrconverters.cnv_NCNames
def cnv_NCNames
Definition: attrconverters.py:227
odf.attrconverters.make_NCName
def make_NCName
Definition: attrconverters.py:29
odf.attrconverters.AttrConverters.convert
def convert
Based on the element, figures out how to check/convert the attribute value All values are converted t...
Definition: attrconverters.py:1609
odf.attrconverters.cnv_StyleNameRef
def cnv_StyleNameRef
Definition: attrconverters.py:210
odf.attrconverters.cnv_family
def cnv_family
A style family.
Definition: attrconverters.py:102
odf.attrconverters.cnv_metavaluetype
def cnv_metavaluetype
Definition: attrconverters.py:177
odf.attrconverters.cnv_positiveInteger
def cnv_positiveInteger
Definition: attrconverters.py:257
odf.attrconverters.cnv_double
def cnv_double
Definition: attrconverters.py:89