]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms/src/org/argeo/cms/acr/schemas/SVG.xsd
Use runtime namespace context as default.
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / acr / schemas / SVG.xsd
1 <?xml version="1.0"?>
2 <!-- edited with XML Spy v4.0.1 U (http://www.xmlspy.com) by Chris Lilley (W3C Staff) -->
3 <schema targetNamespace="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="unqualified" attributeFormDefault="unqualified" xml:lang="en">
4 <!-- don't declare the XML namespace; it is predeclared and redeclaring it upsets some software -->
5 <import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
6 <import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
7 <!-- simpleTypes -->
8 <simpleType name="BaselineShiftValueType">
9 <annotation>
10 <documentation>The actual definition is
11 baseline | sub | super | &lt;percentage&gt; | &lt;length&gt; | inherit
12 not sure that union can do this
13 </documentation>
14 </annotation>
15 <restriction base="string"/>
16 </simpleType>
17 <!-- SVG BooleanType not needed, already defined by XML Schema -->
18 <simpleType name="ClassListType">
19 <annotation>
20 <documentation>Space-separated list of classes</documentation>
21 </annotation>
22 <list itemType="string"/>
23 </simpleType>
24 <simpleType name="ClipValueType">
25 <annotation>
26 <documentation> &lt;shape&gt; | auto | inherit </documentation>
27 </annotation>
28 <restriction base="string"/>
29 </simpleType>
30 <simpleType name="ClipPathValueType">
31 <annotation>
32 <documentation>&lt;uri&gt; | none | inherit</documentation>
33 </annotation>
34 <restriction base="string"/>
35 </simpleType>
36 <simpleType name="ClipFillRuleType">
37 <annotation>
38 <documentation>'clip-rule' or fill-rule property/attribute value </documentation>
39 </annotation>
40 <restriction base="string">
41 <enumeration value="evenodd"/>
42 <enumeration value="nonzero"/>
43 <enumeration value="inherit"/>
44 </restriction>
45 </simpleType>
46 <simpleType name="ContentTypeType">
47 <annotation>
48 <documentation source="http://www.ietf.org/rfc/rfc2045.txt">media type, as per [RFC2045]</documentation>
49 <documentation>media type, as per [RFC2045] </documentation>
50 </annotation>
51 <restriction base="string"/>
52 </simpleType>
53 <simpleType name="CoordinateType">
54 <annotation>
55 <documentation source="http://www.w3.org/TR/SVG/types.html#DataTypeCoordinate">a &lt;co-ordinate&gt;</documentation>
56 <documentation>a coordinate, which is a number optionally followed immediately by a unit identifier. Perhaps it is possible to represent this as a union by declaring unit idenifiers as a type?</documentation>
57 </annotation>
58 <restriction base="string">
59 <pattern value="((((\+|\-)?((\d+)))|((\+|\-)?(((((\d+)?\.(\d+))|((\d+)\.))([eE](\+|\-)?(\d+))?)|((\d+)([eE](\+|\-)?(\d+))))))(em|ex|px|pt|pc|cm|mm|in|%)?)"/>
60 </restriction>
61 </simpleType>
62 <simpleType name="CoordinatesType">
63 <annotation>
64 <documentation>a space separated list of CoordinateType. Punt to 'string' for now</documentation>
65 </annotation>
66 <restriction base="string"/>
67 </simpleType>
68 <simpleType name="ColorType">
69 <annotation>
70 <documentation source="http://www.w3.org/TR/SVG/types.html#DataTypeColor">a CSS2 Color </documentation>
71 <documentation>Color as defined in CSS2 and XSL 1.0 plus additional recognised color keyword names (the 'X11 colors')</documentation>
72 </annotation>
73 <restriction base="string"/>
74 </simpleType>
75 <simpleType name="CursorValueType">
76 <annotation>
77 <documentation>Value is an optional comma-separated list orf uri references followed by one token from an enumerated list.
78 </documentation>
79 <documentation> [ [&lt;uri&gt; ,]* [ auto | crosshair | default | pointer | move | e-resize | ne-resize | nw-resize | n-resize | se-resize | sw-resize | s-resize | w-resize| text | wait | help ] ] | inherit </documentation>
80 </annotation>
81 <restriction base="string"/>
82 </simpleType>
83 <simpleType name="EnableBackgroundValueType">
84 <annotation>
85 <documentation>accumulate | new [ &lt;x&gt; &lt;y&gt; &lt;width&gt; &lt;height&gt; ] | inherit</documentation>
86 </annotation>
87 <restriction base="string"/>
88 </simpleType>
89 <simpleType name="ExtensionListType">
90 <annotation>
91 <documentation>extension list specification </documentation>
92 </annotation>
93 <restriction base="string"/>
94 </simpleType>
95 <simpleType name="FeatureListType">
96 <annotation>
97 <documentation>feature list specification </documentation>
98 </annotation>
99 <restriction base="string"/>
100 </simpleType>
101 <simpleType name="FilterValueType">
102 <annotation>
103 <documentation>&lt;uri&gt; | none | inherit
104 </documentation>
105 </annotation>
106 <restriction base="string"/>
107 </simpleType>
108 <simpleType name="FontFamilyValueType">
109 <annotation>
110 <documentation>[[ &lt;family-name&gt; | &lt;generic-family&gt; ],]* [&lt;family-name&gt; | &lt;generic-family&gt;] | inherit</documentation>
111 <documentation>'font-family' property/attribute value (i.e., list of fonts) </documentation>
112 </annotation>
113 <restriction base="string"/>
114 </simpleType>
115 <simpleType name="FontSizeValueType">
116 <annotation>
117 <documentation>'font-size' property/attribute value </documentation>
118 <documentation>&lt;absolute-size&gt; | &lt;relative-size&gt; | &lt;length&gt; | &lt;percentage&gt; | inherit</documentation>
119 </annotation>
120 <restriction base="string"/>
121 </simpleType>
122 <simpleType name="FontSizeAdjustValueType">
123 <annotation>
124 <documentation>'font-size-adjust' property/attribute value </documentation>
125 <documentation>&lt;number&gt; | none | inherit </documentation>
126 </annotation>
127 <restriction base="string"/>
128 </simpleType>
129 <simpleType name="GlyphOrientationHorizontalValueType">
130 <annotation>
131 <documentation>'glyph-orientation-horizontal' property/attribute value (e.g., &lt;angle&gt;)</documentation>
132 <documentation>&lt;angle&gt; | inherit</documentation>
133 </annotation>
134 <restriction base="string"/>
135 </simpleType>
136 <simpleType name="GlyphOrientationVerticalValueType">
137 <annotation>
138 <documentation>'glyph-orientation-vertical' property/attribute value (e.g., 'auto', &lt;angle&gt;)</documentation>
139 <documentation>auto | &lt;angle&gt; | inherit</documentation>
140 </annotation>
141 <restriction base="string"/>
142 </simpleType>
143 <!-- no need to declare IntegerType as XML Schema defines integers -->
144 <simpleType name="KerningValue">
145 <annotation>
146 <documentation>'kerning' property/attribute value (e.g., auto | &lt;length&gt;)</documentation>
147 <documentation>auto | &lt;length&gt; | inherit </documentation>
148 </annotation>
149 <restriction base="string"/>
150 </simpleType>
151 <simpleType name="LanguageCodeType">
152 <annotation>
153 <documentation>a language code, as per [RFC3066]</documentation>
154 <documentation source="http://www.ietf.org/rfc/rfc3066.txt"/>
155 </annotation>
156 <restriction base="string"/>
157 </simpleType>
158 <simpleType name="LanguageCodesType">
159 <annotation>
160 <documentation>a comma-separated list of language codes, as per [RFC3066]</documentation>
161 <documentation source="http://www.ietf.org/rfc/rfc3066.txt"/>
162 </annotation>
163 <restriction base="string"/>
164 </simpleType>
165 <simpleType name="LengthType">
166 <annotation>
167 <documentation>a &lt;length&gt;</documentation>
168 </annotation>
169 <restriction base="string">
170 <pattern value="((((\+|\-)?((\d+)))|((\+|\-)?(((((\d+)?\.(\d+))|((\d+)\.))([eE](\+|\-)?(\d+))?)|((\d+)([eE](\+|\-)?(\d+))))))(em|ex|px|pt|pc|cm|mm|in|%)?)"/>
171 </restriction>
172 </simpleType>
173 <simpleType name="LengthsType">
174 <annotation>
175 <documentation>a list of &lt;length&gt;s</documentation>
176 </annotation>
177 <restriction base="string"/>
178 <!-- make a regexp for this one -->
179 </simpleType>
180 <simpleType name="LinkTargetType">
181 <annotation>
182 <documentation>link to this target</documentation>
183 </annotation>
184 <restriction base="string"/>
185 </simpleType>
186 <simpleType name="MarkerValueType">
187 <annotation>
188 <documentation>'marker' property/attribute value (e.g., 'none', %URI;)</documentation>
189 </annotation>
190 <restriction base="string"/>
191 <!-- need to check this one, its a shorthand value -->
192 </simpleType>
193 <simpleType name="MaskValueType">
194 <annotation>
195 <documentation>'mask' property/attribute value (e.g., 'none', %URI;)</documentation>
196 <documentation>&lt;uri&gt; | none | inherit</documentation>
197 </annotation>
198 <restriction base="string"/>
199 </simpleType>
200 <simpleType name="MediaDescType">
201 <annotation>
202 <documentation>comma-separated list of media descriptors.</documentation>
203 </annotation>
204 <restriction base="string"/>
205 </simpleType>
206 <!-- no need to define NumberType as XML Schema has double -->
207 <simpleType name="NumberOptionalNumberType">
208 <annotation>
209 <documentation>list of &lt;number&gt;s, but at least one and at most two</documentation>
210 </annotation>
211 <restriction base="string"/>
212 </simpleType>
213 <simpleType name="NumberOrPercentageType">
214 <annotation>
215 <documentation>a &lt;number&gt; or a &lt;percentage&gt; </documentation>
216 </annotation>
217 <restriction base="string"/>
218 </simpleType>
219 <simpleType name="NumbersType">
220 <annotation>
221 <documentation>list of &lt;number&gt;s</documentation>
222 </annotation>
223 <restriction base="string"/>
224 </simpleType>
225 <simpleType name="OpacityValueType">
226 <annotation>
227 <documentation>opacity value (e.g., &lt;number&gt;) </documentation>
228 <documentation>&lt;alphavalue&gt; | inherit</documentation>
229 </annotation>
230 <restriction base="string"/>
231 </simpleType>
232 <simpleType name="PaintType">
233 <annotation>
234 <documentation>a 'fill' or 'stroke' property/attribute value</documentation>
235 </annotation>
236 <restriction base="string"/>
237 </simpleType>
238 <simpleType name="PathDataType">
239 <annotation>
240 <documentation>a path data specification</documentation>
241 <documentation source="http://www.w3.org/TR/SVG/paths.html"/>
242 <documentation>Yes, of course this was generated by a program!</documentation>
243 </annotation>
244 <restriction base="string"/>
245 </simpleType>
246 <simpleType name="PointsType">
247 <annotation>
248 <documentation>a list of points</documentation>
249 </annotation>
250 <restriction base="string"/>
251 </simpleType>
252 <simpleType name="PreserveAspectRatioSpecType">
253 <annotation>
254 <documentation>'preserveAspectRatio' attribute specification</documentation>
255 </annotation>
256 <restriction base="string">
257 <!-- HTMLBook Note: Revised pattern to be more accurate and match default values -->
258 <pattern value="\s*x(Min|Mid|Max)Y(Min|Mid|Max)(\s+(meet|slice)\s*)?"/>
259 </restriction>
260 </simpleType>
261 <simpleType name="ScriptType">
262 <annotation>
263 <documentation>script expression</documentation>
264 </annotation>
265 <restriction base="string"/>
266 </simpleType>
267 <simpleType name="SpacingValueType">
268 <annotation>
269 <documentation>'letter-spacing' or 'word-spacing' property/attribute value (e.g., normal | &lt;length&gt;)</documentation>
270 </annotation>
271 <restriction base="string"/>
272 </simpleType>
273 <simpleType name="StrokeDashArrayValueType">
274 <annotation>
275 <documentation>'stroke-dasharray' property/attribute value (e.g., 'none', list of &lt;number&gt;s)</documentation>
276 </annotation>
277 <restriction base="string"/>
278 </simpleType>
279 <simpleType name="StrokeDashOffsetValueType">
280 <annotation>
281 <documentation>'stroke-dashoffset' property/attribute value (e.g., 'none', &gt;length&gt;)</documentation>
282 </annotation>
283 <restriction base="string"/>
284 </simpleType>
285 <simpleType name="StrokeMiterLimitValueType">
286 <annotation>
287 <documentation>'stroke-miterlimit' property/attribute value (e.g., &lt;number&gt;)</documentation>
288 </annotation>
289 <restriction base="string"/>
290 </simpleType>
291 <simpleType name="StrokeWidthValueType">
292 <annotation>
293 <documentation>'stroke-width' property/attribute value (e.g., &lt;length&gt;)</documentation>
294 </annotation>
295 <restriction base="string"/>
296 </simpleType>
297 <!-- <simpleType name="StructuredTextType" base="string"/> expanded -->
298 <simpleType name="StyleSheetType">
299 <annotation>
300 <documentation>style sheet data</documentation>
301 </annotation>
302 <restriction base="string"/>
303 </simpleType>
304 <simpleType name="SVGColorType">
305 <annotation>
306 <documentation>An SVG color value (sRGB plus optional ICC)</documentation>
307 </annotation>
308 <restriction base="string"/>
309 </simpleType>
310 <!-- <simpleType name="TextType" base="string"/> not necessary (string) -->
311 <simpleType name="TextDecorationValueType">
312 <annotation>
313 <documentation>'text-decoration' property/attribute value (e.g., 'none', 'underline')</documentation>
314 </annotation>
315 <restriction base="string"/>
316 </simpleType>
317 <simpleType name="TransformListType">
318 <annotation>
319 <documentation>Yes, of course this was generated by a program!</documentation>
320 <documentation>list of transforms</documentation>
321 </annotation>
322 <restriction base="string"/>
323 </simpleType>
324 <!-- <simpleType name="URIType" base="string"/> not necessary (use AnyURI) -->
325 <simpleType name="ViewBoxSpecType">
326 <annotation>
327 <documentation>'viewBox' attribute specification</documentation>
328 </annotation>
329 <restriction base="string"/>
330 </simpleType>
331 <attributeGroup name="stdAttrs">
332 <annotation>
333 <documentation>All elements have an ID</documentation>
334 </annotation>
335 <attribute name="id" type="ID" use="optional"/>
336 <!-- HTMLBook Note: dropped invalid type attr on below element -->
337 <attribute ref="xml:base" use="optional"/>
338 </attributeGroup>
339 <attributeGroup name="langSpaceAttrs">
340 <annotation>
341 <documentation>Common attributes for elements that might contain character data content</documentation>
342 </annotation>
343 <attribute ref="xml:lang" use="optional"/>
344 <attribute ref="xml:space" use="optional"/>
345 </attributeGroup>
346 <attributeGroup name="testAttrs">
347 <annotation>
348 <documentation>Common attributes to check for system capabilities</documentation>
349 </annotation>
350 <attribute name="requiredFeatures" type="svg:FeatureListType" use="optional"/>
351 <attribute name="requiredExtensions" type="svg:ExtensionListType" use="optional"/>
352 <attribute name="systemLanguage" type="svg:LanguageCodesType" use="optional"/>
353 </attributeGroup>
354 <attributeGroup name="xlinkRefAttrs">
355 <annotation>
356 <documentation>For most uses of URI referencing: standard XLink attributes other than xlink:href</documentation>
357 </annotation>
358 <attribute ref="xlink:type" fixed="simple"/>
359 <attribute ref="xlink:role"/>
360 <attribute ref="xlink:arcrole"/>
361 <attribute ref="xlink:title"/>
362 <attribute ref="xlink:show" default="other"/>
363 <attribute ref="xlink:actuate"/>
364 </attributeGroup>
365 <attributeGroup name="xlinkRefAttrsEmbed">
366 <annotation>
367 <documentation>Standard XLink attributes for uses of URI referencing where xlink:show is 'embed'</documentation>
368 </annotation>
369 <attribute ref="xlink:type" fixed="simple"/>
370 <attribute ref="xlink:role"/>
371 <attribute ref="xlink:arcrole"/>
372 <attribute ref="xlink:title"/>
373 <attribute ref="xlink:show"/>
374 <attribute ref="xlink:actuate"/>
375 </attributeGroup>
376 <attributeGroup name="graphicsElementEvents">
377 <attribute name="onfocusin" type="svg:ScriptType" use="optional"/>
378 <attribute name="onfocusout" type="svg:ScriptType" use="optional"/>
379 <attribute name="onactivate" type="svg:ScriptType" use="optional"/>
380 <attribute name="onclick" type="svg:ScriptType" use="optional"/>
381 <attribute name="onmousedown" type="svg:ScriptType" use="optional"/>
382 <attribute name="onmouseup" type="svg:ScriptType" use="optional"/>
383 <attribute name="onmouseover" type="svg:ScriptType" use="optional"/>
384 <attribute name="onmousemove" type="svg:ScriptType" use="optional"/>
385 <attribute name="onmouseout" type="svg:ScriptType" use="optional"/>
386 <attribute name="onload" type="svg:ScriptType" use="optional"/>
387 </attributeGroup>
388 <attributeGroup name="documentEvents">
389 <attribute name="onunload" type="svg:ScriptType" use="optional"/>
390 <attribute name="onabort" type="svg:ScriptType" use="optional"/>
391 <attribute name="onerror" type="svg:ScriptType" use="optional"/>
392 <attribute name="onresize" type="svg:ScriptType" use="optional"/>
393 <attribute name="onscroll" type="svg:ScriptType" use="optional"/>
394 <attribute name="onzoom" type="svg:ScriptType" use="optional"/>
395 </attributeGroup>
396 <attributeGroup name="animationEvents">
397 <attribute name="onbegin" type="svg:ScriptType" use="optional"/>
398 <attribute name="onend" type="svg:ScriptType" use="optional"/>
399 <attribute name="onrepeat" type="svg:ScriptType" use="optional"/>
400 </attributeGroup>
401 <attributeGroup name="PresentationAttributes-Color">
402 <annotation>
403 <documentation>The following presentation attributes have to do with specifying color.</documentation>
404 </annotation>
405 <attribute name="color" type="svg:ColorType" use="optional"/>
406 <attribute name="color-interpolation" use="optional">
407 <simpleType>
408 <restriction base="string">
409 <enumeration value="auto"/>
410 <enumeration value="sRGB"/>
411 <enumeration value="linearRGB"/>
412 <enumeration value="inherit"/>
413 </restriction>
414 </simpleType>
415 </attribute>
416 <attribute name="color-rendering" use="optional">
417 <simpleType>
418 <restriction base="string">
419 <enumeration value="auto"/>
420 <enumeration value="optimizeSpeed"/>
421 <enumeration value="optimizeQuality"/>
422 <enumeration value="inherit"/>
423 </restriction>
424 </simpleType>
425 </attribute>
426 </attributeGroup>
427 <attributeGroup name="PresentationAttributes-Containers">
428 <annotation>
429 <documentation>The following presentation attributes apply to container elements</documentation>
430 </annotation>
431 <attribute name="enable-background" type="svg:EnableBackgroundValueType" use="optional"/>
432 </attributeGroup>
433 <attributeGroup name="PresentationAttributes-feFlood">
434 <annotation>
435 <documentation>The following presentation attributes apply to 'feFlood' elements</documentation>
436 </annotation>
437 <attribute name="flood-color" type="svg:SVGColorType" use="optional"/>
438 <attribute name="flood-opacity" type="svg:OpacityValueType" use="optional"/>
439 </attributeGroup>
440 <attributeGroup name="PresentationAttributes-FilterPrimitives">
441 <annotation>
442 <documentation>The following presentation attributes apply to filter primitives</documentation>
443 </annotation>
444 <attribute name="color-interpolation-filters" use="optional">
445 <simpleType>
446 <restriction base="string">
447 <enumeration value="auto"/>
448 <enumeration value="sRGB"/>
449 <enumeration value="linearRGB"/>
450 <enumeration value="inherit"/>
451 </restriction>
452 </simpleType>
453 </attribute>
454 </attributeGroup>
455 <attributeGroup name="PresentationAttributes-FillStroke">
456 <annotation>
457 <documentation>The following presentation attributes apply to filling and stroking operations</documentation>
458 </annotation>
459 <attribute name="fill" type="svg:PaintType" use="optional"/>
460 <attribute name="fill-opacity" type="svg:OpacityValueType" use="optional"/>
461 <attribute name="fill-rule" type="svg:ClipFillRuleType" use="optional"/>
462 <attribute name="stroke" type="svg:PaintType" use="optional"/>
463 <attribute name="stroke-dasharray" type="svg:StrokeDashArrayValueType" use="optional"/>
464 <attribute name="stroke-dashoffset" type="svg:StrokeDashOffsetValueType" use="optional"/>
465 <attribute name="stroke-linecap" use="optional">
466 <simpleType>
467 <restriction base="string">
468 <enumeration value="butt"/>
469 <enumeration value="round"/>
470 <enumeration value="square"/>
471 <enumeration value="inherit"/>
472 </restriction>
473 </simpleType>
474 </attribute>
475 <attribute name="stroke-linejoin" use="optional">
476 <simpleType>
477 <restriction base="string">
478 <enumeration value="miter"/>
479 <enumeration value="round"/>
480 <enumeration value="bevel"/>
481 <enumeration value="inherit"/>
482 </restriction>
483 </simpleType>
484 </attribute>
485 <attribute name="stroke-miterlimit" type="svg:StrokeMiterLimitValueType" use="optional"/>
486 <attribute name="stroke-opacity" type="svg:OpacityValueType" use="optional"/>
487 <attribute name="stroke-width" type="svg:StrokeWidthValueType" use="optional"/>
488 </attributeGroup>
489 <attributeGroup name="PresentationAttributes-FontSpecification">
490 <annotation>
491 <documentation>The following presentation attributes have to do with selecting a font to use</documentation>
492 </annotation>
493 <attribute name="font-family" type="svg:FontFamilyValueType" use="optional"/>
494 <attribute name="font-size" type="svg:FontSizeValueType" use="optional"/>
495 <attribute name="font-size-adjust" type="svg:FontSizeAdjustValueType" use="optional"/>
496 <attribute name="font-stretch" use="optional">
497 <simpleType>
498 <restriction base="string">
499 <enumeration value="normal"/>
500 <enumeration value="wider"/>
501 <enumeration value="narrower"/>
502 <enumeration value="ultra-condensed"/>
503 <enumeration value="extra-condensed"/>
504 <enumeration value="condensed"/>
505 <enumeration value="semi-condensed"/>
506 <enumeration value="semi-expanded"/>
507 <enumeration value="expanded"/>
508 <enumeration value="extra-expanded"/>
509 <enumeration value="ultra-expanded"/>
510 <enumeration value="inherit"/>
511 </restriction>
512 </simpleType>
513 </attribute>
514 <attribute name="font-style" use="optional">
515 <simpleType>
516 <restriction base="string">
517 <enumeration value="normal"/>
518 <enumeration value="italic"/>
519 <enumeration value="oblique"/>
520 <enumeration value="inherit"/>
521 </restriction>
522 </simpleType>
523 </attribute>
524 <attribute name="font-variant" use="optional">
525 <simpleType>
526 <restriction base="string">
527 <enumeration value="normal"/>
528 <enumeration value="small-caps"/>
529 <enumeration value="inherit"/>
530 </restriction>
531 </simpleType>
532 </attribute>
533 <attribute name="font-weight" use="optional">
534 <simpleType>
535 <restriction base="string">
536 <enumeration value="normal"/>
537 <enumeration value="bold"/>
538 <enumeration value="bolder"/>
539 <enumeration value="lighter"/>
540 <enumeration value="100"/>
541 <enumeration value="200"/>
542 <enumeration value="300"/>
543 <enumeration value="400"/>
544 <enumeration value="500"/>
545 <enumeration value="600"/>
546 <enumeration value="700"/>
547 <enumeration value="800"/>
548 <enumeration value="900"/>
549 <enumeration value="inherit"/>
550 </restriction>
551 </simpleType>
552 </attribute>
553 </attributeGroup>
554 <attributeGroup name="PresentationAttributes-Gradients">
555 <annotation>
556 <documentation>The following presentation attributes apply to gradient 'stop' elements</documentation>
557 </annotation>
558 <attribute name="stop-color" type="svg:SVGColorType" use="optional"/>
559 <attribute name="stop-opacity" type="svg:OpacityValueType" use="optional"/>
560 </attributeGroup>
561 <attributeGroup name="PresentationAttributes-Graphics">
562 <annotation>
563 <documentation>The following presentation attributes apply to graphics elements</documentation>
564 </annotation>
565 <attribute name="clip-path" type="svg:ClipPathValueType" use="optional"/>
566 <attribute name="clip-rule" type="svg:ClipFillRuleType" use="optional"/>
567 <attribute name="cursor" type="svg:CursorValueType" use="optional"/>
568 <attribute name="display" use="optional">
569 <simpleType>
570 <restriction base="string">
571 <enumeration value="inline"/>
572 <enumeration value="block"/>
573 <enumeration value="list-item"/>
574 <enumeration value="run-in"/>
575 <enumeration value="compact"/>
576 <enumeration value="marker"/>
577 <enumeration value="table"/>
578 <enumeration value="inline-table"/>
579 <enumeration value="table-row-group"/>
580 <enumeration value="table-header-group"/>
581 <enumeration value="table-footer-group"/>
582 <enumeration value="table-row"/>
583 <enumeration value="table-column-group"/>
584 <enumeration value="table-column"/>
585 <enumeration value="table-cell"/>
586 <enumeration value="table-caption"/>
587 <enumeration value="none"/>
588 <enumeration value="inherit"/>
589 </restriction>
590 </simpleType>
591 </attribute>
592 <attribute name="filter" type="svg:FilterValueType" use="optional"/>
593 <attribute name="image-rendering" use="optional">
594 <simpleType>
595 <restriction base="string">
596 <enumeration value="auto"/>
597 <enumeration value="optimizeSpeed"/>
598 <enumeration value="optimizeQuality"/>
599 <enumeration value="inherit"/>
600 </restriction>
601 </simpleType>
602 </attribute>
603 <attribute name="mask" type="svg:MaskValueType" use="optional"/>
604 <attribute name="opacity" type="svg:OpacityValueType" use="optional"/>
605 <attribute name="pointer-events" use="optional">
606 <simpleType>
607 <restriction base="string">
608 <enumeration value="visiblePainted"/>
609 <enumeration value="visibleFill"/>
610 <enumeration value="visibleStroke"/>
611 <enumeration value="visibleFillStroke"/>
612 <enumeration value="visible"/>
613 <enumeration value="painted"/>
614 <enumeration value="fill"/>
615 <enumeration value="stroke"/>
616 <enumeration value="fillstroke"/>
617 <enumeration value="all"/>
618 <enumeration value="none"/>
619 <enumeration value="inherit"/>
620 </restriction>
621 </simpleType>
622 </attribute>
623 <attribute name="shape-rendering" use="optional">
624 <simpleType>
625 <restriction base="string">
626 <enumeration value="auto"/>
627 <enumeration value="optimizeSpeed"/>
628 <enumeration value="crispEdges"/>
629 <enumeration value="geometricPrecision"/>
630 <enumeration value="inherit"/>
631 </restriction>
632 </simpleType>
633 </attribute>
634 <attribute name="text-rendering" use="optional">
635 <simpleType>
636 <restriction base="string">
637 <enumeration value="auto"/>
638 <enumeration value="optimizeSpeed"/>
639 <enumeration value="optimizeLegibility"/>
640 <enumeration value="geometricPrecision"/>
641 <enumeration value="inherit"/>
642 </restriction>
643 </simpleType>
644 </attribute>
645 <attribute name="visibility" use="optional">
646 <simpleType>
647 <restriction base="string">
648 <enumeration value="visible"/>
649 <enumeration value="hidden"/>
650 <enumeration value="inherit"/>
651 </restriction>
652 </simpleType>
653 </attribute>
654 </attributeGroup>
655 <attributeGroup name="PresentationAttributes-Images">
656 <annotation>
657 <documentation>The following presentation attributes apply to 'image' elements</documentation>
658 </annotation>
659 <attribute name="color-profile" use="optional"/>
660 </attributeGroup>
661 <attributeGroup name="PresentationAttributes-LightingEffects">
662 <annotation>
663 <documentation>The following presentation attributes apply to 'feDiffuseLighting' and 'feSpecularLighting' elements</documentation>
664 </annotation>
665 <attribute name="lighting-color" type="svg:SVGColorType" use="optional"/>
666 </attributeGroup>
667 <attributeGroup name="PresentationAttributes-Markers">
668 <annotation>
669 <documentation>The following presentation attributes apply to marker operations</documentation>
670 </annotation>
671 <attribute name="marker-start" type="svg:MarkerValueType" use="optional"/>
672 <attribute name="marker-mid" type="svg:MarkerValueType" use="optional"/>
673 <attribute name="marker-end" type="svg:MarkerValueType" use="optional"/>
674 </attributeGroup>
675 <attributeGroup name="PresentationAttributes-TextContentElements">
676 <annotation>
677 <documentation>The following presentation attributes apply to text content elements</documentation>
678 </annotation>
679 <attribute name="alignment-baseline" use="optional">
680 <simpleType>
681 <restriction base="string">
682 <enumeration value="baseline"/>
683 <enumeration value="top"/>
684 <enumeration value="before-edge"/>
685 <enumeration value="text-top"/>
686 <enumeration value="text-before-edge"/>
687 <enumeration value="middle"/>
688 <enumeration value="bottom"/>
689 <enumeration value="after-edge"/>
690 <enumeration value="text-bottom"/>
691 <enumeration value="text-after-edge"/>
692 <enumeration value="ideographic"/>
693 <enumeration value="lower"/>
694 <enumeration value="hanging"/>
695 <enumeration value="mathematical"/>
696 <enumeration value="inherit"/>
697 </restriction>
698 </simpleType>
699 </attribute>
700 <attribute name="baseline-shift" type="svg:BaselineShiftValueType" use="optional"/>
701 <attribute name="direction" use="optional">
702 <simpleType>
703 <restriction base="string">
704 <enumeration value="ltr"/>
705 <enumeration value="rtl"/>
706 <enumeration value="inherit"/>
707 </restriction>
708 </simpleType>
709 </attribute>
710 <attribute name="dominant-baseline" use="optional">
711 <simpleType>
712 <restriction base="string">
713 <enumeration value="auto"/>
714 <enumeration value="autosense-script"/>
715 <enumeration value="no-change"/>
716 <enumeration value="reset"/>
717 <enumeration value="ideographic"/>
718 <enumeration value="lower"/>
719 <enumeration value="hanging"/>
720 <enumeration value="mathematical"/>
721 <enumeration value="inherit"/>
722 </restriction>
723 </simpleType>
724 </attribute>
725 <attribute name="glyph-orientation-horizontal" type="svg:GlyphOrientationHorizontalValueType" use="optional"/>
726 <attribute name="glyph-orientation-vertical" type="svg:GlyphOrientationVerticalValueType" use="optional"/>
727 <attribute name="letter-spacing" type="svg:SpacingValueType" use="optional"/>
728 <attribute name="text-anchor" use="optional">
729 <simpleType>
730 <restriction base="string">
731 <enumeration value="start"/>
732 <enumeration value="middle"/>
733 <enumeration value="end"/>
734 <enumeration value="inherit"/>
735 </restriction>
736 </simpleType>
737 </attribute>
738 <attribute name="text-decoration" type="svg:TextDecorationValueType" use="optional"/>
739 <attribute name="unicode-bidi" use="optional">
740 <simpleType>
741 <restriction base="string">
742 <enumeration value="normal"/>
743 <enumeration value="embed"/>
744 <enumeration value="bidi-override"/>
745 <enumeration value="inherit"/>
746 </restriction>
747 </simpleType>
748 </attribute>
749 <attribute name="word-spacing" type="svg:SpacingValueType" use="optional"/>
750 </attributeGroup>
751 <attributeGroup name="PresentationAttributes-TextElements">
752 <annotation>
753 <documentation>The following presentation attributes apply to 'text' elements</documentation>
754 </annotation>
755 <attribute name="writing-mode" use="optional">
756 <simpleType>
757 <restriction base="string">
758 <enumeration value="lr-tb"/>
759 <enumeration value="rl-tb"/>
760 <enumeration value="tb-rl"/>
761 <enumeration value="lr"/>
762 <enumeration value="rl"/>
763 <enumeration value="tb"/>
764 <enumeration value="inherit"/>
765 </restriction>
766 </simpleType>
767 </attribute>
768 </attributeGroup>
769 <attributeGroup name="PresentationAttributes-Viewports">
770 <annotation>
771 <documentation>The following presentation attributes apply to elements that establish viewports</documentation>
772 </annotation>
773 <attribute name="clip" type="svg:ClipValueType" use="optional"/>
774 <attribute name="overflow" use="optional">
775 <simpleType>
776 <restriction base="string">
777 <enumeration value="visible"/>
778 <enumeration value="hidden"/>
779 <enumeration value="scroll"/>
780 <enumeration value="auto"/>
781 <enumeration value="inherit"/>
782 </restriction>
783 </simpleType>
784 </attribute>
785 </attributeGroup>
786 <attributeGroup name="PresentationAttributes-All">
787 <annotation>
788 <documentation>The following represents the complete list of presentation attributes</documentation>
789 </annotation>
790 <attributeGroup ref="svg:PresentationAttributes-Color"/>
791 <attributeGroup ref="svg:PresentationAttributes-Containers"/>
792 <attributeGroup ref="svg:PresentationAttributes-feFlood"/>
793 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
794 <attributeGroup ref="svg:PresentationAttributes-FilterPrimitives"/>
795 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
796 <attributeGroup ref="svg:PresentationAttributes-Gradients"/>
797 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
798 <attributeGroup ref="svg:PresentationAttributes-Images"/>
799 <attributeGroup ref="svg:PresentationAttributes-LightingEffects"/>
800 <attributeGroup ref="svg:PresentationAttributes-Markers"/>
801 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
802 <attributeGroup ref="svg:PresentationAttributes-TextElements"/>
803 <attributeGroup ref="svg:PresentationAttributes-Viewports"/>
804 </attributeGroup>
805 <attributeGroup name="filter_primitive_attributes">
806 <attribute name="x" type="svg:CoordinateType" use="optional"/>
807 <attribute name="y" type="svg:CoordinateType" use="optional"/>
808 <attribute name="width" type="svg:LengthType" use="optional"/>
809 <attribute name="height" type="svg:LengthType" use="optional"/>
810 <attribute name="result" type="string" use="optional"/>
811 </attributeGroup>
812 <attributeGroup name="filter_primitive_attributes_with_in">
813 <attributeGroup ref="svg:filter_primitive_attributes"/>
814 <attribute name="in" type="string" use="optional"/>
815 </attributeGroup>
816 <attributeGroup name="component_transfer_function_attributes">
817 <attribute name="type" use="required">
818 <simpleType>
819 <restriction base="string">
820 <enumeration value="identity"/>
821 <enumeration value="table"/>
822 <enumeration value="discrete"/>
823 <enumeration value="linear"/>
824 <enumeration value="gamma"/>
825 </restriction>
826 </simpleType>
827 </attribute>
828 <attribute name="tableValues" type="string" use="optional"/>
829 <attribute name="slope" type="double" use="optional"/>
830 <attribute name="intercept" type="double" use="optional"/>
831 <attribute name="amplitude" type="double" use="optional"/>
832 <attribute name="exponent" type="double" use="optional"/>
833 <attribute name="offset" type="double" use="optional"/>
834 <!-- here -->
835 </attributeGroup>
836 <attributeGroup name="animElementAttrs">
837 <attributeGroup ref="svg:xlinkRefAttrs"/>
838 <!-- HTMLBook Note: Dropped invalid type attr on below element -->
839 <attribute ref="xlink:href" use="optional"/>
840 </attributeGroup>
841 <attributeGroup name="animAttributeAttrs">
842 <attribute name="attributeName" type="string" use="required"/>
843 <attribute name="attributeType" type="string" use="optional"/>
844 </attributeGroup>
845 <attributeGroup name="animTargetAttrs">
846 <attributeGroup ref="svg:animElementAttrs"/>
847 <attributeGroup ref="svg:animAttributeAttrs"/>
848 </attributeGroup>
849 <attributeGroup name="animTimingAttrs">
850 <attribute name="begin" type="string" use="optional"/>
851 <attribute name="dur" type="string" use="optional"/>
852 <attribute name="end" type="string" use="optional"/>
853 <attribute name="min" type="string" use="optional"/>
854 <attribute name="max" type="string" use="optional"/>
855 <attribute name="restart" default="always">
856 <simpleType>
857 <restriction base="string">
858 <enumeration value="always"/>
859 <enumeration value="never"/>
860 <enumeration value="whenNotActive"/>
861 </restriction>
862 </simpleType>
863 </attribute>
864 <attribute name="repeatCount" type="string" use="optional"/>
865 <attribute name="repeatDur" type="string" use="optional"/>
866 <attribute name="fill" default="remove">
867 <simpleType>
868 <restriction base="string">
869 <enumeration value="remove"/>
870 <enumeration value="freeze"/>
871 </restriction>
872 </simpleType>
873 </attribute>
874 </attributeGroup>
875 <attributeGroup name="animValueAttrs">
876 <attribute name="calcMode" default="linear">
877 <simpleType>
878 <restriction base="string">
879 <enumeration value="discrete"/>
880 <enumeration value="linear"/>
881 <enumeration value="paced"/>
882 <enumeration value="spline"/>
883 </restriction>
884 </simpleType>
885 </attribute>
886 <attribute name="values" type="string" use="optional"/>
887 <attribute name="keyTimes" type="string" use="optional"/>
888 <attribute name="keySplines" type="string" use="optional"/>
889 <attribute name="from" type="string" use="optional"/>
890 <attribute name="to" type="string" use="optional"/>
891 <attribute name="by" type="string" use="optional"/>
892 <!-- could add a pattern facet here -->
893 </attributeGroup>
894 <attributeGroup name="animAdditionAttrs">
895 <attribute name="additive" default="replace">
896 <simpleType>
897 <restriction base="string">
898 <enumeration value="replace"/>
899 <enumeration value="sum"/>
900 </restriction>
901 </simpleType>
902 </attribute>
903 <attribute name="accumulate" default="none">
904 <simpleType>
905 <restriction base="string">
906 <enumeration value="none"/>
907 <enumeration value="sum"/>
908 </restriction>
909 </simpleType>
910 </attribute>
911 </attributeGroup>
912 <group name="descTitleMetadata">
913 <annotation>
914 <!-- HTMLBook Note: switched here from invalid xs:all based content model (which can't be used for particles as was being done)
915 to xs:choice-based content model, which allows for one or more desc/title/metadata elements at the beginning of all content models in which
916 descTitleMetadata is referenced -->
917 <documentation>A bit simpler than the DTD, but see commented-out alternative</documentation>
918 </annotation>
919 <choice>
920 <element name="desc" type="svg:descType"/>
921 <element name="title" type="svg:titleType"/>
922 <element name="metadata" type="svg:metadataType"/>
923 </choice>
924 </group>
925 <!--
926 <group name="descTitleMetadata">
927 <annotation>
928 <documentation>Captures the ordering restrictions of the DTD, but suffers from over complexity. No easy way to express this without a wrapper element.</documentation>
929 </annotation>
930 <choice minOccurs="0" maxOccurs="1">
931 <sequence>
932 <element name="desc" type="svg:descType"/>
933 <choice minOccurs="0" maxOccurs="1">
934 <sequence>
935 <element name="title" type="svg:titleType"/>
936 <element name="metadata" type="svg:metadataType" minOccurs="0" maxOccurs="1"/>
937 </sequence>
938 <sequence>
939 <element name="metadata" type="svg:metadataType"/>
940 <element name="title" type="svg:titleType" minOccurs="0" maxOccurs="1"/>
941 </sequence>
942 </choice>
943 </sequence>
944 <sequence>
945 <element name="title" type="svg:titleType"/>
946 <choice minOccurs="0" maxOccurs="1">
947 <sequence>
948 <element name="desc" type="svg:descType"/>
949 <element name="metadata" type="svg:metadataType" minOccurs="0" maxOccurs="1"/>
950 </sequence>
951 <sequence>
952 <element name="metadata" type="svg:metadataType"/>
953 <element name="desc" type="svg:descType" minOccurs="0" maxOccurs="1"/>
954 </sequence>
955 </choice>
956 </sequence>
957 <sequence>
958 <element name="metadata" type="svg:metadataType"/>
959 <choice minOccurs="0" maxOccurs="1">
960 <sequence>
961 <element name="desc" type="svg:descType"/>
962 <element name="title" type="svg:titleType" minOccurs="0" maxOccurs="1"/>
963 </sequence>
964 <sequence>
965 <element name="title" type="svg:titleType"/>
966 <element name="desc" type="svg:descType" minOccurs="0" maxOccurs="1"/>
967 </sequence>
968 </choice>
969 </sequence>
970 </choice>
971 </group>
972 -->
973 <element name="svg" type="svg:svgType"/>
974 <element name="g" type="svg:gType"/>
975 <element name="defs" type="svg:defsType"/>
976 <element name="desc" type="svg:descType"/>
977 <element name="title" type="svg:titleType"/>
978 <element name="symbol" type="svg:symbolType"/>
979 <element name="use" type="svg:useType"/>
980 <element name="image" type="svg:imageType"/>
981 <element name="switch" type="svg:switchType"/>
982 <element name="style" type="svg:styleType"/>
983 <element name="path" type="svg:pathType"/>
984 <element name="rect" type="svg:rectType"/>
985 <element name="circle" type="svg:circleType"/>
986 <element name="ellipse" type="svg:ellipseType"/>
987 <element name="line" type="svg:lineType"/>
988 <element name="polyline" type="svg:polylineType"/>
989 <element name="polygon" type="svg:polygonType"/>
990 <element name="text" type="svg:textType"/>
991 <element name="tspan" type="svg:tspanType"/>
992 <element name="tref" type="svg:trefType"/>
993 <element name="textPath" type="svg:textPathType"/>
994 <element name="altGlyph" type="svg:altGlyphType"/>
995 <element name="altGlyphDef" type="svg:altGlyphDefType"/>
996 <element name="altGlyphItem" type="svg:altGlyphItemType"/>
997 <element name="glyphRef" type="svg:glyphRefType"/>
998 <element name="marker" type="svg:markerType"/>
999 <element name="color-profile" type="svg:color-profileType"/>
1000 <element name="linearGradient" type="svg:linearGradientType"/>
1001 <element name="radialGradient" type="svg:radialGradientType"/>
1002 <element name="stop" type="svg:stopType"/>
1003 <element name="pattern" type="svg:patternType"/>
1004 <element name="clipPath" type="svg:clipPathType"/>
1005 <element name="mask" type="svg:maskType"/>
1006 <element name="filter" type="svg:filterType"/>
1007 <element name="feDistantLight" type="svg:feDistantLightType"/>
1008 <element name="fePointLight" type="svg:fePointLightType"/>
1009 <element name="feSpotLight" type="svg:feSpotLightType"/>
1010 <element name="feBlend" type="svg:feBlendType"/>
1011 <element name="feColorMatrix" type="svg:feColorMatrixType"/>
1012 <element name="feComponentTransfer" type="svg:feComponentTransferType"/>
1013 <element name="feFuncR" type="svg:feFuncRType"/>
1014 <element name="feFuncG" type="svg:feFuncGType"/>
1015 <element name="feFuncB" type="svg:feFuncBType"/>
1016 <element name="feFuncA" type="svg:feFuncAType"/>
1017 <element name="feComposite" type="svg:feCompositeType"/>
1018 <element name="feConvolveMatrix" type="svg:feConvolveMatrixType"/>
1019 <element name="feDiffuseLighting" type="svg:feDiffuseLightingType"/>
1020 <element name="feDisplacementMap" type="svg:feDisplacementMapType"/>
1021 <element name="feFlood" type="svg:feFloodType"/>
1022 <element name="feGaussianBlur" type="svg:feGaussianBlurType"/>
1023 <element name="feImage" type="svg:feImageType"/>
1024 <element name="feMerge" type="svg:feMergeType"/>
1025 <element name="feMergeNode" type="svg:feMergeNodeType"/>
1026 <element name="feMorphology" type="svg:feMorphologyType"/>
1027 <element name="feOffset" type="svg:feOffsetType"/>
1028 <element name="feSpecularLighting" type="svg:feSpecularLightingType"/>
1029 <element name="feTile" type="svg:feTileType"/>
1030 <element name="feTurbulence" type="svg:feTurbulenceType"/>
1031 <element name="cursor" type="svg:cursorType"/>
1032 <element name="a" type="svg:aType"/>
1033 <element name="view" type="svg:viewType"/>
1034 <element name="script" type="svg:scriptType"/>
1035 <element name="animate" type="svg:animateType"/>
1036 <element name="set" type="svg:setType"/>
1037 <element name="animateMotion" type="svg:animateMotionType"/>
1038 <element name="mpath" type="svg:mpathType"/>
1039 <element name="animateColor" type="svg:animateColorType"/>
1040 <element name="animateTransform" type="svg:animateTransformType"/>
1041 <element name="font" type="svg:fontType"/>
1042 <element name="glyph" type="svg:glyphType"/>
1043 <element name="missing-glyph" type="svg:missing-glyphType"/>
1044 <element name="hkern" type="svg:hkernType"/>
1045 <element name="vkern" type="svg:vkernType"/>
1046 <element name="font-face" type="svg:font-faceType"/>
1047 <element name="font-face-src" type="svg:font-face-srcType"/>
1048 <element name="font-face-uri" type="svg:font-face-uriType"/>
1049 <element name="font-face-format" type="svg:font-face-formatType"/>
1050 <element name="font-face-name" type="svg:font-face-nameType"/>
1051 <element name="definition-src" type="svg:definition-srcType"/>
1052 <element name="metadata" type="svg:metadataType"/>
1053 <element name="foreignObject" type="svg:foreignObjectType"/>
1054 <complexType name="svgType">
1055 <choice minOccurs="0" maxOccurs="unbounded">
1056 <element ref="svg:desc"/>
1057 <element ref="svg:title"/>
1058 <element ref="svg:metadata"/>
1059 <element ref="svg:defs"/>
1060 <element ref="svg:path"/>
1061 <element ref="svg:text"/>
1062 <element ref="svg:rect"/>
1063 <element ref="svg:circle"/>
1064 <element ref="svg:ellipse"/>
1065 <element ref="svg:line"/>
1066 <element ref="svg:polyline"/>
1067 <element ref="svg:polygon"/>
1068 <element ref="svg:use"/>
1069 <element ref="svg:image"/>
1070 <element ref="svg:svg"/>
1071 <element ref="svg:g"/>
1072 <element ref="svg:view"/>
1073 <element ref="svg:switch"/>
1074 <element ref="svg:a"/>
1075 <element ref="svg:altGlyphDef"/>
1076 <element ref="svg:script"/>
1077 <element ref="svg:style"/>
1078 <element ref="svg:symbol"/>
1079 <element ref="svg:marker"/>
1080 <element ref="svg:clipPath"/>
1081 <element ref="svg:mask"/>
1082 <element ref="svg:linearGradient"/>
1083 <element ref="svg:radialGradient"/>
1084 <element ref="svg:pattern"/>
1085 <element ref="svg:filter"/>
1086 <element ref="svg:cursor"/>
1087 <element ref="svg:font"/>
1088 <element ref="svg:animate"/>
1089 <element ref="svg:set"/>
1090 <element ref="svg:animateMotion"/>
1091 <element ref="svg:animateColor"/>
1092 <element ref="svg:animateTransform"/>
1093 <element ref="svg:color-profile"/>
1094 <element ref="svg:font-face"/>
1095 <!-- should this be done with named child element collections? Especially for modularisation. -->
1096 </choice>
1097 <attributeGroup ref="svg:stdAttrs"/>
1098 <attributeGroup ref="svg:testAttrs"/>
1099 <attributeGroup ref="svg:langSpaceAttrs"/>
1100 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1101 <attribute name="class" type="svg:ClassListType" use="optional"/>
1102 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1103 <attributeGroup ref="svg:PresentationAttributes-All"/>
1104 <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional"/>
1105 <attribute name="version" type="double" use="optional"/>
1106 <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType" default="xMidYMid meet"/>
1107 <attribute name="zoomAndPan" default="magnify">
1108 <simpleType>
1109 <restriction base="string">
1110 <enumeration value="disable"/>
1111 <enumeration value="magnify"/>
1112 <enumeration value="zoom"/>
1113 </restriction>
1114 </simpleType>
1115 </attribute>
1116 <attributeGroup ref="svg:graphicsElementEvents"/>
1117 <attributeGroup ref="svg:documentEvents"/>
1118 <attribute name="x" type="svg:CoordinateType" use="optional"/>
1119 <attribute name="y" type="svg:CoordinateType" use="optional"/>
1120 <attribute name="width" type="svg:LengthType" use="required"/>
1121 <attribute name="height" type="svg:LengthType" use="required"/>
1122 <attribute name="contentScriptType" type="svg:ContentTypeType" default="text/ecmascript"/>
1123 <attribute name="contentStyleType" type="svg:ContentTypeType" default="text/css"/>
1124 </complexType>
1125 <complexType name="gType">
1126 <choice minOccurs="0" maxOccurs="unbounded">
1127 <element ref="svg:desc"/>
1128 <element ref="svg:title"/>
1129 <element ref="svg:metadata"/>
1130 <element ref="svg:defs"/>
1131 <element ref="svg:path"/>
1132 <element ref="svg:text"/>
1133 <element ref="svg:rect"/>
1134 <element ref="svg:circle"/>
1135 <element ref="svg:ellipse"/>
1136 <element ref="svg:line"/>
1137 <element ref="svg:polyline"/>
1138 <element ref="svg:polygon"/>
1139 <element ref="svg:use"/>
1140 <element ref="svg:image"/>
1141 <element ref="svg:svg"/>
1142 <element ref="svg:g"/>
1143 <element ref="svg:view"/>
1144 <element ref="svg:switch"/>
1145 <element ref="svg:a"/>
1146 <element ref="svg:altGlyphDef"/>
1147 <element ref="svg:script"/>
1148 <element ref="svg:style"/>
1149 <element ref="svg:symbol"/>
1150 <element ref="svg:marker"/>
1151 <element ref="svg:clipPath"/>
1152 <element ref="svg:mask"/>
1153 <element ref="svg:linearGradient"/>
1154 <element ref="svg:radialGradient"/>
1155 <element ref="svg:pattern"/>
1156 <element ref="svg:filter"/>
1157 <element ref="svg:cursor"/>
1158 <element ref="svg:font"/>
1159 <element ref="svg:animate"/>
1160 <element ref="svg:set"/>
1161 <element ref="svg:animateMotion"/>
1162 <element ref="svg:animateColor"/>
1163 <element ref="svg:animateTransform"/>
1164 <element ref="svg:color-profile"/>
1165 <element ref="svg:font-face"/>
1166 </choice>
1167 <attributeGroup ref="svg:stdAttrs"/>
1168 <attributeGroup ref="svg:testAttrs"/>
1169 <attributeGroup ref="svg:langSpaceAttrs"/>
1170 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1171 <attribute name="class" type="svg:ClassListType" use="optional"/>
1172 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1173 <attributeGroup ref="svg:PresentationAttributes-All"/>
1174 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1175 <attributeGroup ref="svg:graphicsElementEvents"/>
1176 </complexType>
1177 <complexType name="defsType">
1178 <choice minOccurs="0" maxOccurs="unbounded">
1179 <element ref="svg:desc"/>
1180 <element ref="svg:title"/>
1181 <element ref="svg:metadata"/>
1182 <element ref="svg:defs"/>
1183 <element ref="svg:path"/>
1184 <element ref="svg:text"/>
1185 <element ref="svg:rect"/>
1186 <element ref="svg:circle"/>
1187 <element ref="svg:ellipse"/>
1188 <element ref="svg:line"/>
1189 <element ref="svg:polyline"/>
1190 <element ref="svg:polygon"/>
1191 <element ref="svg:use"/>
1192 <element ref="svg:image"/>
1193 <element ref="svg:svg"/>
1194 <element ref="svg:g"/>
1195 <element ref="svg:view"/>
1196 <element ref="svg:switch"/>
1197 <element ref="svg:a"/>
1198 <element ref="svg:altGlyphDef"/>
1199 <element ref="svg:script"/>
1200 <element ref="svg:style"/>
1201 <element ref="svg:symbol"/>
1202 <element ref="svg:marker"/>
1203 <element ref="svg:clipPath"/>
1204 <element ref="svg:mask"/>
1205 <element ref="svg:linearGradient"/>
1206 <element ref="svg:radialGradient"/>
1207 <element ref="svg:pattern"/>
1208 <element ref="svg:filter"/>
1209 <element ref="svg:cursor"/>
1210 <element ref="svg:font"/>
1211 <element ref="svg:animate"/>
1212 <element ref="svg:set"/>
1213 <element ref="svg:animateMotion"/>
1214 <element ref="svg:animateColor"/>
1215 <element ref="svg:animateTransform"/>
1216 <element ref="svg:color-profile"/>
1217 <element ref="svg:font-face"/>
1218 </choice>
1219 <attributeGroup ref="svg:stdAttrs"/>
1220 <attributeGroup ref="svg:testAttrs"/>
1221 <attributeGroup ref="svg:langSpaceAttrs"/>
1222 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1223 <attribute name="class" type="svg:ClassListType" use="optional"/>
1224 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1225 <attributeGroup ref="svg:PresentationAttributes-All"/>
1226 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1227 <attributeGroup ref="svg:graphicsElementEvents"/>
1228 </complexType>
1229 <complexType name="descType" mixed="true">
1230 <attributeGroup ref="svg:stdAttrs"/>
1231 <attributeGroup ref="svg:langSpaceAttrs"/>
1232 <attribute name="class" type="svg:ClassListType" use="optional"/>
1233 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1234 <attribute name="content" type="string" fixed="structured text"/>
1235 </complexType>
1236 <complexType name="titleType" mixed="true">
1237 <attributeGroup ref="svg:stdAttrs"/>
1238 <attributeGroup ref="svg:langSpaceAttrs"/>
1239 <attribute name="class" type="svg:ClassListType" use="optional"/>
1240 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1241 <attribute name="content" type="string" fixed="structured text"/>
1242 </complexType>
1243 <complexType name="symbolType">
1244 <choice minOccurs="0" maxOccurs="unbounded">
1245 <element ref="svg:desc"/>
1246 <element ref="svg:title"/>
1247 <element ref="svg:metadata"/>
1248 <element ref="svg:defs"/>
1249 <element ref="svg:path"/>
1250 <element ref="svg:text"/>
1251 <element ref="svg:rect"/>
1252 <element ref="svg:circle"/>
1253 <element ref="svg:ellipse"/>
1254 <element ref="svg:line"/>
1255 <element ref="svg:polyline"/>
1256 <element ref="svg:polygon"/>
1257 <element ref="svg:use"/>
1258 <element ref="svg:image"/>
1259 <element ref="svg:svg"/>
1260 <element ref="svg:g"/>
1261 <element ref="svg:view"/>
1262 <element ref="svg:switch"/>
1263 <element ref="svg:a"/>
1264 <element ref="svg:altGlyphDef"/>
1265 <element ref="svg:script"/>
1266 <element ref="svg:style"/>
1267 <element ref="svg:symbol"/>
1268 <element ref="svg:marker"/>
1269 <element ref="svg:clipPath"/>
1270 <element ref="svg:mask"/>
1271 <element ref="svg:linearGradient"/>
1272 <element ref="svg:radialGradient"/>
1273 <element ref="svg:pattern"/>
1274 <element ref="svg:filter"/>
1275 <element ref="svg:cursor"/>
1276 <element ref="svg:font"/>
1277 <element ref="svg:animate"/>
1278 <element ref="svg:set"/>
1279 <element ref="svg:animateMotion"/>
1280 <element ref="svg:animateColor"/>
1281 <element ref="svg:animateTransform"/>
1282 <element ref="svg:color-profile"/>
1283 <element ref="svg:font-face"/>
1284 </choice>
1285 <attributeGroup ref="svg:stdAttrs"/>
1286 <attributeGroup ref="svg:langSpaceAttrs"/>
1287 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1288 <attribute name="class" type="svg:ClassListType" use="optional"/>
1289 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1290 <attributeGroup ref="svg:PresentationAttributes-All"/>
1291 <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional"/>
1292 <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType" default="xMidYMid meet"/>
1293 <attributeGroup ref="svg:graphicsElementEvents"/>
1294 </complexType>
1295 <complexType name="useType">
1296 <sequence>
1297 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1298 <choice minOccurs="0" maxOccurs="unbounded">
1299 <element ref="svg:animate"/>
1300 <element ref="svg:set"/>
1301 <element ref="svg:animateMotion"/>
1302 <element ref="svg:animateColor"/>
1303 <element ref="svg:animateTransform"/>
1304 </choice>
1305 </sequence>
1306 <attributeGroup ref="svg:stdAttrs"/>
1307 <attributeGroup ref="svg:xlinkRefAttrsEmbed"/>
1308 <attribute ref="xlink:href" use="required"/>
1309 <attributeGroup ref="svg:testAttrs"/>
1310 <attributeGroup ref="svg:langSpaceAttrs"/>
1311 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1312 <attribute name="class" type="svg:ClassListType" use="optional"/>
1313 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1314 <attributeGroup ref="svg:PresentationAttributes-All"/>
1315 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1316 <attributeGroup ref="svg:graphicsElementEvents"/>
1317 <attribute name="x" type="svg:CoordinateType" use="optional"/>
1318 <attribute name="y" type="svg:CoordinateType" use="optional"/>
1319 <attribute name="width" type="svg:LengthType" use="optional"/>
1320 <attribute name="height" type="svg:LengthType" use="optional"/>
1321 </complexType>
1322 <complexType name="imageType">
1323 <sequence>
1324 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1325 <choice minOccurs="0" maxOccurs="unbounded">
1326 <element ref="svg:animate"/>
1327 <element ref="svg:set"/>
1328 <element ref="svg:animateMotion"/>
1329 <element ref="svg:animateColor"/>
1330 <element ref="svg:animateTransform"/>
1331 <!-- this should probably be a named element group -->
1332 </choice>
1333 </sequence>
1334 <attributeGroup ref="svg:stdAttrs"/>
1335 <attributeGroup ref="svg:xlinkRefAttrs"/>
1336 <attribute ref="xlink:href" use="optional"/>
1337 <attributeGroup ref="svg:testAttrs"/>
1338 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1339 <attributeGroup ref="svg:langSpaceAttrs"/>
1340 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1341 <attribute name="class" type="svg:ClassListType" use="optional"/>
1342 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1343 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1344 <attributeGroup ref="svg:PresentationAttributes-Viewports"/>
1345 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1346 <attributeGroup ref="svg:graphicsElementEvents"/>
1347 <attribute name="x" type="svg:CoordinateType" use="optional"/>
1348 <attribute name="y" type="svg:CoordinateType" use="optional"/>
1349 <attribute name="width" type="svg:LengthType" use="required"/>
1350 <attribute name="height" type="svg:LengthType" use="required"/>
1351 </complexType>
1352 <complexType name="switchType">
1353 <sequence>
1354 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1355 <choice minOccurs="0" maxOccurs="unbounded">
1356 <element ref="svg:path"/>
1357 <element ref="svg:text"/>
1358 <element ref="svg:rect"/>
1359 <element ref="svg:circle"/>
1360 <element ref="svg:ellipse"/>
1361 <element ref="svg:line"/>
1362 <element ref="svg:polyline"/>
1363 <element ref="svg:polygon"/>
1364 <element ref="svg:use"/>
1365 <element ref="svg:image"/>
1366 <element ref="svg:svg"/>
1367 <element ref="svg:g"/>
1368 <element ref="svg:switch"/>
1369 <element ref="svg:a"/>
1370 <element ref="svg:foreignObject"/>
1371 <element ref="svg:animate"/>
1372 <element ref="svg:set"/>
1373 <element ref="svg:animateMotion"/>
1374 <element ref="svg:animateColor"/>
1375 <element ref="svg:animateTransform"/>
1376 </choice>
1377 </sequence>
1378 <attributeGroup ref="svg:stdAttrs"/>
1379 <attributeGroup ref="svg:testAttrs"/>
1380 <attributeGroup ref="svg:langSpaceAttrs"/>
1381 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1382 <attribute name="class" type="svg:ClassListType" use="optional"/>
1383 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1384 <attributeGroup ref="svg:PresentationAttributes-All"/>
1385 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1386 <attributeGroup ref="svg:graphicsElementEvents"/>
1387 </complexType>
1388 <complexType name="styleType" mixed="true">
1389 <attributeGroup ref="svg:stdAttrs"/>
1390 <attribute ref="xml:space" fixed="preserve"/>
1391 <attribute name="type" type="svg:ContentTypeType" use="required"/>
1392 <attribute name="media" type="svg:MediaDescType" use="optional"/>
1393 <attribute name="title" type="string" use="optional"/>
1394 </complexType>
1395 <complexType name="pathType">
1396 <sequence>
1397 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1398 <choice minOccurs="0" maxOccurs="unbounded">
1399 <element ref="svg:animate"/>
1400 <element ref="svg:set"/>
1401 <element ref="svg:animateMotion"/>
1402 <element ref="svg:animateColor"/>
1403 <element ref="svg:animateTransform"/>
1404 </choice>
1405 </sequence>
1406 <attributeGroup ref="svg:stdAttrs"/>
1407 <attributeGroup ref="svg:testAttrs"/>
1408 <attributeGroup ref="svg:langSpaceAttrs"/>
1409 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1410 <attribute name="class" type="svg:ClassListType" use="optional"/>
1411 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1412 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1413 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1414 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1415 <attributeGroup ref="svg:PresentationAttributes-Markers"/>
1416 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1417 <attributeGroup ref="svg:graphicsElementEvents"/>
1418 <attribute name="d" type="svg:PathDataType" use="required"/>
1419 <attribute name="pathLength" type="double" use="optional"/>
1420 </complexType>
1421 <complexType name="rectType">
1422 <sequence>
1423 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1424 <choice minOccurs="0" maxOccurs="unbounded">
1425 <element ref="svg:animate"/>
1426 <element ref="svg:set"/>
1427 <element ref="svg:animateMotion"/>
1428 <element ref="svg:animateColor"/>
1429 <element ref="svg:animateTransform"/>
1430 </choice>
1431 </sequence>
1432 <attributeGroup ref="svg:stdAttrs"/>
1433 <attributeGroup ref="svg:testAttrs"/>
1434 <attributeGroup ref="svg:langSpaceAttrs"/>
1435 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1436 <attribute name="class" type="svg:ClassListType" use="optional"/>
1437 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1438 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1439 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1440 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1441 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1442 <attributeGroup ref="svg:graphicsElementEvents"/>
1443 <attribute name="x" type="svg:CoordinateType" use="optional"/>
1444 <attribute name="y" type="svg:CoordinateType" use="optional"/>
1445 <attribute name="width" type="svg:LengthType" use="required"/>
1446 <attribute name="height" type="svg:LengthType" use="required"/>
1447 <attribute name="rx" type="svg:LengthType" use="optional"/>
1448 <attribute name="ry" type="svg:LengthType" use="optional"/>
1449 </complexType>
1450 <complexType name="circleType">
1451 <sequence>
1452 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1453 <choice minOccurs="0" maxOccurs="unbounded">
1454 <element ref="svg:animate"/>
1455 <element ref="svg:set"/>
1456 <element ref="svg:animateMotion"/>
1457 <element ref="svg:animateColor"/>
1458 <element ref="svg:animateTransform"/>
1459 </choice>
1460 </sequence>
1461 <attributeGroup ref="svg:stdAttrs"/>
1462 <attributeGroup ref="svg:testAttrs"/>
1463 <attributeGroup ref="svg:langSpaceAttrs"/>
1464 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1465 <attribute name="class" type="svg:ClassListType" use="optional"/>
1466 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1467 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1468 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1469 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1470 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1471 <attributeGroup ref="svg:graphicsElementEvents"/>
1472 <attribute name="cx" type="svg:CoordinateType" use="optional"/>
1473 <attribute name="cy" type="svg:CoordinateType" use="optional"/>
1474 <attribute name="r" type="svg:LengthType" use="required"/>
1475 </complexType>
1476 <complexType name="ellipseType">
1477 <sequence>
1478 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1479 <choice minOccurs="0" maxOccurs="unbounded">
1480 <element ref="svg:animate"/>
1481 <element ref="svg:set"/>
1482 <element ref="svg:animateMotion"/>
1483 <element ref="svg:animateColor"/>
1484 <element ref="svg:animateTransform"/>
1485 </choice>
1486 </sequence>
1487 <attributeGroup ref="svg:stdAttrs"/>
1488 <attributeGroup ref="svg:testAttrs"/>
1489 <attributeGroup ref="svg:langSpaceAttrs"/>
1490 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1491 <attribute name="class" type="svg:ClassListType" use="optional"/>
1492 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1493 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1494 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1495 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1496 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1497 <attributeGroup ref="svg:graphicsElementEvents"/>
1498 <attribute name="cx" type="svg:CoordinateType" use="optional"/>
1499 <attribute name="cy" type="svg:CoordinateType" use="optional"/>
1500 <attribute name="rx" type="svg:LengthType" use="required"/>
1501 <attribute name="ry" type="svg:LengthType" use="required"/>
1502 </complexType>
1503 <complexType name="lineType">
1504 <sequence>
1505 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1506 <choice minOccurs="0" maxOccurs="unbounded">
1507 <element ref="svg:animate"/>
1508 <element ref="svg:set"/>
1509 <element ref="svg:animateMotion"/>
1510 <element ref="svg:animateColor"/>
1511 <element ref="svg:animateTransform"/>
1512 </choice>
1513 </sequence>
1514 <attributeGroup ref="svg:stdAttrs"/>
1515 <attributeGroup ref="svg:testAttrs"/>
1516 <attributeGroup ref="svg:langSpaceAttrs"/>
1517 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1518 <attribute name="class" type="svg:ClassListType" use="optional"/>
1519 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1520 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1521 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1522 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1523 <attributeGroup ref="svg:PresentationAttributes-Markers"/>
1524 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1525 <attributeGroup ref="svg:graphicsElementEvents"/>
1526 <attribute name="x1" type="svg:CoordinateType" use="optional"/>
1527 <attribute name="y1" type="svg:CoordinateType" use="optional"/>
1528 <attribute name="x2" type="svg:CoordinateType" use="optional"/>
1529 <attribute name="y2" type="svg:CoordinateType" use="optional"/>
1530 </complexType>
1531 <complexType name="polylineType">
1532 <sequence>
1533 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1534 <choice minOccurs="0" maxOccurs="unbounded">
1535 <element ref="svg:animate"/>
1536 <element ref="svg:set"/>
1537 <element ref="svg:animateMotion"/>
1538 <element ref="svg:animateColor"/>
1539 <element ref="svg:animateTransform"/>
1540 </choice>
1541 </sequence>
1542 <attributeGroup ref="svg:stdAttrs"/>
1543 <attributeGroup ref="svg:testAttrs"/>
1544 <attributeGroup ref="svg:langSpaceAttrs"/>
1545 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1546 <attribute name="class" type="svg:ClassListType" use="optional"/>
1547 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1548 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1549 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1550 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1551 <attributeGroup ref="svg:PresentationAttributes-Markers"/>
1552 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1553 <attributeGroup ref="svg:graphicsElementEvents"/>
1554 <attribute name="points" type="svg:PointsType" use="required"/>
1555 </complexType>
1556 <complexType name="polygonType">
1557 <sequence>
1558 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1559 <choice minOccurs="0" maxOccurs="unbounded">
1560 <element ref="svg:animate"/>
1561 <element ref="svg:set"/>
1562 <element ref="svg:animateMotion"/>
1563 <element ref="svg:animateColor"/>
1564 <element ref="svg:animateTransform"/>
1565 </choice>
1566 </sequence>
1567 <attributeGroup ref="svg:stdAttrs"/>
1568 <attributeGroup ref="svg:testAttrs"/>
1569 <attributeGroup ref="svg:langSpaceAttrs"/>
1570 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1571 <attribute name="class" type="svg:ClassListType" use="optional"/>
1572 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1573 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1574 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1575 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1576 <attributeGroup ref="svg:PresentationAttributes-Markers"/>
1577 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1578 <attributeGroup ref="svg:graphicsElementEvents"/>
1579 <attribute name="points" type="svg:PointsType" use="required"/>
1580 </complexType>
1581 <complexType name="textType" mixed="true">
1582 <choice minOccurs="0" maxOccurs="unbounded">
1583 <element ref="svg:desc"/>
1584 <element ref="svg:title"/>
1585 <element ref="svg:metadata"/>
1586 <element ref="svg:tspan"/>
1587 <element ref="svg:tref"/>
1588 <element ref="svg:textPath"/>
1589 <element ref="svg:altGlyph"/>
1590 <element ref="svg:a"/>
1591 <element ref="svg:animate"/>
1592 <element ref="svg:set"/>
1593 <element ref="svg:animateMotion"/>
1594 <element ref="svg:animateColor"/>
1595 <element ref="svg:animateTransform"/>
1596 </choice>
1597 <attributeGroup ref="svg:stdAttrs"/>
1598 <attributeGroup ref="svg:testAttrs"/>
1599 <attributeGroup ref="svg:langSpaceAttrs"/>
1600 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1601 <attribute name="class" type="svg:ClassListType" use="optional"/>
1602 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1603 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1604 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1605 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
1606 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1607 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
1608 <attributeGroup ref="svg:PresentationAttributes-TextElements"/>
1609 <attribute name="transform" type="svg:TransformListType" use="optional"/>
1610 <attributeGroup ref="svg:graphicsElementEvents"/>
1611 <attribute name="x" type="svg:CoordinateType" use="optional"/>
1612 <attribute name="y" type="svg:CoordinateType" use="optional"/>
1613 <attribute name="textLength" type="svg:LengthType" use="optional"/>
1614 <attribute name="lengthAdjust" use="optional">
1615 <simpleType>
1616 <restriction base="string">
1617 <enumeration value="spacing"/>
1618 <enumeration value="spacingAndGlyphs"/>
1619 </restriction>
1620 </simpleType>
1621 </attribute>
1622 </complexType>
1623 <complexType name="tspanType" mixed="true">
1624 <choice minOccurs="0" maxOccurs="unbounded">
1625 <element ref="svg:desc"/>
1626 <element ref="svg:title"/>
1627 <element ref="svg:metadata"/>
1628 <element ref="svg:tspan"/>
1629 <element ref="svg:tref"/>
1630 <element ref="svg:altGlyph"/>
1631 <element ref="svg:a"/>
1632 <element ref="svg:animate"/>
1633 <element ref="svg:set"/>
1634 <element ref="svg:animateColor"/>
1635 </choice>
1636 <attributeGroup ref="svg:stdAttrs"/>
1637 <attributeGroup ref="svg:testAttrs"/>
1638 <attributeGroup ref="svg:langSpaceAttrs"/>
1639 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1640 <attribute name="class" type="svg:ClassListType" use="optional"/>
1641 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1642 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1643 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1644 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
1645 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1646 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
1647 <attributeGroup ref="svg:graphicsElementEvents"/>
1648 <attribute name="x" type="svg:CoordinatesType" use="optional"/>
1649 <attribute name="y" type="svg:CoordinatesType" use="optional"/>
1650 <attribute name="dx" type="svg:LengthsType" use="optional"/>
1651 <attribute name="dy" type="svg:LengthsType" use="optional"/>
1652 <attribute name="rotate" type="string" use="optional"/>
1653 <attribute name="textLength" type="svg:LengthType" use="optional"/>
1654 <attribute name="lengthAdjust" use="optional">
1655 <simpleType>
1656 <restriction base="string">
1657 <enumeration value="spacing"/>
1658 <enumeration value="spacingAndGlyphs"/>
1659 </restriction>
1660 </simpleType>
1661 </attribute>
1662 </complexType>
1663 <complexType name="trefType">
1664 <choice minOccurs="0" maxOccurs="unbounded">
1665 <element ref="svg:desc"/>
1666 <element ref="svg:title"/>
1667 <element ref="svg:metadata"/>
1668 <element ref="svg:animate"/>
1669 <element ref="svg:set"/>
1670 <element ref="svg:animateColor"/>
1671 </choice>
1672 <attributeGroup ref="svg:stdAttrs"/>
1673 <attributeGroup ref="svg:xlinkRefAttrs"/>
1674 <attribute ref="xlink:href" use="optional"/>
1675 <attributeGroup ref="svg:testAttrs"/>
1676 <attributeGroup ref="svg:langSpaceAttrs"/>
1677 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1678 <attribute name="class" type="svg:ClassListType" use="optional"/>
1679 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1680 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1681 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1682 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
1683 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1684 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
1685 <attributeGroup ref="svg:graphicsElementEvents"/>
1686 <attribute name="x" type="svg:CoordinatesType" use="optional"/>
1687 <attribute name="y" type="svg:CoordinatesType" use="optional"/>
1688 <attribute name="dx" type="svg:LengthsType" use="optional"/>
1689 <attribute name="dy" type="svg:LengthsType" use="optional"/>
1690 <attribute name="rotate" type="string" use="optional"/>
1691 <attribute name="textLength" type="svg:LengthType" use="optional"/>
1692 <attribute name="lengthAdjust" use="optional">
1693 <simpleType>
1694 <restriction base="string">
1695 <enumeration value="spacing"/>
1696 <enumeration value="spacingAndGlyphs"/>
1697 </restriction>
1698 </simpleType>
1699 </attribute>
1700 </complexType>
1701 <complexType name="textPathType" mixed="true">
1702 <choice minOccurs="0" maxOccurs="unbounded">
1703 <element ref="svg:desc"/>
1704 <element ref="svg:title"/>
1705 <element ref="svg:metadata"/>
1706 <element ref="svg:tspan"/>
1707 <element ref="svg:tref"/>
1708 <element ref="svg:altGlyph"/>
1709 <element ref="svg:a"/>
1710 <element ref="svg:animate"/>
1711 <element ref="svg:set"/>
1712 <element ref="svg:animateColor"/>
1713 </choice>
1714 <attributeGroup ref="svg:stdAttrs"/>
1715 <attributeGroup ref="svg:xlinkRefAttrs"/>
1716 <attribute ref="xlink:href" use="optional"/>
1717 <attributeGroup ref="svg:langSpaceAttrs"/>
1718 <attributeGroup ref="svg:testAttrs"/>
1719 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1720 <attribute name="class" type="svg:ClassListType" use="optional"/>
1721 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1722 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1723 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
1724 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1725 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
1726 <attributeGroup ref="svg:graphicsElementEvents"/>
1727 <attribute name="startOffset" type="string" use="optional"/>
1728 <attribute name="textLength" type="svg:LengthType" use="optional"/>
1729 <attribute name="lengthAdjust" use="optional">
1730 <simpleType>
1731 <restriction base="string">
1732 <enumeration value="spacing"/>
1733 <enumeration value="spacingAndGlyphs"/>
1734 </restriction>
1735 </simpleType>
1736 </attribute>
1737 <attribute name="method" use="optional">
1738 <simpleType>
1739 <restriction base="string">
1740 <enumeration value="align"/>
1741 <enumeration value="stretch"/>
1742 </restriction>
1743 </simpleType>
1744 </attribute>
1745 <attribute name="spacing" use="optional">
1746 <simpleType>
1747 <restriction base="string">
1748 <enumeration value="auto"/>
1749 <enumeration value="exact"/>
1750 </restriction>
1751 </simpleType>
1752 </attribute>
1753 </complexType>
1754 <complexType name="altGlyphType" mixed="true">
1755 <sequence minOccurs="0" maxOccurs="unbounded"/>
1756 <attributeGroup ref="svg:stdAttrs"/>
1757 <attributeGroup ref="svg:xlinkRefAttrs"/>
1758 <attribute ref="xlink:href" use="optional"/>
1759 <attribute name="glyphRef" type="string" use="optional"/>
1760 <attribute name="format" type="string" use="optional"/>
1761 <attributeGroup ref="svg:testAttrs"/>
1762 <attributeGroup ref="svg:langSpaceAttrs"/>
1763 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1764 <attribute name="class" type="svg:ClassListType" use="optional"/>
1765 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1766 <attributeGroup ref="svg:PresentationAttributes-Color"/>
1767 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
1768 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
1769 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
1770 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
1771 <attributeGroup ref="svg:graphicsElementEvents"/>
1772 <attribute name="x" type="svg:CoordinatesType" use="optional"/>
1773 <attribute name="y" type="svg:CoordinatesType" use="optional"/>
1774 <attribute name="dx" type="svg:LengthsType" use="optional"/>
1775 <attribute name="dy" type="svg:LengthsType" use="optional"/>
1776 <attribute name="rotate" type="string" use="optional"/>
1777 </complexType>
1778 <complexType name="altGlyphDefType">
1779 <choice maxOccurs="unbounded">
1780 <element ref="svg:altGlyphItem"/>
1781 <element ref="svg:glyphRef"/>
1782 </choice>
1783 <attributeGroup ref="svg:stdAttrs"/>
1784 </complexType>
1785 <complexType name="altGlyphItemType">
1786 <sequence maxOccurs="unbounded">
1787 <element ref="svg:glyphRef"/>
1788 </sequence>
1789 <attributeGroup ref="svg:stdAttrs"/>
1790 </complexType>
1791 <complexType name="glyphRefType">
1792 <attributeGroup ref="svg:stdAttrs"/>
1793 <attributeGroup ref="svg:xlinkRefAttrs"/>
1794 <attribute ref="xlink:href" use="optional"/>
1795 <attribute name="class" type="svg:ClassListType" use="optional"/>
1796 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1797 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
1798 <attribute name="glyphRef" type="string" use="required"/>
1799 <attribute name="format" type="string" use="required"/>
1800 <attribute name="x" type="svg:CoordinatesType" use="optional"/>
1801 <attribute name="y" type="svg:CoordinatesType" use="optional"/>
1802 <attribute name="dx" type="svg:LengthsType" use="optional"/>
1803 <attribute name="dy" type="svg:LengthsType" use="optional"/>
1804 </complexType>
1805 <complexType name="markerType">
1806 <choice minOccurs="0" maxOccurs="unbounded">
1807 <element ref="svg:desc"/>
1808 <element ref="svg:title"/>
1809 <element ref="svg:metadata"/>
1810 <element ref="svg:defs"/>
1811 <element ref="svg:path"/>
1812 <element ref="svg:text"/>
1813 <element ref="svg:rect"/>
1814 <element ref="svg:circle"/>
1815 <element ref="svg:ellipse"/>
1816 <element ref="svg:line"/>
1817 <element ref="svg:polyline"/>
1818 <element ref="svg:polygon"/>
1819 <element ref="svg:use"/>
1820 <element ref="svg:image"/>
1821 <element ref="svg:svg"/>
1822 <element ref="svg:g"/>
1823 <element ref="svg:view"/>
1824 <element ref="svg:switch"/>
1825 <element ref="svg:a"/>
1826 <element ref="svg:altGlyphDef"/>
1827 <element ref="svg:script"/>
1828 <element ref="svg:style"/>
1829 <element ref="svg:symbol"/>
1830 <element ref="svg:marker"/>
1831 <element ref="svg:clipPath"/>
1832 <element ref="svg:mask"/>
1833 <element ref="svg:linearGradient"/>
1834 <element ref="svg:radialGradient"/>
1835 <element ref="svg:pattern"/>
1836 <element ref="svg:filter"/>
1837 <element ref="svg:cursor"/>
1838 <element ref="svg:font"/>
1839 <element ref="svg:animate"/>
1840 <element ref="svg:set"/>
1841 <element ref="svg:animateMotion"/>
1842 <element ref="svg:animateColor"/>
1843 <element ref="svg:animateTransform"/>
1844 <element ref="svg:color-profile"/>
1845 <element ref="svg:font-face"/>
1846 </choice>
1847 <attributeGroup ref="svg:stdAttrs"/>
1848 <attributeGroup ref="svg:langSpaceAttrs"/>
1849 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1850 <attribute name="class" type="svg:ClassListType" use="optional"/>
1851 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1852 <attributeGroup ref="svg:PresentationAttributes-All"/>
1853 <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional"/>
1854 <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType" default="xMidYMid meet"/>
1855 <attribute name="refX" type="svg:CoordinateType" use="optional"/>
1856 <attribute name="refY" type="svg:CoordinateType" use="optional"/>
1857 <attribute name="markerUnits" use="optional">
1858 <simpleType>
1859 <restriction base="string">
1860 <enumeration value="strokeWidth"/>
1861 <enumeration value="userSpaceOnUse"/>
1862 <enumeration value="userSpace"/>
1863 </restriction>
1864 </simpleType>
1865 </attribute>
1866 <attribute name="markerWidth" type="svg:LengthType" use="optional"/>
1867 <attribute name="markerHeight" type="svg:LengthType" use="optional"/>
1868 <attribute name="orient" type="string" use="optional"/>
1869 </complexType>
1870 <complexType name="color-profileType">
1871 <sequence>
1872 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1873 </sequence>
1874 <attributeGroup ref="svg:stdAttrs"/>
1875 <attributeGroup ref="svg:xlinkRefAttrs"/>
1876 <attribute ref="xlink:href" use="optional"/>
1877 <attribute name="local" type="string" use="optional"/>
1878 <attribute name="name" type="string" use="required"/>
1879 <attribute name="rendering-intent" default="auto">
1880 <simpleType>
1881 <restriction base="string">
1882 <enumeration value="auto"/>
1883 <enumeration value="perceptual"/>
1884 <enumeration value="relative-colorimetric"/>
1885 <enumeration value="saturation"/>
1886 <enumeration value="absolute-colorimetric"/>
1887 </restriction>
1888 </simpleType>
1889 </attribute>
1890 </complexType>
1891 <complexType name="linearGradientType">
1892 <sequence>
1893 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1894 <choice minOccurs="0" maxOccurs="unbounded">
1895 <element ref="svg:stop"/>
1896 <element ref="svg:animate"/>
1897 <element ref="svg:set"/>
1898 <element ref="svg:animateTransform"/>
1899 </choice>
1900 </sequence>
1901 <attributeGroup ref="svg:stdAttrs"/>
1902 <attributeGroup ref="svg:xlinkRefAttrs"/>
1903 <attribute ref="xlink:href" use="optional"/>
1904 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1905 <attribute name="class" type="svg:ClassListType" use="optional"/>
1906 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1907 <attribute name="gradientUnits" use="optional"><!-- @@ need to add more attributes here @@ -->
1908 <simpleType>
1909 <restriction base="string">
1910 <enumeration value="userSpaceOnUse"/>
1911 <enumeration value="userSpace"/>
1912 <enumeration value="objectBoundingBox"/>
1913 </restriction>
1914 </simpleType>
1915 </attribute>
1916 <attribute name="gradientTransform" type="svg:TransformListType" use="optional"/>
1917 <attribute name="x1" type="svg:CoordinateType" use="optional"/>
1918 <attribute name="y1" type="svg:CoordinateType" use="optional"/>
1919 <attribute name="x2" type="svg:CoordinateType" use="optional"/>
1920 <attribute name="y2" type="svg:CoordinateType" use="optional"/>
1921 <attribute name="spreadMethod" default="pad">
1922 <simpleType>
1923 <restriction base="string">
1924 <enumeration value="pad"/>
1925 <enumeration value="reflect"/>
1926 <enumeration value="repeat"/>
1927 </restriction>
1928 </simpleType>
1929 </attribute>
1930 </complexType>
1931 <complexType name="radialGradientType">
1932 <sequence>
1933 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
1934 <choice minOccurs="0" maxOccurs="unbounded">
1935 <element ref="svg:stop"/>
1936 <element ref="svg:animate"/>
1937 <element ref="svg:set"/>
1938 <element ref="svg:animateTransform"/>
1939 </choice>
1940 </sequence>
1941 <attributeGroup ref="svg:stdAttrs"/>
1942 <attributeGroup ref="svg:xlinkRefAttrs"/>
1943 <attribute ref="xlink:href" use="optional"/>
1944 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
1945 <attribute name="gradientUnits" use="optional">
1946 <simpleType>
1947 <restriction base="string">
1948 <enumeration value="userSpaceOnUse"/>
1949 <enumeration value="userSpace"/>
1950 <enumeration value="objectBoundingBox"/>
1951 </restriction>
1952 </simpleType>
1953 </attribute>
1954 <attribute name="gradientTransform" type="svg:TransformListType" use="optional"/>
1955 <attribute name="cx" type="svg:CoordinateType" use="optional"/>
1956 <attribute name="cy" type="svg:CoordinateType" use="optional"/>
1957 <attribute name="r" type="svg:LengthType" use="optional"/>
1958 <attribute name="fx" type="svg:CoordinateType" use="optional"/>
1959 <attribute name="fy" type="svg:CoordinateType" use="optional"/>
1960 <attribute name="spreadMethod" default="pad">
1961 <simpleType>
1962 <restriction base="string">
1963 <enumeration value="pad"/>
1964 <enumeration value="reflect"/>
1965 <enumeration value="repeat"/>
1966 </restriction>
1967 </simpleType>
1968 </attribute>
1969 </complexType>
1970 <complexType name="stopType">
1971 <choice minOccurs="0" maxOccurs="unbounded">
1972 <element ref="svg:animate"/>
1973 <element ref="svg:set"/>
1974 <element ref="svg:animateColor"/>
1975 </choice>
1976 <attributeGroup ref="svg:stdAttrs"/>
1977 <attribute name="class" type="svg:ClassListType" use="optional"/>
1978 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
1979 <attributeGroup ref="svg:PresentationAttributes-Gradients"/>
1980 <attribute name="offset" type="svg:LengthType" use="required"/>
1981 </complexType>
1982 <complexType name="patternType">
1983 <choice minOccurs="0" maxOccurs="unbounded">
1984 <element ref="svg:desc"/>
1985 <element ref="svg:title"/>
1986 <element ref="svg:metadata"/>
1987 <element ref="svg:defs"/>
1988 <element ref="svg:path"/>
1989 <element ref="svg:text"/>
1990 <element ref="svg:rect"/>
1991 <element ref="svg:circle"/>
1992 <element ref="svg:ellipse"/>
1993 <element ref="svg:line"/>
1994 <element ref="svg:polyline"/>
1995 <element ref="svg:polygon"/>
1996 <element ref="svg:use"/>
1997 <element ref="svg:image"/>
1998 <element ref="svg:svg"/>
1999 <element ref="svg:g"/>
2000 <element ref="svg:view"/>
2001 <element ref="svg:switch"/>
2002 <element ref="svg:a"/>
2003 <element ref="svg:altGlyphDef"/>
2004 <element ref="svg:script"/>
2005 <element ref="svg:style"/>
2006 <element ref="svg:symbol"/>
2007 <element ref="svg:marker"/>
2008 <element ref="svg:clipPath"/>
2009 <element ref="svg:mask"/>
2010 <element ref="svg:linearGradient"/>
2011 <element ref="svg:radialGradient"/>
2012 <element ref="svg:pattern"/>
2013 <element ref="svg:filter"/>
2014 <element ref="svg:cursor"/>
2015 <element ref="svg:font"/>
2016 <element ref="svg:animate"/>
2017 <element ref="svg:set"/>
2018 <element ref="svg:animateMotion"/>
2019 <element ref="svg:animateColor"/>
2020 <element ref="svg:animateTransform"/>
2021 <element ref="svg:color-profile"/>
2022 <element ref="svg:font-face"/>
2023 </choice>
2024 <attributeGroup ref="svg:stdAttrs"/>
2025 <attributeGroup ref="svg:xlinkRefAttrs"/>
2026 <attribute ref="xlink:href" use="optional"/>
2027 <attributeGroup ref="svg:testAttrs"/>
2028 <attributeGroup ref="svg:langSpaceAttrs"/>
2029 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2030 <attribute name="class" type="svg:ClassListType" use="optional"/>
2031 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2032 <attributeGroup ref="svg:PresentationAttributes-All"/>
2033 <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional"/>
2034 <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType" default="xMidYMid meet"/>
2035 <attribute name="patternUnits" use="optional">
2036 <simpleType>
2037 <restriction base="string">
2038 <enumeration value="userSpaceOnUse"/>
2039 <enumeration value="userSpace"/>
2040 <enumeration value="objectBoundingBox"/>
2041 </restriction>
2042 </simpleType>
2043 </attribute>
2044 <attribute name="patternTransform" type="svg:TransformListType" use="optional"/>
2045 <attribute name="x" type="svg:CoordinateType" use="optional"/>
2046 <attribute name="y" type="svg:CoordinateType" use="optional"/>
2047 <attribute name="width" type="svg:LengthType" use="required"/>
2048 <attribute name="height" type="svg:LengthType" use="required"/>
2049 </complexType>
2050 <complexType name="clipPathType">
2051 <sequence>
2052 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2053 <choice minOccurs="0" maxOccurs="unbounded">
2054 <element ref="svg:path"/>
2055 <element ref="svg:text"/>
2056 <element ref="svg:rect"/>
2057 <element ref="svg:circle"/>
2058 <element ref="svg:ellipse"/>
2059 <element ref="svg:line"/>
2060 <element ref="svg:polyline"/>
2061 <element ref="svg:polygon"/>
2062 <element ref="svg:use"/>
2063 <element ref="svg:animate"/>
2064 <element ref="svg:set"/>
2065 <element ref="svg:animateMotion"/>
2066 <element ref="svg:animateColor"/>
2067 <element ref="svg:animateTransform"/>
2068 </choice>
2069 </sequence>
2070 <attributeGroup ref="svg:stdAttrs"/>
2071 <attributeGroup ref="svg:testAttrs"/>
2072 <attributeGroup ref="svg:langSpaceAttrs"/>
2073 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2074 <attribute name="class" type="svg:ClassListType" use="optional"/>
2075 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2076 <attributeGroup ref="svg:PresentationAttributes-FillStroke"/>
2077 <attributeGroup ref="svg:PresentationAttributes-FontSpecification"/>
2078 <attributeGroup ref="svg:PresentationAttributes-Graphics"/>
2079 <attributeGroup ref="svg:PresentationAttributes-TextContentElements"/>
2080 <attributeGroup ref="svg:PresentationAttributes-TextElements"/>
2081 <attribute name="transform" type="svg:TransformListType" use="optional"/>
2082 <attribute name="clipPathUnits" use="optional">
2083 <simpleType>
2084 <restriction base="string">
2085 <enumeration value="userSpaceOnUse"/>
2086 <enumeration value="userSpace"/>
2087 <enumeration value="objectBoundingBox"/>
2088 </restriction>
2089 </simpleType>
2090 </attribute>
2091 </complexType>
2092 <complexType name="maskType">
2093 <sequence>
2094 <choice minOccurs="0" maxOccurs="unbounded">
2095 <element ref="svg:desc"/>
2096 <element ref="svg:title"/>
2097 <element ref="svg:metadata"/>
2098 <element ref="svg:defs"/>
2099 <element ref="svg:path"/>
2100 <element ref="svg:text"/>
2101 <element ref="svg:rect"/>
2102 <element ref="svg:circle"/>
2103 <element ref="svg:ellipse"/>
2104 <element ref="svg:line"/>
2105 <element ref="svg:polyline"/>
2106 <element ref="svg:polygon"/>
2107 <element ref="svg:use"/>
2108 <element ref="svg:image"/>
2109 <element ref="svg:svg"/>
2110 <element ref="svg:g"/>
2111 <element ref="svg:view"/>
2112 <element ref="svg:switch"/>
2113 <element ref="svg:a"/>
2114 <element ref="svg:altGlyphDef"/>
2115 <element ref="svg:script"/>
2116 <element ref="svg:style"/>
2117 <element ref="svg:symbol"/>
2118 <element ref="svg:marker"/>
2119 <element ref="svg:clipPath"/>
2120 <element ref="svg:mask"/>
2121 <element ref="svg:linearGradient"/>
2122 <element ref="svg:radialGradient"/>
2123 <element ref="svg:pattern"/>
2124 <element ref="svg:filter"/>
2125 <element ref="svg:cursor"/>
2126 <element ref="svg:font"/>
2127 <element ref="svg:animate"/>
2128 <element ref="svg:set"/>
2129 <element ref="svg:animateMotion"/>
2130 <element ref="svg:animateColor"/>
2131 <element ref="svg:animateTransform"/>
2132 <element ref="svg:color-profile"/>
2133 <element ref="svg:font-face"/>
2134 </choice>
2135 </sequence>
2136 <attributeGroup ref="svg:stdAttrs"/>
2137 <attributeGroup ref="svg:testAttrs"/>
2138 <attributeGroup ref="svg:langSpaceAttrs"/>
2139 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2140 <attribute name="class" type="svg:ClassListType" use="optional"/>
2141 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2142 <attributeGroup ref="svg:PresentationAttributes-All"/>
2143 <attribute name="transform" type="svg:TransformListType" use="optional"/>
2144 <attribute name="maskUnits" use="optional">
2145 <simpleType>
2146 <restriction base="string">
2147 <enumeration value="userSpaceOnUse"/>
2148 <enumeration value="userSpace"/>
2149 <enumeration value="objectBoundingBox"/>
2150 </restriction>
2151 </simpleType>
2152 </attribute>
2153 <attribute name="x" type="svg:CoordinateType" use="optional"/>
2154 <attribute name="y" type="svg:CoordinateType" use="optional"/>
2155 <attribute name="width" type="svg:LengthType" use="optional"/>
2156 <attribute name="height" type="svg:LengthType" use="optional"/>
2157 </complexType>
2158 <complexType name="filterType">
2159 <sequence>
2160 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2161 <choice minOccurs="0" maxOccurs="unbounded">
2162 <element ref="svg:feBlend"/>
2163 <element ref="svg:feFlood"/>
2164 <element ref="svg:feColorMatrix"/>
2165 <element ref="svg:feComponentTransfer"/>
2166 <element ref="svg:feComposite"/>
2167 <element ref="svg:feConvolveMatrix"/>
2168 <element ref="svg:feDiffuseLighting"/>
2169 <element ref="svg:feDisplacementMap"/>
2170 <element ref="svg:feGaussianBlur"/>
2171 <element ref="svg:feImage"/>
2172 <element ref="svg:feMerge"/>
2173 <element ref="svg:feMorphology"/>
2174 <element ref="svg:feOffset"/>
2175 <element ref="svg:feSpecularLighting"/>
2176 <element ref="svg:feTile"/>
2177 <element ref="svg:feTurbulence"/>
2178 <element ref="svg:animate"/>
2179 <element ref="svg:set"/>
2180 </choice>
2181 </sequence>
2182 <attributeGroup ref="svg:stdAttrs"/>
2183 <attributeGroup ref="svg:xlinkRefAttrs"/>
2184 <attribute ref="xlink:href" use="optional"/>
2185 <attributeGroup ref="svg:langSpaceAttrs"/>
2186 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2187 <attribute name="class" type="svg:ClassListType" use="optional"/>
2188 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2189 <attributeGroup ref="svg:PresentationAttributes-All"/>
2190 <attribute name="filterUnits" use="optional">
2191 <simpleType>
2192 <restriction base="string">
2193 <enumeration value="userSpaceOnUse"/>
2194 <enumeration value="userSpace"/>
2195 <enumeration value="objectBoundingBox"/>
2196 </restriction>
2197 </simpleType>
2198 </attribute>
2199 <attribute name="primitiveUnits" use="optional">
2200 <simpleType>
2201 <restriction base="string">
2202 <enumeration value="userSpaceOnUse"/>
2203 <enumeration value="userSpace"/>
2204 <enumeration value="objectBoundingBox"/>
2205 </restriction>
2206 </simpleType>
2207 </attribute>
2208 <attribute name="x" type="svg:CoordinateType" use="optional"/>
2209 <attribute name="y" type="svg:CoordinateType" use="optional"/>
2210 <attribute name="width" type="svg:LengthType" use="optional"/>
2211 <attribute name="height" type="svg:LengthType" use="optional"/>
2212 <attribute name="filterRes" type="string" use="optional"/>
2213 </complexType>
2214 <complexType name="feDistantLightType">
2215 <choice minOccurs="0" maxOccurs="unbounded">
2216 <element ref="svg:animate"/>
2217 <element ref="svg:set"/>
2218 </choice>
2219 <attributeGroup ref="svg:stdAttrs"/>
2220 <attribute name="azimuth" type="double" use="optional"/>
2221 <attribute name="elevation" type="double" use="optional"/>
2222 </complexType>
2223 <complexType name="fePointLightType">
2224 <choice minOccurs="0" maxOccurs="unbounded">
2225 <element ref="svg:animate"/>
2226 <element ref="svg:set"/>
2227 </choice>
2228 <attributeGroup ref="svg:stdAttrs"/>
2229 <attribute name="x" type="double" use="optional"/>
2230 <attribute name="y" type="double" use="optional"/>
2231 <attribute name="z" type="double" use="optional"/>
2232 </complexType>
2233 <complexType name="feSpotLightType">
2234 <choice minOccurs="0" maxOccurs="unbounded">
2235 <element ref="svg:animate"/>
2236 <element ref="svg:set"/>
2237 </choice>
2238 <attributeGroup ref="svg:stdAttrs"/>
2239 <attribute name="x" type="double" use="optional"/>
2240 <attribute name="y" type="double" use="optional"/>
2241 <attribute name="z" type="double" use="optional"/>
2242 <attribute name="pointsAtX" type="double" use="optional"/>
2243 <attribute name="pointsAtY" type="double" use="optional"/>
2244 <attribute name="pointsAtZ" type="double" use="optional"/>
2245 <attribute name="specularExponent" type="double" use="optional"/>
2246 <attribute name="limitingConeAngle" type="double" use="optional"/>
2247 </complexType>
2248 <complexType name="feBlendType">
2249 <choice minOccurs="0" maxOccurs="unbounded">
2250 <element ref="svg:animate"/>
2251 <element ref="svg:set"/>
2252 </choice>
2253 <attributeGroup ref="svg:stdAttrs"/>
2254 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2255 <attribute name="in2" type="string" use="required"/>
2256 <attribute name="mode" default="normal">
2257 <simpleType>
2258 <restriction base="string">
2259 <enumeration value="normal"/>
2260 <enumeration value="multiply"/>
2261 <enumeration value="screen"/>
2262 <enumeration value="darken"/>
2263 <enumeration value="lighten"/>
2264 </restriction>
2265 </simpleType>
2266 </attribute>
2267 </complexType>
2268 <complexType name="feColorMatrixType">
2269 <choice minOccurs="0" maxOccurs="unbounded">
2270 <element ref="svg:animate"/>
2271 <element ref="svg:set"/>
2272 </choice>
2273 <attributeGroup ref="svg:stdAttrs"/>
2274 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2275 <attribute name="type" default="matrix">
2276 <simpleType>
2277 <restriction base="string">
2278 <enumeration value="matrix"/>
2279 <enumeration value="saturate"/>
2280 <enumeration value="hueRotate"/>
2281 <enumeration value="luminanceToAlpha"/>
2282 </restriction>
2283 </simpleType>
2284 </attribute>
2285 <attribute name="values" type="string" use="optional"/>
2286 </complexType>
2287 <complexType name="feComponentTransferType">
2288 <sequence>
2289 <element ref="svg:feFuncR" minOccurs="0"/>
2290 <element ref="svg:feFuncG" minOccurs="0"/>
2291 <element ref="svg:feFuncB" minOccurs="0"/>
2292 <element ref="svg:feFuncA" minOccurs="0"/>
2293 </sequence>
2294 <attributeGroup ref="svg:stdAttrs"/>
2295 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2296 </complexType>
2297 <complexType name="feFuncRType">
2298 <choice minOccurs="0" maxOccurs="unbounded">
2299 <element ref="svg:animate"/>
2300 <element ref="svg:set"/>
2301 </choice>
2302 <attributeGroup ref="svg:stdAttrs"/>
2303 <attributeGroup ref="svg:component_transfer_function_attributes"/>
2304 </complexType>
2305 <complexType name="feFuncGType">
2306 <choice minOccurs="0" maxOccurs="unbounded">
2307 <element ref="svg:animate"/>
2308 <element ref="svg:set"/>
2309 </choice>
2310 <attributeGroup ref="svg:stdAttrs"/>
2311 <attributeGroup ref="svg:component_transfer_function_attributes"/>
2312 </complexType>
2313 <complexType name="feFuncBType">
2314 <choice minOccurs="0" maxOccurs="unbounded">
2315 <element ref="svg:animate"/>
2316 <element ref="svg:set"/>
2317 </choice>
2318 <attributeGroup ref="svg:stdAttrs"/>
2319 <attributeGroup ref="svg:component_transfer_function_attributes"/>
2320 </complexType>
2321 <complexType name="feFuncAType">
2322 <choice minOccurs="0" maxOccurs="unbounded">
2323 <element ref="svg:animate"/>
2324 <element ref="svg:set"/>
2325 </choice>
2326 <attributeGroup ref="svg:stdAttrs"/>
2327 <attributeGroup ref="svg:component_transfer_function_attributes"/>
2328 </complexType>
2329 <complexType name="feCompositeType">
2330 <choice minOccurs="0" maxOccurs="unbounded">
2331 <element ref="svg:animate"/>
2332 <element ref="svg:set"/>
2333 </choice>
2334 <attributeGroup ref="svg:stdAttrs"/>
2335 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2336 <attribute name="in2" type="string" use="required"/>
2337 <attribute name="operator" default="over">
2338 <simpleType>
2339 <restriction base="string">
2340 <enumeration value="over"/>
2341 <enumeration value="in"/>
2342 <enumeration value="out"/>
2343 <enumeration value="atop"/>
2344 <enumeration value="xor"/>
2345 <enumeration value="arithmetic"/>
2346 </restriction>
2347 </simpleType>
2348 </attribute>
2349 <attribute name="k1" type="double" use="optional"/>
2350 <attribute name="k2" type="double" use="optional"/>
2351 <attribute name="k3" type="double" use="optional"/>
2352 <attribute name="k4" type="double" use="optional"/>
2353 </complexType>
2354 <complexType name="feConvolveMatrixType">
2355 <choice minOccurs="0" maxOccurs="unbounded">
2356 <element ref="svg:animate"/>
2357 <element ref="svg:set"/>
2358 </choice>
2359 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2360 <attribute name="order" type="string" use="required"/>
2361 <attribute name="kernelMatrix" type="string" use="required"/>
2362 <attribute name="divisor" type="double" use="optional"/>
2363 <attribute name="bias" type="double" use="optional"/>
2364 <attribute name="targetX" type="integer" use="optional"/>
2365 <attribute name="targetY" type="integer" use="optional"/>
2366 <attribute name="edgeMode" default="duplicate">
2367 <simpleType>
2368 <restriction base="string">
2369 <enumeration value="duplicate"/>
2370 <enumeration value="wrap"/>
2371 <enumeration value="none"/>
2372 </restriction>
2373 </simpleType>
2374 </attribute>
2375 <attribute name="kernelUnitLength" type="string" use="optional"/>
2376 <attribute name="preserveAlpha" type="boolean" use="optional"/>
2377 </complexType>
2378 <complexType name="feDiffuseLightingType">
2379 <sequence>
2380 <choice>
2381 <element ref="svg:feDistantLight"/>
2382 <element ref="svg:fePointLight"/>
2383 <element ref="svg:feSpotLight"/>
2384 </choice>
2385 <choice minOccurs="0" maxOccurs="unbounded">
2386 <element ref="svg:animate"/>
2387 <element ref="svg:set"/>
2388 <element ref="svg:animateColor"/>
2389 </choice>
2390 </sequence>
2391 <attributeGroup ref="svg:stdAttrs"/>
2392 <attribute name="class" type="svg:ClassListType" use="optional"/>
2393 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2394 <attributeGroup ref="svg:PresentationAttributes-LightingEffects"/>
2395 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2396 <attribute name="surfaceScale" type="double" use="optional"/>
2397 <attribute name="diffuseConstant" type="double" use="optional"/>
2398 </complexType>
2399 <complexType name="feDisplacementMapType">
2400 <choice minOccurs="0" maxOccurs="unbounded">
2401 <element ref="svg:animate"/>
2402 <element ref="svg:set"/>
2403 </choice>
2404 <attributeGroup ref="svg:stdAttrs"/>
2405 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2406 <attribute name="in2" type="string" use="required"/>
2407 <attribute name="scale" type="double" use="optional"/>
2408 <attribute name="xChannelSelector" default="A">
2409 <simpleType>
2410 <restriction base="string">
2411 <enumeration value="R"/>
2412 <enumeration value="G"/>
2413 <enumeration value="B"/>
2414 <enumeration value="A"/>
2415 </restriction>
2416 </simpleType>
2417 </attribute>
2418 <attribute name="yChannelSelector" default="A">
2419 <simpleType>
2420 <restriction base="string">
2421 <enumeration value="R"/>
2422 <enumeration value="G"/>
2423 <enumeration value="B"/>
2424 <enumeration value="A"/>
2425 </restriction>
2426 </simpleType>
2427 </attribute>
2428 </complexType>
2429 <complexType name="feFloodType">
2430 <choice minOccurs="0" maxOccurs="unbounded">
2431 <element ref="svg:animate"/>
2432 <element ref="svg:set"/>
2433 <element ref="svg:animateColor"/>
2434 </choice>
2435 <attributeGroup ref="svg:stdAttrs"/>
2436 <attribute name="class" type="svg:ClassListType" use="optional"/>
2437 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2438 <attributeGroup ref="svg:PresentationAttributes-feFlood"/>
2439 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2440 </complexType>
2441 <complexType name="feGaussianBlurType">
2442 <choice minOccurs="0" maxOccurs="unbounded">
2443 <element ref="svg:animate"/>
2444 <element ref="svg:set"/>
2445 </choice>
2446 <attributeGroup ref="svg:stdAttrs"/>
2447 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2448 <attribute name="stdDeviation" type="string" use="optional"/>
2449 </complexType>
2450 <complexType name="feImageType">
2451 <choice minOccurs="0" maxOccurs="unbounded">
2452 <element ref="svg:animate"/>
2453 <element ref="svg:set"/>
2454 <element ref="svg:animateTransform"/>
2455 </choice>
2456 <attributeGroup ref="svg:stdAttrs"/>
2457 <attributeGroup ref="svg:xlinkRefAttrs"/>
2458 <attribute ref="xlink:href" use="optional"/>
2459 <attributeGroup ref="svg:langSpaceAttrs"/>
2460 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2461 <attribute name="class" type="svg:ClassListType" use="optional"/>
2462 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2463 <attributeGroup ref="svg:PresentationAttributes-All"/>
2464 <attribute name="transform" type="svg:TransformListType" use="optional"/>
2465 <attributeGroup ref="svg:filter_primitive_attributes"/>
2466 </complexType>
2467 <complexType name="feMergeType">
2468 <sequence minOccurs="0" maxOccurs="unbounded">
2469 <element ref="svg:feMergeNode"/>
2470 </sequence>
2471 <attributeGroup ref="svg:stdAttrs"/>
2472 <attributeGroup ref="svg:filter_primitive_attributes"/>
2473 </complexType>
2474 <complexType name="feMergeNodeType">
2475 <choice minOccurs="0" maxOccurs="unbounded">
2476 <element ref="svg:animate"/>
2477 <element ref="svg:set"/>
2478 </choice>
2479 <attributeGroup ref="svg:stdAttrs"/>
2480 <attribute name="in" type="string" use="optional"/>
2481 </complexType>
2482 <complexType name="feMorphologyType">
2483 <choice minOccurs="0" maxOccurs="unbounded">
2484 <element ref="svg:animate"/>
2485 <element ref="svg:set"/>
2486 </choice>
2487 <attributeGroup ref="svg:stdAttrs"/>
2488 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2489 <attribute name="operator" default="erode">
2490 <simpleType>
2491 <restriction base="string">
2492 <enumeration value="erode"/>
2493 <enumeration value="dilate"/>
2494 </restriction>
2495 </simpleType>
2496 </attribute>
2497 <attribute name="radius" type="svg:LengthType" use="optional"/>
2498 </complexType>
2499 <complexType name="feOffsetType">
2500 <choice minOccurs="0" maxOccurs="unbounded">
2501 <element ref="svg:animate"/>
2502 <element ref="svg:set"/>
2503 </choice>
2504 <attributeGroup ref="svg:stdAttrs"/>
2505 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2506 <attribute name="dx" type="svg:LengthType" use="optional"/>
2507 <attribute name="dy" type="svg:LengthType" use="optional"/>
2508 </complexType>
2509 <complexType name="feSpecularLightingType">
2510 <sequence>
2511 <choice>
2512 <element ref="svg:feDistantLight"/>
2513 <element ref="svg:fePointLight"/>
2514 <element ref="svg:feSpotLight"/>
2515 </choice>
2516 <choice minOccurs="0" maxOccurs="unbounded">
2517 <element ref="svg:animate"/>
2518 <element ref="svg:set"/>
2519 <element ref="svg:animateColor"/>
2520 </choice>
2521 </sequence>
2522 <attributeGroup ref="svg:stdAttrs"/>
2523 <attribute name="class" type="svg:ClassListType" use="optional"/>
2524 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2525 <attributeGroup ref="svg:PresentationAttributes-LightingEffects"/>
2526 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2527 <attribute name="surfaceScale" type="double" use="optional"/>
2528 <attribute name="specularConstant" type="double" use="optional"/>
2529 <attribute name="specularExponent" type="double" use="optional"/>
2530 </complexType>
2531 <complexType name="feTileType">
2532 <choice minOccurs="0" maxOccurs="unbounded">
2533 <element ref="svg:animate"/>
2534 <element ref="svg:set"/>
2535 </choice>
2536 <attributeGroup ref="svg:stdAttrs"/>
2537 <attributeGroup ref="svg:filter_primitive_attributes_with_in"/>
2538 </complexType>
2539 <complexType name="feTurbulenceType">
2540 <choice minOccurs="0" maxOccurs="unbounded">
2541 <element ref="svg:animate"/>
2542 <element ref="svg:set"/>
2543 </choice>
2544 <attributeGroup ref="svg:stdAttrs"/>
2545 <attributeGroup ref="svg:filter_primitive_attributes"/>
2546 <attribute name="baseFrequency" type="string" use="optional"/>
2547 <attribute name="numOctaves" type="integer" use="optional"/>
2548 <attribute name="seed" type="double" use="optional"/>
2549 <attribute name="stitchTiles" default="noStitch">
2550 <simpleType>
2551 <restriction base="string">
2552 <enumeration value="stitch"/>
2553 <enumeration value="noStitch"/>
2554 </restriction>
2555 </simpleType>
2556 </attribute>
2557 <attribute name="type" default="turbulence">
2558 <simpleType>
2559 <restriction base="string">
2560 <enumeration value="fractalNoise"/>
2561 <enumeration value="turbulence"/>
2562 </restriction>
2563 </simpleType>
2564 </attribute>
2565 </complexType>
2566 <complexType name="cursorType">
2567 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2568 <attributeGroup ref="svg:stdAttrs"/>
2569 <attributeGroup ref="svg:xlinkRefAttrs"/>
2570 <attribute ref="xlink:href" use="optional"/>
2571 <attributeGroup ref="svg:testAttrs"/>
2572 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2573 <attribute name="x" type="svg:CoordinateType" use="optional"/>
2574 <attribute name="y" type="svg:CoordinateType" use="optional"/>
2575 </complexType>
2576 <complexType name="aType" mixed="true">
2577 <choice minOccurs="0" maxOccurs="unbounded">
2578 <element ref="svg:desc"/>
2579 <element ref="svg:title"/>
2580 <element ref="svg:metadata"/>
2581 <element ref="svg:defs"/>
2582 <element ref="svg:path"/>
2583 <element ref="svg:text"/>
2584 <element ref="svg:rect"/>
2585 <element ref="svg:circle"/>
2586 <element ref="svg:ellipse"/>
2587 <element ref="svg:line"/>
2588 <element ref="svg:polyline"/>
2589 <element ref="svg:polygon"/>
2590 <element ref="svg:use"/>
2591 <element ref="svg:image"/>
2592 <element ref="svg:svg"/>
2593 <element ref="svg:g"/>
2594 <element ref="svg:view"/>
2595 <element ref="svg:switch"/>
2596 <element ref="svg:a"/>
2597 <element ref="svg:altGlyphDef"/>
2598 <element ref="svg:script"/>
2599 <element ref="svg:style"/>
2600 <element ref="svg:symbol"/>
2601 <element ref="svg:marker"/>
2602 <element ref="svg:clipPath"/>
2603 <element ref="svg:mask"/>
2604 <element ref="svg:linearGradient"/>
2605 <element ref="svg:radialGradient"/>
2606 <element ref="svg:pattern"/>
2607 <element ref="svg:filter"/>
2608 <element ref="svg:cursor"/>
2609 <element ref="svg:font"/>
2610 <element ref="svg:animate"/>
2611 <element ref="svg:set"/>
2612 <element ref="svg:animateMotion"/>
2613 <element ref="svg:animateColor"/>
2614 <element ref="svg:animateTransform"/>
2615 <element ref="svg:color-profile"/>
2616 <element ref="svg:font-face"/>
2617 </choice>
2618 <attributeGroup ref="svg:stdAttrs"/>
2619 <attribute ref="xlink:type" fixed="simple"/>
2620 <attribute ref="xlink:role"/>
2621 <attribute ref="xlink:arcrole"/>
2622 <attribute ref="xlink:title"/>
2623 <attribute ref="xlink:show"/>
2624 <attribute ref="xlink:actuate" fixed="onRequest"/>
2625 <attribute ref="xlink:href" use="optional"/>
2626 <attributeGroup ref="svg:testAttrs"/>
2627 <attributeGroup ref="svg:langSpaceAttrs"/>
2628 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2629 <attribute name="class" type="svg:ClassListType" use="optional"/>
2630 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2631 <attributeGroup ref="svg:PresentationAttributes-All"/>
2632 <attribute name="transform" type="svg:TransformListType" use="optional"/>
2633 <attributeGroup ref="svg:graphicsElementEvents"/>
2634 <attribute name="target" type="NMTOKEN" use="optional"/>
2635 <!-- don't use attribute declarations to declare namespaces
2636 attribute ref="xmlns:xlink" type="string" fixed="http://www.w3.org/1999/xlink"/>
2637 -->
2638 <!-- change from string to URI -->
2639 </complexType>
2640 <complexType name="viewType">
2641 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2642 <attributeGroup ref="svg:stdAttrs"/>
2643 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2644 <attribute name="viewBox" type="svg:ViewBoxSpecType" use="optional"/>
2645 <attribute name="preserveAspectRatio" type="svg:PreserveAspectRatioSpecType" default="xMidYMid meet"/>
2646 <attribute name="zoomAndPan" default="magnify">
2647 <simpleType>
2648 <restriction base="string">
2649 <enumeration value="disable"/>
2650 <enumeration value="magnify"/>
2651 <enumeration value="zoom"/>
2652 </restriction>
2653 </simpleType>
2654 </attribute>
2655 <attribute name="viewTarget" type="string" use="optional"/>
2656 </complexType>
2657 <complexType name="scriptType" mixed="true">
2658 <attributeGroup ref="svg:stdAttrs"/>
2659 <attributeGroup ref="svg:xlinkRefAttrs"/>
2660 <attribute ref="xlink:href" use="optional"/>
2661 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2662 <attribute name="type" type="svg:ContentTypeType" use="required"/>
2663 </complexType>
2664 <complexType name="animateType">
2665 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2666 <attributeGroup ref="svg:stdAttrs"/>
2667 <attributeGroup ref="svg:testAttrs"/>
2668 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2669 <attributeGroup ref="svg:animationEvents"/>
2670 <attributeGroup ref="svg:animTargetAttrs"/>
2671 <attributeGroup ref="svg:animTimingAttrs"/>
2672 <attributeGroup ref="svg:animValueAttrs"/>
2673 <attributeGroup ref="svg:animAdditionAttrs"/>
2674 </complexType>
2675 <complexType name="setType">
2676 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2677 <attributeGroup ref="svg:stdAttrs"/>
2678 <attributeGroup ref="svg:testAttrs"/>
2679 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2680 <attributeGroup ref="svg:animationEvents"/>
2681 <attributeGroup ref="svg:animTargetAttrs"/>
2682 <attributeGroup ref="svg:animTimingAttrs"/>
2683 <attribute name="to" type="string" use="optional"/>
2684 </complexType>
2685 <complexType name="animateMotionType">
2686 <sequence>
2687 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2688 <element ref="svg:mpath" minOccurs="0"/>
2689 </sequence>
2690 <attributeGroup ref="svg:stdAttrs"/>
2691 <attributeGroup ref="svg:testAttrs"/>
2692 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2693 <attributeGroup ref="svg:animationEvents"/>
2694 <attributeGroup ref="svg:animElementAttrs"/>
2695 <attributeGroup ref="svg:animTimingAttrs"/>
2696 <attributeGroup ref="svg:animValueAttrs"/>
2697 <attributeGroup ref="svg:animAdditionAttrs"/>
2698 <attribute name="path" type="string" use="optional"/>
2699 <attribute name="keyPoints" type="string" use="optional"/>
2700 <attribute name="rotate" type="string" use="optional"/>
2701 <attribute name="origin" type="string" use="optional"/>
2702 </complexType>
2703 <complexType name="mpathType">
2704 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2705 <attributeGroup ref="svg:stdAttrs"/>
2706 <attributeGroup ref="svg:xlinkRefAttrs"/>
2707 <attribute ref="xlink:href" use="optional"/>
2708 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2709 </complexType>
2710 <complexType name="animateColorType">
2711 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2712 <attributeGroup ref="svg:stdAttrs"/>
2713 <attributeGroup ref="svg:testAttrs"/>
2714 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2715 <attributeGroup ref="svg:animationEvents"/>
2716 <attributeGroup ref="svg:animTargetAttrs"/>
2717 <attributeGroup ref="svg:animTimingAttrs"/>
2718 <attributeGroup ref="svg:animValueAttrs"/>
2719 <attributeGroup ref="svg:animAdditionAttrs"/>
2720 </complexType>
2721 <complexType name="animateTransformType">
2722 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2723 <attributeGroup ref="svg:stdAttrs"/>
2724 <attributeGroup ref="svg:testAttrs"/>
2725 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2726 <attributeGroup ref="svg:animationEvents"/>
2727 <attributeGroup ref="svg:animTargetAttrs"/>
2728 <attributeGroup ref="svg:animTimingAttrs"/>
2729 <attributeGroup ref="svg:animValueAttrs"/>
2730 <attributeGroup ref="svg:animAdditionAttrs"/>
2731 <attribute name="type" default="translate">
2732 <simpleType>
2733 <restriction base="string">
2734 <enumeration value="translate"/>
2735 <enumeration value="scale"/>
2736 <enumeration value="rotate"/>
2737 <enumeration value="skewX"/>
2738 <enumeration value="skewY"/>
2739 </restriction>
2740 </simpleType>
2741 </attribute>
2742 </complexType>
2743 <complexType name="fontType">
2744 <sequence>
2745 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2746 <element ref="svg:font-face"/>
2747 <element ref="svg:missing-glyph"/>
2748 <choice minOccurs="0" maxOccurs="unbounded">
2749 <element ref="svg:glyph"/>
2750 <element ref="svg:hkern"/>
2751 <element ref="svg:vkern"/>
2752 </choice>
2753 </sequence>
2754 <attributeGroup ref="svg:stdAttrs"/>
2755 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2756 <attribute name="class" type="svg:ClassListType" use="optional"/>
2757 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2758 <attributeGroup ref="svg:PresentationAttributes-All"/>
2759 <attribute name="horiz-origin-x" type="double" use="optional"/>
2760 <attribute name="horiz-origin-y" type="double" use="optional"/>
2761 <attribute name="horiz-adv-x" type="double" use="required"/>
2762 <attribute name="vert-origin-x" type="double" use="optional"/>
2763 <attribute name="vert-origin-y" type="double" use="optional"/>
2764 <attribute name="vert-adv-y" type="double" use="optional"/>
2765 </complexType>
2766 <complexType name="glyphType">
2767 <choice minOccurs="0" maxOccurs="unbounded">
2768 <element ref="svg:desc"/>
2769 <element ref="svg:title"/>
2770 <element ref="svg:metadata"/>
2771 <element ref="svg:defs"/>
2772 <element ref="svg:path"/>
2773 <element ref="svg:text"/>
2774 <element ref="svg:rect"/>
2775 <element ref="svg:circle"/>
2776 <element ref="svg:ellipse"/>
2777 <element ref="svg:line"/>
2778 <element ref="svg:polyline"/>
2779 <element ref="svg:polygon"/>
2780 <element ref="svg:use"/>
2781 <element ref="svg:image"/>
2782 <element ref="svg:svg"/>
2783 <element ref="svg:g"/>
2784 <element ref="svg:view"/>
2785 <element ref="svg:switch"/>
2786 <element ref="svg:a"/>
2787 <element ref="svg:altGlyphDef"/>
2788 <element ref="svg:script"/>
2789 <element ref="svg:style"/>
2790 <element ref="svg:symbol"/>
2791 <element ref="svg:marker"/>
2792 <element ref="svg:clipPath"/>
2793 <element ref="svg:mask"/>
2794 <element ref="svg:linearGradient"/>
2795 <element ref="svg:radialGradient"/>
2796 <element ref="svg:pattern"/>
2797 <element ref="svg:filter"/>
2798 <element ref="svg:cursor"/>
2799 <element ref="svg:font"/>
2800 <element ref="svg:animate"/>
2801 <element ref="svg:set"/>
2802 <element ref="svg:animateMotion"/>
2803 <element ref="svg:animateColor"/>
2804 <element ref="svg:animateTransform"/>
2805 <element ref="svg:color-profile"/>
2806 <element ref="svg:font-face"/>
2807 </choice>
2808 <attributeGroup ref="svg:stdAttrs"/>
2809 <attribute name="class" type="svg:ClassListType" use="optional"/>
2810 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2811 <attributeGroup ref="svg:PresentationAttributes-All"/>
2812 <attribute name="unicode" type="string" use="optional"/>
2813 <attribute name="glyph-name" type="string" use="optional"/>
2814 <attribute name="d" type="svg:PathDataType" use="optional"/>
2815 <attribute name="vert-text-orient" type="string" use="optional"/>
2816 <attribute name="arabic" type="string" use="optional"/>
2817 <attribute name="han" type="string" use="optional"/>
2818 <attribute name="horiz-adv-x" type="double" use="optional"/>
2819 <attribute name="vert-adv-y" type="double" use="optional"/>
2820 </complexType>
2821 <complexType name="missing-glyphType">
2822 <choice minOccurs="0" maxOccurs="unbounded">
2823 <element ref="svg:desc"/>
2824 <element ref="svg:title"/>
2825 <element ref="svg:metadata"/>
2826 <element ref="svg:defs"/>
2827 <element ref="svg:path"/>
2828 <element ref="svg:text"/>
2829 <element ref="svg:rect"/>
2830 <element ref="svg:circle"/>
2831 <element ref="svg:ellipse"/>
2832 <element ref="svg:line"/>
2833 <element ref="svg:polyline"/>
2834 <element ref="svg:polygon"/>
2835 <element ref="svg:use"/>
2836 <element ref="svg:image"/>
2837 <element ref="svg:svg"/>
2838 <element ref="svg:g"/>
2839 <element ref="svg:view"/>
2840 <element ref="svg:switch"/>
2841 <element ref="svg:a"/>
2842 <element ref="svg:altGlyphDef"/>
2843 <element ref="svg:script"/>
2844 <element ref="svg:style"/>
2845 <element ref="svg:symbol"/>
2846 <element ref="svg:marker"/>
2847 <element ref="svg:clipPath"/>
2848 <element ref="svg:mask"/>
2849 <element ref="svg:linearGradient"/>
2850 <element ref="svg:radialGradient"/>
2851 <element ref="svg:pattern"/>
2852 <element ref="svg:filter"/>
2853 <element ref="svg:cursor"/>
2854 <element ref="svg:font"/>
2855 <element ref="svg:animate"/>
2856 <element ref="svg:set"/>
2857 <element ref="svg:animateMotion"/>
2858 <element ref="svg:animateColor"/>
2859 <element ref="svg:animateTransform"/>
2860 <element ref="svg:color-profile"/>
2861 <element ref="svg:font-face"/>
2862 </choice>
2863 <attributeGroup ref="svg:stdAttrs"/>
2864 <attribute name="class" type="svg:ClassListType" use="optional"/>
2865 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2866 <attributeGroup ref="svg:PresentationAttributes-All"/>
2867 <attribute name="d" type="svg:PathDataType" use="optional"/>
2868 <attribute name="horiz-adv-x" type="double" use="optional"/>
2869 <attribute name="vert-adv-y" type="double" use="optional"/>
2870 </complexType>
2871 <complexType name="hkernType">
2872 <attributeGroup ref="svg:stdAttrs"/>
2873 <attribute name="u1" type="string" use="optional"/>
2874 <attribute name="g1" type="string" use="optional"/>
2875 <attribute name="u2" type="string" use="optional"/>
2876 <attribute name="g2" type="string" use="optional"/>
2877 <attribute name="k" type="double" use="required"/>
2878 </complexType>
2879 <complexType name="vkernType">
2880 <attributeGroup ref="svg:stdAttrs"/>
2881 <attribute name="u1" type="string" use="optional"/>
2882 <attribute name="g1" type="string" use="optional"/>
2883 <attribute name="u2" type="string" use="optional"/>
2884 <attribute name="g2" type="string" use="optional"/>
2885 <attribute name="k" type="double" use="required"/>
2886 </complexType>
2887 <complexType name="font-faceType">
2888 <sequence>
2889 <group ref="svg:descTitleMetadata" minOccurs="0" maxOccurs="unbounded"/>
2890 <element ref="svg:font-face-src"/>
2891 <element ref="svg:definition-src"/>
2892 </sequence>
2893 <attributeGroup ref="svg:stdAttrs"/>
2894 <attribute name="font-family" type="svg:FontFamilyValueType" use="optional"/>
2895 <attribute name="font-style" type="string" use="optional"/>
2896 <attribute name="font-variant" type="string" use="optional"/>
2897 <attribute name="font-weight" type="string" use="optional"/>
2898 <attribute name="font-stretch" type="string" use="optional"/>
2899 <attribute name="font-size" type="svg:FontSizeValueType" use="optional"/>
2900 <attribute name="unicode-range" type="string" use="optional"/>
2901 <attribute name="units-per-em" type="double" use="optional"/>
2902 <attribute name="panose-1" type="string" use="optional"/>
2903 <attribute name="stemv" type="double" use="optional"/>
2904 <attribute name="stemh" type="double" use="optional"/>
2905 <attribute name="slope" type="double" use="optional"/>
2906 <attribute name="cap-height" type="double" use="optional"/>
2907 <attribute name="x-height" type="double" use="optional"/>
2908 <attribute name="accent-height" type="double" use="optional"/>
2909 <attribute name="ascent" type="double" use="optional"/>
2910 <attribute name="descent" type="double" use="optional"/>
2911 <attribute name="widths" type="string" use="optional"/>
2912 <attribute name="bbox" type="string" use="optional"/>
2913 <attribute name="ideographic" type="double" use="optional"/>
2914 <attribute name="baseline" type="double" use="optional"/>
2915 <attribute name="centerline" type="double" use="optional"/>
2916 <attribute name="mathline" type="double" use="optional"/>
2917 <attribute name="hanging" type="double" use="optional"/>
2918 <attribute name="topline" type="double" use="optional"/>
2919 <attribute name="underline-position" type="double" use="optional"/>
2920 <attribute name="underline-thickness" type="double" use="optional"/>
2921 <attribute name="strikethrough-position" type="double" use="optional"/>
2922 <attribute name="strikethrough-thickness" type="double" use="optional"/>
2923 <attribute name="overline-position" type="double" use="optional"/>
2924 <attribute name="overline-thickness" type="double" use="optional"/>
2925 </complexType>
2926 <complexType name="font-face-srcType">
2927 <choice maxOccurs="unbounded">
2928 <element ref="svg:font-face-uri"/>
2929 <element ref="svg:font-face-name"/>
2930 </choice>
2931 <attributeGroup ref="svg:stdAttrs"/>
2932 </complexType>
2933 <complexType name="font-face-uriType">
2934 <sequence>
2935 <element ref="svg:font-face-format"/>
2936 </sequence>
2937 <attributeGroup ref="svg:stdAttrs"/>
2938 <attributeGroup ref="svg:xlinkRefAttrs"/>
2939 <attribute ref="xlink:href" use="optional"/>
2940 </complexType>
2941 <complexType name="font-face-formatType">
2942 <attributeGroup ref="svg:stdAttrs"/>
2943 <attribute name="string" type="string" use="optional"/>
2944 </complexType>
2945 <complexType name="font-face-nameType">
2946 <attributeGroup ref="svg:stdAttrs"/>
2947 <attribute name="name" type="string" use="optional"/>
2948 </complexType>
2949 <complexType name="definition-srcType">
2950 <attributeGroup ref="svg:stdAttrs"/>
2951 <attributeGroup ref="svg:xlinkRefAttrs"/>
2952 <attribute ref="xlink:href" use="optional"/>
2953 </complexType>
2954 <complexType name="metadataType" mixed="true">
2955 <sequence minOccurs="0" maxOccurs="unbounded"/>
2956 <attributeGroup ref="svg:stdAttrs"/>
2957 </complexType>
2958 <complexType name="foreignObjectType" mixed="true">
2959 <sequence minOccurs="0" maxOccurs="unbounded"/>
2960 <attributeGroup ref="svg:stdAttrs"/>
2961 <attributeGroup ref="svg:testAttrs"/>
2962 <attributeGroup ref="svg:langSpaceAttrs"/>
2963 <attribute name="externalResourcesRequired" type="boolean" use="optional"/>
2964 <attribute name="class" type="svg:ClassListType" use="optional"/>
2965 <attribute name="style" type="svg:StyleSheetType" use="optional"/>
2966 <attributeGroup ref="svg:PresentationAttributes-All"/>
2967 <attribute name="transform" type="svg:TransformListType" use="optional"/>
2968 <attributeGroup ref="svg:graphicsElementEvents"/>
2969 <attribute name="x" type="svg:CoordinateType" use="optional"/>
2970 <attribute name="y" type="svg:CoordinateType" use="optional"/>
2971 <attribute name="width" type="svg:LengthType" use="required"/>
2972 <attribute name="height" type="svg:LengthType" use="required"/>
2973 <attribute name="content" type="string" fixed="structured text"/>
2974 </complexType>
2975 </schema>