origamindee 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +89 -0
  3. data/COPYING.LESSER +165 -0
  4. data/README.md +131 -0
  5. data/bin/config/pdfcop.conf.yml +236 -0
  6. data/bin/pdf2pdfa +87 -0
  7. data/bin/pdf2ruby +333 -0
  8. data/bin/pdfcop +476 -0
  9. data/bin/pdfdecompress +97 -0
  10. data/bin/pdfdecrypt +91 -0
  11. data/bin/pdfencrypt +113 -0
  12. data/bin/pdfexplode +223 -0
  13. data/bin/pdfextract +277 -0
  14. data/bin/pdfmetadata +143 -0
  15. data/bin/pdfsh +12 -0
  16. data/bin/shell/console.rb +128 -0
  17. data/bin/shell/hexdump.rb +59 -0
  18. data/bin/shell/irbrc +69 -0
  19. data/examples/README.md +34 -0
  20. data/examples/attachments/attachment.rb +38 -0
  21. data/examples/attachments/nested_document.rb +51 -0
  22. data/examples/encryption/encryption.rb +28 -0
  23. data/examples/events/events.rb +72 -0
  24. data/examples/flash/flash.rb +37 -0
  25. data/examples/flash/helloworld.swf +0 -0
  26. data/examples/forms/javascript.rb +54 -0
  27. data/examples/forms/xfa.rb +115 -0
  28. data/examples/javascript/hello_world.rb +22 -0
  29. data/examples/javascript/js_emulation.rb +54 -0
  30. data/examples/loop/goto.rb +32 -0
  31. data/examples/loop/named.rb +33 -0
  32. data/examples/signature/signature.rb +65 -0
  33. data/examples/uri/javascript.rb +56 -0
  34. data/examples/uri/open-uri.rb +21 -0
  35. data/examples/uri/submitform.rb +47 -0
  36. data/lib/origami/3d.rb +364 -0
  37. data/lib/origami/acroform.rb +321 -0
  38. data/lib/origami/actions.rb +318 -0
  39. data/lib/origami/annotations.rb +711 -0
  40. data/lib/origami/array.rb +242 -0
  41. data/lib/origami/boolean.rb +90 -0
  42. data/lib/origami/catalog.rb +418 -0
  43. data/lib/origami/collections.rb +144 -0
  44. data/lib/origami/compound.rb +161 -0
  45. data/lib/origami/destinations.rb +252 -0
  46. data/lib/origami/dictionary.rb +192 -0
  47. data/lib/origami/encryption.rb +1084 -0
  48. data/lib/origami/extensions/fdf.rb +347 -0
  49. data/lib/origami/extensions/ppklite.rb +422 -0
  50. data/lib/origami/filespec.rb +197 -0
  51. data/lib/origami/filters/ascii.rb +211 -0
  52. data/lib/origami/filters/ccitt/tables.rb +267 -0
  53. data/lib/origami/filters/ccitt.rb +357 -0
  54. data/lib/origami/filters/crypt.rb +38 -0
  55. data/lib/origami/filters/dct.rb +54 -0
  56. data/lib/origami/filters/flate.rb +69 -0
  57. data/lib/origami/filters/jbig2.rb +57 -0
  58. data/lib/origami/filters/jpx.rb +47 -0
  59. data/lib/origami/filters/lzw.rb +170 -0
  60. data/lib/origami/filters/predictors.rb +292 -0
  61. data/lib/origami/filters/runlength.rb +129 -0
  62. data/lib/origami/filters.rb +364 -0
  63. data/lib/origami/font.rb +196 -0
  64. data/lib/origami/functions.rb +79 -0
  65. data/lib/origami/graphics/colors.rb +230 -0
  66. data/lib/origami/graphics/instruction.rb +98 -0
  67. data/lib/origami/graphics/path.rb +182 -0
  68. data/lib/origami/graphics/patterns.rb +174 -0
  69. data/lib/origami/graphics/render.rb +62 -0
  70. data/lib/origami/graphics/state.rb +149 -0
  71. data/lib/origami/graphics/text.rb +225 -0
  72. data/lib/origami/graphics/xobject.rb +918 -0
  73. data/lib/origami/graphics.rb +38 -0
  74. data/lib/origami/header.rb +75 -0
  75. data/lib/origami/javascript.rb +713 -0
  76. data/lib/origami/linearization.rb +330 -0
  77. data/lib/origami/metadata.rb +172 -0
  78. data/lib/origami/name.rb +135 -0
  79. data/lib/origami/null.rb +65 -0
  80. data/lib/origami/numeric.rb +181 -0
  81. data/lib/origami/obfuscation.rb +245 -0
  82. data/lib/origami/object.rb +760 -0
  83. data/lib/origami/optionalcontent.rb +183 -0
  84. data/lib/origami/outline.rb +54 -0
  85. data/lib/origami/outputintents.rb +85 -0
  86. data/lib/origami/page.rb +722 -0
  87. data/lib/origami/parser.rb +269 -0
  88. data/lib/origami/parsers/fdf.rb +56 -0
  89. data/lib/origami/parsers/pdf/lazy.rb +176 -0
  90. data/lib/origami/parsers/pdf/linear.rb +122 -0
  91. data/lib/origami/parsers/pdf.rb +118 -0
  92. data/lib/origami/parsers/ppklite.rb +57 -0
  93. data/lib/origami/pdf.rb +1108 -0
  94. data/lib/origami/reference.rb +134 -0
  95. data/lib/origami/signature.rb +702 -0
  96. data/lib/origami/stream.rb +705 -0
  97. data/lib/origami/string.rb +444 -0
  98. data/lib/origami/template/patterns.rb +56 -0
  99. data/lib/origami/template/widgets.rb +151 -0
  100. data/lib/origami/trailer.rb +190 -0
  101. data/lib/origami/tree.rb +62 -0
  102. data/lib/origami/version.rb +23 -0
  103. data/lib/origami/webcapture.rb +100 -0
  104. data/lib/origami/xfa/config.rb +453 -0
  105. data/lib/origami/xfa/connectionset.rb +146 -0
  106. data/lib/origami/xfa/datasets.rb +49 -0
  107. data/lib/origami/xfa/localeset.rb +42 -0
  108. data/lib/origami/xfa/package.rb +59 -0
  109. data/lib/origami/xfa/pdf.rb +73 -0
  110. data/lib/origami/xfa/signature.rb +42 -0
  111. data/lib/origami/xfa/sourceset.rb +43 -0
  112. data/lib/origami/xfa/stylesheet.rb +44 -0
  113. data/lib/origami/xfa/template.rb +1691 -0
  114. data/lib/origami/xfa/xdc.rb +42 -0
  115. data/lib/origami/xfa/xfa.rb +146 -0
  116. data/lib/origami/xfa/xfdf.rb +43 -0
  117. data/lib/origami/xfa/xmpmeta.rb +43 -0
  118. data/lib/origami/xfa.rb +62 -0
  119. data/lib/origami/xreftable.rb +557 -0
  120. data/lib/origami.rb +47 -0
  121. data/test/dataset/calc.pdf +85 -0
  122. data/test/dataset/crypto.pdf +36 -0
  123. data/test/dataset/empty.pdf +49 -0
  124. data/test/test_actions.rb +27 -0
  125. data/test/test_annotations.rb +68 -0
  126. data/test/test_forms.rb +30 -0
  127. data/test/test_native_types.rb +83 -0
  128. data/test/test_object_tree.rb +33 -0
  129. data/test/test_pages.rb +60 -0
  130. data/test/test_pdf.rb +20 -0
  131. data/test/test_pdf_attachment.rb +34 -0
  132. data/test/test_pdf_create.rb +24 -0
  133. data/test/test_pdf_encrypt.rb +102 -0
  134. data/test/test_pdf_parse.rb +134 -0
  135. data/test/test_pdf_parse_lazy.rb +69 -0
  136. data/test/test_pdf_sign.rb +97 -0
  137. data/test/test_streams.rb +184 -0
  138. data/test/test_xrefs.rb +67 -0
  139. metadata +280 -0
@@ -0,0 +1,1691 @@
1
+ =begin
2
+
3
+ This file is part of Origami, PDF manipulation framework for Ruby
4
+ Copyright (C) 2017 Guillaume Delugré.
5
+
6
+ Origami is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published by
8
+ the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ Origami is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with Origami. If not, see <http://www.gnu.org/licenses/>.
18
+
19
+ =end
20
+
21
+ module Origami
22
+
23
+ module XDP
24
+
25
+ module Packet
26
+
27
+ #
28
+ # This packet contains the form template.
29
+ #
30
+ class Template < XFA::Element
31
+ mime_type 'application/x-xfa-template'
32
+
33
+ class Boolean < XFA::NamedTemplateElement
34
+ NO = 0
35
+ YES = 1
36
+
37
+ def initialize(bool = nil)
38
+ super('boolean')
39
+
40
+ self.text = bool
41
+ end
42
+ end
43
+
44
+ class Date < XFA::NamedTemplateElement
45
+ def initialize(date = nil)
46
+ super('date')
47
+
48
+ self.text = date
49
+ end
50
+ end
51
+
52
+ class DateTime < XFA::NamedTemplateElement
53
+ def initialize(datetime = nil)
54
+ super('dateTime')
55
+
56
+ self.text = datetime
57
+ end
58
+ end
59
+
60
+ class Decimal < XFA::NamedTemplateElement
61
+ xfa_attribute 'fracDigits'
62
+ xfa_attribute 'leadDigits'
63
+
64
+ def initialize(number = nil)
65
+ super('decimal')
66
+
67
+ self.text = number
68
+ end
69
+ end
70
+
71
+ class ExData < XFA::NamedTemplateElement
72
+ xfa_attribute 'contentType'
73
+ xfa_attribute 'href'
74
+ xfa_attribute 'maxLength'
75
+ xfa_attribute 'rid'
76
+ xfa_attribute 'transferEncoding'
77
+
78
+ def initialize(data = nil)
79
+ super('exData')
80
+
81
+ self.text = data
82
+ end
83
+ end
84
+
85
+ class Float < XFA::NamedTemplateElement
86
+ def initialize(float = nil)
87
+ super('float')
88
+
89
+ self.text = float
90
+ end
91
+ end
92
+
93
+ class Image < XFA::NamedTemplateElement
94
+ xfa_attribute 'aspect'
95
+ xfa_attribute 'contentType'
96
+ xfa_attribute 'href'
97
+ xfa_attribute 'transferEncoding'
98
+
99
+ def initialize(data = nil)
100
+ super('image')
101
+
102
+ self.text = data
103
+ end
104
+ end
105
+
106
+ class Integer < XFA::NamedTemplateElement
107
+ def initialize(int = nil)
108
+ super('integer')
109
+
110
+ self.text = int
111
+ end
112
+ end
113
+
114
+ class Text < XFA::NamedTemplateElement
115
+ xfa_attribute 'maxChars'
116
+ xfa_attribute 'rid'
117
+
118
+ def initialize(text = "")
119
+ super('text')
120
+
121
+ self.text = text
122
+ end
123
+ end
124
+
125
+ class Time < XFA::NamedTemplateElement
126
+ def initialize(time = nil)
127
+ super('time')
128
+
129
+ self.text = time
130
+ end
131
+ end
132
+
133
+ class Extras < XFA::NamedTemplateElement
134
+ xfa_node 'boolean', Template::Boolean
135
+ xfa_node 'date', Template::Date
136
+ xfa_node 'dateTime', Template::DateTime
137
+ xfa_node 'decimal', Template::Decimal
138
+ xfa_node 'exData', Template::ExData
139
+ xfa_node 'extras', Template::Extras
140
+ xfa_node 'float', Template::Float
141
+ xfa_node 'image', Template::Image
142
+ xfa_node 'integer', Template::Integer
143
+ xfa_node 'text', Template::Text
144
+ xfa_node 'time', Template::Time
145
+
146
+ def initialize
147
+ super('extras')
148
+ end
149
+ end
150
+
151
+ class Speak < XFA::TemplateElement
152
+ xfa_attribute 'disable'
153
+ xfa_attribute 'priority'
154
+ xfa_attribute 'rid'
155
+
156
+ def initialize(text = "")
157
+ super('speak')
158
+
159
+ self.text = text
160
+ end
161
+ end
162
+
163
+ class ToolTip < XFA::TemplateElement
164
+ xfa_attribute 'rid'
165
+
166
+ def initialize(text = "")
167
+ super('toolTip')
168
+
169
+ self.text = text
170
+ end
171
+ end
172
+
173
+ class Assist < XFA::TemplateElement
174
+ xfa_attribute 'role'
175
+
176
+ xfa_node 'speak', Template::Speak, 0..1
177
+ xfa_node 'toolTip', Template::ToolTip, 0..1
178
+
179
+ def initialize
180
+ super('assist')
181
+ end
182
+ end
183
+
184
+ class Picture < XFA::TemplateElement
185
+ def initialize(data = nil)
186
+ super('picture')
187
+
188
+ self.text = data
189
+ end
190
+ end
191
+
192
+ class Bind < XFA::Element
193
+ xfa_attribute 'match'
194
+ xfa_attribute 'ref'
195
+
196
+ xfa_node 'picture', Template::Picture, 0..1
197
+
198
+ def initialize
199
+ super('bind')
200
+ end
201
+ end
202
+
203
+ class Bookend < XFA::TemplateElement
204
+ xfa_attribute 'leader'
205
+ xfa_attribute 'trailer'
206
+
207
+ def initialize
208
+ super('bookend')
209
+ end
210
+ end
211
+
212
+ class Color < XFA::TemplateElement
213
+ xfa_attribute 'cSpace'
214
+ xfa_attribute 'value'
215
+
216
+ xfa_node 'extras', Template::Extras, 0..1
217
+
218
+ def initialize
219
+ super('color')
220
+
221
+ self.cSpace = "SRGB"
222
+ end
223
+ end
224
+
225
+ class Corner < XFA::TemplateElement
226
+ xfa_attribute 'inverted'
227
+ xfa_attribute 'join'
228
+ xfa_attribute 'presence'
229
+ xfa_attribute 'radius'
230
+ xfa_attribute 'stroke'
231
+ xfa_attribute 'thickness'
232
+
233
+ xfa_node 'color', Template::Color, 0..1
234
+ xfa_node 'extras', Template::Extras, 0..1
235
+
236
+ def initialize
237
+ super('corner')
238
+ end
239
+ end
240
+
241
+ class Edge < XFA::TemplateElement
242
+ xfa_attribute 'cap'
243
+ xfa_attribute 'presence'
244
+ xfa_attribute 'stroke'
245
+ xfa_attribute 'thickness'
246
+
247
+ xfa_node 'color', Template::Color, 0..1
248
+ xfa_node 'extras', Template::Extras, 0..1
249
+
250
+ def initialize
251
+ super('edge')
252
+ end
253
+ end
254
+
255
+ class Linear < XFA::TemplateElement
256
+ xfa_attribute 'type'
257
+
258
+ xfa_node 'color', Template::Color, 0..1
259
+ xfa_node 'extras', Template::Extras, 0..1
260
+
261
+ def initialize
262
+ super('linear')
263
+ end
264
+ end
265
+
266
+ class Pattern < XFA::TemplateElement
267
+ xfa_attribute 'type'
268
+
269
+ xfa_node 'color', Template::Color, 0..1
270
+ xfa_node 'extras', Template::Extras, 0..1
271
+
272
+ def initialize
273
+ super('pattern')
274
+ end
275
+ end
276
+
277
+ class Radial < XFA::TemplateElement
278
+ xfa_attribute 'type'
279
+
280
+ xfa_node 'color', Template::Color, 0..1
281
+ xfa_node 'extras', Template::Extras, 0..1
282
+
283
+ def initialize
284
+ super('radial')
285
+ end
286
+ end
287
+
288
+ class Solid < XFA::TemplateElement
289
+ xfa_node 'extras', Template::Extras, 0..1
290
+
291
+ def initialize
292
+ super('solid')
293
+ end
294
+ end
295
+
296
+ class Stipple < XFA::TemplateElement
297
+ xfa_attribute 'rate'
298
+
299
+ xfa_node 'color', Template::Color, 0..1
300
+ xfa_node 'extras', Template::Extras, 0..1
301
+
302
+ def initialize
303
+ super('stipple')
304
+ end
305
+ end
306
+
307
+ class Fill < XFA::TemplateElement
308
+ xfa_attribute 'presence'
309
+
310
+ xfa_node 'color', Template::Color, 0..1
311
+ xfa_node 'extras', Template::Extras, 0..1
312
+ xfa_node 'linear', Template::Linear, 0..1
313
+ xfa_node 'pattern', Template::Pattern, 0..1
314
+ xfa_node 'radial', Template::Radial, 0..1
315
+ xfa_node 'solid', Template::Solid, 0..1
316
+ xfa_node 'stipple', Template::Stipple, 0..1
317
+
318
+ def initialize
319
+ super('fill')
320
+ end
321
+ end
322
+
323
+ class Margin < XFA::TemplateElement
324
+ xfa_attribute 'bottomInset'
325
+ xfa_attribute 'leftInset'
326
+ xfa_attribute 'rightInset'
327
+ xfa_attribute 'topInset'
328
+
329
+ xfa_node 'extras', Template::Extras, 0..1
330
+
331
+ def initialize
332
+ super('margin')
333
+ end
334
+ end
335
+
336
+ class Border < XFA::TemplateElement
337
+ xfa_attribute 'break'
338
+ xfa_attribute 'hand'
339
+ xfa_attribute 'presence'
340
+ xfa_attribute 'relevant'
341
+
342
+ xfa_node 'corner', Template::Corner, 0..4
343
+ xfa_node 'edge', Template::Edge, 0..4
344
+ xfa_node 'extras', Template::Extras, 0..1
345
+ xfa_node 'fill', Template::Fill, 0..1
346
+ xfa_node 'margin', Template::Margin, 0..1
347
+
348
+ def initialize
349
+ super('border')
350
+ end
351
+ end
352
+
353
+ class Break < XFA::TemplateElement
354
+ xfa_attribute 'after'
355
+ xfa_attribute 'afterTarget'
356
+ xfa_attribute 'before'
357
+ xfa_attribute 'beforeTarget'
358
+ xfa_attribute 'bookendLeader'
359
+ xfa_attribute 'bookendTrailer'
360
+ xfa_attribute 'overflowLeader'
361
+ xfa_attribute 'overflowTarget'
362
+ xfa_attribute 'overflowTrailer'
363
+ xfa_attribute 'startNew'
364
+
365
+ xfa_node 'extras', Template::Extras, 0..1
366
+
367
+ def initialize
368
+ super('break')
369
+ end
370
+ end
371
+
372
+ class Message < XFA::TemplateElement
373
+ xfa_node 'text', Template::Text
374
+
375
+ def initialize
376
+ super('message')
377
+ end
378
+ end
379
+
380
+ class Script < XFA::NamedTemplateElement
381
+ xfa_attribute 'binding'
382
+ xfa_attribute 'contentType'
383
+ xfa_attribute 'runAt'
384
+
385
+ def initialize(script = "")
386
+ super('script')
387
+
388
+ self.text = script
389
+ end
390
+ end
391
+
392
+ class JavaScript < Script
393
+ def initialize(script = "")
394
+ super(script)
395
+
396
+ self.contentType = 'application/x-javascript'
397
+ end
398
+ end
399
+
400
+ class FormCalcScript < Script
401
+ def initialize(script = "")
402
+ super(script)
403
+
404
+ self.contentType = 'application/x-formcalc'
405
+ end
406
+ end
407
+
408
+ class Calculate < XFA::TemplateElement
409
+ xfa_attribute 'override'
410
+
411
+ xfa_node 'extras', Template::Extras, 0..1
412
+ xfa_node 'message', Template::Message, 0..1
413
+ xfa_node 'script', Template::Script, 0..1
414
+
415
+ def initialize
416
+ super('calculate')
417
+ end
418
+ end
419
+
420
+ class Desc < XFA::TemplateElement
421
+ xfa_node 'boolean', Template::Boolean
422
+ xfa_node 'date', Template::Date
423
+ xfa_node 'dateTime', Template::DateTime
424
+ xfa_node 'decimal', Template::Decimal
425
+ xfa_node 'exData', Template::ExData
426
+ xfa_node 'float', Template::Float
427
+ xfa_node 'image', Template::Image
428
+ xfa_node 'integer', Template::Integer
429
+ xfa_node 'text', Template::Text
430
+ xfa_node 'time', Template::Time
431
+
432
+ def initialize
433
+ super('desc')
434
+ end
435
+ end
436
+
437
+ class Keep < XFA::TemplateElement
438
+ xfa_attribute 'intact'
439
+ xfa_attribute 'next'
440
+ xfa_attribute 'previous'
441
+
442
+ xfa_node 'extras', Template::Extras, 0..1
443
+
444
+ NONE = "none"
445
+ CONTENTAREA = "contentArea"
446
+ PAGEAREA = "pageArea"
447
+
448
+ def initialize
449
+ super('keep')
450
+ end
451
+ end
452
+
453
+ class Occur < XFA::TemplateElement
454
+ xfa_attribute 'initial'
455
+ xfa_attribute 'max'
456
+ xfa_attribute 'min'
457
+
458
+ xfa_node 'extras', Template::Extras, 0..1
459
+
460
+ def initialize
461
+ super('occur')
462
+ end
463
+ end
464
+
465
+ class Overflow < XFA::TemplateElement
466
+ xfa_attribute 'leader'
467
+ xfa_attribute 'target'
468
+ xfa_attribute 'trailer'
469
+
470
+ def initialize
471
+ super('overflow')
472
+ end
473
+ end
474
+
475
+ class Medium < XFA::TemplateElement
476
+ xfa_attribute 'imagingBBox'
477
+ xfa_attribute 'long'
478
+ xfa_attribute 'orientation'
479
+ xfa_attribute 'short'
480
+ xfa_attribute 'stock'
481
+ xfa_attribute 'trayIn'
482
+ xfa_attribute 'trayOut'
483
+
484
+ def initialize
485
+ super('medium')
486
+ end
487
+ end
488
+
489
+ class Font < XFA::TemplateElement
490
+ xfa_attribute 'baselineShift'
491
+ xfa_attribute 'fontHorizontalScale'
492
+ xfa_attribute 'fontVerticalScale'
493
+ xfa_attribute 'kerningMode'
494
+ xfa_attribute 'letterSpacing'
495
+ xfa_attribute 'lineThrough'
496
+ xfa_attribute 'lineThroughPeriod'
497
+ xfa_attribute 'overline'
498
+ xfa_attribute 'overlinePeriod'
499
+ xfa_attribute 'posture'
500
+ xfa_attribute 'size'
501
+ xfa_attribute 'typeface'
502
+ xfa_attribute 'underline'
503
+ xfa_attribute 'underlinePeriod'
504
+ xfa_attribute 'weight'
505
+
506
+ xfa_node 'extras', Template::Extras, 0..1
507
+ xfa_node 'fill', Template::Fill, 0..1
508
+
509
+ def initialize
510
+ super('font')
511
+ end
512
+ end
513
+
514
+ class Hyphenation < XFA::TemplateElement
515
+ xfa_attribute 'excludeAllCaps'
516
+ xfa_attribute 'excludeInitialCap'
517
+ xfa_attribute 'hyphenate'
518
+ xfa_attribute 'pushCharacterCount'
519
+ xfa_attribute 'remainCharacterCount'
520
+ xfa_attribute 'wordCharacterCount'
521
+
522
+ def initialize
523
+ super('hyphenation')
524
+ end
525
+ end
526
+
527
+ class Para < XFA::TemplateElement
528
+ xfa_attribute 'hAlign'
529
+ xfa_attribute 'lineHeight'
530
+ xfa_attribute 'marginLeft'
531
+ xfa_attribute 'marginRight'
532
+ xfa_attribute 'orphans'
533
+ xfa_attribute 'preserve'
534
+ xfa_attribute 'radixOffset'
535
+ xfa_attribute 'spaceAbove'
536
+ xfa_attribute 'spaceBelow'
537
+ xfa_attribute 'tabDefault'
538
+ xfa_attribute 'tabStops'
539
+ xfa_attribute 'textIndent'
540
+ xfa_attribute 'vAlign'
541
+ xfa_attribute 'widows'
542
+
543
+ xfa_node 'hyphenation', Template::Hyphenation, 0..1
544
+
545
+ def initialize
546
+ super('para')
547
+ end
548
+ end
549
+
550
+ class Arc < XFA::TemplateElement
551
+ xfa_attribute 'circular'
552
+ xfa_attribute 'hand'
553
+ xfa_attribute 'startAngle'
554
+ xfa_attribute 'sweepAngle'
555
+
556
+ xfa_node 'edge', Template::Edge, 0..1
557
+ xfa_node 'fill', Template::Fill, 0..1
558
+
559
+ def initialize
560
+ super('arc')
561
+ end
562
+ end
563
+
564
+ class Line < XFA::TemplateElement
565
+ xfa_attribute 'hand'
566
+ xfa_attribute 'slope'
567
+
568
+ xfa_node 'edge', Template::Edge, 0..1
569
+
570
+ def initialize
571
+ super('line')
572
+ end
573
+ end
574
+
575
+ class Rectangle < XFA::TemplateElement
576
+ xfa_attribute 'hand'
577
+
578
+ xfa_node 'corner', Template::Corner, 0..4
579
+ xfa_node 'edge', Template::Edge, 0..4
580
+ xfa_node 'fill', Template::Fill, 0..4
581
+
582
+ def initialize
583
+ super('rectangle')
584
+ end
585
+ end
586
+
587
+ class Value < XFA::TemplateElement
588
+ xfa_attribute 'override'
589
+ xfa_attribute 'relevant'
590
+
591
+ xfa_node 'arc', Template::Arc, 0..1
592
+ xfa_node 'boolean', Template::Boolean, 0..1
593
+ xfa_node 'date', Template::Date, 0..1
594
+ xfa_node 'dateTime', Template::DateTime, 0..1
595
+ xfa_node 'decimal', Template::Decimal, 0..1
596
+ xfa_node 'exData', Template::ExData, 0..1
597
+ xfa_node 'float', Template::Float, 0..1
598
+ xfa_node 'image', Template::Image, 0..1
599
+ xfa_node 'integer', Template::Integer, 0..1
600
+ xfa_node 'line', Template::Line, 0..1
601
+ xfa_node 'rectangle', Template::Rectangle, 0..1
602
+ xfa_node 'text', Template::Text, 0..1
603
+ xfa_node 'time', Template::Time, 0..1
604
+
605
+ def initialize
606
+ super('value')
607
+ end
608
+ end
609
+
610
+ class Caption < XFA::TemplateElement
611
+ xfa_attribute 'placement'
612
+ xfa_attribute 'presence'
613
+ xfa_attribute 'reserve'
614
+
615
+ xfa_node 'extras', Template::Extras, 0..1
616
+ xfa_node 'font', Template::Font, 0..1
617
+ xfa_node 'margin', Template::Margin, 0..1
618
+ xfa_node 'para', Template::Para, 0..1
619
+ xfa_node 'value', Template::Value, 0..1
620
+
621
+ def initialize
622
+ super('caption')
623
+ end
624
+ end
625
+
626
+ class Traverse < XFA::TemplateElement
627
+ xfa_attribute 'operation'
628
+ xfa_attribute 'ref'
629
+
630
+ xfa_node 'extras', Template::Extras, 0..1
631
+ xfa_node 'script', Template::Script, 0..1
632
+
633
+ def initialize
634
+ super('traverse')
635
+ end
636
+ end
637
+
638
+ class Traversal < XFA::TemplateElement
639
+ xfa_node 'extras', Template::Extras, 0..1
640
+ xfa_node 'traverse', Template::Traverse
641
+
642
+ def initialize
643
+ super('traversal')
644
+ end
645
+ end
646
+
647
+ class Certificate < XFA::NamedTemplateElement
648
+ def initialize(b64data = nil)
649
+ super('certificate')
650
+
651
+ self.text = b64data
652
+ end
653
+ end
654
+
655
+ class Encrypt < XFA::TemplateElement
656
+ xfa_node 'certificate', Template::Certificate, 0..1
657
+
658
+ def initialize
659
+ super('encrypt')
660
+ end
661
+ end
662
+
663
+ class Barcode < XFA::TemplateElement
664
+ xfa_attribute 'charEncoding'
665
+ xfa_attribute 'checksum'
666
+ xfa_attribute 'dataColumnCount'
667
+ xfa_attribute 'dataLength'
668
+ xfa_attribute 'dataPrep'
669
+ xfa_attribute 'dataRowCount'
670
+ xfa_attribute 'endChar'
671
+ xfa_attribute 'errorConnectionLevel'
672
+ xfa_attribute 'moduleHeight'
673
+ xfa_attribute 'moduleWidth'
674
+ xfa_attribute 'printCheckDigit'
675
+ xfa_attribute 'rowColumnRatio'
676
+ xfa_attribute 'startChar'
677
+ xfa_attribute 'textLocation'
678
+ xfa_attribute 'truncate'
679
+ xfa_attribute 'type'
680
+ xfa_attribute 'upsMode'
681
+ xfa_attribute 'wideNarrowRatio'
682
+
683
+ xfa_node 'encrypt', Template::Encrypt, 0..1
684
+ xfa_node 'extras', Template::Extras, 0..1
685
+
686
+ def initialize
687
+ super('barcode')
688
+ end
689
+ end
690
+
691
+ class Button < XFA::TemplateElement
692
+ xfa_attribute 'highlight'
693
+
694
+ xfa_node 'extras', Template::Extras, 0..1
695
+
696
+ def initialize
697
+ super('button')
698
+ end
699
+ end
700
+
701
+ class CheckButton < XFA::TemplateElement
702
+ xfa_attribute 'mark'
703
+ xfa_attribute 'shape'
704
+ xfa_attribute 'size'
705
+
706
+ xfa_node 'border', Template::Border, 0..1
707
+ xfa_node 'extras', Template::Extras, 0..1
708
+ xfa_node 'margin', Template::Margin, 0..1
709
+
710
+ def initialize
711
+ super('checkButton')
712
+ end
713
+ end
714
+
715
+ class ChoiceList < XFA::TemplateElement
716
+ xfa_attribute 'commitOn'
717
+ xfa_attribute 'open'
718
+ xfa_attribute 'textEntry'
719
+
720
+ xfa_node 'border', Template::Border, 0..1
721
+ xfa_node 'extras', Template::Extras, 0..1
722
+ xfa_node 'margin', Template::Margin, 0..1
723
+
724
+ def initialize
725
+ super('choiceList')
726
+ end
727
+ end
728
+
729
+ class Comb < XFA::TemplateElement
730
+ xfa_attribute 'numberOfCells'
731
+
732
+ def initialize
733
+ super('comb')
734
+ end
735
+ end
736
+
737
+ class DateTimeEdit < XFA::TemplateElement
738
+ xfa_attribute 'hScrollPolicy'
739
+ xfa_attribute 'picker'
740
+
741
+ xfa_node 'border', Template::Border, 0..1
742
+ xfa_node 'comb', Template::Comb, 0..1
743
+ xfa_node 'extras', Template::Extras, 0..1
744
+ xfa_node 'margin', Template::Margin, 0..1
745
+
746
+ def initialize
747
+ super('dateTimeEdit')
748
+ end
749
+ end
750
+
751
+ class DefaultUI < XFA::TemplateElement
752
+ xfa_node 'extras', Template::Extras, 0..1
753
+
754
+ def initialize
755
+ super('defaultUi')
756
+ end
757
+ end
758
+
759
+ class ImageEdit < XFA::TemplateElement
760
+ xfa_attribute 'data'
761
+
762
+ xfa_node 'border', Template::Border, 0..1
763
+ xfa_node 'extras', Template::Extras, 0..1
764
+ xfa_node 'margin', Template::Margin, 0..1
765
+
766
+ def initialize
767
+ super('imageEdit')
768
+ end
769
+ end
770
+
771
+ class NumericEdit < XFA::TemplateElement
772
+ xfa_attribute 'hScrollPolicy'
773
+
774
+ xfa_node 'border', Template::Border, 0..1
775
+ xfa_node 'comb', Template::Comb, 0..1
776
+ xfa_node 'extras', Template::Extras, 0..1
777
+ xfa_node 'margin', Template::Margin, 0..1
778
+
779
+ def initialize
780
+ super('numericEdit')
781
+ end
782
+ end
783
+
784
+ class PasswordEdit < XFA::TemplateElement
785
+ xfa_attribute 'hScrollPolicy'
786
+ xfa_attribute 'passwordChar'
787
+
788
+ xfa_node 'border', Template::Border, 0..1
789
+ xfa_node 'extras', Template::Extras, 0..1
790
+ xfa_node 'margin', Template::Margin, 0..1
791
+
792
+ def initialize
793
+ super('passwordEdit')
794
+ end
795
+ end
796
+
797
+ class AppearanceFilter < XFA::TemplateElement
798
+ xfa_attribute 'type'
799
+
800
+ def initialize(name = "")
801
+ super('appearanceFilter')
802
+
803
+ self.text = name
804
+ end
805
+ end
806
+
807
+ class Issuers < XFA::TemplateElement
808
+ xfa_attribute 'type'
809
+
810
+ xfa_node 'certificate', Template::Certificate
811
+
812
+ def initialize
813
+ super('issuers')
814
+ end
815
+ end
816
+
817
+ class KeyUsage < XFA::TemplateElement
818
+ xfa_attribute 'crlSign'
819
+ xfa_attribute 'dataEncipherment'
820
+ xfa_attribute 'decipherOnly'
821
+ xfa_attribute 'digitalSignature'
822
+ xfa_attribute 'encipherOnly'
823
+ xfa_attribute 'keyAgreement'
824
+ xfa_attribute 'keyCertSign'
825
+ xfa_attribute 'keyEncipherment'
826
+ xfa_attribute 'nonRepudiation'
827
+ xfa_attribute 'type'
828
+
829
+ def initialize
830
+ super('keyUsage')
831
+ end
832
+ end
833
+
834
+ class OID < XFA::NamedTemplateElement
835
+ def initialize(oid = "")
836
+ super('oid')
837
+
838
+ self.text = oid
839
+ end
840
+ end
841
+
842
+ class OIDs < XFA::TemplateElement
843
+ xfa_attribute 'type'
844
+
845
+ xfa_node 'oid', Template::OID
846
+
847
+ def initialize
848
+ super('oids')
849
+ end
850
+ end
851
+
852
+ class Signing < XFA::TemplateElement
853
+ xfa_attribute 'type'
854
+
855
+ xfa_node 'certificate', Template::Certificate
856
+
857
+ def initialize
858
+ super('signing')
859
+ end
860
+ end
861
+
862
+ class SubjectDN < XFA::NamedTemplateElement
863
+ xfa_attribute 'delimiter'
864
+
865
+ def initialize(data = "")
866
+ super('subjectDN')
867
+
868
+ self.text = data
869
+ end
870
+ end
871
+
872
+ class SubjectDNs < XFA::TemplateElement
873
+ xfa_attribute 'type'
874
+
875
+ xfa_node 'subjectDN', Template::SubjectDN, 0..1
876
+
877
+ def initialize
878
+ super('subjectDNs')
879
+ end
880
+ end
881
+
882
+ class Certificates < XFA::TemplateElement
883
+ xfa_attribute 'credentialServerPolicy'
884
+ xfa_attribute 'url'
885
+ xfa_attribute 'urlPolicy'
886
+
887
+ xfa_node 'issuers', Template::Issuers, 0..1
888
+ xfa_node 'keyUsage', Template::KeyUsage, 0..1
889
+ xfa_node 'oids', Template::OIDs, 0..1
890
+ xfa_node 'signing', Template::Signing, 0..1
891
+ xfa_node 'subjectDNs', Template::SubjectDNs, 0..1
892
+
893
+ def initialize
894
+ super('certificates')
895
+ end
896
+ end
897
+
898
+ class DigestMethod < XFA::TemplateElement
899
+ def initialize(method = "")
900
+ super('digestMethod')
901
+
902
+ self.text = method
903
+ end
904
+ end
905
+
906
+ class DigestMethods < XFA::TemplateElement
907
+ xfa_attribute 'type'
908
+
909
+ xfa_node 'digestMethod', Template::DigestMethod
910
+
911
+ def initialize
912
+ super('digestMethods')
913
+ end
914
+ end
915
+
916
+ class Encoding < XFA::TemplateElement
917
+ def initialize(encoding = "")
918
+ super('encoding')
919
+
920
+ self.text = encoding
921
+ end
922
+ end
923
+
924
+ class Encodings < XFA::TemplateElement
925
+ xfa_attribute 'type'
926
+
927
+ xfa_node 'encoding', Template::Encoding
928
+
929
+ def initialize
930
+ super('encodings')
931
+ end
932
+ end
933
+
934
+ class Handler < XFA::TemplateElement
935
+ xfa_attribute 'type'
936
+
937
+ def initialize(handler = "")
938
+ super('handler')
939
+
940
+ self.text = handler
941
+ end
942
+ end
943
+
944
+ class LockDocument < XFA::TemplateElement
945
+ xfa_attribute 'type'
946
+
947
+ def initialize(lock = "default")
948
+ super('lockDocument')
949
+
950
+ self.text = lock
951
+ end
952
+ end
953
+
954
+ class MDP < XFA::TemplateElement
955
+ xfa_attribute 'permissions'
956
+ xfa_attribute 'signatureType'
957
+
958
+ def initialize
959
+ super('mdp')
960
+ end
961
+ end
962
+
963
+ class Reason < XFA::NamedTemplateElement
964
+ def initialize(reason = "")
965
+ super('reason')
966
+
967
+ self.text = reason
968
+ end
969
+ end
970
+
971
+ class Reasons < XFA::TemplateElement
972
+ xfa_attribute 'type'
973
+
974
+ xfa_node 'reason', Template::Reason
975
+
976
+ def initialize
977
+ super('reasons')
978
+ end
979
+ end
980
+
981
+ class TimeStamp < XFA::TemplateElement
982
+ xfa_attribute 'server'
983
+ xfa_attribute 'type'
984
+
985
+ def initialize
986
+ super('timeStamp')
987
+ end
988
+ end
989
+
990
+ class Filter < XFA::NamedTemplateElement
991
+ xfa_attribute 'addRevocationInfo'
992
+ xfa_attribute 'version'
993
+
994
+ xfa_node 'appearanceFilter', Template::AppearanceFilter, 0..1
995
+ xfa_node 'certificates', Template::Certificates, 0..1
996
+ xfa_node 'digestMethods', Template::DigestMethods, 0..1
997
+ xfa_node 'encodings', Template::Encodings, 0..1
998
+ xfa_node 'handler', Template::Handler, 0..1
999
+ xfa_node 'lockDocument', Template::LockDocument, 0..1
1000
+ xfa_node 'mdp', Template::MDP, 0..1
1001
+ xfa_node 'reasons', Template::Reasons, 0..1
1002
+ xfa_node 'timeStamp', Template::TimeStamp, 0..1
1003
+
1004
+ def initialize
1005
+ super('filter')
1006
+ end
1007
+ end
1008
+
1009
+ class Ref < XFA::TemplateElement
1010
+ def initialize(somexpr = nil)
1011
+ super('ref')
1012
+
1013
+ self.text = somexpr
1014
+ end
1015
+ end
1016
+
1017
+ class Manifest < XFA::NamedTemplateElement
1018
+ xfa_attribute 'action'
1019
+
1020
+ xfa_node 'extras', Template::Extras, 0..1
1021
+ xfa_node 'ref', Template::Ref, 0..1
1022
+
1023
+ def initialize
1024
+ super('manifest')
1025
+ end
1026
+ end
1027
+
1028
+ class Signature < XFA::TemplateElement
1029
+ xfa_attribute 'type'
1030
+
1031
+ xfa_node 'border', Template::Border, 0..1
1032
+ xfa_node 'extras', Template::Extras, 0..1
1033
+ xfa_node 'filter', Template::Filter, 0..1
1034
+ xfa_node 'manifest', Template::Manifest, 0..1
1035
+ xfa_node 'margin', Template::Margin, 0..1
1036
+
1037
+ def initialize
1038
+ super('signature')
1039
+ end
1040
+ end
1041
+
1042
+ class TextEdit < XFA::TemplateElement
1043
+ xfa_attribute 'allowRichText'
1044
+ xfa_attribute 'hScrollPolicy'
1045
+ xfa_attribute 'multiLine'
1046
+ xfa_attribute 'vScrollPolicy'
1047
+
1048
+ xfa_node 'border', Template::Border, 0..1
1049
+ xfa_node 'comb', Template::Comb, 0..1
1050
+ xfa_node 'extras', Template::Extras, 0..1
1051
+ xfa_node 'margin', Template::Margin, 0..1
1052
+
1053
+ def initialize
1054
+ super('textEdit')
1055
+ end
1056
+ end
1057
+
1058
+ class UI < XFA::TemplateElement
1059
+ xfa_node 'extras', Template::Extras, 0..1
1060
+ xfa_node 'picture', Template::Picture, 0..1
1061
+ xfa_node 'barcode', Template::Barcode, 0..1
1062
+ xfa_node 'button', Template::Button, 0..1
1063
+ xfa_node 'checkButton', Template::CheckButton, 0..1
1064
+ xfa_node 'choiceList', Template::ChoiceList, 0..1
1065
+ xfa_node 'dateTimeEdit', Template::DateTimeEdit, 0..1
1066
+ xfa_node 'defaultUi', Template::DefaultUI, 0..1
1067
+ xfa_node 'imageEdit', Template::ImageEdit, 0..1
1068
+ xfa_node 'numericEdit', Template::NumericEdit, 0..1
1069
+ xfa_node 'passwordEdit', Template::PasswordEdit, 0..1
1070
+ xfa_node 'signature', Template::Signature, 0..1
1071
+ xfa_node 'textEdit', Template::TextEdit, 0..1
1072
+
1073
+ def initialize
1074
+ super('ui')
1075
+ end
1076
+ end
1077
+
1078
+ class SetProperty < XFA::Element
1079
+ xfa_attribute 'connection'
1080
+ xfa_attribute 'ref'
1081
+ xfa_attribute 'target'
1082
+
1083
+ def initialize
1084
+ super('setProperty')
1085
+ end
1086
+ end
1087
+
1088
+ class Draw < XFA::NamedTemplateElement
1089
+ xfa_attribute 'anchorType'
1090
+ xfa_attribute 'colSpan'
1091
+ xfa_attribute 'h'
1092
+ xfa_attribute 'locale'
1093
+ xfa_attribute 'maxH'
1094
+ xfa_attribute 'maxW'
1095
+ xfa_attribute 'minH'
1096
+ xfa_attribute 'minW'
1097
+ xfa_attribute 'presence'
1098
+ xfa_attribute 'relevant'
1099
+ xfa_attribute 'rotate'
1100
+ xfa_attribute 'w'
1101
+ xfa_attribute 'x'
1102
+ xfa_attribute 'y'
1103
+
1104
+ xfa_node 'assist', Template::Assist, 0..1
1105
+ xfa_node 'border', Template::Border, 0..1
1106
+ xfa_node 'caption', Template::Caption, 0..1
1107
+ xfa_node 'desc', Template::Desc, 0..1
1108
+ xfa_node 'extras', Template::Extras, 0..1
1109
+ xfa_node 'font', Template::Font, 0..1
1110
+ xfa_node 'keep', Template::Keep, 0..1
1111
+ xfa_node 'margin', Template::Margin, 0..1
1112
+ xfa_node 'para', Template::Para, 0..1
1113
+ xfa_node 'traversal', Template::Traversal, 0..1
1114
+ xfa_node 'ui', Template::UI, 0..1
1115
+ xfa_node 'value', Template::Value, 0..1
1116
+
1117
+ xfa_node 'setProperty', Template::SetProperty
1118
+
1119
+ def initialize
1120
+ super('draw')
1121
+ end
1122
+ end
1123
+
1124
+ class Validate < XFA::TemplateElement
1125
+ xfa_attribute 'formatTest'
1126
+ xfa_attribute 'nullTest'
1127
+ xfa_attribute 'scriptTest'
1128
+
1129
+ xfa_node 'extras', Template::Extras, 0..1
1130
+ xfa_node 'message', Template::Message, 0..1
1131
+ xfa_node 'picture', Template::Picture, 0..1
1132
+ xfa_node 'script', Template::Script, 0..1
1133
+
1134
+ def initialize
1135
+ super('validate')
1136
+ end
1137
+ end
1138
+
1139
+ class Connect < XFA::TemplateElement
1140
+ xfa_attribute 'connection'
1141
+ xfa_attribute 'ref'
1142
+ xfa_attribute 'usage'
1143
+
1144
+ xfa_node 'picture', Template::Picture, 0..1
1145
+
1146
+ def initialize
1147
+ super('connect')
1148
+ end
1149
+ end
1150
+
1151
+ class Execute < XFA::TemplateElement
1152
+ xfa_attribute 'connection'
1153
+ xfa_attribute 'executeType'
1154
+ xfa_attribute 'runAt'
1155
+
1156
+ def initialize
1157
+ super('execute')
1158
+ end
1159
+ end
1160
+
1161
+ class SignData < XFA::TemplateElement
1162
+ xfa_attribute 'operation'
1163
+ xfa_attribute 'ref'
1164
+ xfa_attribute 'target'
1165
+
1166
+ xfa_node 'filter', Template::Filter, 0..1
1167
+ xfa_node 'manifest', Template::Manifest, 0..1
1168
+
1169
+ def initialize
1170
+ super('signData')
1171
+ end
1172
+ end
1173
+
1174
+ class Submit < XFA::TemplateElement
1175
+ xfa_attribute 'embedPDF'
1176
+ xfa_attribute 'format'
1177
+ xfa_attribute 'target'
1178
+ xfa_attribute 'textEncoding'
1179
+ xfa_attribute 'xdpContent'
1180
+
1181
+ xfa_node 'encrypt', Template::Encrypt, 0..1
1182
+ xfa_node 'signData', Template::SignData
1183
+
1184
+ def initialize
1185
+ super('submit')
1186
+ end
1187
+ end
1188
+
1189
+ class Event < XFA::NamedTemplateElement
1190
+ xfa_attribute 'activity'
1191
+ xfa_attribute 'listen'
1192
+ xfa_attribute 'ref'
1193
+
1194
+ xfa_node 'extras', Template::Extras, 0..1
1195
+ xfa_node 'execute', Template::Execute, 0..1
1196
+ xfa_node 'script', Template::Script, 0..1
1197
+ xfa_node 'signData', Template::SignData, 0..1
1198
+ xfa_node 'submit', Template::Submit, 0..1
1199
+
1200
+ def initialize
1201
+ super('event')
1202
+ end
1203
+ end
1204
+
1205
+ class Format < XFA::TemplateElement
1206
+ xfa_node 'extras', Template::Extras, 0..1
1207
+ xfa_node 'picture', Template::Picture, 0..1
1208
+
1209
+ def initialize
1210
+ super('format')
1211
+ end
1212
+ end
1213
+
1214
+ class Items < XFA::NamedTemplateElement
1215
+ xfa_attribute 'presence'
1216
+ xfa_attribute 'ref'
1217
+ xfa_attribute 'save'
1218
+
1219
+ xfa_node 'boolean', Template::Boolean
1220
+ xfa_node 'date', Template::Date
1221
+ xfa_node 'dateTime', Template::DateTime
1222
+ xfa_node 'decimal', Template::Decimal
1223
+ xfa_node 'exData', Template::ExData
1224
+ xfa_node 'float', Template::Float
1225
+ xfa_node 'image', Template::Image
1226
+ xfa_node 'integer', Template::Integer
1227
+ xfa_node 'text', Template::Text
1228
+ xfa_node 'time', Template::Time
1229
+
1230
+ def initialize
1231
+ super('items')
1232
+ end
1233
+ end
1234
+
1235
+ class BindItems < XFA::Element
1236
+ xfa_attribute 'connection'
1237
+ xfa_attribute 'labelRef'
1238
+ xfa_attribute 'ref'
1239
+ xfa_attribute 'valueRef'
1240
+
1241
+ def initialize
1242
+ super('bindItems')
1243
+ end
1244
+ end
1245
+
1246
+ class Field < XFA::NamedTemplateElement
1247
+ xfa_attribute 'access'
1248
+ xfa_attribute 'accessKey'
1249
+ xfa_attribute 'anchorType'
1250
+ xfa_attribute 'colSpan'
1251
+ xfa_attribute 'h'
1252
+ xfa_attribute 'locale'
1253
+ xfa_attribute 'maxH'
1254
+ xfa_attribute 'maxW'
1255
+ xfa_attribute 'minH'
1256
+ xfa_attribute 'minW'
1257
+ xfa_attribute 'presence'
1258
+ xfa_attribute 'relevant'
1259
+ xfa_attribute 'rotate'
1260
+ xfa_attribute 'w'
1261
+ xfa_attribute 'x'
1262
+ xfa_attribute 'y'
1263
+
1264
+ xfa_node 'assist', Template::Assist, 0..1
1265
+ xfa_node 'bind', Template::Bind, 0..1
1266
+ xfa_node 'border', Template::Border, 0..1
1267
+ xfa_node 'calculate', Template::Calculate, 0..1
1268
+ xfa_node 'caption', Template::Caption, 0..1
1269
+ xfa_node 'desc', Template::Desc, 0..1
1270
+ xfa_node 'extras', Template::Extras, 0..1
1271
+ xfa_node 'font', Template::Font, 0..1
1272
+ xfa_node 'format', Template::Format, 0..1
1273
+ xfa_node 'items', Template::Items, 0..2
1274
+ xfa_node 'keep', Template::Keep, 0..1
1275
+ xfa_node 'margin', Template::Margin, 0..1
1276
+ xfa_node 'para', Template::Para, 0..1
1277
+ xfa_node 'traversal', Template::Traversal, 0..1
1278
+ xfa_node 'ui', Template::UI, 0..1
1279
+ xfa_node 'validate', Template::Validate, 0..1
1280
+ xfa_node 'value', Template::Value, 0..1
1281
+
1282
+ xfa_node 'bindItems', Template::BindItems
1283
+ xfa_node 'connect', Template::Connect
1284
+ xfa_node 'event', Template::Event
1285
+ xfa_node 'setProperty', Template::SetProperty
1286
+
1287
+ def initialize
1288
+ super('field')
1289
+ end
1290
+ end
1291
+
1292
+
1293
+ class ExclGroup < XFA::NamedTemplateElement
1294
+ xfa_attribute 'access'
1295
+ xfa_attribute 'accessKey'
1296
+ xfa_attribute 'anchorType'
1297
+ xfa_attribute 'colSpan'
1298
+ xfa_attribute 'h'
1299
+ xfa_attribute 'layout'
1300
+ xfa_attribute 'maxH'
1301
+ xfa_attribute 'maxW'
1302
+ xfa_attribute 'minH'
1303
+ xfa_attribute 'minW'
1304
+ xfa_attribute 'presence'
1305
+ xfa_attribute 'relevant'
1306
+ xfa_attribute 'w'
1307
+ xfa_attribute 'x'
1308
+ xfa_attribute 'y'
1309
+
1310
+ xfa_node 'assist', Template::Assist, 0..1
1311
+ xfa_node 'bind', Template::Bind, 0..1
1312
+ xfa_node 'border', Template::Border, 0..1
1313
+ xfa_node 'calculate', Template::Calculate, 0..1
1314
+ xfa_node 'caption', Template::Caption, 0..1
1315
+ xfa_node 'desc', Template::Desc, 0..1
1316
+ xfa_node 'extras', Template::Extras, 0..1
1317
+ xfa_node 'margin', Template::Margin, 0..1
1318
+ xfa_node 'para', Template::Para, 0..1
1319
+ xfa_node 'traversal', Template::Traversal, 0..1
1320
+ xfa_node 'validate', Template::Validate, 0..1
1321
+
1322
+ xfa_node 'connect', Template::Connect
1323
+ xfa_node 'event', Template::Event
1324
+ xfa_node 'field', Template::Field
1325
+ xfa_node 'setProperty', Template::SetProperty
1326
+
1327
+ def initialize
1328
+ super('exclGroup')
1329
+ end
1330
+ end
1331
+
1332
+ class BreakAfter < XFA::TemplateElement
1333
+ xfa_attribute 'leader'
1334
+ xfa_attribute 'startNew'
1335
+ xfa_attribute 'target'
1336
+ xfa_attribute 'targetType'
1337
+ xfa_attribute 'trailer'
1338
+
1339
+ xfa_node 'script', Template::Script, 0..1
1340
+
1341
+ def initialize
1342
+ super('breakAfter')
1343
+ end
1344
+ end
1345
+
1346
+ class BreakBefore < XFA::TemplateElement
1347
+ xfa_attribute 'leader'
1348
+ xfa_attribute 'startNew'
1349
+ xfa_attribute 'target'
1350
+ xfa_attribute 'targetType'
1351
+ xfa_attribute 'trailer'
1352
+
1353
+ xfa_node 'script', Template::Script, 0..1
1354
+
1355
+ def initialize
1356
+ super('breakBefore')
1357
+ end
1358
+ end
1359
+
1360
+ class Subform < XFA::NamedTemplateElement ; end
1361
+ class SubformSet < XFA::NamedTemplateElement
1362
+ xfa_attribute 'relation'
1363
+ xfa_attribute 'relevant'
1364
+
1365
+ xfa_node 'bookend', Template::Bookend, 0..1
1366
+ xfa_node 'break', Template::Break, 0..1
1367
+ xfa_node 'desc', Template::Desc, 0..1
1368
+ xfa_node 'extras', Template::Extras, 0..1
1369
+ xfa_node 'occur', Template::Occur, 0..1
1370
+ xfa_node 'overflow', Template::Overflow, 0..1
1371
+
1372
+ xfa_node 'breakAfter', Template::BreakAfter
1373
+ xfa_node 'breakBefore', Template::BreakBefore
1374
+ xfa_node 'subform', Template::Subform
1375
+ xfa_node 'subformSet', Template::SubformSet
1376
+
1377
+ def initialize
1378
+ super('subformSet')
1379
+ end
1380
+ end
1381
+
1382
+ class Area < XFA::NamedTemplateElement
1383
+ xfa_attribute 'colSpan'
1384
+ xfa_attribute 'relevant'
1385
+ xfa_attribute 'x'
1386
+ xfa_attribute 'y'
1387
+
1388
+ xfa_node 'desc', Template::Desc, 0..1
1389
+ xfa_node 'extras', Template::Extras, 0..1
1390
+
1391
+ xfa_node 'area', Template::Area
1392
+ xfa_node 'draw', Template::Draw
1393
+ xfa_node 'exclGroup', Template::ExclGroup
1394
+ xfa_node 'field', Template::Field
1395
+ xfa_node 'subform', Template::Subform
1396
+ xfa_node 'subformSet', Template::SubformSet
1397
+
1398
+ def initialize
1399
+ super('area')
1400
+ end
1401
+ end
1402
+
1403
+ class ContentArea < XFA::NamedTemplateElement
1404
+ xfa_attribute 'h'
1405
+ xfa_attribute 'relevant'
1406
+ xfa_attribute 'w'
1407
+ xfa_attribute 'x'
1408
+ xfa_attribute 'y'
1409
+
1410
+ xfa_node 'desc', Template::Desc, 0..1
1411
+ xfa_node 'extras', Template::Extras, 0..1
1412
+
1413
+ def initialize
1414
+ super('contentArea')
1415
+ end
1416
+ end
1417
+
1418
+ class PageArea < XFA::NamedTemplateElement
1419
+ xfa_attribute 'blankOrNotBlank'
1420
+ xfa_attribute 'initialNumber'
1421
+ xfa_attribute 'numbered'
1422
+ xfa_attribute 'oddOrEven'
1423
+ xfa_attribute 'pagePosition'
1424
+ xfa_attribute 'relevant'
1425
+
1426
+ xfa_node 'desc', Template::Desc, 0..1
1427
+ xfa_node 'extras', Template::Extras, 0..1
1428
+ xfa_node 'medium', Template::Medium, 0..1
1429
+ xfa_node 'occur', Template::Occur, 0..1
1430
+
1431
+ xfa_node 'area', Template::Area
1432
+ xfa_node 'contentArea', Template::ContentArea
1433
+ xfa_node 'draw', Template::Draw
1434
+ xfa_node 'exclGroup', Template::ExclGroup
1435
+ xfa_node 'field', Template::Field
1436
+ xfa_node 'subform', Template::Subform
1437
+
1438
+ def initialize
1439
+ super('pageArea')
1440
+ end
1441
+ end
1442
+
1443
+ class PageSet < XFA::NamedTemplateElement
1444
+ xfa_attribute 'relation'
1445
+ xfa_attribute 'relevant'
1446
+
1447
+ xfa_node 'extras', Template::Extras, 0..1
1448
+ xfa_node 'occur', Template::Occur, 0..1
1449
+
1450
+ xfa_node 'pageArea', Template::PageArea
1451
+ xfa_node 'pageSet', Template::PageSet
1452
+
1453
+ ORDERED_OCCURENCE = "orderedOccurence"
1454
+ DUPLEX_PAGINATED = "duplexPaginated"
1455
+ SIMPLEX_PAGINATED = "simplexPaginated"
1456
+
1457
+ def initialize
1458
+ super('pageSet')
1459
+ end
1460
+ end
1461
+
1462
+ class Variables < XFA::TemplateElement
1463
+ xfa_node 'boolean', Template::Boolean
1464
+ xfa_node 'date', Template::Date
1465
+ xfa_node 'dateTime', Template::DateTime
1466
+ xfa_node 'decimal', Template::Decimal
1467
+ xfa_node 'exData', Template::ExData
1468
+ xfa_node 'float', Template::Float
1469
+ xfa_node 'image', Template::Image
1470
+ xfa_node 'integer', Template::Integer
1471
+ xfa_node 'manifest', Template::Manifest
1472
+ xfa_node 'script', Template::Script
1473
+ xfa_node 'text', Template::Text
1474
+ xfa_node 'time', Template::Time
1475
+
1476
+ def initialize
1477
+ super('variables')
1478
+ end
1479
+ end
1480
+
1481
+ class ExObject < XFA::NamedTemplateElement
1482
+ xfa_attribute 'archive'
1483
+ xfa_attribute 'classId'
1484
+ xfa_attribute 'codeBase'
1485
+ xfa_attribute 'codeType'
1486
+
1487
+ xfa_node 'extras', Template::Extras, 0..1
1488
+
1489
+ xfa_node 'boolean', Template::Boolean
1490
+ xfa_node 'date', Template::Date
1491
+ xfa_node 'dateTime', Template::DateTime
1492
+ xfa_node 'decimal', Template::Decimal
1493
+ xfa_node 'exData', Template::ExData
1494
+ xfa_node 'exObject', Template::ExObject
1495
+ xfa_node 'float', Template::Float
1496
+ xfa_node 'image', Template::Image
1497
+ xfa_node 'integer', Template::Integer
1498
+ xfa_node 'text', Template::Text
1499
+ xfa_node 'time', Template::Time
1500
+
1501
+ def initialize
1502
+ super('exObject')
1503
+ end
1504
+ end
1505
+
1506
+ class Proto < XFA::Element
1507
+ xfa_node 'appearanceFilter', Template::AppearanceFilter
1508
+ xfa_node 'arc', Template::Arc
1509
+ xfa_node 'area', Template::Area
1510
+ xfa_node 'assist', Template::Assist
1511
+ xfa_node 'barcode', Template::Barcode
1512
+ xfa_node 'bindItems', Template::BindItems
1513
+ xfa_node 'bookend', Template::Bookend
1514
+ xfa_node 'boolean', Template::Boolean
1515
+ xfa_node 'border', Template::Border
1516
+ xfa_node 'break', Template::Break
1517
+ xfa_node 'breakAfter', Template::BreakAfter
1518
+ xfa_node 'breakBefore', Template::BreakBefore
1519
+ xfa_node 'button', Template::Button
1520
+ xfa_node 'calculate', Template::Calculate
1521
+ xfa_node 'caption', Template::Caption
1522
+ xfa_node 'certificate', Template::Certificate
1523
+ xfa_node 'certificates', Template::Certificates
1524
+ xfa_node 'checkButton', Template::CheckButton
1525
+ xfa_node 'choiceList', Template::ChoiceList
1526
+ xfa_node 'color', Template::Color
1527
+ xfa_node 'comb', Template::Comb
1528
+ xfa_node 'connect', Template::Connect
1529
+ xfa_node 'contentArea', Template::ContentArea
1530
+ xfa_node 'corner', Template::Corner
1531
+ xfa_node 'date', Template::Date
1532
+ xfa_node 'dateTime', Template::DateTime
1533
+ xfa_node 'dateTimeEdit', Template::DateTimeEdit
1534
+ xfa_node 'decimal', Template::Decimal
1535
+ xfa_node 'defaultUi', Template::DefaultUI
1536
+ xfa_node 'desc', Template::Desc
1537
+ xfa_node 'digestMethod', Template::DigestMethod
1538
+ xfa_node 'digestMethods', Template::DigestMethods
1539
+ xfa_node 'draw', Template::Draw
1540
+ xfa_node 'edge', Template::Edge
1541
+ xfa_node 'encoding', Template::Encoding
1542
+ xfa_node 'encodings', Template::Encodings
1543
+ xfa_node 'encrypt', Template::Encrypt
1544
+ xfa_node 'event', Template::Event
1545
+ xfa_node 'exData', Template::ExData
1546
+ xfa_node 'exObject', Template::ExObject
1547
+ xfa_node 'exclGroup', Template::ExclGroup
1548
+ xfa_node 'execute', Template::Execute
1549
+ xfa_node 'extras', Template::Extras
1550
+ xfa_node 'field', Template::Field
1551
+ xfa_node 'fill', Template::Fill
1552
+ xfa_node 'filter', Template::Filter
1553
+ xfa_node 'float', Template::Float
1554
+ xfa_node 'font', Template::Font
1555
+ xfa_node 'format', Template::Format
1556
+ xfa_node 'handler', Template::Handler
1557
+ xfa_node 'hyphenation', Template::Hyphenation
1558
+ xfa_node 'image', Template::Image
1559
+ xfa_node 'imageEdit', Template::ImageEdit
1560
+ xfa_node 'integer', Template::Integer
1561
+ xfa_node 'issuers', Template::Issuers
1562
+ xfa_node 'items', Template::Items
1563
+ xfa_node 'keep', Template::Keep
1564
+ xfa_node 'keyUsage', Template::KeyUsage
1565
+ xfa_node 'line', Template::Line
1566
+ xfa_node 'linear', Template::Linear
1567
+ xfa_node 'lockDocument', Template::LockDocument
1568
+ xfa_node 'manifest', Template::Manifest
1569
+ xfa_node 'margin', Template::Margin
1570
+ xfa_node 'mdp', Template::MDP
1571
+ xfa_node 'medium', Template::Medium
1572
+ xfa_node 'message', Template::Message
1573
+ xfa_node 'numericEdit', Template::NumericEdit
1574
+ xfa_node 'occur', Template::Occur
1575
+ xfa_node 'oid', Template::OID
1576
+ xfa_node 'oids', Template::OIDs
1577
+ xfa_node 'overflow', Template::Overflow
1578
+ xfa_node 'pageArea', Template::PageArea
1579
+ xfa_node 'pageSet', Template::PageSet
1580
+ xfa_node 'para', Template::Para
1581
+ xfa_node 'passwordEdit', Template::PasswordEdit
1582
+ xfa_node 'pattern', Template::Pattern
1583
+ xfa_node 'picture', Template::Picture
1584
+ xfa_node 'radial', Template::Radial
1585
+ xfa_node 'reason', Template::Reason
1586
+ xfa_node 'reasons', Template::Reasons
1587
+ xfa_node 'rectangle', Template::Rectangle
1588
+ xfa_node 'ref', Template::Ref
1589
+ xfa_node 'script', Template::Script
1590
+ xfa_node 'setProperty', Template::SetProperty
1591
+ xfa_node 'signData', Template::SignData
1592
+ xfa_node 'signature', Template::Signature
1593
+ xfa_node 'signing', Template::Signing
1594
+ xfa_node 'solid', Template::Solid
1595
+ xfa_node 'speak', Template::Speak
1596
+ xfa_node 'stipple', Template::Stipple
1597
+ xfa_node 'subform', Template::Subform
1598
+ xfa_node 'subformSet', Template::SubformSet
1599
+ xfa_node 'subjectDN', Template::SubjectDN
1600
+ xfa_node 'subjectDNs', Template::SubjectDNs
1601
+ xfa_node 'submit', Template::Submit
1602
+ xfa_node 'text', Template::Text
1603
+ xfa_node 'textEdit', Template::TextEdit
1604
+ xfa_node 'time', Template::Time
1605
+ xfa_node 'timeStamp', Template::TimeStamp
1606
+ xfa_node 'toolTip', Template::ToolTip
1607
+ xfa_node 'traversal', Template::Traversal
1608
+ xfa_node 'traverse', Template::Traverse
1609
+ xfa_node 'ui', Template::UI
1610
+ xfa_node 'validate', Template::Validate
1611
+ xfa_node 'value', Template::Value
1612
+ xfa_node 'variables', Template::Variables
1613
+
1614
+ def initialize
1615
+ super('proto')
1616
+ end
1617
+ end
1618
+
1619
+ class Subform < XFA::NamedTemplateElement
1620
+ xfa_attribute 'access'
1621
+ xfa_attribute 'allowMacro'
1622
+ xfa_attribute 'anchorType'
1623
+ xfa_attribute 'colSpan'
1624
+ xfa_attribute 'columnWidths'
1625
+ xfa_attribute 'h'
1626
+ xfa_attribute 'layout'
1627
+ xfa_attribute 'locale'
1628
+ xfa_attribute 'maxH'
1629
+ xfa_attribute 'maxW'
1630
+ xfa_attribute 'minH'
1631
+ xfa_attribute 'minW'
1632
+ xfa_attribute 'presence'
1633
+ xfa_attribute 'relevant'
1634
+ xfa_attribute 'restoreState'
1635
+ xfa_attribute 'scope'
1636
+ xfa_attribute 'w'
1637
+ xfa_attribute 'x'
1638
+ xfa_attribute 'y'
1639
+
1640
+ xfa_node 'assist', Template::Assist, 0..1
1641
+ xfa_node 'bind', Template::Bind, 0..1
1642
+ xfa_node 'bookend', Template::Bookend, 0..1
1643
+ xfa_node 'border', Template::Border, 0..1
1644
+ xfa_node 'break', Template::Break, 0..1
1645
+ xfa_node 'calculate', Template::Calculate, 0..1
1646
+ xfa_node 'desc', Template::Desc, 0..1
1647
+ xfa_node 'extras', Template::Extras, 0..1
1648
+ xfa_node 'keep', Template::Keep, 0..1
1649
+ xfa_node 'margin', Template::Margin, 0..1
1650
+ xfa_node 'occur', Template::Occur, 0..1
1651
+ xfa_node 'overflow', Template::Overflow, 0..1
1652
+ xfa_node 'pageSet', Template::PageSet, 0..1
1653
+ xfa_node 'para', Template::Para, 0..1
1654
+ xfa_node 'traversal', Template::Traversal, 0..1
1655
+ xfa_node 'validate', Template::Validate, 0..1
1656
+ xfa_node 'variables', Template::Variables, 0..1
1657
+
1658
+ xfa_node 'area', Template::Area
1659
+ xfa_node 'breakAfter', Template::BreakAfter
1660
+ xfa_node 'breakBefore', Template::BreakBefore
1661
+ xfa_node 'connect', Template::Connect
1662
+ xfa_node 'draw', Template::Draw
1663
+ xfa_node 'event', Template::Event
1664
+ xfa_node 'exObject', Template::ExObject
1665
+ xfa_node 'exclGroup', Template::ExclGroup
1666
+ xfa_node 'field', Template::Field
1667
+ xfa_node 'proto', Template::Proto
1668
+ xfa_node 'setProperty', Template::SetProperty
1669
+ xfa_node 'subform', Template::Subform
1670
+ xfa_node 'subformSet', Template::SubformSet
1671
+
1672
+ def initialize
1673
+ super('subform')
1674
+ end
1675
+ end
1676
+
1677
+ xfa_attribute 'baseProfile'
1678
+ xfa_node 'extras', Template::Extras, 0..1
1679
+
1680
+ xfa_node 'subform', Template::Subform
1681
+
1682
+ def initialize
1683
+ super("template")
1684
+
1685
+ add_attribute 'xmlns:xfa', 'http://www.xfa.org/schema/xfa-template/3.0/'
1686
+ end
1687
+ end
1688
+
1689
+ end
1690
+ end
1691
+ end