nora_mark 0.2beta3 → 0.2beta4

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 (105) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +5 -0
  3. data/Gemfile +2 -0
  4. data/README.md +17 -12
  5. data/example/nora-simple.css +52 -0
  6. data/example/noramark-reference-ja.nora +246 -0
  7. data/example/noramark-reference-ja_00001.xhtml +187 -0
  8. data/lib/nora_mark/html/{abstract_item_writer.rb → abstract_node_writer.rb} +3 -3
  9. data/lib/nora_mark/html/context.rb +3 -21
  10. data/lib/nora_mark/html/frontmatter_writer.rb +33 -0
  11. data/lib/nora_mark/html/generator.rb +122 -100
  12. data/lib/nora_mark/html/pages.rb +3 -9
  13. data/lib/nora_mark/html/paragraph_writer.rb +27 -23
  14. data/lib/nora_mark/html/tag_writer.rb +33 -34
  15. data/lib/nora_mark/html/writer_selector.rb +3 -3
  16. data/lib/nora_mark/node.rb +31 -0
  17. data/lib/nora_mark/parser.kpeg +133 -79
  18. data/lib/nora_mark/parser.kpeg.rb +1822 -1526
  19. data/lib/nora_mark/parser.rb +4 -23
  20. data/lib/nora_mark/version.rb +1 -1
  21. data/lib/nora_mark.rb +7 -2
  22. data/nora_mark.gemspec +1 -0
  23. data/spec/epub30-schemas/epub-nav-30.nvdl +16 -0
  24. data/spec/epub30-schemas/epub-nav-30.rnc +10 -0
  25. data/spec/epub30-schemas/epub-nav-30.sch +72 -0
  26. data/spec/epub30-schemas/epub-svg-30.nvdl +15 -0
  27. data/spec/epub30-schemas/epub-svg-30.rnc +15 -0
  28. data/spec/epub30-schemas/epub-svg-30.sch +10 -0
  29. data/spec/epub30-schemas/epub-xhtml-30.nvdl +15 -0
  30. data/spec/epub30-schemas/epub-xhtml-30.rnc +37 -0
  31. data/spec/epub30-schemas/epub-xhtml-30.sch +377 -0
  32. data/spec/epub30-schemas/epub30-catalog.xml +335 -0
  33. data/spec/epub30-schemas/media-overlay-30.nvdl +14 -0
  34. data/spec/epub30-schemas/media-overlay-30.rnc +46 -0
  35. data/spec/epub30-schemas/media-overlay-30.sch +9 -0
  36. data/spec/epub30-schemas/mod/datatypes.rnc +143 -0
  37. data/spec/epub30-schemas/mod/epub-mathml3-30.rnc +74 -0
  38. data/spec/epub30-schemas/mod/epub-prefix-attr.rnc +8 -0
  39. data/spec/epub30-schemas/mod/epub-ssml-attrs.rnc +11 -0
  40. data/spec/epub30-schemas/mod/epub-svg11-30.rnc +12 -0
  41. data/spec/epub30-schemas/mod/epub-svg11-re.sch +7 -0
  42. data/spec/epub30-schemas/mod/epub-switch.rnc +32 -0
  43. data/spec/epub30-schemas/mod/epub-trigger.rnc +17 -0
  44. data/spec/epub30-schemas/mod/epub-type-attr.rnc +7 -0
  45. data/spec/epub30-schemas/mod/epub-xhtml-mathml3-30.rnc +5 -0
  46. data/spec/epub30-schemas/mod/epub-xhtml-svg11-30.rnc +6 -0
  47. data/spec/epub30-schemas/mod/html5/LICENSE +23 -0
  48. data/spec/epub30-schemas/mod/html5/README +21 -0
  49. data/spec/epub30-schemas/mod/html5/html5-aria-30.rnc +105 -0
  50. data/spec/epub30-schemas/mod/html5/html5-attrib-30.rnc +44 -0
  51. data/spec/epub30-schemas/mod/html5/html5-document-30.rnc +44 -0
  52. data/spec/epub30-schemas/mod/html5/html5-edit-30.rnc +24 -0
  53. data/spec/epub30-schemas/mod/html5/html5-embed-30.rnc +155 -0
  54. data/spec/epub30-schemas/mod/html5/html5-forms-30.rnc +431 -0
  55. data/spec/epub30-schemas/mod/html5/html5-grouping-30.rnc +115 -0
  56. data/spec/epub30-schemas/mod/html5/html5-interactive-30.rnc +86 -0
  57. data/spec/epub30-schemas/mod/html5/html5-models-30.rnc +10 -0
  58. data/spec/epub30-schemas/mod/html5/html5-phrasing-30.rnc +134 -0
  59. data/spec/epub30-schemas/mod/html5/html5-script-30.rnc +164 -0
  60. data/spec/epub30-schemas/mod/html5/html5-sections-30.rnc +58 -0
  61. data/spec/epub30-schemas/mod/html5/html5-style-30.rnc +18 -0
  62. data/spec/epub30-schemas/mod/id-unique.sch +10 -0
  63. data/spec/epub30-schemas/mod/mathml/LICENSE +3 -0
  64. data/spec/epub30-schemas/mod/mathml/mathml3-common.rnc +84 -0
  65. data/spec/epub30-schemas/mod/mathml/mathml3-content.rnc +373 -0
  66. data/spec/epub30-schemas/mod/mathml/mathml3-presentation.rnc +536 -0
  67. data/spec/epub30-schemas/mod/mathml/mathml3-strict-content.rnc +60 -0
  68. data/spec/epub30-schemas/mod/security/LICENSE +4 -0
  69. data/spec/epub30-schemas/mod/security/Lenient-Encryption11-ghc.rnc +41 -0
  70. data/spec/epub30-schemas/mod/security/Lenient-Encryption11.rnc +39 -0
  71. data/spec/epub30-schemas/mod/security/Lenient-Signature-exclusiveC14N.rnc +25 -0
  72. data/spec/epub30-schemas/mod/security/Lenient-Signature11-properties-exclusiveC14N.rnc +32 -0
  73. data/spec/epub30-schemas/mod/security/Lenient-Signature11-properties.rnc +30 -0
  74. data/spec/epub30-schemas/mod/security/Lenient-Signature11.rnc +28 -0
  75. data/spec/epub30-schemas/mod/security/Strict-Encryption.rnc +27 -0
  76. data/spec/epub30-schemas/mod/security/Strict-Signature.rnc +22 -0
  77. data/spec/epub30-schemas/mod/security/exc-c14n.rnc +39 -0
  78. data/spec/epub30-schemas/mod/security/security_any.rnc +15 -0
  79. data/spec/epub30-schemas/mod/security/xenc-allowAnyForeign.rnc +25 -0
  80. data/spec/epub30-schemas/mod/security/xenc-schema-11.rnc +96 -0
  81. data/spec/epub30-schemas/mod/security/xenc-schema.rnc +145 -0
  82. data/spec/epub30-schemas/mod/security/xenc11-allowAnyForeign.rnc +19 -0
  83. data/spec/epub30-schemas/mod/security/xmldsig-allowAnyForeign.rnc +47 -0
  84. data/spec/epub30-schemas/mod/security/xmldsig-core-schema.rnc +276 -0
  85. data/spec/epub30-schemas/mod/security/xmldsig-filter2.rnc +16 -0
  86. data/spec/epub30-schemas/mod/security/xmldsig-properties-schema.rnc +34 -0
  87. data/spec/epub30-schemas/mod/security/xmldsig11-allowAnyForeign.rnc +18 -0
  88. data/spec/epub30-schemas/mod/security/xmldsig11-schema.rnc +133 -0
  89. data/spec/epub30-schemas/mod/security/xmlsec-ghc-allowAnyForeign.rnc +21 -0
  90. data/spec/epub30-schemas/mod/security/xmlsec-ghc-schema.rnc +42 -0
  91. data/spec/epub30-schemas/mod/svg11/LICENSE +1 -0
  92. data/spec/epub30-schemas/mod/svg11/README.txt +8 -0
  93. data/spec/epub30-schemas/mod/svg11/svg11-flat.rnc +3999 -0
  94. data/spec/epub30-schemas/ocf-container-30.rnc +16 -0
  95. data/spec/epub30-schemas/ocf-encryption-30.rnc +12 -0
  96. data/spec/epub30-schemas/ocf-signatures-30.rnc +8 -0
  97. data/spec/epub30-schemas/package-30.nvdl +14 -0
  98. data/spec/epub30-schemas/package-30.rnc +91 -0
  99. data/spec/epub30-schemas/package-30.sch +137 -0
  100. data/spec/jing-20091111/bin/jing.jar +0 -0
  101. data/spec/nora_mark_spec.rb +229 -68
  102. data/spec/spec_helper.rb +16 -0
  103. metadata +179 -6
  104. data/lib/nora_mark/html/header_writer.rb +0 -35
  105. data/spec/fixture/test_src_ja.nora +0 -50
@@ -0,0 +1,3999 @@
1
+ # .......................................................................
2
+
3
+ # SVG 1.1 DTD ...........................................................
4
+
5
+ # file: svg11.dtd
6
+
7
+ # SVG 1.1 DTD
8
+ #
9
+ # This is SVG, a language for describing two-dimensional graphics in XML.
10
+ #
11
+ # The Scalable Vector Graphics (SVG)
12
+ # Copyright 2001, 2002 World Wide Web Consortium
13
+ # (Massachusetts Institute of Technology, Institut National de
14
+ # Recherche en Informatique et en Automatique, Keio University).
15
+ # All Rights Reserved.
16
+ #
17
+ # Permission to use, copy, modify and distribute the SVG DTD and its
18
+ # accompanying documentation for any purpose and without fee is hereby
19
+ # granted in perpetuity, provided that the above copyright notice and
20
+ # this paragraph appear in all copies. The copyright holders make no
21
+ # representation about the suitability of the DTD for any purpose.
22
+ #
23
+ # It is provided "as is" without expressed or implied warranty.
24
+ #
25
+ # Author: Jun Fujisawa <fujisawa.jun@canon.co.jp>
26
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
27
+ #
28
+
29
+ # This is the driver file for version 1.1 of the SVG DTD.
30
+ #
31
+ # This DTD is identified by the PUBLIC and SYSTEM identifiers:
32
+ #
33
+ # PUBLIC "-//W3C//DTD SVG 1.1//EN"
34
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"
35
+
36
+ # Use this URI to identify the default namespace:
37
+ #
38
+ # "http://www.w3.org/2000/svg"
39
+ #
40
+ # See the Qualified Names module for information
41
+ # on the use of namespace prefixes in the DTD.
42
+
43
+ # reserved for future use with document profiles
44
+
45
+ # :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
46
+
47
+ # Pre-Framework Redeclaration Placeholder .....................
48
+
49
+ # Document Model Module .......................................
50
+
51
+ # Attribute Collection Module .................................
52
+
53
+ # Modular Framework Module ....................................
54
+
55
+ # .......................................................................
56
+
57
+ # SVG 1.1 Modular Framework Module ......................................
58
+
59
+ # file: svg-framework.mod
60
+ #
61
+ # This is SVG, a language for describing two-dimensional graphics in XML.
62
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
63
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
64
+ #
65
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
66
+ #
67
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Modular Framework//EN"
68
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-framework.mod"
69
+ #
70
+ # .......................................................................
71
+
72
+ # Modular Framework
73
+ #
74
+ # This module instantiates the modules needed to support the SVG
75
+ # modularization model, including:
76
+ #
77
+ # + Datatypes
78
+ # + Qualified Name
79
+ # + Document Model
80
+ # + Attribute Collection
81
+
82
+ # .......................................................................
83
+
84
+ # SVG 1.1 Datatypes Module ..............................................
85
+
86
+ # file: svg-datatypes.mod
87
+ #
88
+ # This is SVG, a language for describing two-dimensional graphics in XML.
89
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
90
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
91
+ #
92
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
93
+ #
94
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Datatypes//EN"
95
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-datatypes.mod"
96
+ #
97
+ # .......................................................................
98
+
99
+ # Datatypes
100
+ #
101
+ # This module declares common data types for properties and attributes.
102
+
103
+ # feature specification
104
+
105
+ default namespace = "http://www.w3.org/2000/svg"
106
+ namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
107
+ namespace xlink = "http://www.w3.org/1999/xlink"
108
+
109
+ Boolean.datatype = "false" | "true"
110
+ # 'clip-rule' or 'fill-rule' property/attribute value
111
+ ClipFillRule.datatype = "nonzero" | "evenodd" | "inherit"
112
+ # media type, as per [RFC2045]
113
+ ContentType.datatype = string
114
+ # a <coordinate>
115
+ Coordinate.datatype = string
116
+ # a list of <coordinate>s
117
+ Coordinates.datatype = string
118
+ # a <color> value
119
+ Color.datatype = string
120
+ # a <integer>
121
+ Integer.datatype = string
122
+ # a language code, as per [BCP47]
123
+ LanguageCode.datatype = xsd:NMTOKEN
124
+ # comma-separated list of language codes, as per [BCP47]
125
+ LanguageCodes.datatype = string
126
+ # a <length>
127
+ Length.datatype = string
128
+ # a list of <length>s
129
+ Lengths.datatype = string
130
+ # a <number>
131
+ Number.datatype = string
132
+ # a list of <number>s
133
+ Numbers.datatype = string
134
+ # opacity value (e.g., <number>)
135
+ OpacityValue.datatype = string
136
+ # a path data specification
137
+ PathData.datatype = string
138
+ # 'preserveAspectRatio' attribute specification
139
+ PreserveAspectRatioSpec.datatype = string
140
+ # script expression
141
+ Script.datatype = string
142
+ # An SVG color value (RGB plus optional ICC)
143
+ SVGColor.datatype = string
144
+ # arbitrary text string
145
+ Text.datatype = string
146
+ # list of transforms
147
+ TransformList.datatype = string
148
+ # a Uniform Resource Identifier, see [URI]
149
+ URI.datatype = string
150
+ # 'viewBox' attribute specification
151
+ ViewBoxSpec.datatype = string
152
+ # end of svg-datatypes.mod
153
+
154
+ # .......................................................................
155
+
156
+ # SVG 1.1 Qualified Name Module .........................................
157
+
158
+ # file: svg-qname.mod
159
+ #
160
+ # This is SVG, a language for describing two-dimensional graphics in XML.
161
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
162
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
163
+ #
164
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
165
+ #
166
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Qualified Name//EN"
167
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-qname.mod"
168
+ #
169
+ # .......................................................................
170
+
171
+ # Qualified Name
172
+ #
173
+ # This module is contained in two parts, labeled Section 'A' and 'B':
174
+ #
175
+ # Section A declares parameter entities to support namespace-
176
+ # qualified names, namespace declarations, and name prefixing
177
+ # for SVG and extensions.
178
+ #
179
+ # Section B declares parameter entities used to provide
180
+ # namespace-qualified names for all SVG element types:
181
+
182
+ # Section A: SVG XML Namespace Framework ::::::::::::::::::::::
183
+
184
+ # 1. Declare a %SVG.prefixed; conditional section keyword, used
185
+ # to activate namespace prefixing. The default value should
186
+ # inherit '%NS.prefixed;' from the DTD driver, so that unless
187
+ # overridden, the default behaviour follows the overall DTD
188
+ # prefixing scheme.
189
+
190
+ # 2. Declare a parameter entity (eg., %SVG.xmlns;) containing
191
+ # the URI reference used to identify the SVG namespace:
192
+
193
+ # 3. Declare parameter entities (eg., %SVG.prefix;) containing
194
+ # the default namespace prefix string(s) to use when prefixing
195
+ # is enabled. This may be overridden in the DTD driver or the
196
+ # internal subset of an document instance. If no default prefix
197
+ # is desired, this may be declared as an empty string.
198
+
199
+ # 4. Declare parameter entities (eg., %SVG.pfx;) containing the
200
+ # colonized prefix(es) (eg., '%SVG.prefix;:') used when
201
+ # prefixing is active, an empty string when it is not.
202
+
203
+ # 5. The parameter entity %SVG.xmlns.extra.attrib; may be
204
+ # redeclared to contain any non-SVG namespace declaration
205
+ # attributes for namespaces embedded in SVG. The default
206
+ # is an empty string.
207
+
208
+ # Declare a parameter entity XLINK.xmlns.attrib containing
209
+ # the XML Namespace declarations for XLink.
210
+ XLINK.xmlns.attrib = empty
211
+ # Declare a parameter entity %NS.decl.attrib; containing
212
+ # all XML Namespace declarations used in the DTD, plus the
213
+ # xmlns declaration for SVG, its form dependent on whether
214
+ # prefixing is active.
215
+
216
+ # Declare a parameter entity %SVG.xmlns.attrib; containing
217
+ # all XML namespace declaration attributes used by SVG,
218
+ # including a default xmlns attribute when prefixing is
219
+ # inactive.
220
+ SVG.xmlns.attrib = XLINK.xmlns.attrib
221
+ # Section B: SVG Qualified Names ::::::::::::::::::::::::::::::
222
+
223
+ # 6. This section declares parameter entities used to provide
224
+ # namespace-qualified names for all SVG element types.
225
+
226
+ # module: svg-structure.mod .........................
227
+
228
+ # module: svg-conditional.mod .......................
229
+
230
+ # module: svg-image.mod .............................
231
+
232
+ # module: svg-style.mod .............................
233
+
234
+ # module: svg-shape.mod .............................
235
+
236
+ # module: svg-text.mod ..............................
237
+
238
+ # module: svg-marker.mod ............................
239
+
240
+ # module: svg-profile.mod ...........................
241
+
242
+ # module: svg-gradient.mod ..........................
243
+
244
+ # module: svg-pattern.mod ...........................
245
+
246
+ # module: svg-clip.mod ..............................
247
+
248
+ # module: svg-mask.mod ..............................
249
+
250
+ # module: svg-filter.mod ............................
251
+
252
+ # module: svg-cursor.mod ............................
253
+
254
+ # module: svg-hyperlink.mod .........................
255
+
256
+ # module: svg-view.mod ..............................
257
+
258
+ # module: svg-script.mod ............................
259
+
260
+ # module: svg-animation.mod .........................
261
+
262
+ # module: svg-font.mod ..............................
263
+
264
+ # module: svg-extensibility.mod .....................
265
+
266
+ # end of svg-qname.mod
267
+
268
+ # instantiate the Document Model declared in the DTD driver
269
+
270
+ # .......................................................................
271
+
272
+ # SVG 1.1 Document Model Module .........................................
273
+
274
+ # file: svg11-model.mod
275
+ #
276
+ # This is SVG, a language for describing two-dimensional graphics in XML.
277
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
278
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
279
+ #
280
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
281
+ #
282
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Document Model//EN"
283
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-model.mod"
284
+ #
285
+ # .......................................................................
286
+
287
+ # SVG 1.1 Document Model
288
+ #
289
+ # This module describes the groupings of elements that make up
290
+ # common content models for SVG elements.
291
+
292
+ # module: svg-structure.mod .........................
293
+ SVG.Description.extra.class = notAllowed
294
+ SVG.Description.class =
295
+ desc | title | metadata | SVG.Description.extra.class
296
+ SVG.Use.extra.class = notAllowed
297
+ SVG.Use.class = use | SVG.Use.extra.class
298
+ SVG.Structure.extra.class = notAllowed
299
+ SVG.Structure.class =
300
+ svg | g | defs | symbol | SVG.Use.class | SVG.Structure.extra.class
301
+ # module: svg-conditional.mod .......................
302
+ SVG.Conditional.extra.class = notAllowed
303
+ SVG.Conditional.class = switch | SVG.Conditional.extra.class
304
+ # module: svg-image.mod .............................
305
+ SVG.Image.extra.class = notAllowed
306
+ SVG.Image.class = image | SVG.Image.extra.class
307
+ # module: svg-style.mod .............................
308
+ SVG.Style.extra.class = notAllowed
309
+ SVG.Style.class = style | SVG.Style.extra.class
310
+ # module: svg-shape.mod .............................
311
+ SVG.Shape.extra.class = notAllowed
312
+ SVG.Shape.class =
313
+ path
314
+ | rect
315
+ | circle
316
+ | line
317
+ | ellipse
318
+ | polyline
319
+ | polygon
320
+ | SVG.Shape.extra.class
321
+ # module: svg-text.mod ..............................
322
+ SVG.Text.extra.class = notAllowed
323
+ SVG.Text.class = \text | altGlyphDef | SVG.Text.extra.class
324
+ SVG.TextContent.extra.class = notAllowed
325
+ SVG.TextContent.class =
326
+ tspan | tref | textPath | altGlyph | SVG.TextContent.extra.class
327
+ # module: svg-marker.mod ............................
328
+ SVG.Marker.extra.class = notAllowed
329
+ SVG.Marker.class = marker | SVG.Marker.extra.class
330
+ # module: svg-profile.mod ...........................
331
+ SVG.ColorProfile.extra.class = notAllowed
332
+ SVG.ColorProfile.class = color-profile | SVG.ColorProfile.extra.class
333
+ # module: svg-gradient.mod ..........................
334
+ SVG.Gradient.extra.class = notAllowed
335
+ SVG.Gradient.class =
336
+ linearGradient | radialGradient | SVG.Gradient.extra.class
337
+ # module: svg-pattern.mod ...........................
338
+ SVG.Pattern.extra.class = notAllowed
339
+ SVG.Pattern.class = pattern | SVG.Pattern.extra.class
340
+ # module: svg-clip.mod ..............................
341
+ SVG.Clip.extra.class = notAllowed
342
+ SVG.Clip.class = clipPath | SVG.Clip.extra.class
343
+ # module: svg-mask.mod ..............................
344
+ SVG.Mask.extra.class = notAllowed
345
+ SVG.Mask.class = mask | SVG.Mask.extra.class
346
+ # module: svg-filter.mod ............................
347
+ SVG.Filter.extra.class = notAllowed
348
+ SVG.Filter.class = filter | SVG.Filter.extra.class
349
+ SVG.FilterPrimitive.extra.class = notAllowed
350
+ SVG.FilterPrimitive.class =
351
+ feBlend
352
+ | feColorMatrix
353
+ | feComponentTransfer
354
+ | feComposite
355
+ | feConvolveMatrix
356
+ | feDiffuseLighting
357
+ | feDisplacementMap
358
+ | feFlood
359
+ | feGaussianBlur
360
+ | feImage
361
+ | feMerge
362
+ | feMorphology
363
+ | feOffset
364
+ | feSpecularLighting
365
+ | feTile
366
+ | feTurbulence
367
+ | SVG.FilterPrimitive.extra.class
368
+ # module: svg-cursor.mod ............................
369
+ SVG.Cursor.extra.class = notAllowed
370
+ SVG.Cursor.class = cursor | SVG.Cursor.extra.class
371
+ # module: svg-hyperlink.mod .........................
372
+ SVG.Hyperlink.extra.class = notAllowed
373
+ SVG.Hyperlink.class = a | SVG.Hyperlink.extra.class
374
+ # module: svg-view.mod ..............................
375
+ SVG.View.extra.class = notAllowed
376
+ SVG.View.class = view | SVG.View.extra.class
377
+ # module: svg-script.mod ............................
378
+ SVG.Script.extra.class = notAllowed
379
+ SVG.Script.class = script | SVG.Script.extra.class
380
+ # module: svg-animation.mod .........................
381
+ SVG.Animation.extra.class = notAllowed
382
+ SVG.Animation.class =
383
+ animate
384
+ | set
385
+ | animateMotion
386
+ | animateColor
387
+ | animateTransform
388
+ | SVG.Animation.extra.class
389
+ # module: svg-font.mod ..............................
390
+ SVG.Font.extra.class = notAllowed
391
+ SVG.Font.class = font | font-face | SVG.Font.extra.class
392
+ # module: svg-extensibility.mod .....................
393
+ SVG.Extensibility.extra.class = notAllowed
394
+ SVG.Extensibility.class = foreignObject | SVG.Extensibility.extra.class
395
+ # end of svg11-model.mod
396
+
397
+ # instantiate the Attribute Collection declared in the DTD driver
398
+
399
+ # .......................................................................
400
+
401
+ # SVG 1.1 Attribute Collection Module ...................................
402
+
403
+ # file: svg11-attribs.mod
404
+ #
405
+ # This is SVG, a language for describing two-dimensional graphics in XML.
406
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
407
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
408
+ #
409
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
410
+ #
411
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Attribute Collection//EN"
412
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-attribs.mod"
413
+ #
414
+ # .......................................................................
415
+
416
+ # SVG 1.1 Attribute Collection
417
+ #
418
+ # This module defines the set of common attributes that can be present
419
+ # on many SVG elements.
420
+
421
+ # module: svg-conditional.mod .......................
422
+ ExtensionList.datatype = string
423
+ FeatureList.datatype = string
424
+ SVG.Conditional.extra.attrib = empty
425
+ SVG.Conditional.attrib =
426
+ attribute requiredFeatures { FeatureList.datatype }?,
427
+ attribute requiredExtensions { ExtensionList.datatype }?,
428
+ attribute systemLanguage { LanguageCodes.datatype }?,
429
+ SVG.Conditional.extra.attrib
430
+ # module: svg-style.mod .............................
431
+ ClassList.datatype = string
432
+ StyleSheet.datatype = string
433
+ SVG.Style.extra.attrib = empty
434
+ SVG.Style.attrib =
435
+ attribute style { StyleSheet.datatype }?,
436
+ attribute class { ClassList.datatype }?,
437
+ SVG.Style.extra.attrib
438
+ # module: svg-text.mod ..............................
439
+ BaselineShiftValue.datatype = string
440
+ FontFamilyValue.datatype = string
441
+ FontSizeValue.datatype = string
442
+ FontSizeAdjustValue.datatype = string
443
+ GlyphOrientationHorizontalValue.datatype = string
444
+ GlyphOrientationVerticalValue.datatype = string
445
+ KerningValue.datatype = string
446
+ SpacingValue.datatype = string
447
+ TextDecorationValue.datatype = string
448
+ SVG.Text.extra.attrib = empty
449
+ SVG.Text.attrib =
450
+ attribute writing-mode {
451
+ "lr-tb" | "rl-tb" | "tb-rl" | "lr" | "rl" | "tb" | "inherit"
452
+ }?,
453
+ SVG.Text.extra.attrib
454
+ SVG.TextContent.extra.attrib = empty
455
+ SVG.TextContent.attrib =
456
+ attribute alignment-baseline {
457
+ "auto"
458
+ | "baseline"
459
+ | "before-edge"
460
+ | "text-before-edge"
461
+ | "middle"
462
+ | "central"
463
+ | "after-edge"
464
+ | "text-after-edge"
465
+ | "ideographic"
466
+ | "alphabetic"
467
+ | "hanging"
468
+ | "mathematical"
469
+ | "inherit"
470
+ }?,
471
+ attribute baseline-shift { BaselineShiftValue.datatype }?,
472
+ attribute direction { "ltr" | "rtl" | "inherit" }?,
473
+ attribute dominant-baseline {
474
+ "auto"
475
+ | "use-script"
476
+ | "no-change"
477
+ | "reset-size"
478
+ | "ideographic"
479
+ | "alphabetic"
480
+ | "hanging"
481
+ | "mathematical"
482
+ | "central"
483
+ | "middle"
484
+ | "text-after-edge"
485
+ | "text-before-edge"
486
+ | "inherit"
487
+ }?,
488
+ attribute glyph-orientation-horizontal {
489
+ GlyphOrientationHorizontalValue.datatype
490
+ }?,
491
+ attribute glyph-orientation-vertical {
492
+ GlyphOrientationVerticalValue.datatype
493
+ }?,
494
+ attribute kerning { KerningValue.datatype }?,
495
+ attribute letter-spacing { SpacingValue.datatype }?,
496
+ attribute text-anchor { "start" | "middle" | "end" | "inherit" }?,
497
+ attribute text-decoration { TextDecorationValue.datatype }?,
498
+ attribute unicode-bidi {
499
+ "normal" | "embed" | "bidi-override" | "inherit"
500
+ }?,
501
+ attribute word-spacing { SpacingValue.datatype }?,
502
+ SVG.TextContent.extra.attrib
503
+ SVG.Font.extra.attrib = empty
504
+ SVG.Font.attrib =
505
+ attribute font-family { FontFamilyValue.datatype }?,
506
+ attribute font-size { FontSizeValue.datatype }?,
507
+ attribute font-size-adjust { FontSizeAdjustValue.datatype }?,
508
+ attribute font-stretch {
509
+ "normal"
510
+ | "wider"
511
+ | "narrower"
512
+ | "ultra-condensed"
513
+ | "extra-condensed"
514
+ | "condensed"
515
+ | "semi-condensed"
516
+ | "semi-expanded"
517
+ | "expanded"
518
+ | "extra-expanded"
519
+ | "ultra-expanded"
520
+ | "inherit"
521
+ }?,
522
+ attribute font-style { "normal" | "italic" | "oblique" | "inherit" }?,
523
+ attribute font-variant { "normal" | "small-caps" | "inherit" }?,
524
+ attribute font-weight {
525
+ "normal"
526
+ | "bold"
527
+ | "bolder"
528
+ | "lighter"
529
+ | "100"
530
+ | "200"
531
+ | "300"
532
+ | "400"
533
+ | "500"
534
+ | "600"
535
+ | "700"
536
+ | "800"
537
+ | "900"
538
+ | "inherit"
539
+ }?,
540
+ SVG.Font.extra.attrib
541
+ # module: svg-marker.mod ............................
542
+ MarkerValue.datatype = string
543
+ SVG.Marker.extra.attrib = empty
544
+ SVG.Marker.attrib =
545
+ attribute marker-start { MarkerValue.datatype }?,
546
+ attribute marker-mid { MarkerValue.datatype }?,
547
+ attribute marker-end { MarkerValue.datatype }?,
548
+ SVG.Marker.extra.attrib
549
+ # module: svg-profile.mod ...........................
550
+ SVG.ColorProfile.extra.attrib = empty
551
+ SVG.ColorProfile.attrib =
552
+ attribute color-profile { text }?,
553
+ SVG.ColorProfile.extra.attrib
554
+ # module: svg-gradient.mod ..........................
555
+ NumberOrPercentage.datatype = string
556
+ SVG.Gradient.extra.attrib = empty
557
+ SVG.Gradient.attrib =
558
+ attribute stop-color { SVGColor.datatype }?,
559
+ attribute stop-opacity { OpacityValue.datatype }?,
560
+ SVG.Gradient.extra.attrib
561
+ # module: svg-clip.mod ..............................
562
+ ClipPathValue.datatype = string
563
+ SVG.Clip.extra.attrib = empty
564
+ SVG.Clip.attrib =
565
+ attribute clip-path { ClipPathValue.datatype }?,
566
+ attribute clip-rule { ClipFillRule.datatype }?,
567
+ SVG.Clip.extra.attrib
568
+ # module: svg-mask.mod ..............................
569
+ MaskValue.datatype = string
570
+ SVG.Mask.extra.attrib = empty
571
+ SVG.Mask.attrib =
572
+ attribute mask { MaskValue.datatype }?,
573
+ SVG.Mask.extra.attrib
574
+ # module: svg-filter.mod ............................
575
+ FilterValue.datatype = string
576
+ NumberOptionalNumber.datatype = string
577
+ SVG.Filter.extra.attrib = empty
578
+ SVG.Filter.attrib =
579
+ attribute filter { FilterValue.datatype }?,
580
+ SVG.Filter.extra.attrib
581
+ SVG.FilterColor.extra.attrib = empty
582
+ SVG.FilterColor.attrib =
583
+ attribute color-interpolation-filters {
584
+ "auto" | "sRGB" | "linearRGB" | "inherit"
585
+ }?,
586
+ SVG.FilterColor.extra.attrib
587
+ # module: svg-cursor.mod ............................
588
+ CursorValue.datatype = string
589
+ SVG.Cursor.extra.attrib = empty
590
+ SVG.Cursor.attrib =
591
+ attribute cursor { CursorValue.datatype }?,
592
+ SVG.Cursor.extra.attrib
593
+ # end of svg11-attribs.mod
594
+
595
+ # end of svg-framework.mod
596
+
597
+ # Post-Framework Redeclaration Placeholder ....................
598
+
599
+ # :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
600
+
601
+ # Core Attribute Module .......................................
602
+
603
+ # .......................................................................
604
+
605
+ # SVG 1.1 Core Attribute Module .........................................
606
+
607
+ # file: svg-core-attrib.mod
608
+ #
609
+ # This is SVG, a language for describing two-dimensional graphics in XML.
610
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
611
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
612
+ #
613
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
614
+ #
615
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Core Attribute//EN"
616
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-core-attrib.mod"
617
+ #
618
+ # .......................................................................
619
+
620
+ # Core Attribute
621
+ #
622
+ # id, xml:base, xml:lang, xml:space
623
+ #
624
+ # This module defines the core set of attributes that can be present on
625
+ # any element.
626
+ SVG.id.attrib = attribute id { xsd:ID }?
627
+ SVG.base.attrib = attribute xml:base { URI.datatype }?
628
+ SVG.lang.attrib = attribute xml:lang { LanguageCode.datatype }?
629
+ SVG.space.attrib = attribute xml:space { "default" | "preserve" }?
630
+ SVG.Core.extra.attrib = empty
631
+ SVG.Core.attrib =
632
+ SVG.id.attrib,
633
+ SVG.base.attrib,
634
+ SVG.lang.attrib,
635
+ SVG.space.attrib,
636
+ SVG.Core.extra.attrib
637
+ # end of svg-core-attrib.mod
638
+
639
+ # Container Attribute Module ..................................
640
+
641
+ # .......................................................................
642
+
643
+ # SVG 1.1 Container Attribute Module ....................................
644
+
645
+ # file: svg-container-attrib.mod
646
+ #
647
+ # This is SVG, a language for describing two-dimensional graphics in XML.
648
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
649
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
650
+ #
651
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
652
+ #
653
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Container Attribute//EN"
654
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-container-attrib.mod"
655
+ #
656
+ # .......................................................................
657
+
658
+ # Container Attribute
659
+ #
660
+ # enable-background
661
+ #
662
+ # This module defines the Container attribute set.
663
+
664
+ # 'enable-background' property/attribute value (e.g., 'new', 'accumulate')
665
+ EnableBackgroundValue.datatype = string
666
+ SVG.enable-background.attrib =
667
+ attribute enable-background { EnableBackgroundValue.datatype }?
668
+ SVG.Container.extra.attrib = empty
669
+ SVG.Container.attrib =
670
+ SVG.enable-background.attrib, SVG.Container.extra.attrib
671
+ # end of svg-container-attrib.mod
672
+
673
+ # Viewport Attribute Module ...................................
674
+
675
+ # .......................................................................
676
+
677
+ # SVG 1.1 Viewport Attribute Module .....................................
678
+
679
+ # file: svg-viewport-attrib.mod
680
+ #
681
+ # This is SVG, a language for describing two-dimensional graphics in XML.
682
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
683
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
684
+ #
685
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
686
+ #
687
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Viewport Attribute//EN"
688
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-viewport-attrib.mod"
689
+ #
690
+ # .......................................................................
691
+
692
+ # Viewport Attribute
693
+ #
694
+ # clip, overflow
695
+ #
696
+ # This module defines the Viewport attribute set.
697
+
698
+ # 'clip' property/attribute value (e.g., 'auto', rect(...))
699
+ ClipValue.datatype = string
700
+ SVG.clip.attrib = attribute clip { ClipValue.datatype }?
701
+ SVG.overflow.attrib =
702
+ attribute overflow {
703
+ "visible" | "hidden" | "scroll" | "auto" | "inherit"
704
+ }?
705
+ SVG.Viewport.extra.attrib = empty
706
+ SVG.Viewport.attrib =
707
+ SVG.clip.attrib, SVG.overflow.attrib, SVG.Viewport.extra.attrib
708
+ # end of svg-viewport-attrib.mod
709
+
710
+ # Paint Attribute Module ......................................
711
+
712
+ # .......................................................................
713
+
714
+ # SVG 1.1 Paint Attribute Module ........................................
715
+
716
+ # file: svg-paint-attrib.mod
717
+ #
718
+ # This is SVG, a language for describing two-dimensional graphics in XML.
719
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
720
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
721
+ #
722
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
723
+ #
724
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Paint Attribute//EN"
725
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-paint-attrib.mod"
726
+ #
727
+ # .......................................................................
728
+
729
+ # Paint Attribute
730
+ #
731
+ # fill, fill-rule, stroke, stroke-dasharray, stroke-dashoffset,
732
+ # stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-width, color,
733
+ # color-interpolation, color-rendering
734
+ #
735
+ # This module defines the Paint and Color attribute sets.
736
+
737
+ # a 'fill' or 'stroke' property/attribute value: <paint>
738
+ Paint.datatype = string
739
+ # 'stroke-dasharray' property/attribute value (e.g., 'none', list of <number>s)
740
+ StrokeDashArrayValue.datatype = string
741
+ # 'stroke-dashoffset' property/attribute value (e.g., 'none', <legnth>)
742
+ StrokeDashOffsetValue.datatype = string
743
+ # 'stroke-miterlimit' property/attribute value (e.g., <number>)
744
+ StrokeMiterLimitValue.datatype = string
745
+ # 'stroke-width' property/attribute value (e.g., <length>)
746
+ StrokeWidthValue.datatype = string
747
+ SVG.fill.attrib = attribute fill { Paint.datatype }?
748
+ SVG.fill-rule.attrib = attribute fill-rule { ClipFillRule.datatype }?
749
+ SVG.stroke.attrib = attribute stroke { Paint.datatype }?
750
+ SVG.stroke-dasharray.attrib =
751
+ attribute stroke-dasharray { StrokeDashArrayValue.datatype }?
752
+ SVG.stroke-dashoffset.attrib =
753
+ attribute stroke-dashoffset { StrokeDashOffsetValue.datatype }?
754
+ SVG.stroke-linecap.attrib =
755
+ attribute stroke-linecap { "butt" | "round" | "square" | "inherit" }?
756
+ SVG.stroke-linejoin.attrib =
757
+ attribute stroke-linejoin { "miter" | "round" | "bevel" | "inherit" }?
758
+ SVG.stroke-miterlimit.attrib =
759
+ attribute stroke-miterlimit { StrokeMiterLimitValue.datatype }?
760
+ SVG.stroke-width.attrib =
761
+ attribute stroke-width { StrokeWidthValue.datatype }?
762
+ SVG.Paint.extra.attrib = empty
763
+ SVG.Paint.attrib =
764
+ SVG.fill.attrib,
765
+ SVG.fill-rule.attrib,
766
+ SVG.stroke.attrib,
767
+ SVG.stroke-dasharray.attrib,
768
+ SVG.stroke-dashoffset.attrib,
769
+ SVG.stroke-linecap.attrib,
770
+ SVG.stroke-linejoin.attrib,
771
+ SVG.stroke-miterlimit.attrib,
772
+ SVG.stroke-width.attrib,
773
+ SVG.Paint.extra.attrib
774
+ SVG.color.attrib = attribute color { Color.datatype }?
775
+ SVG.color-interpolation.attrib =
776
+ attribute color-interpolation {
777
+ "auto" | "sRGB" | "linearRGB" | "inherit"
778
+ }?
779
+ SVG.color-rendering.attrib =
780
+ attribute color-rendering {
781
+ "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit"
782
+ }?
783
+ SVG.Color.extra.attrib = empty
784
+ SVG.Color.attrib =
785
+ SVG.color.attrib,
786
+ SVG.color-interpolation.attrib,
787
+ SVG.color-rendering.attrib,
788
+ SVG.Color.extra.attrib
789
+ # end of svg-paint-attrib.mod
790
+
791
+ # Paint Opacity Attribute Module ..............................
792
+
793
+ # .......................................................................
794
+
795
+ # SVG 1.1 Paint Opacity Attribute Module ................................
796
+
797
+ # file: svg-opacity-attrib.mod
798
+ #
799
+ # This is SVG, a language for describing two-dimensional graphics in XML.
800
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
801
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
802
+ #
803
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
804
+ #
805
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Paint Opacity Attribute//EN"
806
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-opacity-attrib.mod"
807
+ #
808
+ # .......................................................................
809
+
810
+ # Paint Opacity Attribute
811
+ #
812
+ # opacity, fill-opacity, stroke-opacity
813
+ #
814
+ # This module defines the Opacity attribute set.
815
+ SVG.opacity.attrib = attribute opacity { OpacityValue.datatype }?
816
+ SVG.fill-opacity.attrib =
817
+ attribute fill-opacity { OpacityValue.datatype }?
818
+ SVG.stroke-opacity.attrib =
819
+ attribute stroke-opacity { OpacityValue.datatype }?
820
+ SVG.Opacity.extra.attrib = empty
821
+ SVG.Opacity.attrib =
822
+ SVG.opacity.attrib,
823
+ SVG.fill-opacity.attrib,
824
+ SVG.stroke-opacity.attrib,
825
+ SVG.Opacity.extra.attrib
826
+ # end of svg-opacity-attrib.mod
827
+
828
+ # Graphics Attribute Module ...................................
829
+
830
+ # .......................................................................
831
+
832
+ # SVG 1.1 Graphics Attribute Module .....................................
833
+
834
+ # file: svg-graphics-attrib.mod
835
+ #
836
+ # This is SVG, a language for describing two-dimensional graphics in XML.
837
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
838
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
839
+ #
840
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
841
+ #
842
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Graphics Attribute//EN"
843
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-graphics-attrib.mod"
844
+ #
845
+ # .......................................................................
846
+
847
+ # Graphics Attribute
848
+ #
849
+ # display, image-rendering, pointer-events, shape-rendering,
850
+ # text-rendering, visibility
851
+ #
852
+ # This module defines the Graphics attribute set.
853
+ SVG.display.attrib =
854
+ attribute display {
855
+ "inline"
856
+ | "block"
857
+ | "list-item"
858
+ | "run-in"
859
+ | "compact"
860
+ | "marker"
861
+ | "table"
862
+ | "inline-table"
863
+ | "table-row-group"
864
+ | "table-header-group"
865
+ | "table-footer-group"
866
+ | "table-row"
867
+ | "table-column-group"
868
+ | "table-column"
869
+ | "table-cell"
870
+ | "table-caption"
871
+ | "none"
872
+ | "inherit"
873
+ }?
874
+ SVG.image-rendering.attrib =
875
+ attribute image-rendering {
876
+ "auto" | "optimizeSpeed" | "optimizeQuality" | "inherit"
877
+ }?
878
+ SVG.pointer-events.attrib =
879
+ attribute pointer-events {
880
+ "visiblePainted"
881
+ | "visibleFill"
882
+ | "visibleStroke"
883
+ | "visible"
884
+ | "painted"
885
+ | "fill"
886
+ | "stroke"
887
+ | "all"
888
+ | "none"
889
+ | "inherit"
890
+ }?
891
+ SVG.shape-rendering.attrib =
892
+ attribute shape-rendering {
893
+ "auto"
894
+ | "optimizeSpeed"
895
+ | "crispEdges"
896
+ | "geometricPrecision"
897
+ | "inherit"
898
+ }?
899
+ SVG.text-rendering.attrib =
900
+ attribute text-rendering {
901
+ "auto"
902
+ | "optimizeSpeed"
903
+ | "optimizeLegibility"
904
+ | "geometricPrecision"
905
+ | "inherit"
906
+ }?
907
+ SVG.visibility.attrib =
908
+ attribute visibility { "visible" | "hidden" | "inherit" }?
909
+ SVG.Graphics.extra.attrib = empty
910
+ SVG.Graphics.attrib =
911
+ SVG.display.attrib,
912
+ SVG.image-rendering.attrib,
913
+ SVG.pointer-events.attrib,
914
+ SVG.shape-rendering.attrib,
915
+ SVG.text-rendering.attrib,
916
+ SVG.visibility.attrib,
917
+ SVG.Graphics.extra.attrib
918
+ # end of svg-graphics-attrib.mod
919
+
920
+ # Document Events Attribute Module ............................
921
+
922
+ # .......................................................................
923
+
924
+ # SVG 1.1 Document Events Attribute Module ..............................
925
+
926
+ # file: svg-docevents-attrib.mod
927
+ #
928
+ # This is SVG, a language for describing two-dimensional graphics in XML.
929
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
930
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
931
+ #
932
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
933
+ #
934
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Document Events Attribute//EN"
935
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-docevents-attrib.mod"
936
+ #
937
+ # .......................................................................
938
+
939
+ # Document Events Attribute
940
+ #
941
+ # onunload, onabort, onerror, onresize, onscroll, onzoom
942
+ #
943
+ # This module defines the DocumentEvents attribute set.
944
+ SVG.onunload.attrib = attribute onunload { Script.datatype }?
945
+ SVG.onabort.attrib = attribute onabort { Script.datatype }?
946
+ SVG.onerror.attrib = attribute onerror { Script.datatype }?
947
+ SVG.onresize.attrib = attribute onresize { Script.datatype }?
948
+ SVG.onscroll.attrib = attribute onscroll { Script.datatype }?
949
+ SVG.onzoom.attrib = attribute onzoom { Script.datatype }?
950
+ SVG.DocumentEvents.extra.attrib = empty
951
+ SVG.DocumentEvents.attrib =
952
+ SVG.onunload.attrib,
953
+ SVG.onabort.attrib,
954
+ SVG.onerror.attrib,
955
+ SVG.onresize.attrib,
956
+ SVG.onscroll.attrib,
957
+ SVG.onzoom.attrib,
958
+ SVG.DocumentEvents.extra.attrib
959
+ # end of svg-docevents-attrib.mod
960
+
961
+ # Graphical Element Events Attribute Module ...................
962
+
963
+ # .......................................................................
964
+
965
+ # SVG 1.1 Graphical Element Events Attribute Module .....................
966
+
967
+ # file: svg-graphevents-attrib.mod
968
+ #
969
+ # This is SVG, a language for describing two-dimensional graphics in XML.
970
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
971
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
972
+ #
973
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
974
+ #
975
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Graphical Element Events Attribute//EN"
976
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-graphevents-attrib.mod"
977
+ #
978
+ # .......................................................................
979
+
980
+ # Graphical Element Events Attribute
981
+ #
982
+ # onfocusin, onfocusout, onactivate, onclick, onmousedown, onmouseup,
983
+ # onmouseover, onmousemove, onmouseout, onload
984
+ #
985
+ # This module defines the GraphicalEvents attribute set.
986
+ SVG.onfocusin.attrib = attribute onfocusin { Script.datatype }?
987
+ SVG.onfocusout.attrib = attribute onfocusout { Script.datatype }?
988
+ SVG.onactivate.attrib = attribute onactivate { Script.datatype }?
989
+ SVG.onclick.attrib = attribute onclick { Script.datatype }?
990
+ SVG.onmousedown.attrib = attribute onmousedown { Script.datatype }?
991
+ SVG.onmouseup.attrib = attribute onmouseup { Script.datatype }?
992
+ SVG.onmouseover.attrib = attribute onmouseover { Script.datatype }?
993
+ SVG.onmousemove.attrib = attribute onmousemove { Script.datatype }?
994
+ SVG.onmouseout.attrib = attribute onmouseout { Script.datatype }?
995
+ SVG.onload.attrib = attribute onload { Script.datatype }?
996
+ SVG.GraphicalEvents.extra.attrib = empty
997
+ SVG.GraphicalEvents.attrib =
998
+ SVG.onfocusin.attrib,
999
+ SVG.onfocusout.attrib,
1000
+ SVG.onactivate.attrib,
1001
+ SVG.onclick.attrib,
1002
+ SVG.onmousedown.attrib,
1003
+ SVG.onmouseup.attrib,
1004
+ SVG.onmouseover.attrib,
1005
+ SVG.onmousemove.attrib,
1006
+ SVG.onmouseout.attrib,
1007
+ SVG.onload.attrib,
1008
+ SVG.GraphicalEvents.extra.attrib
1009
+ # end of svg-graphevents-attrib.mod
1010
+
1011
+ # Animation Events Attribute Module ...........................
1012
+
1013
+ # .......................................................................
1014
+
1015
+ # SVG 1.1 Animation Events Attribute Module .............................
1016
+
1017
+ # file: svg-animevents-attrib.mod
1018
+ #
1019
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1020
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1021
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1022
+ #
1023
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1024
+ #
1025
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 Animation Events Attribute//EN"
1026
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-animevents-attrib.mod"
1027
+ #
1028
+ # .......................................................................
1029
+
1030
+ # Animation Events Attribute
1031
+ #
1032
+ # onbegin, onend, onrepeat, onload
1033
+ #
1034
+ # This module defines the AnimationEvents attribute set.
1035
+ SVG.onbegin.attrib = attribute onbegin { Script.datatype }?
1036
+ SVG.onend.attrib = attribute onend { Script.datatype }?
1037
+ SVG.onrepeat.attrib = attribute onrepeat { Script.datatype }?
1038
+ SVG.AnimationEvents.extra.attrib = empty
1039
+ SVG.AnimationEvents.attrib =
1040
+ SVG.onbegin.attrib,
1041
+ SVG.onend.attrib,
1042
+ SVG.onrepeat.attrib,
1043
+ SVG.onload.attrib,
1044
+ SVG.AnimationEvents.extra.attrib
1045
+ # end of svg-animevents-attrib.mod
1046
+
1047
+ # XLink Attribute Module ......................................
1048
+
1049
+ # .......................................................................
1050
+
1051
+ # SVG 1.1 XLink Attribute Module ........................................
1052
+
1053
+ # file: svg-xlink-attrib.mod
1054
+ #
1055
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1056
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1057
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1058
+ #
1059
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1060
+ #
1061
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 XLink Attribute//EN"
1062
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-xlink-attrib.mod"
1063
+ #
1064
+ # .......................................................................
1065
+
1066
+ # XLink Attribute
1067
+ #
1068
+ # type, href, role, arcrole, title, show, actuate
1069
+ #
1070
+ # This module defines the XLink, XLinkRequired, XLinkEmbed, and
1071
+ # XLinkReplace attribute set.
1072
+ SVG.XLink.extra.attrib = empty
1073
+ SVG.XLink.attrib =
1074
+ XLINK.xmlns.attrib,
1075
+ [ a:defaultValue = "simple" ] attribute xlink:type { "simple" }?,
1076
+ attribute xlink:href { URI.datatype }?,
1077
+ attribute xlink:role { URI.datatype }?,
1078
+ attribute xlink:arcrole { URI.datatype }?,
1079
+ attribute xlink:title { text }?,
1080
+ [ a:defaultValue = "other" ] attribute xlink:show { "other" }?,
1081
+ [ a:defaultValue = "onLoad" ] attribute xlink:actuate { "onLoad" }?,
1082
+ SVG.XLink.extra.attrib
1083
+ SVG.XLinkRequired.extra.attrib = empty
1084
+ SVG.XLinkRequired.attrib =
1085
+ XLINK.xmlns.attrib,
1086
+ [ a:defaultValue = "simple" ] attribute xlink:type { "simple" }?,
1087
+ attribute xlink:href { URI.datatype },
1088
+ attribute xlink:role { URI.datatype }?,
1089
+ attribute xlink:arcrole { URI.datatype }?,
1090
+ attribute xlink:title { text }?,
1091
+ [ a:defaultValue = "other" ] attribute xlink:show { "other" }?,
1092
+ [ a:defaultValue = "onLoad" ] attribute xlink:actuate { "onLoad" }?,
1093
+ SVG.XLinkRequired.extra.attrib
1094
+ SVG.XLinkEmbed.extra.attrib = empty
1095
+ SVG.XLinkEmbed.attrib =
1096
+ XLINK.xmlns.attrib,
1097
+ [ a:defaultValue = "simple" ] attribute xlink:type { "simple" }?,
1098
+ attribute xlink:href { URI.datatype },
1099
+ attribute xlink:role { URI.datatype }?,
1100
+ attribute xlink:arcrole { URI.datatype }?,
1101
+ attribute xlink:title { text }?,
1102
+ [ a:defaultValue = "embed" ] attribute xlink:show { "embed" }?,
1103
+ [ a:defaultValue = "onLoad" ] attribute xlink:actuate { "onLoad" }?,
1104
+ SVG.XLinkEmbed.extra.attrib
1105
+ SVG.XLinkReplace.extra.attrib = empty
1106
+ SVG.XLinkReplace.attrib =
1107
+ XLINK.xmlns.attrib,
1108
+ [ a:defaultValue = "simple" ] attribute xlink:type { "simple" }?,
1109
+ attribute xlink:href { URI.datatype },
1110
+ attribute xlink:role { URI.datatype }?,
1111
+ attribute xlink:arcrole { URI.datatype }?,
1112
+ attribute xlink:title { text }?,
1113
+ [ a:defaultValue = "replace" ]
1114
+ attribute xlink:show { "new" | "replace" }?,
1115
+ [ a:defaultValue = "onRequest" ]
1116
+ attribute xlink:actuate { "onRequest" }?,
1117
+ SVG.XLinkReplace.extra.attrib
1118
+ # end of svg-xlink-attrib.mod
1119
+
1120
+ # External Resources Attribute Module .........................
1121
+
1122
+ # .......................................................................
1123
+
1124
+ # SVG 1.1 External Resources Attribute Module ...........................
1125
+
1126
+ # file: svg-extresources-attrib.mod
1127
+ #
1128
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1129
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1130
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1131
+ #
1132
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1133
+ #
1134
+ # PUBLIC "-//W3C//ENTITIES SVG 1.1 External Resources Attribute//EN"
1135
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-extresources-attrib.mod"
1136
+ #
1137
+ # .......................................................................
1138
+
1139
+ # External Resources Attribute
1140
+ #
1141
+ # externalResourcesRequired
1142
+ #
1143
+ # This module defines the External attribute set.
1144
+ SVG.externalResourcesRequired.attrib =
1145
+ attribute externalResourcesRequired { Boolean.datatype }?
1146
+ SVG.External.extra.attrib = empty
1147
+ SVG.External.attrib =
1148
+ SVG.externalResourcesRequired.attrib, SVG.External.extra.attrib
1149
+ # end of svg-extresources-attrib.mod
1150
+
1151
+ # :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
1152
+
1153
+ # Structure Module ............................................
1154
+
1155
+ # .......................................................................
1156
+
1157
+ # SVG 1.1 Structure Module ..............................................
1158
+
1159
+ # file: svg-structure.mod
1160
+ #
1161
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1162
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1163
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1164
+ #
1165
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1166
+ #
1167
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Structure//EN"
1168
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-structure.mod"
1169
+ #
1170
+ # .......................................................................
1171
+
1172
+ # Structure
1173
+ #
1174
+ # svg, g, defs, desc, title, metadata, symbol, use
1175
+ #
1176
+ # This module declares the major structural elements and their attributes.
1177
+
1178
+ # Qualified Names (Default) .........................
1179
+
1180
+ # Attribute Collections (Default) ...................
1181
+
1182
+ # SVG.Description.class .............................
1183
+
1184
+ # SVG.Use.class .....................................
1185
+
1186
+ # SVG.Structure.class ...............................
1187
+
1188
+ # SVG.Presentation.attrib ...........................
1189
+ SVG.Presentation.extra.attrib = empty
1190
+ SVG.Presentation.attrib =
1191
+ SVG.Container.attrib,
1192
+ SVG.Viewport.attrib,
1193
+ SVG.Text.attrib,
1194
+ SVG.TextContent.attrib,
1195
+ SVG.Font.attrib,
1196
+ SVG.Paint.attrib,
1197
+ SVG.Color.attrib,
1198
+ SVG.Opacity.attrib,
1199
+ SVG.Graphics.attrib,
1200
+ SVG.Marker.attrib,
1201
+ SVG.ColorProfile.attrib,
1202
+ SVG.Gradient.attrib,
1203
+ SVG.Clip.attrib,
1204
+ SVG.Mask.attrib,
1205
+ SVG.Filter.attrib,
1206
+ SVG.FilterColor.attrib,
1207
+ SVG.Cursor.attrib,
1208
+ attribute flood-color { SVGColor.datatype }?,
1209
+ attribute flood-opacity { OpacityValue.datatype }?,
1210
+ attribute lighting-color { SVGColor.datatype }?,
1211
+ SVG.Presentation.extra.attrib
1212
+ # svg: SVG Document Element .........................
1213
+ SVG.svg.extra.content = notAllowed
1214
+ SVG.svg.content =
1215
+ (SVG.Description.class
1216
+ | SVG.Animation.class
1217
+ | SVG.Structure.class
1218
+ | SVG.Conditional.class
1219
+ | SVG.Image.class
1220
+ | SVG.Style.class
1221
+ | SVG.Shape.class
1222
+ | SVG.Text.class
1223
+ | SVG.Marker.class
1224
+ | SVG.ColorProfile.class
1225
+ | SVG.Gradient.class
1226
+ | SVG.Pattern.class
1227
+ | SVG.Clip.class
1228
+ | SVG.Mask.class
1229
+ | SVG.Filter.class
1230
+ | SVG.Cursor.class
1231
+ | SVG.Hyperlink.class
1232
+ | SVG.View.class
1233
+ | SVG.Script.class
1234
+ | SVG.Font.class
1235
+ | SVG.Extensibility.class
1236
+ | SVG.svg.extra.content)*
1237
+ svg =
1238
+ element svg {
1239
+ SVG.xmlns.attrib,
1240
+ SVG.Core.attrib,
1241
+ SVG.Conditional.attrib,
1242
+ SVG.Style.attrib,
1243
+ SVG.Presentation.attrib,
1244
+ SVG.DocumentEvents.attrib,
1245
+ SVG.GraphicalEvents.attrib,
1246
+ SVG.External.attrib,
1247
+ attribute x { Coordinate.datatype }?,
1248
+ attribute y { Coordinate.datatype }?,
1249
+ attribute width { Length.datatype }?,
1250
+ attribute height { Length.datatype }?,
1251
+ attribute viewBox { ViewBoxSpec.datatype }?,
1252
+ [ a:defaultValue = "xMidYMid meet" ]
1253
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
1254
+ [ a:defaultValue = "magnify" ]
1255
+ attribute zoomAndPan { "disable" | "magnify" }?,
1256
+ [ a:defaultValue = "1.1" ] attribute version { string "1.1" }?,
1257
+ attribute baseProfile { Text.datatype }?,
1258
+ [ a:defaultValue = "application/ecmascript" ]
1259
+ attribute contentScriptType { ContentType.datatype }?,
1260
+ [ a:defaultValue = "text/css" ]
1261
+ attribute contentStyleType { ContentType.datatype }?,
1262
+ SVG.svg.content
1263
+ }
1264
+ # end of SVG.svg.element
1265
+
1266
+ # end of SVG.svg.attlist
1267
+
1268
+ # g: Group Element ..................................
1269
+ SVG.g.extra.content = notAllowed
1270
+ SVG.g.content =
1271
+ (SVG.Description.class
1272
+ | SVG.Animation.class
1273
+ | SVG.Structure.class
1274
+ | SVG.Conditional.class
1275
+ | SVG.Image.class
1276
+ | SVG.Style.class
1277
+ | SVG.Shape.class
1278
+ | SVG.Text.class
1279
+ | SVG.Marker.class
1280
+ | SVG.ColorProfile.class
1281
+ | SVG.Gradient.class
1282
+ | SVG.Pattern.class
1283
+ | SVG.Clip.class
1284
+ | SVG.Mask.class
1285
+ | SVG.Filter.class
1286
+ | SVG.Cursor.class
1287
+ | SVG.Hyperlink.class
1288
+ | SVG.View.class
1289
+ | SVG.Script.class
1290
+ | SVG.Font.class
1291
+ | SVG.Extensibility.class
1292
+ | SVG.g.extra.content)*
1293
+ g =
1294
+ element g {
1295
+ SVG.Core.attrib,
1296
+ SVG.Conditional.attrib,
1297
+ SVG.Style.attrib,
1298
+ SVG.Presentation.attrib,
1299
+ SVG.GraphicalEvents.attrib,
1300
+ SVG.External.attrib,
1301
+ attribute transform { TransformList.datatype }?,
1302
+ SVG.g.content
1303
+ }
1304
+ # end of SVG.g.element
1305
+
1306
+ # end of SVG.g.attlist
1307
+
1308
+ # defs: Definisions Element .........................
1309
+ SVG.defs.extra.content = notAllowed
1310
+ SVG.defs.content =
1311
+ (SVG.Description.class
1312
+ | SVG.Animation.class
1313
+ | SVG.Structure.class
1314
+ | SVG.Conditional.class
1315
+ | SVG.Image.class
1316
+ | SVG.Style.class
1317
+ | SVG.Shape.class
1318
+ | SVG.Text.class
1319
+ | SVG.Marker.class
1320
+ | SVG.ColorProfile.class
1321
+ | SVG.Gradient.class
1322
+ | SVG.Pattern.class
1323
+ | SVG.Clip.class
1324
+ | SVG.Mask.class
1325
+ | SVG.Filter.class
1326
+ | SVG.Cursor.class
1327
+ | SVG.Hyperlink.class
1328
+ | SVG.View.class
1329
+ | SVG.Script.class
1330
+ | SVG.Font.class
1331
+ | SVG.Extensibility.class
1332
+ | SVG.defs.extra.content)*
1333
+ defs =
1334
+ element defs {
1335
+ SVG.Core.attrib,
1336
+ SVG.Conditional.attrib,
1337
+ SVG.Style.attrib,
1338
+ SVG.Presentation.attrib,
1339
+ SVG.GraphicalEvents.attrib,
1340
+ SVG.External.attrib,
1341
+ attribute transform { TransformList.datatype }?,
1342
+ SVG.defs.content
1343
+ }
1344
+ # end of SVG.defs.element
1345
+
1346
+ # end of SVG.defs.attlist
1347
+
1348
+ # desc: Description Element .........................
1349
+ SVG.desc.extra.content = notAllowed
1350
+ SVG.desc.content = (text | SVG.desc.extra.content)*
1351
+ desc =
1352
+ element desc { SVG.Core.attrib, SVG.Style.attrib, SVG.desc.content }
1353
+ # end of SVG.desc.element
1354
+
1355
+ # end of SVG.desc.attlist
1356
+
1357
+ # title: Title Element ..............................
1358
+ SVG.title.extra.content = notAllowed
1359
+ SVG.title.content = (text | SVG.title.extra.content)*
1360
+ title =
1361
+ element title { SVG.Core.attrib, SVG.Style.attrib, SVG.title.content }
1362
+ # end of SVG.title.element
1363
+
1364
+ # end of SVG.title.attlist
1365
+
1366
+ # metadata: Metadata Element ........................
1367
+ SVG.metadata.extra.content = notAllowed
1368
+ SVG.metadata.content = (text | SVG.metadata.extra.content)*
1369
+ metadata = element metadata { SVG.Core.attrib, SVG.metadata.content }
1370
+ # end of SVG.metadata.element
1371
+
1372
+ # end of SVG.metadata.attlist
1373
+
1374
+ # symbol: Symbol Element ............................
1375
+ SVG.symbol.extra.content = notAllowed
1376
+ SVG.symbol.content =
1377
+ (SVG.Description.class
1378
+ | SVG.Animation.class
1379
+ | SVG.Structure.class
1380
+ | SVG.Conditional.class
1381
+ | SVG.Image.class
1382
+ | SVG.Style.class
1383
+ | SVG.Shape.class
1384
+ | SVG.Text.class
1385
+ | SVG.Marker.class
1386
+ | SVG.ColorProfile.class
1387
+ | SVG.Gradient.class
1388
+ | SVG.Pattern.class
1389
+ | SVG.Clip.class
1390
+ | SVG.Mask.class
1391
+ | SVG.Filter.class
1392
+ | SVG.Cursor.class
1393
+ | SVG.Hyperlink.class
1394
+ | SVG.View.class
1395
+ | SVG.Script.class
1396
+ | SVG.Font.class
1397
+ | SVG.Extensibility.class
1398
+ | SVG.symbol.extra.content)*
1399
+ symbol =
1400
+ element symbol {
1401
+ SVG.Core.attrib,
1402
+ SVG.Style.attrib,
1403
+ SVG.Presentation.attrib,
1404
+ SVG.GraphicalEvents.attrib,
1405
+ SVG.External.attrib,
1406
+ attribute viewBox { ViewBoxSpec.datatype }?,
1407
+ [ a:defaultValue = "xMidYMid meet" ]
1408
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
1409
+ SVG.symbol.content
1410
+ }
1411
+ # end of SVG.symbol.element
1412
+
1413
+ # end of SVG.symbol.attlist
1414
+
1415
+ # use: Use Element ..................................
1416
+ SVG.use.extra.content = notAllowed
1417
+ SVG.use.content =
1418
+ (SVG.Description.class | SVG.Animation.class | SVG.use.extra.content)*
1419
+ use =
1420
+ element use {
1421
+ SVG.Core.attrib,
1422
+ SVG.Conditional.attrib,
1423
+ SVG.Style.attrib,
1424
+ SVG.Presentation.attrib,
1425
+ SVG.GraphicalEvents.attrib,
1426
+ SVG.XLinkEmbed.attrib,
1427
+ SVG.External.attrib,
1428
+ attribute x { Coordinate.datatype }?,
1429
+ attribute y { Coordinate.datatype }?,
1430
+ attribute width { Length.datatype }?,
1431
+ attribute height { Length.datatype }?,
1432
+ attribute transform { TransformList.datatype }?,
1433
+ SVG.use.content
1434
+ }
1435
+ # end of SVG.use.element
1436
+
1437
+ # end of SVG.use.attlist
1438
+
1439
+ # end of svg-structure.mod
1440
+
1441
+ # Conditional Processing Module ...............................
1442
+
1443
+ # .......................................................................
1444
+
1445
+ # SVG 1.1 Conditional Processing Module .................................
1446
+
1447
+ # file: svg-conditional.mod
1448
+ #
1449
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1450
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1451
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1452
+ #
1453
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1454
+ #
1455
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Conditional Processing//EN"
1456
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-conditional.mod"
1457
+ #
1458
+ # .......................................................................
1459
+
1460
+ # Conditional Processing
1461
+ #
1462
+ # switch
1463
+ #
1464
+ # This module declares markup to provide support for conditional processing.
1465
+
1466
+ # extension list specification
1467
+
1468
+ # feature list specification
1469
+
1470
+ # Qualified Names (Default) .........................
1471
+
1472
+ # Attribute Collections (Default) ...................
1473
+
1474
+ # SVG.Conditional.class .............................
1475
+
1476
+ # SVG.Conditional.attrib ............................
1477
+
1478
+ # SVG.Presentation.attrib ...........................
1479
+
1480
+ # switch: Switch Element ............................
1481
+ SVG.switch.extra.content = notAllowed
1482
+ SVG.switch.content =
1483
+ (SVG.Description.class
1484
+ | svg
1485
+ | g
1486
+ | use
1487
+ | \text
1488
+ | SVG.Animation.class
1489
+ | SVG.Conditional.class
1490
+ | SVG.Image.class
1491
+ | SVG.Shape.class
1492
+ | SVG.Hyperlink.class
1493
+ | SVG.Extensibility.class
1494
+ | SVG.switch.extra.content)*
1495
+ switch =
1496
+ element switch {
1497
+ SVG.Core.attrib,
1498
+ SVG.Conditional.attrib,
1499
+ SVG.Style.attrib,
1500
+ SVG.Presentation.attrib,
1501
+ SVG.GraphicalEvents.attrib,
1502
+ SVG.External.attrib,
1503
+ attribute transform { TransformList.datatype }?,
1504
+ SVG.switch.content
1505
+ }
1506
+ # end of SVG.switch.element
1507
+
1508
+ # end of SVG.switch.attlist
1509
+
1510
+ # end of svg-conditional.mod
1511
+
1512
+ # Image Module ................................................
1513
+
1514
+ # .......................................................................
1515
+
1516
+ # SVG 1.1 Image Module ..................................................
1517
+
1518
+ # file: svg-image.mod
1519
+ #
1520
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1521
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1522
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1523
+ #
1524
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1525
+ #
1526
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Image//EN"
1527
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-image.mod"
1528
+ #
1529
+ # .......................................................................
1530
+
1531
+ # Image
1532
+ #
1533
+ # image
1534
+ #
1535
+ # This module declares markup to provide support for image.
1536
+
1537
+ # Qualified Names (Default) .........................
1538
+
1539
+ # Attribute Collections (Default) ...................
1540
+
1541
+ # SVG.Image.class ...................................
1542
+
1543
+ # image: Image Element ..............................
1544
+ SVG.image.extra.content = notAllowed
1545
+ SVG.image.content =
1546
+ (SVG.Description.class
1547
+ | SVG.Animation.class
1548
+ | SVG.image.extra.content)*
1549
+ image =
1550
+ element image {
1551
+ SVG.Core.attrib,
1552
+ SVG.Conditional.attrib,
1553
+ SVG.Style.attrib,
1554
+ SVG.Presentation.attrib,
1555
+ SVG.GraphicalEvents.attrib,
1556
+ SVG.XLinkEmbed.attrib,
1557
+ SVG.External.attrib,
1558
+ attribute x { Coordinate.datatype }?,
1559
+ attribute y { Coordinate.datatype }?,
1560
+ attribute width { Length.datatype },
1561
+ attribute height { Length.datatype },
1562
+ [ a:defaultValue = "xMidYMid meet" ]
1563
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
1564
+ attribute transform { TransformList.datatype }?,
1565
+ SVG.image.content
1566
+ }
1567
+ # end of SVG.image.element
1568
+
1569
+ # end of SVG.image.attlist
1570
+
1571
+ # end of svg-image.mod
1572
+
1573
+ # Style Module ................................................
1574
+
1575
+ # .......................................................................
1576
+
1577
+ # SVG 1.1 Style Module ..................................................
1578
+
1579
+ # file: svg-style.mod
1580
+ #
1581
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1582
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1583
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1584
+ #
1585
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1586
+ #
1587
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Style//EN"
1588
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-style.mod"
1589
+ #
1590
+ # .......................................................................
1591
+
1592
+ # Style
1593
+ #
1594
+ # style
1595
+ #
1596
+ # This module declares markup to provide support for stylesheet.
1597
+
1598
+ # list of classes
1599
+
1600
+ # comma-separated list of media descriptors.
1601
+ MediaDesc.datatype = string
1602
+ # style sheet data
1603
+
1604
+ # Qualified Names (Default) .........................
1605
+
1606
+ # Attribute Collections (Default) ...................
1607
+
1608
+ # SVG.Style.class ...................................
1609
+
1610
+ # SVG.Style.attrib ..................................
1611
+
1612
+ # style: Style Element ..............................
1613
+ SVG.style.extra.content = notAllowed
1614
+ SVG.style.content = (text | SVG.style.extra.content)*
1615
+ style =
1616
+ element style {
1617
+ [ a:defaultValue = "preserve" ] attribute xml:space { "preserve" }?,
1618
+ SVG.id.attrib,
1619
+ SVG.base.attrib,
1620
+ SVG.lang.attrib,
1621
+ SVG.Core.extra.attrib,
1622
+ attribute type { ContentType.datatype },
1623
+ attribute media { MediaDesc.datatype }?,
1624
+ attribute title { Text.datatype }?,
1625
+ SVG.style.content
1626
+ }
1627
+ # end of SVG.style.element
1628
+
1629
+ # end of SVG.style.attlist
1630
+
1631
+ # end of svg-style.mod
1632
+
1633
+ # Shape Module ................................................
1634
+
1635
+ # .......................................................................
1636
+
1637
+ # SVG 1.1 Shape Module ..................................................
1638
+
1639
+ # file: svg-shape.mod
1640
+ #
1641
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1642
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1643
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1644
+ #
1645
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1646
+ #
1647
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Shape//EN"
1648
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-shape.mod"
1649
+ #
1650
+ # .......................................................................
1651
+
1652
+ # Shape
1653
+ #
1654
+ # path, rect, circle, line, ellipse, polyline, polygon
1655
+ #
1656
+ # This module declares markup to provide support for graphical shapes.
1657
+
1658
+ # a list of points
1659
+ Points.datatype = string
1660
+ # Qualified Names (Default) .........................
1661
+
1662
+ # Attribute Collections (Default) ...................
1663
+
1664
+ # SVG.Shape.class ...................................
1665
+
1666
+ # path: Path Element ................................
1667
+ SVG.path.extra.content = notAllowed
1668
+ SVG.path.content =
1669
+ (SVG.Description.class
1670
+ | SVG.Animation.class
1671
+ | SVG.path.extra.content)*
1672
+ path =
1673
+ element path {
1674
+ SVG.Core.attrib,
1675
+ SVG.Conditional.attrib,
1676
+ SVG.Style.attrib,
1677
+ SVG.Presentation.attrib,
1678
+ SVG.GraphicalEvents.attrib,
1679
+ SVG.External.attrib,
1680
+ attribute d { PathData.datatype },
1681
+ attribute pathLength { Number.datatype }?,
1682
+ attribute transform { TransformList.datatype }?,
1683
+ SVG.path.content
1684
+ }
1685
+ # end of SVG.path.element
1686
+
1687
+ # end of SVG.path.attlist
1688
+
1689
+ # rect: Rectangle Element ...........................
1690
+ SVG.rect.extra.content = notAllowed
1691
+ SVG.rect.content =
1692
+ (SVG.Description.class
1693
+ | SVG.Animation.class
1694
+ | SVG.rect.extra.content)*
1695
+ rect =
1696
+ element rect {
1697
+ SVG.Core.attrib,
1698
+ SVG.Conditional.attrib,
1699
+ SVG.Style.attrib,
1700
+ SVG.Presentation.attrib,
1701
+ SVG.GraphicalEvents.attrib,
1702
+ SVG.External.attrib,
1703
+ attribute x { Coordinate.datatype }?,
1704
+ attribute y { Coordinate.datatype }?,
1705
+ attribute width { Length.datatype },
1706
+ attribute height { Length.datatype },
1707
+ attribute rx { Length.datatype }?,
1708
+ attribute ry { Length.datatype }?,
1709
+ attribute transform { TransformList.datatype }?,
1710
+ SVG.rect.content
1711
+ }
1712
+ # end of SVG.rect.element
1713
+
1714
+ # end of SVG.rect.attlist
1715
+
1716
+ # circle: Circle Element ............................
1717
+ SVG.circle.extra.content = notAllowed
1718
+ SVG.circle.content =
1719
+ (SVG.Description.class
1720
+ | SVG.Animation.class
1721
+ | SVG.circle.extra.content)*
1722
+ circle =
1723
+ element circle {
1724
+ SVG.Core.attrib,
1725
+ SVG.Conditional.attrib,
1726
+ SVG.Style.attrib,
1727
+ SVG.Presentation.attrib,
1728
+ SVG.GraphicalEvents.attrib,
1729
+ SVG.External.attrib,
1730
+ attribute cx { Coordinate.datatype }?,
1731
+ attribute cy { Coordinate.datatype }?,
1732
+ attribute r { Length.datatype },
1733
+ attribute transform { TransformList.datatype }?,
1734
+ SVG.circle.content
1735
+ }
1736
+ # end of SVG.circle.element
1737
+
1738
+ # end of SVG.circle.attlist
1739
+
1740
+ # line: Line Element ................................
1741
+ SVG.line.extra.content = notAllowed
1742
+ SVG.line.content =
1743
+ (SVG.Description.class
1744
+ | SVG.Animation.class
1745
+ | SVG.line.extra.content)*
1746
+ line =
1747
+ element line {
1748
+ SVG.Core.attrib,
1749
+ SVG.Conditional.attrib,
1750
+ SVG.Style.attrib,
1751
+ SVG.Presentation.attrib,
1752
+ SVG.GraphicalEvents.attrib,
1753
+ SVG.External.attrib,
1754
+ attribute x1 { Coordinate.datatype }?,
1755
+ attribute y1 { Coordinate.datatype }?,
1756
+ attribute x2 { Coordinate.datatype }?,
1757
+ attribute y2 { Coordinate.datatype }?,
1758
+ attribute transform { TransformList.datatype }?,
1759
+ SVG.line.content
1760
+ }
1761
+ # end of SVG.line.element
1762
+
1763
+ # end of SVG.line.attlist
1764
+
1765
+ # ellipse: Ellipse Element ..........................
1766
+ SVG.ellipse.extra.content = notAllowed
1767
+ SVG.ellipse.content =
1768
+ (SVG.Description.class
1769
+ | SVG.Animation.class
1770
+ | SVG.ellipse.extra.content)*
1771
+ ellipse =
1772
+ element ellipse {
1773
+ SVG.Core.attrib,
1774
+ SVG.Conditional.attrib,
1775
+ SVG.Style.attrib,
1776
+ SVG.Presentation.attrib,
1777
+ SVG.GraphicalEvents.attrib,
1778
+ SVG.External.attrib,
1779
+ attribute cx { Coordinate.datatype }?,
1780
+ attribute cy { Coordinate.datatype }?,
1781
+ attribute rx { Length.datatype },
1782
+ attribute ry { Length.datatype },
1783
+ attribute transform { TransformList.datatype }?,
1784
+ SVG.ellipse.content
1785
+ }
1786
+ # end of SVG.ellipse.element
1787
+
1788
+ # end of SVG.ellipse.attlist
1789
+
1790
+ # polyline: Polyline Element ........................
1791
+ SVG.polyline.extra.content = notAllowed
1792
+ SVG.polyline.content =
1793
+ (SVG.Description.class
1794
+ | SVG.Animation.class
1795
+ | SVG.polyline.extra.content)*
1796
+ polyline =
1797
+ element polyline {
1798
+ SVG.Core.attrib,
1799
+ SVG.Conditional.attrib,
1800
+ SVG.Style.attrib,
1801
+ SVG.Presentation.attrib,
1802
+ SVG.GraphicalEvents.attrib,
1803
+ SVG.External.attrib,
1804
+ attribute points { Points.datatype },
1805
+ attribute transform { TransformList.datatype }?,
1806
+ SVG.polyline.content
1807
+ }
1808
+ # end of SVG.polyline.element
1809
+
1810
+ # end of SVG.polyline.attlist
1811
+
1812
+ # polygon: Polygon Element ..........................
1813
+ SVG.polygon.extra.content = notAllowed
1814
+ SVG.polygon.content =
1815
+ (SVG.Description.class
1816
+ | SVG.Animation.class
1817
+ | SVG.polygon.extra.content)*
1818
+ polygon =
1819
+ element polygon {
1820
+ SVG.Core.attrib,
1821
+ SVG.Conditional.attrib,
1822
+ SVG.Style.attrib,
1823
+ SVG.Presentation.attrib,
1824
+ SVG.GraphicalEvents.attrib,
1825
+ SVG.External.attrib,
1826
+ attribute points { Points.datatype },
1827
+ attribute transform { TransformList.datatype }?,
1828
+ SVG.polygon.content
1829
+ }
1830
+ # end of SVG.polygon.element
1831
+
1832
+ # end of SVG.polygon.attlist
1833
+
1834
+ # end of svg-shape.mod
1835
+
1836
+ # Text Module .................................................
1837
+
1838
+ # .......................................................................
1839
+
1840
+ # SVG 1.1 Text Module ...................................................
1841
+
1842
+ # file: svg-text.mod
1843
+ #
1844
+ # This is SVG, a language for describing two-dimensional graphics in XML.
1845
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
1846
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
1847
+ #
1848
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
1849
+ #
1850
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Text//EN"
1851
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-text.mod"
1852
+ #
1853
+ # .......................................................................
1854
+
1855
+ # Text
1856
+ #
1857
+ # text, tspan, tref, textPath, altGlyph, altGlyphDef, altGlyphItem,
1858
+ # glyphRef
1859
+ #
1860
+ # This module declares markup to provide support for alternate glyph.
1861
+
1862
+ # 'baseline-shift' property/attribute value (e.g., 'baseline', 'sub', etc.)
1863
+
1864
+ # 'font-family' property/attribute value (i.e., list of fonts)
1865
+
1866
+ # 'font-size' property/attribute value
1867
+
1868
+ # 'font-size-adjust' property/attribute value
1869
+
1870
+ # 'glyph-orientation-horizontal' property/attribute value (e.g., <angle>)
1871
+
1872
+ # 'glyph-orientation-vertical' property/attribute value (e.g., 'auto', <angle>)
1873
+
1874
+ # 'kerning' property/attribute value (e.g., 'auto', <length>)
1875
+
1876
+ # 'letter-spacing' or 'word-spacing' property/attribute value (e.g., 'normal', <length>)
1877
+
1878
+ # 'text-decoration' property/attribute value (e.g., 'none', 'underline')
1879
+
1880
+ # Qualified Names (Default) .........................
1881
+
1882
+ # Attribute Collections (Default) ...................
1883
+
1884
+ # SVG.Text.class ....................................
1885
+
1886
+ # SVG.TextContent.class .............................
1887
+
1888
+ # SVG.Text.attrib ...................................
1889
+
1890
+ # SVG.TextContent.attrib ............................
1891
+
1892
+ # SVG.Font.attrib ...................................
1893
+
1894
+ # text: Text Element ................................
1895
+ SVG.text.extra.content = notAllowed
1896
+ SVG.text.content =
1897
+ (text
1898
+ | SVG.Description.class
1899
+ | SVG.Animation.class
1900
+ | SVG.TextContent.class
1901
+ | SVG.Hyperlink.class
1902
+ | SVG.text.extra.content)*
1903
+ \text =
1904
+ element text {
1905
+ SVG.Core.attrib,
1906
+ SVG.Conditional.attrib,
1907
+ SVG.Style.attrib,
1908
+ SVG.Presentation.attrib,
1909
+ SVG.GraphicalEvents.attrib,
1910
+ SVG.External.attrib,
1911
+ attribute x { Coordinates.datatype }?,
1912
+ attribute y { Coordinates.datatype }?,
1913
+ attribute dx { Lengths.datatype }?,
1914
+ attribute dy { Lengths.datatype }?,
1915
+ attribute rotate { Numbers.datatype }?,
1916
+ attribute textLength { Length.datatype }?,
1917
+ attribute lengthAdjust { "spacing" | "spacingAndGlyphs" }?,
1918
+ attribute transform { TransformList.datatype }?,
1919
+ SVG.text.content
1920
+ }
1921
+ # end of SVG.text.element
1922
+
1923
+ # end of SVG.text.attlist
1924
+
1925
+ # tspan: Text Span Element ..........................
1926
+ SVG.tspan.extra.content = notAllowed
1927
+ SVG.tspan.content =
1928
+ (text
1929
+ | tspan
1930
+ | tref
1931
+ | altGlyph
1932
+ | animate
1933
+ | set
1934
+ | animateColor
1935
+ | SVG.Description.class
1936
+ | SVG.Hyperlink.class
1937
+ | SVG.tspan.extra.content)*
1938
+ tspan =
1939
+ element tspan {
1940
+ SVG.Core.attrib,
1941
+ SVG.Conditional.attrib,
1942
+ SVG.Style.attrib,
1943
+ SVG.Presentation.attrib,
1944
+ SVG.GraphicalEvents.attrib,
1945
+ SVG.External.attrib,
1946
+ attribute x { Coordinates.datatype }?,
1947
+ attribute y { Coordinates.datatype }?,
1948
+ attribute dx { Lengths.datatype }?,
1949
+ attribute dy { Lengths.datatype }?,
1950
+ attribute rotate { Numbers.datatype }?,
1951
+ attribute textLength { Length.datatype }?,
1952
+ attribute lengthAdjust { "spacing" | "spacingAndGlyphs" }?,
1953
+ SVG.tspan.content
1954
+ }
1955
+ # end of SVG.tspan.element
1956
+
1957
+ # end of SVG.tspan.attlist
1958
+
1959
+ # tref: Text Reference Element ......................
1960
+ SVG.tref.extra.content = notAllowed
1961
+ SVG.tref.content =
1962
+ (animate
1963
+ | set
1964
+ | animateColor
1965
+ | SVG.Description.class
1966
+ | SVG.tref.extra.content)*
1967
+ tref =
1968
+ element tref {
1969
+ SVG.Core.attrib,
1970
+ SVG.Conditional.attrib,
1971
+ SVG.Style.attrib,
1972
+ SVG.Presentation.attrib,
1973
+ SVG.GraphicalEvents.attrib,
1974
+ SVG.XLinkRequired.attrib,
1975
+ SVG.External.attrib,
1976
+ attribute x { Coordinates.datatype }?,
1977
+ attribute y { Coordinates.datatype }?,
1978
+ attribute dx { Lengths.datatype }?,
1979
+ attribute dy { Lengths.datatype }?,
1980
+ attribute rotate { Numbers.datatype }?,
1981
+ attribute textLength { Length.datatype }?,
1982
+ attribute lengthAdjust { "spacing" | "spacingAndGlyphs" }?,
1983
+ SVG.tref.content
1984
+ }
1985
+ # end of SVG.tref.element
1986
+
1987
+ # end of SVG.tref.attlist
1988
+
1989
+ # textPath: Text Path Element .......................
1990
+ SVG.textPath.extra.content = notAllowed
1991
+ SVG.textPath.content =
1992
+ (text
1993
+ | tspan
1994
+ | tref
1995
+ | altGlyph
1996
+ | animate
1997
+ | set
1998
+ | animateColor
1999
+ | SVG.Description.class
2000
+ | SVG.Hyperlink.class
2001
+ | SVG.textPath.extra.content)*
2002
+ textPath =
2003
+ element textPath {
2004
+ SVG.Core.attrib,
2005
+ SVG.Conditional.attrib,
2006
+ SVG.Style.attrib,
2007
+ SVG.Presentation.attrib,
2008
+ SVG.GraphicalEvents.attrib,
2009
+ SVG.XLinkRequired.attrib,
2010
+ SVG.External.attrib,
2011
+ attribute startOffset { Length.datatype }?,
2012
+ attribute textLength { Length.datatype }?,
2013
+ attribute lengthAdjust { "spacing" | "spacingAndGlyphs" }?,
2014
+ attribute method { "align" | "stretch" }?,
2015
+ attribute spacing { "auto" | "exact" }?,
2016
+ SVG.textPath.content
2017
+ }
2018
+ # end of SVG.textPath.element
2019
+
2020
+ # end of SVG.textPath.attlist
2021
+
2022
+ # altGlyph: Alternate Glyph Element .................
2023
+ SVG.altGlyph.extra.content = notAllowed
2024
+ SVG.altGlyph.content = (text | SVG.altGlyph.extra.content)*
2025
+ altGlyph =
2026
+ element altGlyph {
2027
+ SVG.Core.attrib,
2028
+ SVG.Conditional.attrib,
2029
+ SVG.Style.attrib,
2030
+ SVG.Presentation.attrib,
2031
+ SVG.GraphicalEvents.attrib,
2032
+ SVG.XLink.attrib,
2033
+ SVG.External.attrib,
2034
+ attribute x { Coordinates.datatype }?,
2035
+ attribute y { Coordinates.datatype }?,
2036
+ attribute dx { Lengths.datatype }?,
2037
+ attribute dy { Lengths.datatype }?,
2038
+ attribute glyphRef { text }?,
2039
+ attribute format { text }?,
2040
+ attribute rotate { Numbers.datatype }?,
2041
+ SVG.altGlyph.content
2042
+ }
2043
+ # end of SVG.altGlyph.element
2044
+
2045
+ # end of SVG.altGlyph.attlist
2046
+
2047
+ # altGlyphDef: Alternate Glyph Definition Element ...
2048
+ SVG.altGlyphDef.extra.content = notAllowed
2049
+ SVG.altGlyphDef.content =
2050
+ (glyphRef+ | altGlyphItem+) | SVG.altGlyphDef.extra.content
2051
+ altGlyphDef =
2052
+ element altGlyphDef { SVG.Core.attrib, SVG.altGlyphDef.content }
2053
+ # end of SVG.altGlyphDef.element
2054
+
2055
+ # end of SVG.altGlyphDef.attlist
2056
+
2057
+ # altGlyphItem: Alternate Glyph Item Element ........
2058
+ SVG.altGlyphItem.extra.content = notAllowed
2059
+ SVG.altGlyphItem.content = glyphRef+ | SVG.altGlyphItem.extra.content
2060
+ altGlyphItem =
2061
+ element altGlyphItem { SVG.Core.attrib, SVG.altGlyphItem.content }
2062
+ # end of SVG.altGlyphItem.element
2063
+
2064
+ # end of SVG.altGlyphItem.attlist
2065
+
2066
+ # glyphRef: Glyph Reference Element .................
2067
+ SVG.glyphRef.content = empty
2068
+ glyphRef =
2069
+ element glyphRef {
2070
+ SVG.Core.attrib,
2071
+ SVG.Style.attrib,
2072
+ SVG.Presentation.attrib,
2073
+ SVG.XLink.attrib,
2074
+ attribute x { Number.datatype }?,
2075
+ attribute y { Number.datatype }?,
2076
+ attribute dx { Number.datatype }?,
2077
+ attribute dy { Number.datatype }?,
2078
+ attribute glyphRef { text }?,
2079
+ attribute format { text }?,
2080
+ SVG.glyphRef.content
2081
+ }
2082
+ # end of SVG.glyphRef.element
2083
+
2084
+ # end of SVG.glyphRef.attlist
2085
+
2086
+ # end of svg-text.mod
2087
+
2088
+ # Marker Module ...............................................
2089
+
2090
+ # .......................................................................
2091
+
2092
+ # SVG 1.1 Marker Module .................................................
2093
+
2094
+ # file: svg-marker.mod
2095
+ #
2096
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2097
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2098
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2099
+ #
2100
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2101
+ #
2102
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Marker//EN"
2103
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-marker.mod"
2104
+ #
2105
+ # .......................................................................
2106
+
2107
+ # Marker
2108
+ #
2109
+ # marker
2110
+ #
2111
+ # This module declares markup to provide support for marker.
2112
+
2113
+ # 'marker' property/attribute value (e.g., 'none', <uri>)
2114
+
2115
+ # Qualified Names (Default) .........................
2116
+
2117
+ # Attribute Collections (Default) ...................
2118
+
2119
+ # SVG.Marker.class ..................................
2120
+
2121
+ # SVG.Marker.attrib .................................
2122
+
2123
+ # SVG.Presentation.attrib ...........................
2124
+
2125
+ # marker: Marker Element ............................
2126
+ SVG.marker.extra.content = notAllowed
2127
+ SVG.marker.content =
2128
+ (SVG.Description.class
2129
+ | SVG.Animation.class
2130
+ | SVG.Structure.class
2131
+ | SVG.Conditional.class
2132
+ | SVG.Image.class
2133
+ | SVG.Style.class
2134
+ | SVG.Shape.class
2135
+ | SVG.Text.class
2136
+ | SVG.Marker.class
2137
+ | SVG.ColorProfile.class
2138
+ | SVG.Gradient.class
2139
+ | SVG.Pattern.class
2140
+ | SVG.Clip.class
2141
+ | SVG.Mask.class
2142
+ | SVG.Filter.class
2143
+ | SVG.Cursor.class
2144
+ | SVG.Hyperlink.class
2145
+ | SVG.View.class
2146
+ | SVG.Script.class
2147
+ | SVG.Font.class
2148
+ | SVG.Extensibility.class
2149
+ | SVG.marker.extra.content)*
2150
+ marker =
2151
+ element marker {
2152
+ SVG.Core.attrib,
2153
+ SVG.Style.attrib,
2154
+ SVG.Presentation.attrib,
2155
+ SVG.External.attrib,
2156
+ attribute refX { Coordinate.datatype }?,
2157
+ attribute refY { Coordinate.datatype }?,
2158
+ attribute markerUnits { "strokeWidth" | "userSpaceOnUse" }?,
2159
+ attribute markerWidth { Length.datatype }?,
2160
+ attribute markerHeight { Length.datatype }?,
2161
+ attribute orient { text }?,
2162
+ attribute viewBox { ViewBoxSpec.datatype }?,
2163
+ [ a:defaultValue = "xMidYMid meet" ]
2164
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
2165
+ SVG.marker.content
2166
+ }
2167
+ # end of SVG.marker.element
2168
+
2169
+ # end of SVG.marker.attlist
2170
+
2171
+ # end of svg-marker.mod
2172
+
2173
+ # Color Profile Module ........................................
2174
+
2175
+ # .......................................................................
2176
+
2177
+ # SVG 1.1 Color Profile Module ..........................................
2178
+
2179
+ # file: svg-profile.mod
2180
+ #
2181
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2182
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2183
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2184
+ #
2185
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2186
+ #
2187
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Color Profile//EN"
2188
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-profile.mod"
2189
+ #
2190
+ # .......................................................................
2191
+
2192
+ # Color Profile
2193
+ #
2194
+ # color-profile
2195
+ #
2196
+ # This module declares markup to provide support for color profile.
2197
+
2198
+ # Qualified Names (Default) .........................
2199
+
2200
+ # Attribute Collections (Default) ...................
2201
+
2202
+ # SVG.ColorProfile.class ............................
2203
+
2204
+ # SVG.ColorProfile.attrib ...........................
2205
+
2206
+ # color-profile: Color Profile Element ..............
2207
+ SVG.color-profile.extra.content = notAllowed
2208
+ SVG.color-profile.content =
2209
+ (SVG.Description.class | SVG.color-profile.extra.content)*
2210
+ color-profile =
2211
+ element color-profile {
2212
+ SVG.Core.attrib,
2213
+ SVG.XLink.attrib,
2214
+ attribute local { text }?,
2215
+ attribute name { text },
2216
+ [ a:defaultValue = "auto" ]
2217
+ attribute rendering-intent {
2218
+ "auto"
2219
+ | "perceptual"
2220
+ | "relative-colorimetric"
2221
+ | "saturation"
2222
+ | "absolute-colorimetric"
2223
+ }?,
2224
+ SVG.color-profile.content
2225
+ }
2226
+ # end of SVG.color-profile.element
2227
+
2228
+ # end of SVG.color-profile.attlist
2229
+
2230
+ # end of svg-profile.mod
2231
+
2232
+ # Gradient Module .............................................
2233
+
2234
+ # .......................................................................
2235
+
2236
+ # SVG 1.1 Gradient Module ...............................................
2237
+
2238
+ # file: svg-gradient.mod
2239
+ #
2240
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2241
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2242
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2243
+ #
2244
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2245
+ #
2246
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Gradient//EN"
2247
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-gradient.mod"
2248
+ #
2249
+ # .......................................................................
2250
+
2251
+ # Gradient
2252
+ #
2253
+ # linearGradient, radialGradient, stop
2254
+ #
2255
+ # This module declares markup to provide support for gradient fill.
2256
+
2257
+ # a <number> or a <percentage>
2258
+
2259
+ # Qualified Names (Default) .........................
2260
+
2261
+ # Attribute Collections (Default) ...................
2262
+
2263
+ # SVG.Gradient.class ................................
2264
+
2265
+ # SVG.Gradient.attrib ...............................
2266
+
2267
+ # linearGradient: Linear Gradient Element ...........
2268
+ SVG.linearGradient.extra.content = notAllowed
2269
+ SVG.linearGradient.content =
2270
+ (SVG.Description.class
2271
+ | stop
2272
+ | animate
2273
+ | set
2274
+ | animateTransform
2275
+ | SVG.linearGradient.extra.content)*
2276
+ linearGradient =
2277
+ element linearGradient {
2278
+ SVG.Core.attrib,
2279
+ SVG.Style.attrib,
2280
+ SVG.Presentation.attrib,
2281
+ SVG.XLink.attrib,
2282
+ SVG.External.attrib,
2283
+ attribute x1 { Coordinate.datatype }?,
2284
+ attribute y1 { Coordinate.datatype }?,
2285
+ attribute x2 { Coordinate.datatype }?,
2286
+ attribute y2 { Coordinate.datatype }?,
2287
+ attribute gradientUnits { "userSpaceOnUse" | "objectBoundingBox" }?,
2288
+ attribute gradientTransform { TransformList.datatype }?,
2289
+ attribute spreadMethod { "pad" | "reflect" | "repeat" }?,
2290
+ SVG.linearGradient.content
2291
+ }
2292
+ # end of SVG.linearGradient.element
2293
+
2294
+ # end of SVG.linearGradient.attlist
2295
+
2296
+ # radialGradient: Radial Gradient Element ...........
2297
+ SVG.radialGradient.extra.content = notAllowed
2298
+ SVG.radialGradient.content =
2299
+ (SVG.Description.class
2300
+ | stop
2301
+ | animate
2302
+ | set
2303
+ | animateTransform
2304
+ | SVG.radialGradient.extra.content)*
2305
+ radialGradient =
2306
+ element radialGradient {
2307
+ SVG.Core.attrib,
2308
+ SVG.Style.attrib,
2309
+ SVG.Presentation.attrib,
2310
+ SVG.XLink.attrib,
2311
+ SVG.External.attrib,
2312
+ attribute cx { Coordinate.datatype }?,
2313
+ attribute cy { Coordinate.datatype }?,
2314
+ attribute r { Length.datatype }?,
2315
+ attribute fx { Coordinate.datatype }?,
2316
+ attribute fy { Coordinate.datatype }?,
2317
+ attribute gradientUnits { "userSpaceOnUse" | "objectBoundingBox" }?,
2318
+ attribute gradientTransform { TransformList.datatype }?,
2319
+ attribute spreadMethod { "pad" | "reflect" | "repeat" }?,
2320
+ SVG.radialGradient.content
2321
+ }
2322
+ # end of SVG.radialGradient.element
2323
+
2324
+ # end of SVG.radialGradient.attlist
2325
+
2326
+ # stop: Stop Element ................................
2327
+ SVG.stop.extra.content = notAllowed
2328
+ SVG.stop.content =
2329
+ (animate | set | animateColor | SVG.stop.extra.content)*
2330
+ stop =
2331
+ element stop {
2332
+ SVG.Core.attrib,
2333
+ SVG.Style.attrib,
2334
+ SVG.Presentation.attrib,
2335
+ attribute offset { NumberOrPercentage.datatype },
2336
+ SVG.stop.content
2337
+ }
2338
+ # end of SVG.stop.element
2339
+
2340
+ # end of SVG.stop.attlist
2341
+
2342
+ # end of svg-gradient.mod
2343
+
2344
+ # Pattern Module ..............................................
2345
+
2346
+ # .......................................................................
2347
+
2348
+ # SVG 1.1 Pattern Module ................................................
2349
+
2350
+ # file: svg-pattern.mod
2351
+ #
2352
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2353
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2354
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2355
+ #
2356
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2357
+ #
2358
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Pattern//EN"
2359
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-pattern.mod"
2360
+ #
2361
+ # .......................................................................
2362
+
2363
+ # Pattern
2364
+ #
2365
+ # pattern
2366
+ #
2367
+ # This module declares markup to provide support for pattern fill.
2368
+
2369
+ # Qualified Names (Default) .........................
2370
+
2371
+ # Attribute Collections (Default) ...................
2372
+
2373
+ # SVG.Pattern.class .................................
2374
+
2375
+ # SVG.Presentation.attrib ...........................
2376
+
2377
+ # pattern: Pattern Element ..........................
2378
+ SVG.pattern.extra.content = notAllowed
2379
+ SVG.pattern.content =
2380
+ (SVG.Description.class
2381
+ | SVG.Animation.class
2382
+ | SVG.Structure.class
2383
+ | SVG.Conditional.class
2384
+ | SVG.Image.class
2385
+ | SVG.Style.class
2386
+ | SVG.Shape.class
2387
+ | SVG.Text.class
2388
+ | SVG.Marker.class
2389
+ | SVG.ColorProfile.class
2390
+ | SVG.Gradient.class
2391
+ | SVG.Pattern.class
2392
+ | SVG.Clip.class
2393
+ | SVG.Mask.class
2394
+ | SVG.Filter.class
2395
+ | SVG.Cursor.class
2396
+ | SVG.Hyperlink.class
2397
+ | SVG.View.class
2398
+ | SVG.Script.class
2399
+ | SVG.Font.class
2400
+ | SVG.Extensibility.class
2401
+ | SVG.pattern.extra.content)*
2402
+ pattern =
2403
+ element pattern {
2404
+ SVG.Core.attrib,
2405
+ SVG.Conditional.attrib,
2406
+ SVG.Style.attrib,
2407
+ SVG.Presentation.attrib,
2408
+ SVG.XLink.attrib,
2409
+ SVG.External.attrib,
2410
+ attribute x { Coordinate.datatype }?,
2411
+ attribute y { Coordinate.datatype }?,
2412
+ attribute width { Length.datatype }?,
2413
+ attribute height { Length.datatype }?,
2414
+ attribute patternUnits { "userSpaceOnUse" | "objectBoundingBox" }?,
2415
+ attribute patternContentUnits {
2416
+ "userSpaceOnUse" | "objectBoundingBox"
2417
+ }?,
2418
+ attribute patternTransform { TransformList.datatype }?,
2419
+ attribute viewBox { ViewBoxSpec.datatype }?,
2420
+ [ a:defaultValue = "xMidYMid meet" ]
2421
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
2422
+ SVG.pattern.content
2423
+ }
2424
+ # end of SVG.pattern.element
2425
+
2426
+ # end of SVG.pattern.attlist
2427
+
2428
+ # end of svg-pattern.mod
2429
+
2430
+ # Clip Module .................................................
2431
+
2432
+ # .......................................................................
2433
+
2434
+ # SVG 1.1 Clip Module ...................................................
2435
+
2436
+ # file: svg-clip.mod
2437
+ #
2438
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2439
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2440
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2441
+ #
2442
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2443
+ #
2444
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Clip//EN"
2445
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-clip.mod"
2446
+ #
2447
+ # .......................................................................
2448
+
2449
+ # Clip
2450
+ #
2451
+ # clipPath
2452
+ #
2453
+ # This module declares markup to provide support for clipping.
2454
+
2455
+ # 'clip-path' property/attribute value (e.g., 'none', <uri>)
2456
+
2457
+ # Qualified Names (Default) .........................
2458
+
2459
+ # Attribute Collections (Default) ...................
2460
+
2461
+ # SVG.Clip.class ....................................
2462
+
2463
+ # SVG.Clip.attrib ...................................
2464
+
2465
+ # clipPath: Clip Path Element .......................
2466
+ SVG.clipPath.extra.content = notAllowed
2467
+ SVG.clipPath.content =
2468
+ (SVG.Description.class
2469
+ | SVG.Animation.class
2470
+ | SVG.Use.class
2471
+ | SVG.Shape.class
2472
+ | \text
2473
+ | SVG.clipPath.extra.content)*
2474
+ clipPath =
2475
+ element clipPath {
2476
+ SVG.Core.attrib,
2477
+ SVG.Conditional.attrib,
2478
+ SVG.Style.attrib,
2479
+ SVG.Presentation.attrib,
2480
+ SVG.External.attrib,
2481
+ attribute transform { TransformList.datatype }?,
2482
+ attribute clipPathUnits { "userSpaceOnUse" | "objectBoundingBox" }?,
2483
+ SVG.clipPath.content
2484
+ }
2485
+ # end of SVG.clipPath.element
2486
+
2487
+ # end of SVG.clipPath.attlist
2488
+
2489
+ # end of svg-clip.mod
2490
+
2491
+ # Mask Module .................................................
2492
+
2493
+ # .......................................................................
2494
+
2495
+ # SVG 1.1 Mask Module ...................................................
2496
+
2497
+ # file: svg-mask.mod
2498
+ #
2499
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2500
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2501
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2502
+ #
2503
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2504
+ #
2505
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Mask//EN"
2506
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-mask.mod"
2507
+ #
2508
+ # .......................................................................
2509
+
2510
+ # Mask
2511
+ #
2512
+ # mask
2513
+ #
2514
+ # This module declares markup to provide support for masking.
2515
+
2516
+ # 'mask' property/attribute value (e.g., 'none', <uri>)
2517
+
2518
+ # Qualified Names (Default) .........................
2519
+
2520
+ # Attribute Collections (Default) ...................
2521
+
2522
+ # SVG.Mask.class ....................................
2523
+
2524
+ # SVG.Mask.attrib ...................................
2525
+
2526
+ # SVG.Presentation.attrib ...........................
2527
+
2528
+ # mask: Mask Element ................................
2529
+ SVG.mask.extra.content = notAllowed
2530
+ SVG.mask.content =
2531
+ (SVG.Description.class
2532
+ | SVG.Animation.class
2533
+ | SVG.Structure.class
2534
+ | SVG.Conditional.class
2535
+ | SVG.Image.class
2536
+ | SVG.Style.class
2537
+ | SVG.Shape.class
2538
+ | SVG.Text.class
2539
+ | SVG.Marker.class
2540
+ | SVG.ColorProfile.class
2541
+ | SVG.Gradient.class
2542
+ | SVG.Pattern.class
2543
+ | SVG.Clip.class
2544
+ | SVG.Mask.class
2545
+ | SVG.Filter.class
2546
+ | SVG.Cursor.class
2547
+ | SVG.Hyperlink.class
2548
+ | SVG.View.class
2549
+ | SVG.Script.class
2550
+ | SVG.Font.class
2551
+ | SVG.Extensibility.class
2552
+ | SVG.mask.extra.content)*
2553
+ mask =
2554
+ element mask {
2555
+ SVG.Core.attrib,
2556
+ SVG.Conditional.attrib,
2557
+ SVG.Style.attrib,
2558
+ SVG.Presentation.attrib,
2559
+ SVG.External.attrib,
2560
+ attribute x { Coordinate.datatype }?,
2561
+ attribute y { Coordinate.datatype }?,
2562
+ attribute width { Length.datatype }?,
2563
+ attribute height { Length.datatype }?,
2564
+ attribute maskUnits { "userSpaceOnUse" | "objectBoundingBox" }?,
2565
+ attribute maskContentUnits {
2566
+ "userSpaceOnUse" | "objectBoundingBox"
2567
+ }?,
2568
+ SVG.mask.content
2569
+ }
2570
+ # end of SVG.mask.element
2571
+
2572
+ # end of SVG.mask.attlist
2573
+
2574
+ # end of svg-mask.mod
2575
+
2576
+ # Filter Module ...............................................
2577
+
2578
+ # .......................................................................
2579
+
2580
+ # SVG 1.1 Filter Module .................................................
2581
+
2582
+ # file: svg-filter.mod
2583
+ #
2584
+ # This is SVG, a language for describing two-dimensional graphics in XML.
2585
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
2586
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
2587
+ #
2588
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
2589
+ #
2590
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Filter//EN"
2591
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-filter.mod"
2592
+ #
2593
+ # .......................................................................
2594
+
2595
+ # Filter
2596
+ #
2597
+ # filter, feBlend, feColorMatrix, feComponentTransfer, feComposite,
2598
+ # feConvolveMatrix, feDiffuseLighting, feDisplacementMap, feFlood,
2599
+ # feGaussianBlur, feImage, feMerge, feMergeNode, feMorphology, feOffset,
2600
+ # feSpecularLighting, feTile, feTurbulence, feDistantLight, fePointLight,
2601
+ # feSpotLight, feFuncR, feFuncG, feFuncB, feFuncA
2602
+ #
2603
+ # This module declares markup to provide support for filter effect.
2604
+
2605
+ # 'filter' property/attribute value (e.g., 'none', <uri>)
2606
+
2607
+ # list of <number>s, but at least one and at most two
2608
+
2609
+ # Qualified Names (Default) .........................
2610
+
2611
+ # Attribute Collections (Default) ...................
2612
+
2613
+ # SVG.Filter.class ..................................
2614
+
2615
+ # SVG.FilterPrimitive.class .........................
2616
+
2617
+ # SVG.Filter.attrib .................................
2618
+
2619
+ # SVG.FilterColor.attrib ............................
2620
+
2621
+ # SVG.FilterPrimitive.attrib ........................
2622
+ SVG.FilterPrimitive.extra.attrib = empty
2623
+ SVG.FilterPrimitive.attrib =
2624
+ attribute x { Coordinate.datatype }?,
2625
+ attribute y { Coordinate.datatype }?,
2626
+ attribute width { Length.datatype }?,
2627
+ attribute height { Length.datatype }?,
2628
+ attribute result { text }?,
2629
+ SVG.FilterPrimitive.extra.attrib
2630
+ # SVG.FilterPrimitiveWithIn.attrib ..................
2631
+ SVG.FilterPrimitiveWithIn.extra.attrib = empty
2632
+ SVG.FilterPrimitiveWithIn.attrib =
2633
+ SVG.FilterPrimitive.attrib,
2634
+ attribute in { text }?,
2635
+ SVG.FilterPrimitiveWithIn.extra.attrib
2636
+ # SVG.Presentation.attrib ...........................
2637
+
2638
+ # filter: Filter Element ............................
2639
+ SVG.filter.extra.content = notAllowed
2640
+ SVG.filter.content =
2641
+ (SVG.Description.class
2642
+ | animate
2643
+ | set
2644
+ | SVG.FilterPrimitive.class
2645
+ | SVG.filter.extra.content)*
2646
+ filter =
2647
+ element filter {
2648
+ SVG.Core.attrib,
2649
+ SVG.Style.attrib,
2650
+ SVG.Presentation.attrib,
2651
+ SVG.XLink.attrib,
2652
+ SVG.External.attrib,
2653
+ attribute x { Coordinate.datatype }?,
2654
+ attribute y { Coordinate.datatype }?,
2655
+ attribute width { Length.datatype }?,
2656
+ attribute height { Length.datatype }?,
2657
+ attribute filterRes { NumberOptionalNumber.datatype }?,
2658
+ attribute filterUnits { "userSpaceOnUse" | "objectBoundingBox" }?,
2659
+ attribute primitiveUnits {
2660
+ "userSpaceOnUse" | "objectBoundingBox"
2661
+ }?,
2662
+ SVG.filter.content
2663
+ }
2664
+ # end of SVG.filter.element
2665
+
2666
+ # end of SVG.filter.attlist
2667
+
2668
+ # feBlend: Filter Effect Blend Element ..............
2669
+ SVG.feBlend.extra.content = notAllowed
2670
+ SVG.feBlend.content = (animate | set | SVG.feBlend.extra.content)*
2671
+ feBlend =
2672
+ element feBlend {
2673
+ SVG.Core.attrib,
2674
+ SVG.Style.attrib,
2675
+ SVG.Presentation.attrib,
2676
+ SVG.FilterPrimitiveWithIn.attrib,
2677
+ attribute in2 { text },
2678
+ [ a:defaultValue = "normal" ]
2679
+ attribute mode {
2680
+ "normal" | "multiply" | "screen" | "darken" | "lighten"
2681
+ }?,
2682
+ SVG.feBlend.content
2683
+ }
2684
+ # end of SVG.feBlend.element
2685
+
2686
+ # end of SVG.feBlend.attlist
2687
+
2688
+ # feColorMatrix: Filter Effect Color Matrix Element .
2689
+ SVG.feColorMatrix.extra.content = notAllowed
2690
+ SVG.feColorMatrix.content =
2691
+ (animate | set | SVG.feColorMatrix.extra.content)*
2692
+ feColorMatrix =
2693
+ element feColorMatrix {
2694
+ SVG.Core.attrib,
2695
+ SVG.Style.attrib,
2696
+ SVG.Presentation.attrib,
2697
+ SVG.FilterPrimitiveWithIn.attrib,
2698
+ [ a:defaultValue = "matrix" ]
2699
+ attribute type {
2700
+ "matrix" | "saturate" | "hueRotate" | "luminanceToAlpha"
2701
+ }?,
2702
+ attribute values { text }?,
2703
+ SVG.feColorMatrix.content
2704
+ }
2705
+ # end of SVG.feColorMatrix.element
2706
+
2707
+ # end of SVG.feColorMatrix.attlist
2708
+
2709
+ # feComponentTransfer: Filter Effect Component Transfer Element
2710
+ SVG.feComponentTransfer.extra.content = empty
2711
+ SVG.feComponentTransfer.content =
2712
+ feFuncR?,
2713
+ feFuncG?,
2714
+ feFuncB?,
2715
+ feFuncA?,
2716
+ SVG.feComponentTransfer.extra.content
2717
+ feComponentTransfer =
2718
+ element feComponentTransfer {
2719
+ SVG.Core.attrib,
2720
+ SVG.Style.attrib,
2721
+ SVG.Presentation.attrib,
2722
+ SVG.FilterPrimitiveWithIn.attrib,
2723
+ SVG.feComponentTransfer.content
2724
+ }
2725
+ # end of SVG.feComponentTransfer.element
2726
+
2727
+ # end of SVG.feComponentTransfer.attlist
2728
+
2729
+ # feComposite: Filter Effect Composite Element ......
2730
+ SVG.feComposite.extra.content = notAllowed
2731
+ SVG.feComposite.content =
2732
+ (animate | set | SVG.feComposite.extra.content)*
2733
+ feComposite =
2734
+ element feComposite {
2735
+ SVG.Core.attrib,
2736
+ SVG.Style.attrib,
2737
+ SVG.Presentation.attrib,
2738
+ SVG.FilterPrimitiveWithIn.attrib,
2739
+ attribute in2 { text },
2740
+ [ a:defaultValue = "over" ]
2741
+ attribute operator {
2742
+ "over" | "in" | "out" | "atop" | "xor" | "arithmetic"
2743
+ }?,
2744
+ attribute k1 { Number.datatype }?,
2745
+ attribute k2 { Number.datatype }?,
2746
+ attribute k3 { Number.datatype }?,
2747
+ attribute k4 { Number.datatype }?,
2748
+ SVG.feComposite.content
2749
+ }
2750
+ # end of SVG.feComposite.element
2751
+
2752
+ # end of SVG.feComposite.attlist
2753
+
2754
+ # feConvolveMatrix: Filter Effect Convolve Matrix Element
2755
+ SVG.feConvolveMatrix.extra.content = notAllowed
2756
+ SVG.feConvolveMatrix.content =
2757
+ (animate | set | SVG.feConvolveMatrix.extra.content)*
2758
+ feConvolveMatrix =
2759
+ element feConvolveMatrix {
2760
+ SVG.Core.attrib,
2761
+ SVG.Style.attrib,
2762
+ SVG.Presentation.attrib,
2763
+ SVG.FilterPrimitiveWithIn.attrib,
2764
+ attribute order { NumberOptionalNumber.datatype }?,
2765
+ attribute kernelMatrix { text },
2766
+ attribute divisor { Number.datatype }?,
2767
+ attribute bias { Number.datatype }?,
2768
+ attribute targetX { Integer.datatype }?,
2769
+ attribute targetY { Integer.datatype }?,
2770
+ [ a:defaultValue = "duplicate" ]
2771
+ attribute edgeMode { "duplicate" | "wrap" | "none" }?,
2772
+ attribute kernelUnitLength { NumberOptionalNumber.datatype }?,
2773
+ attribute preserveAlpha { Boolean.datatype }?,
2774
+ SVG.feConvolveMatrix.content
2775
+ }
2776
+ # end of SVG.feConvolveMatrix.element
2777
+
2778
+ # end of SVG.feConvolveMatrix.attlist
2779
+
2780
+ # feDiffuseLighting: Filter Effect Diffuse Lighting Element
2781
+ SVG.feDiffuseLighting.extra.content = notAllowed
2782
+ SVG.feDiffuseLighting.content =
2783
+ (feDistantLight | fePointLight | feSpotLight),
2784
+ (animate | set | animateColor | SVG.feDiffuseLighting.extra.content)*
2785
+ feDiffuseLighting =
2786
+ element feDiffuseLighting {
2787
+ SVG.Core.attrib,
2788
+ SVG.Style.attrib,
2789
+ SVG.Presentation.attrib,
2790
+ SVG.FilterPrimitiveWithIn.attrib,
2791
+ attribute surfaceScale { Number.datatype }?,
2792
+ attribute diffuseConstant { Number.datatype }?,
2793
+ attribute kernelUnitLength { NumberOptionalNumber.datatype }?,
2794
+ SVG.feDiffuseLighting.content
2795
+ }
2796
+ # end of SVG.feDiffuseLighting.element
2797
+
2798
+ # end of SVG.feDiffuseLighting.attlist
2799
+
2800
+ # feDisplacementMap: Filter Effect Displacement Map Element
2801
+ SVG.feDisplacementMap.extra.content = notAllowed
2802
+ SVG.feDisplacementMap.content =
2803
+ (animate | set | SVG.feDisplacementMap.extra.content)*
2804
+ feDisplacementMap =
2805
+ element feDisplacementMap {
2806
+ SVG.Core.attrib,
2807
+ SVG.Style.attrib,
2808
+ SVG.Presentation.attrib,
2809
+ SVG.FilterPrimitiveWithIn.attrib,
2810
+ attribute in2 { text },
2811
+ attribute scale { Number.datatype }?,
2812
+ [ a:defaultValue = "A" ]
2813
+ attribute xChannelSelector { "R" | "G" | "B" | "A" }?,
2814
+ [ a:defaultValue = "A" ]
2815
+ attribute yChannelSelector { "R" | "G" | "B" | "A" }?,
2816
+ SVG.feDisplacementMap.content
2817
+ }
2818
+ # end of SVG.feDisplacementMap.element
2819
+
2820
+ # end of SVG.feDisplacementMap.attlist
2821
+
2822
+ # feFlood: Filter Effect Flood Element ..............
2823
+ SVG.feFlood.extra.content = notAllowed
2824
+ SVG.feFlood.content =
2825
+ (animate | set | animateColor | SVG.feFlood.extra.content)*
2826
+ feFlood =
2827
+ element feFlood {
2828
+ SVG.Core.attrib,
2829
+ SVG.Style.attrib,
2830
+ SVG.Presentation.attrib,
2831
+ SVG.FilterPrimitive.attrib,
2832
+ SVG.feFlood.content
2833
+ }
2834
+ # end of SVG.feFlood.element
2835
+
2836
+ # end of SVG.feFlood.attlist
2837
+
2838
+ # feGaussianBlur: Filter Effect Gaussian Blur Element
2839
+ SVG.feGaussianBlur.extra.content = notAllowed
2840
+ SVG.feGaussianBlur.content =
2841
+ (animate | set | SVG.feGaussianBlur.extra.content)*
2842
+ feGaussianBlur =
2843
+ element feGaussianBlur {
2844
+ SVG.Core.attrib,
2845
+ SVG.Style.attrib,
2846
+ SVG.Presentation.attrib,
2847
+ SVG.FilterPrimitiveWithIn.attrib,
2848
+ attribute stdDeviation { NumberOptionalNumber.datatype }?,
2849
+ SVG.feGaussianBlur.content
2850
+ }
2851
+ # end of SVG.feGaussianBlur.element
2852
+
2853
+ # end of SVG.feGaussianBlur.attlist
2854
+
2855
+ # feImage: Filter Effect Image Element ..............
2856
+ SVG.feImage.extra.content = notAllowed
2857
+ SVG.feImage.content =
2858
+ (animate | set | animateTransform | SVG.feImage.extra.content)*
2859
+ feImage =
2860
+ element feImage {
2861
+ SVG.Core.attrib,
2862
+ SVG.Style.attrib,
2863
+ SVG.Presentation.attrib,
2864
+ SVG.FilterPrimitive.attrib,
2865
+ SVG.XLinkEmbed.attrib,
2866
+ SVG.External.attrib,
2867
+ [ a:defaultValue = "xMidYMid meet" ]
2868
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
2869
+ SVG.feImage.content
2870
+ }
2871
+ # end of SVG.feImage.element
2872
+
2873
+ # end of SVG.feImage.attlist
2874
+
2875
+ # feMerge: Filter Effect Merge Element ..............
2876
+ SVG.feMerge.extra.content = notAllowed
2877
+ SVG.feMerge.content = (feMergeNode | SVG.feMerge.extra.content)*
2878
+ feMerge =
2879
+ element feMerge {
2880
+ SVG.Core.attrib,
2881
+ SVG.Style.attrib,
2882
+ SVG.Presentation.attrib,
2883
+ SVG.FilterPrimitive.attrib,
2884
+ SVG.feMerge.content
2885
+ }
2886
+ # end of SVG.feMerge.element
2887
+
2888
+ # end of SVG.feMerge.attlist
2889
+
2890
+ # feMergeNode: Filter Effect Merge Node Element .....
2891
+ SVG.feMergeNode.extra.content = notAllowed
2892
+ SVG.feMergeNode.content =
2893
+ (animate | set | SVG.feMergeNode.extra.content)*
2894
+ feMergeNode =
2895
+ element feMergeNode {
2896
+ SVG.Core.attrib,
2897
+ attribute in { text }?,
2898
+ SVG.feMergeNode.content
2899
+ }
2900
+ # end of SVG.feMergeNode.element
2901
+
2902
+ # end of SVG.feMergeNode.attlist
2903
+
2904
+ # feMorphology: Filter Effect Morphology Element ....
2905
+ SVG.feMorphology.extra.content = notAllowed
2906
+ SVG.feMorphology.content =
2907
+ (animate | set | SVG.feMorphology.extra.content)*
2908
+ feMorphology =
2909
+ element feMorphology {
2910
+ SVG.Core.attrib,
2911
+ SVG.Style.attrib,
2912
+ SVG.Presentation.attrib,
2913
+ SVG.FilterPrimitiveWithIn.attrib,
2914
+ [ a:defaultValue = "erode" ]
2915
+ attribute operator { "erode" | "dilate" }?,
2916
+ attribute radius { NumberOptionalNumber.datatype }?,
2917
+ SVG.feMorphology.content
2918
+ }
2919
+ # end of SVG.feMorphology.element
2920
+
2921
+ # end of SVG.feMorphology.attlist
2922
+
2923
+ # feOffset: Filter Effect Offset Element ............
2924
+ SVG.feOffset.extra.content = notAllowed
2925
+ SVG.feOffset.content = (animate | set | SVG.feOffset.extra.content)*
2926
+ feOffset =
2927
+ element feOffset {
2928
+ SVG.Core.attrib,
2929
+ SVG.Style.attrib,
2930
+ SVG.Presentation.attrib,
2931
+ SVG.FilterPrimitiveWithIn.attrib,
2932
+ attribute dx { Number.datatype }?,
2933
+ attribute dy { Number.datatype }?,
2934
+ SVG.feOffset.content
2935
+ }
2936
+ # end of SVG.feOffset.element
2937
+
2938
+ # end of SVG.feOffset.attlist
2939
+
2940
+ # feSpecularLighting: Filter Effect Specular Lighting Element
2941
+ SVG.feSpecularLighting.extra.content = notAllowed
2942
+ SVG.feSpecularLighting.content =
2943
+ (feDistantLight | fePointLight | feSpotLight),
2944
+ (animate | set | animateColor | SVG.feSpecularLighting.extra.content)*
2945
+ feSpecularLighting =
2946
+ element feSpecularLighting {
2947
+ SVG.Core.attrib,
2948
+ SVG.Style.attrib,
2949
+ SVG.Presentation.attrib,
2950
+ SVG.FilterPrimitiveWithIn.attrib,
2951
+ attribute surfaceScale { Number.datatype }?,
2952
+ attribute specularConstant { Number.datatype }?,
2953
+ attribute specularExponent { Number.datatype }?,
2954
+ attribute kernelUnitLength { NumberOptionalNumber.datatype }?,
2955
+ SVG.feSpecularLighting.content
2956
+ }
2957
+ # end of SVG.feSpecularLighting.element
2958
+
2959
+ # end of SVG.feSpecularLighting.attlist
2960
+
2961
+ # feTile: Filter Effect Tile Element ................
2962
+ SVG.feTile.extra.content = notAllowed
2963
+ SVG.feTile.content = (animate | set | SVG.feTile.extra.content)*
2964
+ feTile =
2965
+ element feTile {
2966
+ SVG.Core.attrib,
2967
+ SVG.Style.attrib,
2968
+ SVG.Presentation.attrib,
2969
+ SVG.FilterPrimitiveWithIn.attrib,
2970
+ SVG.feTile.content
2971
+ }
2972
+ # end of SVG.feTile.element
2973
+
2974
+ # end of SVG.feTile.attlist
2975
+
2976
+ # feTurbulence: Filter Effect Turbulence Element ....
2977
+ SVG.feTurbulence.extra.content = notAllowed
2978
+ SVG.feTurbulence.content =
2979
+ (animate | set | SVG.feTurbulence.extra.content)*
2980
+ feTurbulence =
2981
+ element feTurbulence {
2982
+ SVG.Core.attrib,
2983
+ SVG.Style.attrib,
2984
+ SVG.Presentation.attrib,
2985
+ SVG.FilterPrimitive.attrib,
2986
+ attribute baseFrequency { NumberOptionalNumber.datatype }?,
2987
+ attribute numOctaves { Integer.datatype }?,
2988
+ attribute seed { Number.datatype }?,
2989
+ [ a:defaultValue = "noStitch" ]
2990
+ attribute stitchTiles { "stitch" | "noStitch" }?,
2991
+ [ a:defaultValue = "turbulence" ]
2992
+ attribute type { "fractalNoise" | "turbulence" }?,
2993
+ SVG.feTurbulence.content
2994
+ }
2995
+ # end of SVG.feTurbulence.element
2996
+
2997
+ # end of SVG.feTurbulence.attlist
2998
+
2999
+ # feDistantLight: Filter Effect Distant Light Element
3000
+ SVG.feDistantLight.extra.content = notAllowed
3001
+ SVG.feDistantLight.content =
3002
+ (animate | set | SVG.feDistantLight.extra.content)*
3003
+ feDistantLight =
3004
+ element feDistantLight {
3005
+ SVG.Core.attrib,
3006
+ attribute azimuth { Number.datatype }?,
3007
+ attribute elevation { Number.datatype }?,
3008
+ SVG.feDistantLight.content
3009
+ }
3010
+ # end of SVG.feDistantLight.element
3011
+
3012
+ # end of SVG.feDistantLight.attlist
3013
+
3014
+ # fePointLight: Filter Effect Point Light Element ...
3015
+ SVG.fePointLight.extra.content = notAllowed
3016
+ SVG.fePointLight.content =
3017
+ (animate | set | SVG.fePointLight.extra.content)*
3018
+ fePointLight =
3019
+ element fePointLight {
3020
+ SVG.Core.attrib,
3021
+ attribute x { Number.datatype }?,
3022
+ attribute y { Number.datatype }?,
3023
+ attribute z { Number.datatype }?,
3024
+ SVG.fePointLight.content
3025
+ }
3026
+ # end of SVG.fePointLight.element
3027
+
3028
+ # end of SVG.fePointLight.attlist
3029
+
3030
+ # feSpotLight: Filter Effect Spot Light Element .....
3031
+ SVG.feSpotLight.extra.content = notAllowed
3032
+ SVG.feSpotLight.content =
3033
+ (animate | set | SVG.feSpotLight.extra.content)*
3034
+ feSpotLight =
3035
+ element feSpotLight {
3036
+ SVG.Core.attrib,
3037
+ attribute x { Number.datatype }?,
3038
+ attribute y { Number.datatype }?,
3039
+ attribute z { Number.datatype }?,
3040
+ attribute pointsAtX { Number.datatype }?,
3041
+ attribute pointsAtY { Number.datatype }?,
3042
+ attribute pointsAtZ { Number.datatype }?,
3043
+ attribute specularExponent { Number.datatype }?,
3044
+ attribute limitingConeAngle { Number.datatype }?,
3045
+ SVG.feSpotLight.content
3046
+ }
3047
+ # end of SVG.feSpotLight.element
3048
+
3049
+ # end of SVG.feSpotLight.attlist
3050
+
3051
+ # feFuncR: Filter Effect Function Red Element .......
3052
+ SVG.feFuncR.extra.content = notAllowed
3053
+ SVG.feFuncR.content = (animate | set | SVG.feFuncR.extra.content)*
3054
+ feFuncR =
3055
+ element feFuncR {
3056
+ SVG.Core.attrib,
3057
+ attribute type {
3058
+ "identity" | "table" | "discrete" | "linear" | "gamma"
3059
+ },
3060
+ attribute tableValues { text }?,
3061
+ attribute slope { Number.datatype }?,
3062
+ attribute intercept { Number.datatype }?,
3063
+ attribute amplitude { Number.datatype }?,
3064
+ attribute exponent { Number.datatype }?,
3065
+ attribute offset { Number.datatype }?,
3066
+ SVG.feFuncR.content
3067
+ }
3068
+ # end of SVG.feFuncR.element
3069
+
3070
+ # end of SVG.feFuncR.attlist
3071
+
3072
+ # feFuncG: Filter Effect Function Green Element .....
3073
+ SVG.feFuncG.extra.content = notAllowed
3074
+ SVG.feFuncG.content = (animate | set | SVG.feFuncG.extra.content)*
3075
+ feFuncG =
3076
+ element feFuncG {
3077
+ SVG.Core.attrib,
3078
+ attribute type {
3079
+ "identity" | "table" | "discrete" | "linear" | "gamma"
3080
+ },
3081
+ attribute tableValues { text }?,
3082
+ attribute slope { Number.datatype }?,
3083
+ attribute intercept { Number.datatype }?,
3084
+ attribute amplitude { Number.datatype }?,
3085
+ attribute exponent { Number.datatype }?,
3086
+ attribute offset { Number.datatype }?,
3087
+ SVG.feFuncG.content
3088
+ }
3089
+ # end of SVG.feFuncG.element
3090
+
3091
+ # end of SVG.feFuncG.attlist
3092
+
3093
+ # feFuncB: Filter Effect Function Blue Element ......
3094
+ SVG.feFuncB.extra.content = notAllowed
3095
+ SVG.feFuncB.content = (animate | set | SVG.feFuncB.extra.content)*
3096
+ feFuncB =
3097
+ element feFuncB {
3098
+ SVG.Core.attrib,
3099
+ attribute type {
3100
+ "identity" | "table" | "discrete" | "linear" | "gamma"
3101
+ },
3102
+ attribute tableValues { text }?,
3103
+ attribute slope { Number.datatype }?,
3104
+ attribute intercept { Number.datatype }?,
3105
+ attribute amplitude { Number.datatype }?,
3106
+ attribute exponent { Number.datatype }?,
3107
+ attribute offset { Number.datatype }?,
3108
+ SVG.feFuncB.content
3109
+ }
3110
+ # end of SVG.feFuncB.element
3111
+
3112
+ # end of SVG.feFuncB.attlist
3113
+
3114
+ # feFuncA: Filter Effect Function Alpha Element .....
3115
+ SVG.feFuncA.extra.content = notAllowed
3116
+ SVG.feFuncA.content = (animate | set | SVG.feFuncA.extra.content)*
3117
+ feFuncA =
3118
+ element feFuncA {
3119
+ SVG.Core.attrib,
3120
+ attribute type {
3121
+ "identity" | "table" | "discrete" | "linear" | "gamma"
3122
+ },
3123
+ attribute tableValues { text }?,
3124
+ attribute slope { Number.datatype }?,
3125
+ attribute intercept { Number.datatype }?,
3126
+ attribute amplitude { Number.datatype }?,
3127
+ attribute exponent { Number.datatype }?,
3128
+ attribute offset { Number.datatype }?,
3129
+ SVG.feFuncA.content
3130
+ }
3131
+ # end of SVG.feFuncA.element
3132
+
3133
+ # end of SVG.feFuncA.attlist
3134
+
3135
+ # end of svg-filter.mod
3136
+
3137
+ # Cursor Module ...............................................
3138
+
3139
+ # .......................................................................
3140
+
3141
+ # SVG 1.1 Cursor Module .................................................
3142
+
3143
+ # file: svg-cursor.mod
3144
+ #
3145
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3146
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3147
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3148
+ #
3149
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3150
+ #
3151
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Cursor//EN"
3152
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-cursor.mod"
3153
+ #
3154
+ # .......................................................................
3155
+
3156
+ # Cursor
3157
+ #
3158
+ # cursor
3159
+ #
3160
+ # This module declares markup to provide support for cursor.
3161
+
3162
+ # 'cursor' property/attribute value (e.g., 'crosshair', <uri>)
3163
+
3164
+ # Qualified Names (Default) .........................
3165
+
3166
+ # Attribute Collections (Default) ...................
3167
+
3168
+ # SVG.Cursor.class ..................................
3169
+
3170
+ # SVG.Cursor.attrib .................................
3171
+
3172
+ # cursor: Cursor Element ............................
3173
+ SVG.cursor.extra.content = notAllowed
3174
+ SVG.cursor.content = (SVG.Description.class | SVG.cursor.extra.content)*
3175
+ cursor =
3176
+ element cursor {
3177
+ SVG.Core.attrib,
3178
+ SVG.Conditional.attrib,
3179
+ SVG.XLinkRequired.attrib,
3180
+ SVG.External.attrib,
3181
+ attribute x { Coordinate.datatype }?,
3182
+ attribute y { Coordinate.datatype }?,
3183
+ SVG.cursor.content
3184
+ }
3185
+ # end of SVG.cursor.element
3186
+
3187
+ # end of SVG.cursor.attlist
3188
+
3189
+ # end of svg-cursor.mod
3190
+
3191
+ # Hyperlinking Module .........................................
3192
+
3193
+ # .......................................................................
3194
+
3195
+ # SVG 1.1 Hyperlinking Module ...........................................
3196
+
3197
+ # file: svg-hyperlink.mod
3198
+ #
3199
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3200
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3201
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3202
+ #
3203
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3204
+ #
3205
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Hyperlinking//EN"
3206
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-hyperlink.mod"
3207
+ #
3208
+ # .......................................................................
3209
+
3210
+ # Hyperlinking
3211
+ #
3212
+ # a
3213
+ #
3214
+ # This module declares markup to provide support for hyper linking.
3215
+
3216
+ # link to this target
3217
+ LinkTarget.datatype = xsd:NMTOKEN
3218
+ # Qualified Names (Default) .........................
3219
+
3220
+ # Attribute Collections (Default) ...................
3221
+
3222
+ # SVG.Hyperlink.class ...............................
3223
+
3224
+ # SVG.Presentation.attrib ...........................
3225
+
3226
+ # a: Anchor Element .................................
3227
+ SVG.a.extra.content = notAllowed
3228
+ SVG.a.content =
3229
+ (text
3230
+ | SVG.Description.class
3231
+ | SVG.Animation.class
3232
+ | SVG.Structure.class
3233
+ | SVG.Conditional.class
3234
+ | SVG.Image.class
3235
+ | SVG.Style.class
3236
+ | SVG.Shape.class
3237
+ | SVG.Text.class
3238
+ | SVG.Marker.class
3239
+ | SVG.ColorProfile.class
3240
+ | SVG.Gradient.class
3241
+ | SVG.Pattern.class
3242
+ | SVG.Clip.class
3243
+ | SVG.Mask.class
3244
+ | SVG.Filter.class
3245
+ | SVG.Cursor.class
3246
+ | SVG.Hyperlink.class
3247
+ | SVG.View.class
3248
+ | SVG.Script.class
3249
+ | SVG.Font.class
3250
+ | SVG.Extensibility.class
3251
+ | SVG.a.extra.content)*
3252
+ a =
3253
+ element a {
3254
+ SVG.Core.attrib,
3255
+ SVG.Conditional.attrib,
3256
+ SVG.Style.attrib,
3257
+ SVG.Presentation.attrib,
3258
+ SVG.GraphicalEvents.attrib,
3259
+ SVG.XLinkReplace.attrib,
3260
+ SVG.External.attrib,
3261
+ attribute transform { TransformList.datatype }?,
3262
+ attribute target { LinkTarget.datatype }?,
3263
+ SVG.a.content
3264
+ }
3265
+ # end of SVG.a.element
3266
+
3267
+ # end of SVG.a.attlist
3268
+
3269
+ # end of svg-hyperlink.mod
3270
+
3271
+ # View Module .................................................
3272
+
3273
+ # .......................................................................
3274
+
3275
+ # SVG 1.1 View Module ...................................................
3276
+
3277
+ # file: svg-view.mod
3278
+ #
3279
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3280
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3281
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3282
+ #
3283
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3284
+ #
3285
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 View//EN"
3286
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-view.mod"
3287
+ #
3288
+ # .......................................................................
3289
+
3290
+ # View
3291
+ #
3292
+ # view
3293
+ #
3294
+ # This module declares markup to provide support for view.
3295
+
3296
+ # Qualified Names (Default) .........................
3297
+
3298
+ # Attribute Collections (Default) ...................
3299
+
3300
+ # SVG.View.class ....................................
3301
+
3302
+ # view: View Element ................................
3303
+ SVG.view.extra.content = notAllowed
3304
+ SVG.view.content = (SVG.Description.class | SVG.view.extra.content)*
3305
+ view =
3306
+ element view {
3307
+ SVG.Core.attrib,
3308
+ SVG.External.attrib,
3309
+ attribute viewBox { ViewBoxSpec.datatype }?,
3310
+ [ a:defaultValue = "xMidYMid meet" ]
3311
+ attribute preserveAspectRatio { PreserveAspectRatioSpec.datatype }?,
3312
+ [ a:defaultValue = "magnify" ]
3313
+ attribute zoomAndPan { "disable" | "magnify" }?,
3314
+ attribute viewTarget { text }?,
3315
+ SVG.view.content
3316
+ }
3317
+ # end of SVG.view.element
3318
+
3319
+ # end of SVG.view.attlist
3320
+
3321
+ # end of svg-view.mod
3322
+
3323
+ # Scripting Module ............................................
3324
+
3325
+ # .......................................................................
3326
+
3327
+ # SVG 1.1 Scripting Module ..............................................
3328
+
3329
+ # file: svg-script.mod
3330
+ #
3331
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3332
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3333
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3334
+ #
3335
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3336
+ #
3337
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Scripting//EN"
3338
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-script.mod"
3339
+ #
3340
+ # .......................................................................
3341
+
3342
+ # Scripting
3343
+ #
3344
+ # script
3345
+ #
3346
+ # This module declares markup to provide support for scripting.
3347
+
3348
+ # Qualified Names (Default) .........................
3349
+
3350
+ # Attribute Collections (Default) ...................
3351
+
3352
+ # SVG.Script.class ..................................
3353
+
3354
+ # script: Script Element ............................
3355
+ SVG.script.extra.content = notAllowed
3356
+ SVG.script.content = (text | SVG.script.extra.content)*
3357
+ script =
3358
+ element script {
3359
+ SVG.Core.attrib,
3360
+ SVG.XLink.attrib,
3361
+ SVG.External.attrib,
3362
+ attribute type { ContentType.datatype },
3363
+ SVG.script.content
3364
+ }
3365
+ # end of SVG.script.element
3366
+
3367
+ # end of SVG.script.attlist
3368
+
3369
+ # end of svg-script.mod
3370
+
3371
+ # Animation Module ............................................
3372
+
3373
+ # .......................................................................
3374
+
3375
+ # SVG 1.1 Animation Module ..............................................
3376
+
3377
+ # file: svg-animation.mod
3378
+ #
3379
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3380
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3381
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3382
+ #
3383
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3384
+ #
3385
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Animation//EN"
3386
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-animation.mod"
3387
+ #
3388
+ # .......................................................................
3389
+
3390
+ # Animation
3391
+ #
3392
+ # animate, set, animateMotion, animateColor, animateTransform, mpath
3393
+ #
3394
+ # This module declares markup to provide support for animation.
3395
+
3396
+ # Qualified Names (Default) .........................
3397
+
3398
+ # Attribute Collections (Default) ...................
3399
+
3400
+ # SVG.Animation.class ...............................
3401
+
3402
+ # SVG.Animation.attrib ..............................
3403
+ SVG.Animation.extra.attrib = empty
3404
+ SVG.Animation.attrib = SVG.XLink.attrib, SVG.Animation.extra.attrib
3405
+ # SVG.AnimationAttribute.attrib .....................
3406
+ SVG.AnimationAttribute.extra.attrib = empty
3407
+ SVG.AnimationAttribute.attrib =
3408
+ attribute attributeName { text },
3409
+ attribute attributeType { text }?,
3410
+ SVG.AnimationAttribute.extra.attrib
3411
+ # SVG.AnimationTiming.attrib ........................
3412
+ SVG.AnimationTiming.extra.attrib = empty
3413
+ SVG.AnimationTiming.attrib =
3414
+ attribute begin { text }?,
3415
+ attribute dur { text }?,
3416
+ attribute end { text }?,
3417
+ attribute min { text }?,
3418
+ attribute max { text }?,
3419
+ [ a:defaultValue = "always" ]
3420
+ attribute restart { "always" | "never" | "whenNotActive" }?,
3421
+ attribute repeatCount { text }?,
3422
+ attribute repeatDur { text }?,
3423
+ [ a:defaultValue = "remove" ] attribute fill { "remove" | "freeze" }?,
3424
+ SVG.AnimationTiming.extra.attrib
3425
+ # SVG.AnimationValue.attrib .........................
3426
+ SVG.AnimationValue.extra.attrib = empty
3427
+ SVG.AnimationValue.attrib =
3428
+ [ a:defaultValue = "linear" ]
3429
+ attribute calcMode { "discrete" | "linear" | "paced" | "spline" }?,
3430
+ attribute values { text }?,
3431
+ attribute keyTimes { text }?,
3432
+ attribute keySplines { text }?,
3433
+ attribute from { text }?,
3434
+ attribute to { text }?,
3435
+ attribute by { text }?,
3436
+ SVG.AnimationValue.extra.attrib
3437
+ # SVG.AnimationAddtion.attrib .......................
3438
+ SVG.AnimationAddtion.extra.attrib = empty
3439
+ SVG.AnimationAddtion.attrib =
3440
+ [ a:defaultValue = "replace" ]
3441
+ attribute additive { "replace" | "sum" }?,
3442
+ [ a:defaultValue = "none" ] attribute accumulate { "none" | "sum" }?,
3443
+ SVG.AnimationAddtion.extra.attrib
3444
+ # animate: Animate Element ..........................
3445
+ SVG.animate.extra.content = notAllowed
3446
+ SVG.animate.content =
3447
+ (SVG.Description.class | SVG.animate.extra.content)*
3448
+ animate =
3449
+ element animate {
3450
+ SVG.Core.attrib,
3451
+ SVG.Conditional.attrib,
3452
+ SVG.AnimationEvents.attrib,
3453
+ SVG.External.attrib,
3454
+ SVG.Animation.attrib,
3455
+ SVG.AnimationAttribute.attrib,
3456
+ SVG.AnimationTiming.attrib,
3457
+ SVG.AnimationValue.attrib,
3458
+ SVG.AnimationAddtion.attrib,
3459
+ SVG.animate.content
3460
+ }
3461
+ # end of SVG.animate.element
3462
+
3463
+ # end of SVG.animate.attlist
3464
+
3465
+ # set: Set Element ..................................
3466
+ SVG.set.extra.content = notAllowed
3467
+ SVG.set.content = (SVG.Description.class | SVG.set.extra.content)*
3468
+ set =
3469
+ element set {
3470
+ SVG.Core.attrib,
3471
+ SVG.Conditional.attrib,
3472
+ SVG.AnimationEvents.attrib,
3473
+ SVG.External.attrib,
3474
+ SVG.Animation.attrib,
3475
+ SVG.AnimationAttribute.attrib,
3476
+ SVG.AnimationTiming.attrib,
3477
+ attribute to { text }?,
3478
+ SVG.set.content
3479
+ }
3480
+ # end of SVG.set.element
3481
+
3482
+ # end of SVG.set.attlist
3483
+
3484
+ # animateMotion: Animate Motion Element .............
3485
+ SVG.animateMotion.extra.content = notAllowed
3486
+ SVG.animateMotion.content =
3487
+ (mpath, (SVG.Description.class | SVG.animateMotion.extra.content)*)
3488
+ | ((SVG.Description.class | SVG.animateMotion.extra.content)+,
3489
+ mpath,
3490
+ ((SVG.Description.class | SVG.animateMotion.extra.content)*)?)
3491
+ animateMotion =
3492
+ element animateMotion {
3493
+ SVG.Core.attrib,
3494
+ SVG.Conditional.attrib,
3495
+ SVG.AnimationEvents.attrib,
3496
+ SVG.External.attrib,
3497
+ SVG.Animation.attrib,
3498
+ SVG.AnimationTiming.attrib,
3499
+ SVG.AnimationAddtion.attrib,
3500
+ [ a:defaultValue = "paced" ]
3501
+ attribute calcMode { "discrete" | "linear" | "paced" | "spline" }?,
3502
+ attribute values { text }?,
3503
+ attribute keyTimes { text }?,
3504
+ attribute keySplines { text }?,
3505
+ attribute from { text }?,
3506
+ attribute to { text }?,
3507
+ attribute by { text }?,
3508
+ attribute path { text }?,
3509
+ attribute keyPoints { text }?,
3510
+ attribute rotate { text }?,
3511
+ attribute origin { text }?,
3512
+ SVG.animateMotion.content
3513
+ }
3514
+ # end of SVG.animateMotion.element
3515
+
3516
+ # end of SVG.animateMotion.attlist
3517
+
3518
+ # animateColor: Animate Color Element ...............
3519
+ SVG.animateColor.extra.content = notAllowed
3520
+ SVG.animateColor.content =
3521
+ (SVG.Description.class | SVG.animateColor.extra.content)*
3522
+ animateColor =
3523
+ element animateColor {
3524
+ SVG.Core.attrib,
3525
+ SVG.Conditional.attrib,
3526
+ SVG.AnimationEvents.attrib,
3527
+ SVG.External.attrib,
3528
+ SVG.Animation.attrib,
3529
+ SVG.AnimationAttribute.attrib,
3530
+ SVG.AnimationTiming.attrib,
3531
+ SVG.AnimationValue.attrib,
3532
+ SVG.AnimationAddtion.attrib,
3533
+ SVG.animateColor.content
3534
+ }
3535
+ # end of SVG.animateColor.element
3536
+
3537
+ # end of SVG.animateColor.attlist
3538
+
3539
+ # animateTransform: Animate Transform Element .......
3540
+ SVG.animateTransform.extra.content = notAllowed
3541
+ SVG.animateTransform.content =
3542
+ (SVG.Description.class | SVG.animateTransform.extra.content)*
3543
+ animateTransform =
3544
+ element animateTransform {
3545
+ SVG.Core.attrib,
3546
+ SVG.Conditional.attrib,
3547
+ SVG.AnimationEvents.attrib,
3548
+ SVG.External.attrib,
3549
+ SVG.Animation.attrib,
3550
+ SVG.AnimationAttribute.attrib,
3551
+ SVG.AnimationTiming.attrib,
3552
+ SVG.AnimationValue.attrib,
3553
+ SVG.AnimationAddtion.attrib,
3554
+ [ a:defaultValue = "translate" ]
3555
+ attribute type {
3556
+ "translate" | "scale" | "rotate" | "skewX" | "skewY"
3557
+ }?,
3558
+ SVG.animateTransform.content
3559
+ }
3560
+ # end of SVG.animateTransform.element
3561
+
3562
+ # end of SVG.animateTransform.attlist
3563
+
3564
+ # mpath: Motion Path Element ........................
3565
+ SVG.mpath.extra.content = notAllowed
3566
+ SVG.mpath.content = (SVG.Description.class | SVG.mpath.extra.content)*
3567
+ mpath =
3568
+ element mpath {
3569
+ SVG.Core.attrib,
3570
+ SVG.XLinkRequired.attrib,
3571
+ SVG.External.attrib,
3572
+ SVG.mpath.content
3573
+ }
3574
+ # end of SVG.mpath.element
3575
+
3576
+ # end of SVG.mpath.attlist
3577
+
3578
+ # end of svg-animation.mod
3579
+
3580
+ # Font Module .................................................
3581
+
3582
+ # .......................................................................
3583
+
3584
+ # SVG 1.1 Font Module ...................................................
3585
+
3586
+ # file: svg-font.mod
3587
+ #
3588
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3589
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3590
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3591
+ #
3592
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3593
+ #
3594
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Font//EN"
3595
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-font.mod"
3596
+ #
3597
+ # .......................................................................
3598
+
3599
+ # Font
3600
+ #
3601
+ # font, font-face, glyph, missing-glyph, hkern, vkern, font-face-src,
3602
+ # font-face-uri, font-face-format, font-face-name
3603
+ #
3604
+ # This module declares markup to provide support for template.
3605
+
3606
+ # Qualified Names (Default) .........................
3607
+
3608
+ # Attribute Collections (Default) ...................
3609
+
3610
+ # SVG.Font.class ....................................
3611
+
3612
+ # SVG.Presentation.attrib ...........................
3613
+
3614
+ # font: Font Element ................................
3615
+ SVG.font.extra.content = notAllowed
3616
+ SVG.font.content =
3617
+ (SVG.Description.class
3618
+ | font-face
3619
+ | missing-glyph
3620
+ | glyph
3621
+ | hkern
3622
+ | vkern
3623
+ | SVG.font.extra.content)*
3624
+ font =
3625
+ element font {
3626
+ SVG.Core.attrib,
3627
+ SVG.Style.attrib,
3628
+ SVG.Presentation.attrib,
3629
+ SVG.External.attrib,
3630
+ attribute horiz-origin-x { Number.datatype }?,
3631
+ attribute horiz-origin-y { Number.datatype }?,
3632
+ attribute horiz-adv-x { Number.datatype },
3633
+ attribute vert-origin-x { Number.datatype }?,
3634
+ attribute vert-origin-y { Number.datatype }?,
3635
+ attribute vert-adv-y { Number.datatype }?,
3636
+ SVG.font.content
3637
+ }
3638
+ # end of SVG.font.element
3639
+
3640
+ # end of SVG.font.attlist
3641
+
3642
+ # font-face: Font Face Element ......................
3643
+ SVG.font-face.extra.content = notAllowed
3644
+ SVG.font-face.content =
3645
+ (font-face-src,
3646
+ (SVG.Description.class | SVG.font-face.extra.content)*)
3647
+ | ((SVG.Description.class | SVG.font-face.extra.content)+,
3648
+ font-face-src,
3649
+ ((SVG.Description.class | SVG.font-face.extra.content)*)?)
3650
+ font-face =
3651
+ element font-face {
3652
+ SVG.Core.attrib,
3653
+ attribute font-family { text }?,
3654
+ attribute font-style { text }?,
3655
+ attribute font-variant { text }?,
3656
+ attribute font-weight { text }?,
3657
+ attribute font-stretch { text }?,
3658
+ attribute font-size { text }?,
3659
+ attribute unicode-range { text }?,
3660
+ attribute units-per-em { Number.datatype }?,
3661
+ attribute panose-1 { text }?,
3662
+ attribute stemv { Number.datatype }?,
3663
+ attribute stemh { Number.datatype }?,
3664
+ attribute slope { Number.datatype }?,
3665
+ attribute cap-height { Number.datatype }?,
3666
+ attribute x-height { Number.datatype }?,
3667
+ attribute accent-height { Number.datatype }?,
3668
+ attribute ascent { Number.datatype }?,
3669
+ attribute descent { Number.datatype }?,
3670
+ attribute widths { text }?,
3671
+ attribute bbox { text }?,
3672
+ attribute ideographic { Number.datatype }?,
3673
+ attribute alphabetic { Number.datatype }?,
3674
+ attribute mathematical { Number.datatype }?,
3675
+ attribute hanging { Number.datatype }?,
3676
+ attribute v-ideographic { Number.datatype }?,
3677
+ attribute v-alphabetic { Number.datatype }?,
3678
+ attribute v-mathematical { Number.datatype }?,
3679
+ attribute v-hanging { Number.datatype }?,
3680
+ attribute underline-position { Number.datatype }?,
3681
+ attribute underline-thickness { Number.datatype }?,
3682
+ attribute strikethrough-position { Number.datatype }?,
3683
+ attribute strikethrough-thickness { Number.datatype }?,
3684
+ attribute overline-position { Number.datatype }?,
3685
+ attribute overline-thickness { Number.datatype }?,
3686
+ SVG.font-face.content
3687
+ }
3688
+ # end of SVG.font-face.element
3689
+
3690
+ # end of SVG.font-face.attlist
3691
+
3692
+ # glyph: Glyph Element ..............................
3693
+ SVG.glyph.extra.content = notAllowed
3694
+ SVG.glyph.content =
3695
+ (SVG.Description.class
3696
+ | SVG.Animation.class
3697
+ | SVG.Structure.class
3698
+ | SVG.Conditional.class
3699
+ | SVG.Image.class
3700
+ | SVG.Style.class
3701
+ | SVG.Shape.class
3702
+ | SVG.Text.class
3703
+ | SVG.Marker.class
3704
+ | SVG.ColorProfile.class
3705
+ | SVG.Gradient.class
3706
+ | SVG.Pattern.class
3707
+ | SVG.Clip.class
3708
+ | SVG.Mask.class
3709
+ | SVG.Filter.class
3710
+ | SVG.Cursor.class
3711
+ | SVG.Hyperlink.class
3712
+ | SVG.View.class
3713
+ | SVG.Script.class
3714
+ | SVG.Font.class
3715
+ | SVG.Extensibility.class
3716
+ | SVG.glyph.extra.content)*
3717
+ glyph =
3718
+ element glyph {
3719
+ SVG.Core.attrib,
3720
+ SVG.Style.attrib,
3721
+ SVG.Presentation.attrib,
3722
+ attribute unicode { text }?,
3723
+ attribute glyph-name { text }?,
3724
+ attribute d { PathData.datatype }?,
3725
+ attribute orientation { text }?,
3726
+ attribute arabic-form { text }?,
3727
+ attribute lang { LanguageCodes.datatype }?,
3728
+ attribute horiz-adv-x { Number.datatype }?,
3729
+ attribute vert-origin-x { Number.datatype }?,
3730
+ attribute vert-origin-y { Number.datatype }?,
3731
+ attribute vert-adv-y { Number.datatype }?,
3732
+ SVG.glyph.content
3733
+ }
3734
+ # end of SVG.glyph.element
3735
+
3736
+ # end of SVG.glyph.attlist
3737
+
3738
+ # missing-glyph: Missing Glyph Element ..............
3739
+ SVG.missing-glyph.extra.content = notAllowed
3740
+ SVG.missing-glyph.content =
3741
+ (SVG.Description.class
3742
+ | SVG.Animation.class
3743
+ | SVG.Structure.class
3744
+ | SVG.Conditional.class
3745
+ | SVG.Image.class
3746
+ | SVG.Style.class
3747
+ | SVG.Shape.class
3748
+ | SVG.Text.class
3749
+ | SVG.Marker.class
3750
+ | SVG.ColorProfile.class
3751
+ | SVG.Gradient.class
3752
+ | SVG.Pattern.class
3753
+ | SVG.Clip.class
3754
+ | SVG.Mask.class
3755
+ | SVG.Filter.class
3756
+ | SVG.Cursor.class
3757
+ | SVG.Hyperlink.class
3758
+ | SVG.View.class
3759
+ | SVG.Script.class
3760
+ | SVG.Font.class
3761
+ | SVG.Extensibility.class
3762
+ | SVG.missing-glyph.extra.content)*
3763
+ missing-glyph =
3764
+ element missing-glyph {
3765
+ SVG.Core.attrib,
3766
+ SVG.Style.attrib,
3767
+ SVG.Presentation.attrib,
3768
+ attribute d { PathData.datatype }?,
3769
+ attribute horiz-adv-x { Number.datatype }?,
3770
+ attribute vert-origin-x { Number.datatype }?,
3771
+ attribute vert-origin-y { Number.datatype }?,
3772
+ attribute vert-adv-y { Number.datatype }?,
3773
+ SVG.missing-glyph.content
3774
+ }
3775
+ # end of SVG.missing-glyph.element
3776
+
3777
+ # end of SVG.missing-glyph.attlist
3778
+
3779
+ # hkern: Horizontal Kerning Element .................
3780
+ SVG.hkern.content = empty
3781
+ hkern =
3782
+ element hkern {
3783
+ SVG.Core.attrib,
3784
+ attribute u1 { text }?,
3785
+ attribute g1 { text }?,
3786
+ attribute u2 { text }?,
3787
+ attribute g2 { text }?,
3788
+ attribute k { Number.datatype },
3789
+ SVG.hkern.content
3790
+ }
3791
+ # end of SVG.hkern.element
3792
+
3793
+ # end of SVG.hkern.attlist
3794
+
3795
+ # vkern: Vertical Kerning Element ...................
3796
+ SVG.vkern.content = empty
3797
+ vkern =
3798
+ element vkern {
3799
+ SVG.Core.attrib,
3800
+ attribute u1 { text }?,
3801
+ attribute g1 { text }?,
3802
+ attribute u2 { text }?,
3803
+ attribute g2 { text }?,
3804
+ attribute k { Number.datatype },
3805
+ SVG.vkern.content
3806
+ }
3807
+ # end of SVG.vkern.element
3808
+
3809
+ # end of SVG.vkern.attlist
3810
+
3811
+ # font-face-src: Font Face Source Element ...........
3812
+ SVG.font-face-src.extra.content = notAllowed
3813
+ SVG.font-face-src.content =
3814
+ (font-face-uri | font-face-name | SVG.font-face-src.extra.content)+
3815
+ font-face-src =
3816
+ element font-face-src { SVG.Core.attrib, SVG.font-face-src.content }
3817
+ # end of SVG.font-face-src.element
3818
+
3819
+ # end of SVG.font-face-src.attlist
3820
+
3821
+ # font-face-uri: Font Face URI Element ..............
3822
+ SVG.font-face-uri.extra.content = notAllowed
3823
+ SVG.font-face-uri.content =
3824
+ (font-face-format | SVG.font-face-uri.extra.content)*
3825
+ font-face-uri =
3826
+ element font-face-uri {
3827
+ SVG.Core.attrib, SVG.XLinkRequired.attrib, SVG.font-face-uri.content
3828
+ }
3829
+ # end of SVG.font-face-uri.element
3830
+
3831
+ # end of SVG.font-face-uri.attlist
3832
+
3833
+ # font-face-format: Font Face Format Element ........
3834
+ SVG.font-face-format.content = empty
3835
+ font-face-format =
3836
+ element font-face-format {
3837
+ SVG.Core.attrib,
3838
+ attribute string { text }?,
3839
+ SVG.font-face-format.content
3840
+ }
3841
+ # end of SVG.font-face-format.element
3842
+
3843
+ # end of SVG.font-face-format.attlist
3844
+
3845
+ # font-face-name: Font Face Name Element ............
3846
+ SVG.font-face-name.content = empty
3847
+ font-face-name =
3848
+ element font-face-name {
3849
+ SVG.Core.attrib,
3850
+ attribute name { text }?,
3851
+ SVG.font-face-name.content
3852
+ }
3853
+ # end of SVG.font-face-name.element
3854
+
3855
+ # end of SVG.font-face-name.attlist
3856
+
3857
+ # end of svg-font.mod
3858
+
3859
+ # Extensibility Module ........................................
3860
+
3861
+ # .......................................................................
3862
+
3863
+ # SVG 1.1 Extensibility Module ..........................................
3864
+
3865
+ # file: svg-extensibility.mod
3866
+ #
3867
+ # This is SVG, a language for describing two-dimensional graphics in XML.
3868
+ # Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
3869
+ # Revision: $Id: svg11-flat.rnc 3024 2011-07-10 08:29:17Z eb2mmrt $
3870
+ #
3871
+ # This DTD module is identified by the PUBLIC and SYSTEM identifiers:
3872
+ #
3873
+ # PUBLIC "-//W3C//ELEMENTS SVG 1.1 Extensibility//EN"
3874
+ # SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-extensibility.mod"
3875
+ #
3876
+ # .......................................................................
3877
+
3878
+ # Extensibility
3879
+ #
3880
+ # foreignObject
3881
+ #
3882
+ # This module declares markup to provide support for extensibility.
3883
+
3884
+ # Qualified Names (Default) .........................
3885
+
3886
+ # Attribute Collections (Default) ...................
3887
+
3888
+ # SVG.Extensibility.class ...........................
3889
+
3890
+ # SVG.Presentation.attrib ...........................
3891
+
3892
+ # foreignObject: Foreign Object Element .............
3893
+ SVG.foreignObject.extra.content = notAllowed
3894
+ SVG.foreignObject.content = (text | SVG.foreignObject.extra.content)*
3895
+ foreignObject =
3896
+ element foreignObject {
3897
+ SVG.Core.attrib,
3898
+ SVG.Conditional.attrib,
3899
+ SVG.Style.attrib,
3900
+ SVG.Presentation.attrib,
3901
+ SVG.GraphicalEvents.attrib,
3902
+ SVG.External.attrib,
3903
+ attribute x { Coordinate.datatype }?,
3904
+ attribute y { Coordinate.datatype }?,
3905
+ attribute width { Length.datatype },
3906
+ attribute height { Length.datatype },
3907
+ attribute transform { TransformList.datatype }?,
3908
+ SVG.foreignObject.content
3909
+ }
3910
+ start =
3911
+ feComposite
3912
+ | animate
3913
+ | cursor
3914
+ | feTile
3915
+ | font-face-src
3916
+ | feFlood
3917
+ | mask
3918
+ | feTurbulence
3919
+ | feFuncA
3920
+ | polygon
3921
+ | feFuncB
3922
+ | clipPath
3923
+ | animateTransform
3924
+ | feMorphology
3925
+ | tref
3926
+ | missing-glyph
3927
+ | feBlend
3928
+ | metadata
3929
+ | feColorMatrix
3930
+ | font-face-uri
3931
+ | \text
3932
+ | ellipse
3933
+ | symbol
3934
+ | linearGradient
3935
+ | foreignObject
3936
+ | font
3937
+ | radialGradient
3938
+ | glyph
3939
+ | feDisplacementMap
3940
+ | image
3941
+ | script
3942
+ | rect
3943
+ | hkern
3944
+ | feSpotLight
3945
+ | animateMotion
3946
+ | feComponentTransfer
3947
+ | altGlyphDef
3948
+ | animateColor
3949
+ | marker
3950
+ | font-face
3951
+ | vkern
3952
+ | view
3953
+ | filter
3954
+ | feMergeNode
3955
+ | stop
3956
+ | desc
3957
+ | feOffset
3958
+ | set
3959
+ | feMerge
3960
+ | line
3961
+ | use
3962
+ | switch
3963
+ | fePointLight
3964
+ | circle
3965
+ | color-profile
3966
+ | feSpecularLighting
3967
+ | title
3968
+ | polyline
3969
+ | style
3970
+ | path
3971
+ | altGlyph
3972
+ | feDiffuseLighting
3973
+ | font-face-format
3974
+ | g
3975
+ | defs
3976
+ | feFuncG
3977
+ | svg
3978
+ | a
3979
+ | feImage
3980
+ | textPath
3981
+ | feConvolveMatrix
3982
+ | altGlyphItem
3983
+ | mpath
3984
+ | feFuncR
3985
+ | font-face-name
3986
+ | tspan
3987
+ | feGaussianBlur
3988
+ | pattern
3989
+ | feDistantLight
3990
+ | glyphRef
3991
+ # end of SVG.foreignObject.element
3992
+
3993
+ # end of SVG.foreignObject.attlist
3994
+
3995
+ # end of svg-extensibility.mod
3996
+
3997
+ # end of SVG 1.1 DTD ....................................................
3998
+
3999
+ # .......................................................................