1
<!-- ....................................................................... -->
2
<!-- SVG 1.1 Filter Module ................................................. -->
3
<!-- file: svg-filter.mod
5
This is SVG, a language for describing two-dimensional graphics in XML.
6
Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
7
Revision: $Id: svg-filter.mod,v 1.4 2002/11/14 15:11:02 fujisawa Exp $
9
This DTD module is identified by the PUBLIC and SYSTEM identifiers:
11
PUBLIC "-//W3C//ELEMENTS SVG 1.1 Filter//EN"
12
SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg-filter.mod"
14
....................................................................... -->
18
filter, feBlend, feColorMatrix, feComponentTransfer, feComposite,
19
feConvolveMatrix, feDiffuseLighting, feDisplacementMap, feFlood,
20
feGaussianBlur, feImage, feMerge, feMergeNode, feMorphology, feOffset,
21
feSpecularLighting, feTile, feTurbulence, feDistantLight, fePointLight,
22
feSpotLight, feFuncR, feFuncG, feFuncB, feFuncA
24
This module declares markup to provide support for filter effect.
27
<!-- 'filter' property/attribute value (e.g., 'none', <uri>) -->
28
<!ENTITY % FilterValue.datatype "CDATA" >
30
<!-- list of <number>s, but at least one and at most two -->
31
<!ENTITY % NumberOptionalNumber.datatype "CDATA" >
33
<!-- Qualified Names (Default) ......................... -->
35
<!ENTITY % SVG.filter.qname "filter" >
36
<!ENTITY % SVG.feBlend.qname "feBlend" >
37
<!ENTITY % SVG.feColorMatrix.qname "feColorMatrix" >
38
<!ENTITY % SVG.feComponentTransfer.qname "feComponentTransfer" >
39
<!ENTITY % SVG.feComposite.qname "feComposite" >
40
<!ENTITY % SVG.feConvolveMatrix.qname "feConvolveMatrix" >
41
<!ENTITY % SVG.feDiffuseLighting.qname "feDiffuseLighting" >
42
<!ENTITY % SVG.feDisplacementMap.qname "feDisplacementMap" >
43
<!ENTITY % SVG.feFlood.qname "feFlood" >
44
<!ENTITY % SVG.feGaussianBlur.qname "feGaussianBlur" >
45
<!ENTITY % SVG.feImage.qname "feImage" >
46
<!ENTITY % SVG.feMerge.qname "feMerge" >
47
<!ENTITY % SVG.feMergeNode.qname "feMergeNode" >
48
<!ENTITY % SVG.feMorphology.qname "feMorphology" >
49
<!ENTITY % SVG.feOffset.qname "feOffset" >
50
<!ENTITY % SVG.feSpecularLighting.qname "feSpecularLighting" >
51
<!ENTITY % SVG.feTile.qname "feTile" >
52
<!ENTITY % SVG.feTurbulence.qname "feTurbulence" >
53
<!ENTITY % SVG.feDistantLight.qname "feDistantLight" >
54
<!ENTITY % SVG.fePointLight.qname "fePointLight" >
55
<!ENTITY % SVG.feSpotLight.qname "feSpotLight" >
56
<!ENTITY % SVG.feFuncR.qname "feFuncR" >
57
<!ENTITY % SVG.feFuncG.qname "feFuncG" >
58
<!ENTITY % SVG.feFuncB.qname "feFuncB" >
59
<!ENTITY % SVG.feFuncA.qname "feFuncA" >
61
<!-- Attribute Collections (Default) ................... -->
63
<!ENTITY % SVG.Core.attrib "" >
64
<!ENTITY % SVG.Container.attrib "" >
65
<!ENTITY % SVG.Style.attrib "" >
66
<!ENTITY % SVG.Viewport.attrib "" >
67
<!ENTITY % SVG.Text.attrib "" >
68
<!ENTITY % SVG.TextContent.attrib "" >
69
<!ENTITY % SVG.Font.attrib "" >
70
<!ENTITY % SVG.Paint.attrib "" >
71
<!ENTITY % SVG.Color.attrib "" >
72
<!ENTITY % SVG.Opacity.attrib "" >
73
<!ENTITY % SVG.Graphics.attrib "" >
74
<!ENTITY % SVG.Marker.attrib "" >
75
<!ENTITY % SVG.ColorProfile.attrib "" >
76
<!ENTITY % SVG.Gradient.attrib "" >
77
<!ENTITY % SVG.Clip.attrib "" >
78
<!ENTITY % SVG.Mask.attrib "" >
79
<!ENTITY % SVG.Cursor.attrib "" >
80
<!ENTITY % SVG.XLink.attrib "" >
81
<!ENTITY % SVG.XLinkEmbed.attrib "" >
82
<!ENTITY % SVG.External.attrib "" >
84
<!-- SVG.Filter.class .................................. -->
86
<!ENTITY % SVG.Filter.extra.class "" >
88
<!ENTITY % SVG.Filter.class
89
"| %SVG.filter.qname; %SVG.Filter.extra.class;"
92
<!-- SVG.FilterPrimitive.class ......................... -->
94
<!ENTITY % SVG.FilterPrimitive.extra.class "" >
96
<!ENTITY % SVG.FilterPrimitive.class
97
"| %SVG.feBlend.qname; | %SVG.feColorMatrix.qname;
98
| %SVG.feComponentTransfer.qname; | %SVG.feComposite.qname;
99
| %SVG.feConvolveMatrix.qname; | %SVG.feDiffuseLighting.qname;
100
| %SVG.feDisplacementMap.qname; | %SVG.feFlood.qname;
101
| %SVG.feGaussianBlur.qname; | %SVG.feImage.qname; | %SVG.feMerge.qname;
102
| %SVG.feMorphology.qname; | %SVG.feOffset.qname;
103
| %SVG.feSpecularLighting.qname; | %SVG.feTile.qname;
104
| %SVG.feTurbulence.qname; %SVG.FilterPrimitive.extra.class;"
107
<!-- SVG.Filter.attrib ................................. -->
109
<!ENTITY % SVG.Filter.extra.attrib "" >
111
<!ENTITY % SVG.Filter.attrib
112
"filter %FilterValue.datatype; #IMPLIED
113
%SVG.Filter.extra.attrib;"
116
<!-- SVG.FilterColor.attrib ............................ -->
118
<!ENTITY % SVG.FilterColor.extra.attrib "" >
120
<!ENTITY % SVG.FilterColor.attrib
121
"color-interpolation-filters ( auto | sRGB | linearRGB | inherit )
123
%SVG.FilterColor.extra.attrib;"
126
<!-- SVG.FilterPrimitive.attrib ........................ -->
128
<!ENTITY % SVG.FilterPrimitive.extra.attrib "" >
130
<!ENTITY % SVG.FilterPrimitive.attrib
131
"x %Coordinate.datatype; #IMPLIED
132
y %Coordinate.datatype; #IMPLIED
133
width %Length.datatype; #IMPLIED
134
height %Length.datatype; #IMPLIED
135
result CDATA #IMPLIED
136
%SVG.FilterPrimitive.extra.attrib;"
139
<!-- SVG.FilterPrimitiveWithIn.attrib .................. -->
141
<!ENTITY % SVG.FilterPrimitiveWithIn.extra.attrib "" >
143
<!ENTITY % SVG.FilterPrimitiveWithIn.attrib
144
"%SVG.FilterPrimitive.attrib;
146
%SVG.FilterPrimitiveWithIn.extra.attrib;"
149
<!-- SVG.Presentation.attrib ........................... -->
151
<!ENTITY % SVG.Presentation.extra.attrib "" >
153
<!ENTITY % SVG.Presentation.attrib
154
"%SVG.Container.attrib;
155
%SVG.Viewport.attrib;
157
%SVG.TextContent.attrib;
162
%SVG.Graphics.attrib;
164
%SVG.ColorProfile.attrib;
165
%SVG.Gradient.attrib;
169
%SVG.FilterColor.attrib;
171
flood-color %SVGColor.datatype; #IMPLIED
172
flood-opacity %OpacityValue.datatype; #IMPLIED
173
lighting-color %SVGColor.datatype; #IMPLIED
174
%SVG.Presentation.extra.attrib;"
177
<!-- filter: Filter Element ............................ -->
179
<!ENTITY % SVG.filter.extra.content "" >
181
<!ENTITY % SVG.filter.element "INCLUDE" >
182
<![%SVG.filter.element;[
183
<!ENTITY % SVG.filter.content
184
"(( %SVG.Description.class; )*, ( %SVG.animate.qname; | %SVG.set.qname;
185
%SVG.FilterPrimitive.class; %SVG.filter.extra.content; )*)"
187
<!ELEMENT %SVG.filter.qname; %SVG.filter.content; >
188
<!-- end of SVG.filter.element -->]]>
190
<!ENTITY % SVG.filter.attlist "INCLUDE" >
191
<![%SVG.filter.attlist;[
192
<!ATTLIST %SVG.filter.qname;
195
%SVG.Presentation.attrib;
197
%SVG.External.attrib;
198
x %Coordinate.datatype; #IMPLIED
199
y %Coordinate.datatype; #IMPLIED
200
width %Length.datatype; #IMPLIED
201
height %Length.datatype; #IMPLIED
202
filterRes %NumberOptionalNumber.datatype; #IMPLIED
203
filterUnits ( userSpaceOnUse | objectBoundingBox ) #IMPLIED
204
primitiveUnits ( userSpaceOnUse | objectBoundingBox ) #IMPLIED
206
<!-- end of SVG.filter.attlist -->]]>
208
<!-- feBlend: Filter Effect Blend Element .............. -->
210
<!ENTITY % SVG.feBlend.extra.content "" >
212
<!ENTITY % SVG.feBlend.element "INCLUDE" >
213
<![%SVG.feBlend.element;[
214
<!ENTITY % SVG.feBlend.content
215
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feBlend.extra.content; )*"
217
<!ELEMENT %SVG.feBlend.qname; %SVG.feBlend.content; >
218
<!-- end of SVG.feBlend.element -->]]>
220
<!ENTITY % SVG.feBlend.attlist "INCLUDE" >
221
<![%SVG.feBlend.attlist;[
222
<!ATTLIST %SVG.feBlend.qname;
224
%SVG.FilterColor.attrib;
225
%SVG.FilterPrimitiveWithIn.attrib;
227
mode ( normal | multiply | screen | darken | lighten ) 'normal'
229
<!-- end of SVG.feBlend.attlist -->]]>
231
<!-- feColorMatrix: Filter Effect Color Matrix Element . -->
233
<!ENTITY % SVG.feColorMatrix.extra.content "" >
235
<!ENTITY % SVG.feColorMatrix.element "INCLUDE" >
236
<![%SVG.feColorMatrix.element;[
237
<!ENTITY % SVG.feColorMatrix.content
238
"( %SVG.animate.qname; | %SVG.set.qname;
239
%SVG.feColorMatrix.extra.content; )*"
241
<!ELEMENT %SVG.feColorMatrix.qname; %SVG.feColorMatrix.content; >
242
<!-- end of SVG.feColorMatrix.element -->]]>
244
<!ENTITY % SVG.feColorMatrix.attlist "INCLUDE" >
245
<![%SVG.feColorMatrix.attlist;[
246
<!ATTLIST %SVG.feColorMatrix.qname;
248
%SVG.FilterColor.attrib;
249
%SVG.FilterPrimitiveWithIn.attrib;
250
type ( matrix | saturate | hueRotate | luminanceToAlpha ) 'matrix'
251
values CDATA #IMPLIED
253
<!-- end of SVG.feColorMatrix.attlist -->]]>
255
<!-- feComponentTransfer: Filter Effect Component Transfer Element -->
257
<!ENTITY % SVG.feComponentTransfer.extra.content "" >
259
<!ENTITY % SVG.feComponentTransfer.element "INCLUDE" >
260
<![%SVG.feComponentTransfer.element;[
261
<!ENTITY % SVG.feComponentTransfer.content
262
"( %SVG.feFuncR.qname;?, %SVG.feFuncG.qname;?, %SVG.feFuncB.qname;?,
263
%SVG.feFuncA.qname;? %SVG.feComponentTransfer.extra.content; )"
265
<!ELEMENT %SVG.feComponentTransfer.qname; %SVG.feComponentTransfer.content; >
266
<!-- end of SVG.feComponentTransfer.element -->]]>
268
<!ENTITY % SVG.feComponentTransfer.attlist "INCLUDE" >
269
<![%SVG.feComponentTransfer.attlist;[
270
<!ATTLIST %SVG.feComponentTransfer.qname;
272
%SVG.FilterColor.attrib;
273
%SVG.FilterPrimitiveWithIn.attrib;
275
<!-- end of SVG.feComponentTransfer.attlist -->]]>
277
<!-- feComposite: Filter Effect Composite Element ...... -->
279
<!ENTITY % SVG.feComposite.extra.content "" >
281
<!ENTITY % SVG.feComposite.element "INCLUDE" >
282
<![%SVG.feComposite.element;[
283
<!ENTITY % SVG.feComposite.content
284
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feComposite.extra.content; )*"
286
<!ELEMENT %SVG.feComposite.qname; %SVG.feComposite.content; >
287
<!-- end of SVG.feComposite.element -->]]>
289
<!ENTITY % SVG.feComposite.attlist "INCLUDE" >
290
<![%SVG.feComposite.attlist;[
291
<!ATTLIST %SVG.feComposite.qname;
293
%SVG.FilterColor.attrib;
294
%SVG.FilterPrimitiveWithIn.attrib;
296
operator ( over | in | out | atop | xor | arithmetic ) 'over'
297
k1 %Number.datatype; #IMPLIED
298
k2 %Number.datatype; #IMPLIED
299
k3 %Number.datatype; #IMPLIED
300
k4 %Number.datatype; #IMPLIED
302
<!-- end of SVG.feComposite.attlist -->]]>
304
<!-- feConvolveMatrix: Filter Effect Convolve Matrix Element -->
306
<!ENTITY % SVG.feConvolveMatrix.extra.content "" >
308
<!ENTITY % SVG.feConvolveMatrix.element "INCLUDE" >
309
<![%SVG.feConvolveMatrix.element;[
310
<!ENTITY % SVG.feConvolveMatrix.content
311
"( %SVG.animate.qname; | %SVG.set.qname;
312
%SVG.feConvolveMatrix.extra.content; )*"
314
<!ELEMENT %SVG.feConvolveMatrix.qname; %SVG.feConvolveMatrix.content; >
315
<!-- end of SVG.feConvolveMatrix.element -->]]>
317
<!ENTITY % SVG.feConvolveMatrix.attlist "INCLUDE" >
318
<![%SVG.feConvolveMatrix.attlist;[
319
<!ATTLIST %SVG.feConvolveMatrix.qname;
321
%SVG.FilterColor.attrib;
322
%SVG.FilterPrimitiveWithIn.attrib;
323
order %NumberOptionalNumber.datatype; #REQUIRED
324
kernelMatrix CDATA #REQUIRED
325
divisor %Number.datatype; #IMPLIED
326
bias %Number.datatype; #IMPLIED
327
targetX %Integer.datatype; #IMPLIED
328
targetY %Integer.datatype; #IMPLIED
329
edgeMode ( duplicate | wrap | none ) 'duplicate'
330
kernelUnitLength %NumberOptionalNumber.datatype; #IMPLIED
331
preserveAlpha %Boolean.datatype; #IMPLIED
333
<!-- end of SVG.feConvolveMatrix.attlist -->]]>
335
<!-- feDiffuseLighting: Filter Effect Diffuse Lighting Element -->
337
<!ENTITY % SVG.feDiffuseLighting.extra.content "" >
339
<!ENTITY % SVG.feDiffuseLighting.element "INCLUDE" >
340
<![%SVG.feDiffuseLighting.element;[
341
<!ENTITY % SVG.feDiffuseLighting.content
342
"(( %SVG.feDistantLight.qname; | %SVG.fePointLight.qname;
343
| %SVG.feSpotLight.qname; ), ( %SVG.animate.qname; | %SVG.set.qname;
344
| %SVG.animateColor.qname; %SVG.feDiffuseLighting.extra.content; )*)"
346
<!ELEMENT %SVG.feDiffuseLighting.qname; %SVG.feDiffuseLighting.content; >
347
<!-- end of SVG.feDiffuseLighting.element -->]]>
349
<!ENTITY % SVG.feDiffuseLighting.attlist "INCLUDE" >
350
<![%SVG.feDiffuseLighting.attlist;[
351
<!ATTLIST %SVG.feDiffuseLighting.qname;
355
%SVG.FilterColor.attrib;
356
%SVG.FilterPrimitiveWithIn.attrib;
357
lighting-color %SVGColor.datatype; #IMPLIED
358
surfaceScale %Number.datatype; #IMPLIED
359
diffuseConstant %Number.datatype; #IMPLIED
360
kernelUnitLength %NumberOptionalNumber.datatype; #IMPLIED
362
<!-- end of SVG.feDiffuseLighting.attlist -->]]>
364
<!-- feDisplacementMap: Filter Effect Displacement Map Element -->
366
<!ENTITY % SVG.feDisplacementMap.extra.content "" >
368
<!ENTITY % SVG.feDisplacementMap.element "INCLUDE" >
369
<![%SVG.feDisplacementMap.element;[
370
<!ENTITY % SVG.feDisplacementMap.content
371
"( %SVG.animate.qname; | %SVG.set.qname;
372
%SVG.feDisplacementMap.extra.content; )*"
374
<!ELEMENT %SVG.feDisplacementMap.qname; %SVG.feDisplacementMap.content; >
375
<!-- end of SVG.feDisplacementMap.element -->]]>
377
<!ENTITY % SVG.feDisplacementMap.attlist "INCLUDE" >
378
<![%SVG.feDisplacementMap.attlist;[
379
<!ATTLIST %SVG.feDisplacementMap.qname;
381
%SVG.FilterColor.attrib;
382
%SVG.FilterPrimitiveWithIn.attrib;
384
scale %Number.datatype; #IMPLIED
385
xChannelSelector ( R | G | B | A ) 'A'
386
yChannelSelector ( R | G | B | A ) 'A'
388
<!-- end of SVG.feDisplacementMap.attlist -->]]>
390
<!-- feFlood: Filter Effect Flood Element .............. -->
392
<!ENTITY % SVG.feFlood.extra.content "" >
394
<!ENTITY % SVG.feFlood.element "INCLUDE" >
395
<![%SVG.feFlood.element;[
396
<!ENTITY % SVG.feFlood.content
397
"( %SVG.animate.qname; | %SVG.set.qname; | %SVG.animateColor.qname;
398
%SVG.feFlood.extra.content; )*"
400
<!ELEMENT %SVG.feFlood.qname; %SVG.feFlood.content; >
401
<!-- end of SVG.feFlood.element -->]]>
403
<!ENTITY % SVG.feFlood.attlist "INCLUDE" >
404
<![%SVG.feFlood.attlist;[
405
<!ATTLIST %SVG.feFlood.qname;
409
%SVG.FilterColor.attrib;
410
%SVG.FilterPrimitiveWithIn.attrib;
411
flood-color %SVGColor.datatype; #IMPLIED
412
flood-opacity %OpacityValue.datatype; #IMPLIED
414
<!-- end of SVG.feFlood.attlist -->]]>
416
<!-- feGaussianBlur: Filter Effect Gaussian Blur Element -->
418
<!ENTITY % SVG.feGaussianBlur.extra.content "" >
420
<!ENTITY % SVG.feGaussianBlur.element "INCLUDE" >
421
<![%SVG.feGaussianBlur.element;[
422
<!ENTITY % SVG.feGaussianBlur.content
423
"( %SVG.animate.qname; | %SVG.set.qname;
424
%SVG.feGaussianBlur.extra.content; )*"
426
<!ELEMENT %SVG.feGaussianBlur.qname; %SVG.feGaussianBlur.content; >
427
<!-- end of SVG.feGaussianBlur.element -->]]>
429
<!ENTITY % SVG.feGaussianBlur.attlist "INCLUDE" >
430
<![%SVG.feGaussianBlur.attlist;[
431
<!ATTLIST %SVG.feGaussianBlur.qname;
433
%SVG.FilterColor.attrib;
434
%SVG.FilterPrimitiveWithIn.attrib;
435
stdDeviation %NumberOptionalNumber.datatype; #IMPLIED
437
<!-- end of SVG.feGaussianBlur.attlist -->]]>
439
<!-- feImage: Filter Effect Image Element .............. -->
441
<!ENTITY % SVG.feImage.extra.content "" >
443
<!ENTITY % SVG.feImage.element "INCLUDE" >
444
<![%SVG.feImage.element;[
445
<!ENTITY % SVG.feImage.content
446
"( %SVG.animate.qname; | %SVG.set.qname; | %SVG.animateTransform.qname;
447
%SVG.feImage.extra.content; )*"
449
<!ELEMENT %SVG.feImage.qname; %SVG.feImage.content; >
450
<!-- end of SVG.feImage.element -->]]>
452
<!ENTITY % SVG.feImage.attlist "INCLUDE" >
453
<![%SVG.feImage.attlist;[
454
<!ATTLIST %SVG.feImage.qname;
457
%SVG.Presentation.attrib;
458
%SVG.FilterPrimitive.attrib;
459
%SVG.XLinkEmbed.attrib;
460
%SVG.External.attrib;
461
preserveAspectRatio %PreserveAspectRatioSpec.datatype; 'xMidYMid meet'
463
<!-- end of SVG.feImage.attlist -->]]>
465
<!-- feMerge: Filter Effect Merge Element .............. -->
467
<!ENTITY % SVG.feMerge.extra.content "" >
469
<!ENTITY % SVG.feMerge.element "INCLUDE" >
470
<![%SVG.feMerge.element;[
471
<!ENTITY % SVG.feMerge.content
472
"( %SVG.feMergeNode.qname; %SVG.feMerge.extra.content; )*"
474
<!ELEMENT %SVG.feMerge.qname; %SVG.feMerge.content; >
475
<!-- end of SVG.feMerge.element -->]]>
477
<!ENTITY % SVG.feMerge.attlist "INCLUDE" >
478
<![%SVG.feMerge.attlist;[
479
<!ATTLIST %SVG.feMerge.qname;
481
%SVG.FilterColor.attrib;
482
%SVG.FilterPrimitive.attrib;
484
<!-- end of SVG.feMerge.attlist -->]]>
486
<!-- feMergeNode: Filter Effect Merge Node Element ..... -->
488
<!ENTITY % SVG.feMergeNode.extra.content "" >
490
<!ENTITY % SVG.feMergeNode.element "INCLUDE" >
491
<![%SVG.feMergeNode.element;[
492
<!ENTITY % SVG.feMergeNode.content
493
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feMergeNode.extra.content; )*"
495
<!ELEMENT %SVG.feMergeNode.qname; %SVG.feMergeNode.content; >
496
<!-- end of SVG.feMergeNode.element -->]]>
498
<!ENTITY % SVG.feMergeNode.attlist "INCLUDE" >
499
<![%SVG.feMergeNode.attlist;[
500
<!ATTLIST %SVG.feMergeNode.qname;
504
<!-- end of SVG.feMergeNode.attlist -->]]>
506
<!-- feMorphology: Filter Effect Morphology Element .... -->
508
<!ENTITY % SVG.feMorphology.extra.content "" >
510
<!ENTITY % SVG.feMorphology.element "INCLUDE" >
511
<![%SVG.feMorphology.element;[
512
<!ENTITY % SVG.feMorphology.content
513
"( %SVG.animate.qname; | %SVG.set.qname;
514
%SVG.feMorphology.extra.content; )*"
516
<!ELEMENT %SVG.feMorphology.qname; %SVG.feMorphology.content; >
517
<!-- end of SVG.feMorphology.element -->]]>
519
<!ENTITY % SVG.feMorphology.attlist "INCLUDE" >
520
<![%SVG.feMorphology.attlist;[
521
<!ATTLIST %SVG.feMorphology.qname;
523
%SVG.FilterColor.attrib;
524
%SVG.FilterPrimitiveWithIn.attrib;
525
operator ( erode | dilate ) 'erode'
526
radius %NumberOptionalNumber.datatype; #IMPLIED
528
<!-- end of SVG.feMorphology.attlist -->]]>
530
<!-- feOffset: Filter Effect Offset Element ............ -->
532
<!ENTITY % SVG.feOffset.extra.content "" >
534
<!ENTITY % SVG.feOffset.element "INCLUDE" >
535
<![%SVG.feOffset.element;[
536
<!ENTITY % SVG.feOffset.content
537
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feOffset.extra.content; )*"
539
<!ELEMENT %SVG.feOffset.qname; %SVG.feOffset.content; >
540
<!-- end of SVG.feOffset.element -->]]>
542
<!ENTITY % SVG.feOffset.attlist "INCLUDE" >
543
<![%SVG.feOffset.attlist;[
544
<!ATTLIST %SVG.feOffset.qname;
546
%SVG.FilterColor.attrib;
547
%SVG.FilterPrimitiveWithIn.attrib;
548
dx %Number.datatype; #IMPLIED
549
dy %Number.datatype; #IMPLIED
551
<!-- end of SVG.feOffset.attlist -->]]>
553
<!-- feSpecularLighting: Filter Effect Specular Lighting Element -->
555
<!ENTITY % SVG.feSpecularLighting.extra.content "" >
557
<!ENTITY % SVG.feSpecularLighting.element "INCLUDE" >
558
<![%SVG.feSpecularLighting.element;[
559
<!ENTITY % SVG.feSpecularLighting.content
560
"(( %SVG.feDistantLight.qname; | %SVG.fePointLight.qname;
561
| %SVG.feSpotLight.qname; ), ( %SVG.animate.qname; | %SVG.set.qname;
562
| %SVG.animateColor.qname; %SVG.feSpecularLighting.extra.content; )*)"
564
<!ELEMENT %SVG.feSpecularLighting.qname; %SVG.feSpecularLighting.content; >
565
<!-- end of SVG.feSpecularLighting.element -->]]>
567
<!ENTITY % SVG.feSpecularLighting.attlist "INCLUDE" >
568
<![%SVG.feSpecularLighting.attlist;[
569
<!ATTLIST %SVG.feSpecularLighting.qname;
573
%SVG.FilterColor.attrib;
574
%SVG.FilterPrimitiveWithIn.attrib;
575
lighting-color %SVGColor.datatype; #IMPLIED
576
surfaceScale %Number.datatype; #IMPLIED
577
specularConstant %Number.datatype; #IMPLIED
578
specularExponent %Number.datatype; #IMPLIED
579
kernelUnitLength %NumberOptionalNumber.datatype; #IMPLIED
581
<!-- end of SVG.feSpecularLighting.attlist -->]]>
583
<!-- feTile: Filter Effect Tile Element ................ -->
585
<!ENTITY % SVG.feTile.extra.content "" >
587
<!ENTITY % SVG.feTile.element "INCLUDE" >
588
<![%SVG.feTile.element;[
589
<!ENTITY % SVG.feTile.content
590
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feTile.extra.content; )*"
592
<!ELEMENT %SVG.feTile.qname; %SVG.feTile.content; >
593
<!-- end of SVG.feTile.element -->]]>
595
<!ENTITY % SVG.feTile.attlist "INCLUDE" >
596
<![%SVG.feTile.attlist;[
597
<!ATTLIST %SVG.feTile.qname;
599
%SVG.FilterColor.attrib;
600
%SVG.FilterPrimitiveWithIn.attrib;
602
<!-- end of SVG.feTile.attlist -->]]>
604
<!-- feTurbulence: Filter Effect Turbulence Element .... -->
606
<!ENTITY % SVG.feTurbulence.extra.content "" >
608
<!ENTITY % SVG.feTurbulence.element "INCLUDE" >
609
<![%SVG.feTurbulence.element;[
610
<!ENTITY % SVG.feTurbulence.content
611
"( %SVG.animate.qname; | %SVG.set.qname;
612
%SVG.feTurbulence.extra.content; )*"
614
<!ELEMENT %SVG.feTurbulence.qname; %SVG.feTurbulence.content; >
615
<!-- end of SVG.feTurbulence.element -->]]>
617
<!ENTITY % SVG.feTurbulence.attlist "INCLUDE" >
618
<![%SVG.feTurbulence.attlist;[
619
<!ATTLIST %SVG.feTurbulence.qname;
621
%SVG.FilterColor.attrib;
622
%SVG.FilterPrimitive.attrib;
623
baseFrequency %NumberOptionalNumber.datatype; #IMPLIED
624
numOctaves %Integer.datatype; #IMPLIED
625
seed %Number.datatype; #IMPLIED
626
stitchTiles ( stitch | noStitch ) 'noStitch'
627
type ( fractalNoise | turbulence ) 'turbulence'
629
<!-- end of SVG.feTurbulence.attlist -->]]>
631
<!-- feDistantLight: Filter Effect Distant Light Element -->
633
<!ENTITY % SVG.feDistantLight.extra.content "" >
635
<!ENTITY % SVG.feDistantLight.element "INCLUDE" >
636
<![%SVG.feDistantLight.element;[
637
<!ENTITY % SVG.feDistantLight.content
638
"( %SVG.animate.qname; | %SVG.set.qname;
639
%SVG.feDistantLight.extra.content; )*"
641
<!ELEMENT %SVG.feDistantLight.qname; %SVG.feDistantLight.content; >
642
<!-- end of SVG.feDistantLight.element -->]]>
644
<!ENTITY % SVG.feDistantLight.attlist "INCLUDE" >
645
<![%SVG.feDistantLight.attlist;[
646
<!ATTLIST %SVG.feDistantLight.qname;
648
azimuth %Number.datatype; #IMPLIED
649
elevation %Number.datatype; #IMPLIED
651
<!-- end of SVG.feDistantLight.attlist -->]]>
653
<!-- fePointLight: Filter Effect Point Light Element ... -->
655
<!ENTITY % SVG.fePointLight.extra.content "" >
657
<!ENTITY % SVG.fePointLight.element "INCLUDE" >
658
<![%SVG.fePointLight.element;[
659
<!ENTITY % SVG.fePointLight.content
660
"( %SVG.animate.qname; | %SVG.set.qname;
661
%SVG.fePointLight.extra.content; )*"
663
<!ELEMENT %SVG.fePointLight.qname; %SVG.fePointLight.content; >
664
<!-- end of SVG.fePointLight.element -->]]>
666
<!ENTITY % SVG.fePointLight.attlist "INCLUDE" >
667
<![%SVG.fePointLight.attlist;[
668
<!ATTLIST %SVG.fePointLight.qname;
670
x %Number.datatype; #IMPLIED
671
y %Number.datatype; #IMPLIED
672
z %Number.datatype; #IMPLIED
674
<!-- end of SVG.fePointLight.attlist -->]]>
676
<!-- feSpotLight: Filter Effect Spot Light Element ..... -->
678
<!ENTITY % SVG.feSpotLight.extra.content "" >
680
<!ENTITY % SVG.feSpotLight.element "INCLUDE" >
681
<![%SVG.feSpotLight.element;[
682
<!ENTITY % SVG.feSpotLight.content
683
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feSpotLight.extra.content; )*"
685
<!ELEMENT %SVG.feSpotLight.qname; %SVG.feSpotLight.content; >
686
<!-- end of SVG.feSpotLight.element -->]]>
688
<!ENTITY % SVG.feSpotLight.attlist "INCLUDE" >
689
<![%SVG.feSpotLight.attlist;[
690
<!ATTLIST %SVG.feSpotLight.qname;
692
x %Number.datatype; #IMPLIED
693
y %Number.datatype; #IMPLIED
694
z %Number.datatype; #IMPLIED
695
pointsAtX %Number.datatype; #IMPLIED
696
pointsAtY %Number.datatype; #IMPLIED
697
pointsAtZ %Number.datatype; #IMPLIED
698
specularExponent %Number.datatype; #IMPLIED
699
limitingConeAngle %Number.datatype; #IMPLIED
701
<!-- end of SVG.feSpotLight.attlist -->]]>
703
<!-- feFuncR: Filter Effect Function Red Element ....... -->
705
<!ENTITY % SVG.feFuncR.extra.content "" >
707
<!ENTITY % SVG.feFuncR.element "INCLUDE" >
708
<![%SVG.feFuncR.element;[
709
<!ENTITY % SVG.feFuncR.content
710
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feFuncR.extra.content; )*"
712
<!ELEMENT %SVG.feFuncR.qname; %SVG.feFuncR.content; >
713
<!-- end of SVG.feFuncR.element -->]]>
715
<!ENTITY % SVG.feFuncR.attlist "INCLUDE" >
716
<![%SVG.feFuncR.attlist;[
717
<!ATTLIST %SVG.feFuncR.qname;
719
type ( identity | table | discrete | linear | gamma ) #REQUIRED
720
tableValues CDATA #IMPLIED
721
slope %Number.datatype; #IMPLIED
722
intercept %Number.datatype; #IMPLIED
723
amplitude %Number.datatype; #IMPLIED
724
exponent %Number.datatype; #IMPLIED
725
offset %Number.datatype; #IMPLIED
727
<!-- end of SVG.feFuncR.attlist -->]]>
729
<!-- feFuncG: Filter Effect Function Green Element ..... -->
731
<!ENTITY % SVG.feFuncG.extra.content "" >
733
<!ENTITY % SVG.feFuncG.element "INCLUDE" >
734
<![%SVG.feFuncG.element;[
735
<!ENTITY % SVG.feFuncG.content
736
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feFuncG.extra.content; )*"
738
<!ELEMENT %SVG.feFuncG.qname; %SVG.feFuncG.content; >
739
<!-- end of SVG.feFuncG.element -->]]>
741
<!ENTITY % SVG.feFuncG.attlist "INCLUDE" >
742
<![%SVG.feFuncG.attlist;[
743
<!ATTLIST %SVG.feFuncG.qname;
745
type ( identity | table | discrete | linear | gamma ) #REQUIRED
746
tableValues CDATA #IMPLIED
747
slope %Number.datatype; #IMPLIED
748
intercept %Number.datatype; #IMPLIED
749
amplitude %Number.datatype; #IMPLIED
750
exponent %Number.datatype; #IMPLIED
751
offset %Number.datatype; #IMPLIED
753
<!-- end of SVG.feFuncG.attlist -->]]>
755
<!-- feFuncB: Filter Effect Function Blue Element ...... -->
757
<!ENTITY % SVG.feFuncB.extra.content "" >
759
<!ENTITY % SVG.feFuncB.element "INCLUDE" >
760
<![%SVG.feFuncB.element;[
761
<!ENTITY % SVG.feFuncB.content
762
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feFuncB.extra.content; )*"
764
<!ELEMENT %SVG.feFuncB.qname; %SVG.feFuncB.content; >
765
<!-- end of SVG.feFuncB.element -->]]>
767
<!ENTITY % SVG.feFuncB.attlist "INCLUDE" >
768
<![%SVG.feFuncB.attlist;[
769
<!ATTLIST %SVG.feFuncB.qname;
771
type ( identity | table | discrete | linear | gamma ) #REQUIRED
772
tableValues CDATA #IMPLIED
773
slope %Number.datatype; #IMPLIED
774
intercept %Number.datatype; #IMPLIED
775
amplitude %Number.datatype; #IMPLIED
776
exponent %Number.datatype; #IMPLIED
777
offset %Number.datatype; #IMPLIED
779
<!-- end of SVG.feFuncB.attlist -->]]>
781
<!-- feFuncA: Filter Effect Function Alpha Element ..... -->
783
<!ENTITY % SVG.feFuncA.extra.content "" >
785
<!ENTITY % SVG.feFuncA.element "INCLUDE" >
786
<![%SVG.feFuncA.element;[
787
<!ENTITY % SVG.feFuncA.content
788
"( %SVG.animate.qname; | %SVG.set.qname; %SVG.feFuncA.extra.content; )*"
790
<!ELEMENT %SVG.feFuncA.qname; %SVG.feFuncA.content; >
791
<!-- end of SVG.feFuncA.element -->]]>
793
<!ENTITY % SVG.feFuncA.attlist "INCLUDE" >
794
<![%SVG.feFuncA.attlist;[
795
<!ATTLIST %SVG.feFuncA.qname;
797
type ( identity | table | discrete | linear | gamma ) #REQUIRED
798
tableValues CDATA #IMPLIED
799
slope %Number.datatype; #IMPLIED
800
intercept %Number.datatype; #IMPLIED
801
amplitude %Number.datatype; #IMPLIED
802
exponent %Number.datatype; #IMPLIED
803
offset %Number.datatype; #IMPLIED
805
<!-- end of SVG.feFuncA.attlist -->]]>
807
<!-- end of svg-filter.mod -->