
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: markup/graphical/svg/furubayashi-basic/extracted
Source used for this grammar: Yutaka Furubayashi, RELAX NG Schema on SVG 1.1 (Basic), 15 March 2008
SVG.Animation.extra.attrib, SVG.Animation.attrib, SVG.AnimationAttribute.extra.attrib, SVG.AnimationAttribute.attrib, SVG.AnimationTiming.extra.attrib, SVG.AnimationTiming.attrib, SVG.AnimationValue.extra.attrib, SVG.AnimationValue.attrib, SVG.AnimationAddition.extra.attrib, SVG.AnimationAddtion.attrib, SVG.Animation.extra.class, SVG.Animation.class, SVG.animate, SVG.set, SVG.animateMotion, SVG.animateColor, SVG.animateTransform, SVG.mpath, SVG.onbegin.attrib, SVG.onend.attrib, SVG.onrepeat.attrib, SVG.AnimationEvents.extra.attrib, SVG.AnimationEvents.attrib, SVG.ClipPathValue.datatype, SVG.Clip.extra.class, SVG.Clip.class, SVG.Clip.extra.attrib, SVG.Clip.attrib, SVG.clipPath, SVG.FilterValue.datatype, SVG.NumberOptionalNumber.datatype, SVG.Filter.extra.class, SVG.Filter.class, SVG.FilterPrimitive.extra.class, SVG.FilterPrimitive.class, SVG.Filter.extra.attrib, SVG.Filter.attrib, SVG.FilterColor.extra.attrib, SVG.FilterColor.attrib, SVG.FilterPrimitive.extra.attrib, SVG.FilterPrimitive.attrib, SVG.FilterPrimitiveWithIn.extra.attrib, SVG.FilterPrimitiveWithIn.attrib, SVG.filter, SVG.feBlend, SVG.feColorMatrix, SVG.feComponentTransfer, SVG.feComposite, SVG.feFlood, SVG.feGaussianBlur, SVG.feImage, SVG.feMerge, SVG.feMergeNode, SVG.feOffset, SVG.feTile, SVG.feFuncR, SVG.feFuncG, SVG.feFuncB, SVG.feFuncA, SVG.Cursor.class, SVG.Marker.class, SVG.ExtensionList.datatype, SVG.FeatureList.datatype, SVG.Conditional.extra.class, SVG.Conditional.class, SVG.Conditional.extra.attrib, SVG.Conditional.attrib, SVG.switch, SVG.id.attrib, SVG.base.attrib, SVG.lang.attrib, SVG.space.attrib, SVG.Core.extra.attrib, SVG.Core.attrib, SVG.ID.datatype, SVG.Text.datatype, SVG.Length.datatype, SVG.Lengths.datatype, SVG.URI.datatype, SVG.PreserveAspectRatioSpec.datatype, SVG.OpacityValue.datatype, SVG.Integer.datatype, SVG.Coordinate.datatype, SVG.Coordinates.datatype, SVG.LanguageCode.datatype, SVG.LanguageCodes.datatype, SVG.Color.datatype, SVG.Script.datatype, SVG.ContentType.datatype, SVG.ViewBoxSpec.datatype, SVG.Boolean.datatype, SVG.Number.datatype, SVG.Numbers.datatype, SVG.ClipFillRule.datatype, SVG.SVGColor.datatype, SVG.TransformList.datatype, SVG.PathData.datatype, SVG.Color.attrib, SVG.Container.attrib, SVG.Cursor.attrib, SVG.External.attrib, SVG.Font.attrib, SVG.Gradient.attrib, SVG.GraphicalEvents.attrib, SVG.Graphics.attrib, SVG.Marker.attrib, SVG.Mask.attrib, SVG.Opacity.attrib, SVG.Paint.attrib, SVG.Profile.attrib, SVG.Style.attrib, SVG.Text.attrib, SVG.TextContent.attrib, SVG.Viewport.attrib, SVG.XLink.attrib, XLinkEmbed.attrib, XLinkRequired.attrib, SVG.Presentation.extra.attrib, SVG.Presentation.attrib, SVG.onunload.attrib, SVG.onabort.attrib, SVG.onerror.attrib, SVG.onresize.attrib, SVG.onscroll.attrib, SVG.onzoom.attrib, SVG.DocumentEvents.extra.attrib, SVG.DocumentEvents.attrib, SVG.Extensibility.extra.class, SVG.Extensibility.class, SVG.foreignObject, SVG.foreignObject.content, SVG.foreignObject.class, SVG.externalResourcesRequired.attrib, SVG.External.extra.attrib, SVG.Font.extra.class, SVG.Font.class, SVG.font, SVG.font-face, SVG.glyph, SVG.missing-glyph, SVG.hkern, SVG.vkern, SVG.font-face-src, SVG.font-face-uri, SVG.font-face-format, SVG.font-face-name, SVG.definition-src, SVG.NumberOrPercentage.datatype, SVG.Gradient.extra.class, SVG.Gradient.class, SVG.Gradient.extra.attrib, SVG.linearGradient, SVG.radialGradient, SVG.stop, SVG.onfocusin.attrib, SVG.onfocusout.attrib, SVG.onactivate.attrib, SVG.onclick.attrib, SVG.onmousedown.attrib, SVG.onmouseup.attrib, SVG.onmouseover.attrib, SVG.onmousemove.attrib, SVG.onmouseout.attrib, SVG.onload.attrib, SVG.GraphicalEvents.extra.attrib, SVG.display.attrib, SVG.image-rendering.attrib, SVG.pointer-events.attrib, SVG.shape-rendering.attrib, SVG.text-rendering.attrib, SVG.visibility.attrib, SVG.Graphics.extra.attrib, SVG.LinkTarget.datatype, SVG.Hyperlink.extra.class, SVG.Hyperlink.class, SVG.a, SVG.Image.extra.class, SVG.Image.class, SVG.image, SVG.MaskValue.datatype, SVG.Mask.extra.class, SVG.Mask.class, SVG.Mask.extra.attrib, SVG.mask, SVG.opacity.attrib, SVG.fill-opacity.attrib, SVG.stroke-opacity.attrib, SVG.Opacity.extra.attrib, SVG.Paint.datatype, SVG.StrokeDashArrayValue.datatype, SVG.StrokeDashOffsetValue.datatype, SVG.StrokeMiterLimitValue.datatype, SVG.StrokeWidthValue.datatype, SVG.fill.attrib, SVG.fill-rule.attrib, SVG.stroke.attrib, SVG.stroke-dasharray.attrib, SVG.stroke-dashoffset.attrib, SVG.stroke-linecap.attrib, SVG.stroke-linejoin.attrib, SVG.stroke-miterlimit.attrib, SVG.stroke-width.attrib, SVG.Paint.extra.attrib, SVG.color.attrib, SVG.color-interpolation.attrib, SVG.color-rendering.attrib, SVG.Color.extra.attrib, SVG.Pattern.extra.class, SVG.Pattern.class, SVG.pattern, SVG.Profile.extra.class, SVG.Profile.class, SVG.Profile.extra.attrib, SVG.color-profile, SVG.Script.extra.class, SVG.Script.class, SVG.script, SVG.Points.datatype, SVG.Shape.extra.class, SVG.Shape.class, SVG.path, SVG.rect, SVG.circle, SVG.line, SVG.ellipse, SVG.polyline, SVG.polygon, SVG.Description.extra.class, SVG.Description.class, SVG.Use.extra.class, SVG.Use.class, SVG.Structure.extra.class, SVG.Structure.class, SVG.svg, SVG.g, SVG.defs, SVG.desc, SVG.title, SVG.metadata, SVG.symbol, SVG.use, SVG.ClassList.datatype, SVG.MediaDesc.datatype, SVG.StyleSheet.datatype, SVG.Style.extra.class, SVG.Style.class, SVG.Style.extra.attrib, SVG.style, SVG.BaselineShiftValue.datatype, SVG.FontFamilyValue.datatype, SVG.FontSizeValue.datatype, SVG.FontSizeAdjustValue.datatype, SVG.GlyphOrientationHorizontalValue.datatype, SVG.GlyphOrientationVerticalValue.datatype, SVG.KerningValue.datatype, SVG.SpacingValue.datatype, SVG.TextDecorationValue.datatype, SVG.Text.extra.class, SVG.Text.class, SVG.TextContent.extra.class, SVG.TextContent.class, SVG.Text.extra.attrib, SVG.TextContent.extra.attrib, SVG.Font.extra.attrib, SVG.text, SVG.tspan, SVG.tref, SVG.textPath, SVG.altGlyph, SVG.altGlyphDef, SVG.altGlyphItem, SVG.glyphRef, SVG.View.extra.class, SVG.View.class, SVG.view, SVG.ClipValue.datatype, SVG.clip.attrib, SVG.overflow.attrib, SVG.Viewport.extra.attrib, SVG.XLink.extra.attrib, SVG.XLinkRequired.extra.attrib, SVG.XLinkRequired.attrib, SVG.XLinkEmbed.extra.attrib, SVG.XLinkEmbed.attrib, SVG.XLinkReplace.extra.attrib, SVG.XLinkReplace.attrib), 1 root (SVG.svg), 3 top (SVG.Integer.datatype, XLinkEmbed.attrib, XLinkRequired.attrib), 0 bottom (—).[attributeName], [attributeType], [begin], [dur], [end], [min], [max], [restart], [repeatCount], [repeatDur], [fill] 2, [calcMode] 2, [values] 3, [keyTimes] 2, [keySplines], [from] 2, [to] 3, [by] 2, [additive], [accumulate], [animate], [set], [Splines], [path] 2, [keyPoints], [rotate] 5, [origin], [animateMotion], [animateColor], [type] 8, [animateTransform], [mpath], [onbegin], [onend], [onrepeat], [clip-path], [clip-rule], [transform] 16, [clipPathUnits], [clipPath], [filter] 2, [color-interpolation-filters], [x] 14, [y] 14, [width] 9, [height] 9, [result], [in] 2, [filterRes], [filterUnits], [primitiveUnits], [in2] 2, [mode], [feBlend], [feColorMatrix], [feComponentTransfer], [operator], [k1], [k2], [k3], [k4], [feComposite], [flood-color] 2, [flood-opacity] 2, [feFlood], [stdDeviation], [feGaussianBlur], [preserveAspectRatio] 6, [feImage], [feMerge], [feMergeNode], [dx] 6, [dy] 6, [feOffset], [feTile], [tableValues] 4, [slope] 5, [intercept] 4, [amplitude] 4, [exponent] 4, [offset] 5, [feFuncR], [feFuncG], [feFuncB], [feFuncA], [requiredFeatures], [requiredExtensions], [systemLanguage], [switch], [id], [xml:base], [xml:lang], [xml:space], [lighting-color], [onunload], [onabort], [onerror], [onresize], [onscroll], [onzoom], [foreignObject], [externalResourcesRequired], [horiz-origin-x], [horiz-origin-y], [horiz-adv-x] 3, [vert-origin-x] 3, [vert-origin-y] 3, [vert-adv-y] 3, [font], [font-family] 2, [font-style] 2, [font-variant] 2, [font-weight] 2, [font-stretch] 2, [font-size] 2, [unicode-range], [units-per-em], [panose-1], [stemv], [stemh], [cap-height], [x-height], [accent-height], [ascent], [descent], [widths], [bbox], [ideographic], [alphabetic], [mathematical], [hanging], [v-ideographic], [v-alphabetic], [v-mathematical], [v-hanging], [underline-position], [underline-thickness], [strikethrough-position], [strikethrough-thickness], [overline-position], [overline-thickness], [font-face], [unicode], [glyph-name], [d] 3, [orientation], [arabic-form], [lang], [glyph], [missing-glyph], [u1] 2, [g1] 2, [u2] 2, [g2] 2, [k] 2, [hkern], [vkern], [font-face-src], [font-face-uri], [string], [font-face-format], [name] 2, [font-face-name], [definition-src], [stop-color], [stop-opacity], [x1] 2, [y1] 2, [x2] 2, [y2] 2, [gradientUnits] 2, [gradientTransform] 2, [spreadMethod] 2, [linearGradient], [cx] 3, [cy] 3, [r] 2, [fx], [fy], [radialGradient], [stop], [onfocusin], [onfocusout], [onactivate], [onclick], [onmousedown], [onmouseup], [onmouseover], [onmousemove], [onmouseout], [onload], [display], [image-rendering], [pointer-events], [shape-rendering], [text-rendering], [visibility], [target], [a], [image], [mask] 2, [maskUnits], [maskContentUnits], [opacity], [fill-opacity], [stroke-opacity], [fill-rule], [stroke], [stroke-dasharray], [stroke-dashoffset], [stroke-linecap], [stroke-linejoin], [stroke-miterlimit], [stroke-width], [color], [color-interpolation], [color-rendering], [patternUnits], [patternContentUnits], [patternTransform], [viewBox] 4, [pattern], [color-profile] 2, [local], [rendering-intent], [script], [pathLength], [rx] 2, [ry] 2, [rect], [circle], [line], [ellipse], [points] 2, [polyline], [polygon], [zoomAndPan] 2, [version], [baseProfile], [contentScriptType], [contentStyleType], [svg], [g], [defs], [desc], [title] 2, [metadata], [symbol], [use], [style] 2, [class], [media], [writing-mode], [alignment-baseline], [baseline-shift], [direction], [dominant-baseline], [glyph-orientation-horizontal], [glyph-orientation-vertical], [kerning], [letter-spacing], [text-anchor], [text-decoration], [unicode-bidi], [word-spacing], [font-size-adjust], [textLength] 4, [lengthAdjust] 4, [text], [tspan], [tref], [startOffset], [method], [spacing], [textPath], [glyphRef] 3, [format] 2, [altGlyph], [altGlyphDef], [altGlyphItem], [viewTarget], [view], [clip], [overflow], [xlink:type] 4, [xlink:href] 4, [xlink:role] 4, [xlink:arcrole] 4, [xlink:title] 4, [xlink:show] 4, [xlink:actuate] 4.SVG.Animation.extra.attrib ::= ε
SVG.Animation.attrib ::= SVG.XLink.attrib SVG.Animation.extra.attrib
SVG.AnimationAttribute.extra.attrib ::= ε
SVG.AnimationAttribute.attrib ::=
[attributeName]::string [attributeType]::string SVG.AnimationAttribute.extra.attribSVG.AnimationTiming.extra.attrib ::= ε
SVG.AnimationTiming.attrib ::= [begin]::string [dur]::string [end]::string [min]::string [max]::string [restart]::"always""never""whenNotActive" [repeatCount]::string [repeatDur]::string [fill]::"remove""freeze" SVG.AnimationTiming.extra.attrib
SVG.AnimationValue.extra.attrib ::= ε
SVG.AnimationValue.attrib ::= [calcMode]::"discrete""linear""paced""spline" [values]::string [keyTimes]::string [keySplines]::string [from]::string [to]::string [by]::string SVG.AnimationValue.extra.attrib
SVG.AnimationAddition.extra.attrib ::= ε
SVG.AnimationAddtion.attrib ::= [additive]::"replace""sum" [accumulate]::"none""sum" SVG.AnimationAddition.extra.attrib
SVG.Animation.extra.class ::= ε
SVG.Animation.class ::= SVG.animate SVG.set SVG.animateMotion SVG.animateColor SVG.animateTransform SVG.Animation.extra.class
SVG.animate ::= [animate]::SVG.Description.class SVG.Core.attrib SVG.Conditional.attrib SVG.AnimationEvents.attrib SVG.External.attrib SVG.Animation.attrib SVG.AnimationAttribute.attrib SVG.AnimationTiming.attrib SVG.AnimationValue.attrib SVG.AnimationAddtion.attrib
SVG.set ::= [set]::SVG.Description.class SVG.Core.attrib SVG.Conditional.attrib SVG.AnimationEvents.attrib SVG.External.attrib SVG.Animation.attrib SVG.AnimationAttribute.attrib SVG.AnimationTiming.attrib [to]::string
SVG.animateMotion ::= [animateMotion]::SVG.Description.class SVG.mpath SVG.Core.attrib SVG.Conditional.attrib SVG.AnimationEvents.attrib SVG.External.attrib SVG.Animation.attrib SVG.AnimationTiming.attrib SVG.AnimationAddtion.attrib [calcMode]::"discrete""linear""paced""spline" [values]::string [keyTimes]::string [Splines]::string [from]::string [to]::string [by]::string [path]::string [keyPoints]::string [rotate]::string [origin]::string
SVG.animateColor ::= [animateColor]::SVG.Description.class SVG.Core.attrib SVG.Conditional.attrib SVG.AnimationEvents.attrib SVG.External.attrib SVG.Animation.attrib SVG.AnimationAttribute.attrib SVG.AnimationTiming.attrib SVG.AnimationValue.attrib SVG.AnimationAddtion.attrib
SVG.animateTransform ::= [animateTransform]::SVG.Description.class SVG.Core.attrib SVG.Conditional.attrib SVG.AnimationEvents.attrib SVG.External.attrib SVG.Animation.attrib SVG.AnimationAttribute.attrib SVG.AnimationTiming.attrib SVG.AnimationValue.attrib SVG.AnimationAddtion.attrib [type]::"translate""scale""rotate""skewX""skewY"
SVG.mpath ::= [mpath]::SVG.Description.class SVG.Core.attrib SVG.XLinkRequired.attrib SVG.External.attrib
SVG.onbegin.attrib ::=
[onbegin]::SVG.Script.datatypeSVG.onend.attrib ::=
[onend]::SVG.Script.datatypeSVG.onrepeat.attrib ::=
[onrepeat]::SVG.Script.datatypeSVG.AnimationEvents.extra.attrib ::= ε
SVG.AnimationEvents.attrib ::= SVG.onbegin.attrib SVG.onend.attrib SVG.onrepeat.attrib SVG.AnimationEvents.extra.attrib
SVG.ClipPathValue.datatype ::= string
SVG.Clip.extra.class ::= ε
SVG.Clip.class ::= SVG.clipPath SVG.Clip.extra.class
SVG.Clip.extra.attrib ::= ε
SVG.Clip.attrib ::= [clip-path]::SVG.ClipPathValue.datatype [clip-rule]::SVG.ClipFillRule.datatype SVG.Clip.extra.attrib
SVG.clipPath ::= [clipPath]::SVG.Description.class SVG.Animation.classSVG.Use.class SVG.Shape.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Text.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.Cursor.attrib SVG.External.attrib [transform]::SVG.TransformList.datatype [clipPathUnits]::"userSpaceOnUse""objectBoundingBox"
SVG.FilterValue.datatype ::= string
SVG.NumberOptionalNumber.datatype ::= string
SVG.Filter.extra.class ::= ε
SVG.Filter.class ::= SVG.filter SVG.Filter.extra.class
SVG.FilterPrimitive.extra.class ::= ε
SVG.FilterPrimitive.class ::= SVG.feBlend SVG.feColorMatrix SVG.feComponentTransfer SVG.feComposite SVG.feFlood SVG.feGaussianBlur SVG.feImage SVG.feMerge SVG.feOffset SVG.feTile SVG.FilterPrimitive.extra.class
SVG.Filter.extra.attrib ::= ε
SVG.Filter.attrib ::=
[filter]::SVG.FilterValue.datatype SVG.Filter.extra.attribSVG.FilterColor.extra.attrib ::= ε
SVG.FilterColor.attrib ::= [color-interpolation-filters]::"auto""sRGB""linearRGB""inherit" SVG.FilterColor.extra.attrib
SVG.FilterPrimitive.extra.attrib ::= ε
SVG.FilterPrimitive.attrib ::= [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [result]::string SVG.FilterPrimitive.extra.attrib
SVG.FilterPrimitiveWithIn.extra.attrib ::= ε
SVG.FilterPrimitiveWithIn.attrib ::=
SVG.FilterPrimitive.attrib [in]::string SVG.FilterPrimitiveWithIn.extra.attribSVG.filter ::= [filter]::SVG.Description.class SVG.animateSVG.setSVG.FilterPrimitive.class SVG.Core.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.XLink.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [filterRes]::SVG.NumberOptionalNumber.datatype [filterUnits]::"userSpaceOnUse""objectBoundingBox" [primitiveUnits]::"userSpaceOnUse""objectBoundingBox"
SVG.feBlend ::= [feBlend]::SVG.animateSVG.set SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib [in2]::string [mode]::"normal""multiply""screen""darken""lighten"
SVG.feColorMatrix ::= [feColorMatrix]::SVG.animateSVG.set SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib [type]::"matrix""saturate""hueRotate""luminanceToAlpha" [values]::string
SVG.feComponentTransfer ::= [feComponentTransfer]::SVG.feFuncR SVG.feFuncG SVG.feFuncB SVG.feFuncA SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib
SVG.feComposite ::= [feComposite]::SVG.animateSVG.set SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib [in2]::string [operator]::"over""in""out""atop""xor""arithmetic" [k1]::SVG.Number.datatype [k2]::SVG.Number.datatype [k3]::SVG.Number.datatype [k4]::SVG.Number.datatype
SVG.feFlood ::= [feFlood]::SVG.animateSVG.setSVG.animateColor SVG.Core.attrib SVG.Style.attrib SVG.Color.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib [flood-color]::SVG.SVGColor.datatype [flood-opacity]::SVG.OpacityValue.datatype
SVG.feGaussianBlur ::= [feGaussianBlur]::SVG.animateSVG.set SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib [stdDeviation]::SVG.NumberOptionalNumber.datatype
SVG.feImage ::= [feImage]::SVG.animateSVG.setSVG.animateTransform SVG.Core.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.FilterPrimitive.attrib SVG.XLinkEmbed.attrib SVG.External.attrib [preserveAspectRatio]::SVG.PreserveAspectRatioSpec.datatype
SVG.feMerge ::= [feMerge]::SVG.feMergeNode SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitive.attrib
SVG.feMergeNode ::= [feMergeNode]::SVG.animateSVG.set SVG.Core.attrib [in]::string
SVG.feOffset ::= [feOffset]::SVG.animateSVG.set SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib [dx]::SVG.Number.datatype [dy]::SVG.Number.datatype
SVG.feTile ::= [feTile]::SVG.animateSVG.set SVG.Core.attrib SVG.FilterColor.attrib SVG.FilterPrimitiveWithIn.attrib
SVG.feFuncR ::= [feFuncR]::SVG.animateSVG.set SVG.Core.attrib [type]::"identity""table""discrete""linear""gamma" [tableValues]::string [slope]::SVG.Number.datatype [intercept]::SVG.Number.datatype [amplitude]::SVG.Number.datatype [exponent]::SVG.Number.datatype [offset]::SVG.Number.datatype
SVG.feFuncG ::= [feFuncG]::SVG.animateSVG.set SVG.Core.attrib [type]::"identity""table""discrete""linear""gamma" [tableValues]::string [slope]::SVG.Number.datatype [intercept]::SVG.Number.datatype [amplitude]::SVG.Number.datatype [exponent]::SVG.Number.datatype [offset]::SVG.Number.datatype
SVG.feFuncB ::= [feFuncB]::SVG.animateSVG.set SVG.Core.attrib [type]::"identity""table""discrete""linear""gamma" [tableValues]::string [slope]::SVG.Number.datatype [intercept]::SVG.Number.datatype [amplitude]::SVG.Number.datatype [exponent]::SVG.Number.datatype [offset]::SVG.Number.datatype
SVG.feFuncA ::= [feFuncA]::SVG.animateSVG.set SVG.Core.attrib [type]::"identity""table""discrete""linear""gamma" [tableValues]::string [slope]::SVG.Number.datatype [intercept]::SVG.Number.datatype [amplitude]::SVG.Number.datatype [exponent]::SVG.Number.datatype [offset]::SVG.Number.datatype
SVG.Cursor.class ::= ε
SVG.Marker.class ::= ε
SVG.ExtensionList.datatype ::= string
SVG.FeatureList.datatype ::= string
SVG.Conditional.extra.class ::= ε
SVG.Conditional.class ::= SVG.switch SVG.Conditional.extra.class
SVG.Conditional.extra.attrib ::= ε
SVG.Conditional.attrib ::= [requiredFeatures]::SVG.FeatureList.datatype [requiredExtensions]::SVG.ExtensionList.datatype [systemLanguage]::SVG.LanguageCodes.datatype SVG.Conditional.extra.attrib
SVG.switch ::= [switch]::SVG.Description.class SVG.svgSVG.gSVG.useSVG.textSVG.textSVG.Animation.classSVG.Conditional.classSVG.Image.classSVG.Shape.classSVG.Hyperlink.classSVG.Extensibility.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.External.attrib [transform]::SVG.TransformList.datatype
SVG.id.attrib ::=
[id]::SVG.ID.datatypeSVG.base.attrib ::=
[xml:base]::SVG.URI.datatypeSVG.lang.attrib ::=
[xml:lang]::SVG.LanguageCode.datatypeSVG.space.attrib ::= [xml:space]::"default""preserve"
SVG.Core.extra.attrib ::= ε
SVG.Core.attrib ::= SVG.id.attrib SVG.base.attrib SVG.lang.attrib SVG.space.attrib SVG.Core.extra.attrib
SVG.ID.datatype ::= string
SVG.Text.datatype ::= string
SVG.Length.datatype ::= string
SVG.Lengths.datatype ::= string
SVG.URI.datatype ::= string
SVG.PreserveAspectRatioSpec.datatype ::= string
SVG.OpacityValue.datatype ::= string
SVG.Integer.datatype ::= integer
SVG.Coordinate.datatype ::= string
SVG.Coordinates.datatype ::= string
SVG.LanguageCode.datatype ::= string
SVG.LanguageCodes.datatype ::= string
SVG.Color.datatype ::= string
SVG.Script.datatype ::= string
SVG.ContentType.datatype ::= string
SVG.ViewBoxSpec.datatype ::= string
SVG.Boolean.datatype ::= string
SVG.Number.datatype ::= integer
SVG.Numbers.datatype ::= string
SVG.ClipFillRule.datatype ::= string
SVG.SVGColor.datatype ::= string
SVG.TransformList.datatype ::= string
SVG.PathData.datatype ::= string
SVG.AnimationEvents.attrib ::= ε
SVG.Clip.attrib ::= ε
SVG.Color.attrib ::= ε
SVG.Conditional.attrib ::= ε
SVG.Container.attrib ::= ε
SVG.Core.attrib ::= ε
SVG.Cursor.attrib ::= ε
SVG.External.attrib ::= ε
SVG.Filter.attrib ::= ε
SVG.FilterColor.attrib ::= ε
SVG.Font.attrib ::= ε
SVG.Gradient.attrib ::= ε
SVG.GraphicalEvents.attrib ::= ε
SVG.Graphics.attrib ::= ε
SVG.Marker.attrib ::= ε
SVG.Mask.attrib ::= ε
SVG.Opacity.attrib ::= ε
SVG.Paint.attrib ::= ε
SVG.Profile.attrib ::= ε
SVG.Style.attrib ::= ε
SVG.Text.attrib ::= ε
SVG.TextContent.attrib ::= ε
SVG.Viewport.attrib ::= ε
SVG.XLink.attrib ::= ε
XLinkEmbed.attrib ::= ε
XLinkRequired.attrib ::= ε
SVG.Presentation.extra.attrib ::= ε
SVG.Presentation.attrib ::= SVG.Container.attrib SVG.Viewport.attrib SVG.Text.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Marker.attrib SVG.Profile.attrib SVG.Gradient.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.FilterColor.attrib SVG.Cursor.attrib [flood-color]::SVG.SVGColor.datatype [flood-opacity]::SVG.OpacityValue.datatype [lighting-color]::SVG.SVGColor.datatype SVG.Presentation.extra.attrib
SVG.onunload.attrib ::=
[onunload]::SVG.Script.datatypeSVG.onabort.attrib ::=
[onabort]::SVG.Script.datatypeSVG.onerror.attrib ::=
[onerror]::SVG.Script.datatypeSVG.onresize.attrib ::=
[onresize]::SVG.Script.datatypeSVG.onscroll.attrib ::=
[onscroll]::SVG.Script.datatypeSVG.onzoom.attrib ::=
[onzoom]::SVG.Script.datatypeSVG.DocumentEvents.extra.attrib ::= ε
SVG.DocumentEvents.attrib ::= SVG.onunload.attrib SVG.onabort.attrib SVG.onerror.attrib SVG.onresize.attrib SVG.onscroll.attrib SVG.onzoom.attrib SVG.DocumentEvents.extra.attrib
SVG.Extensibility.extra.class ::= ε
SVG.Extensibility.class ::= SVG.foreignObject SVG.Extensibility.extra.class
SVG.foreignObject ::= [foreignObject]::SVG.foreignObject.content SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [transform]::SVG.TransformList.datatype
SVG.foreignObject.content ::=
SVG.foreignObject.classSVG.foreignObject.class ::= string
SVG.externalResourcesRequired.attrib ::=
[externalResourcesRequired]::SVG.Boolean.datatypeSVG.External.extra.attrib ::= ε
SVG.External.attrib ::= SVG.externalResourcesRequired.attrib SVG.External.extra.attrib
SVG.Font.extra.class ::= ε
SVG.Font.class ::= SVG.font SVG.font-face SVG.Font.extra.class
SVG.font ::= [font]::SVG.Description.class SVG.font-face SVG.missing-glyph SVG.glyphSVG.hkernSVG.vkern SVG.Core.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.External.attrib [horiz-origin-x]::SVG.Number.datatype [horiz-origin-y]::SVG.Number.datatype [horiz-adv-x]::SVG.Number.datatype [vert-origin-x]::SVG.Number.datatype [vert-origin-y]::SVG.Number.datatype [vert-adv-y]::SVG.Number.datatype
SVG.font-face ::= [font-face]::SVG.Description.class SVG.font-face-src SVG.definition-src SVG.Core.attrib [font-family]::string [font-style]::string [font-variant]::string [font-weight]::string [font-stretch]::string [font-size]::string [unicode-range]::string [units-per-em]::SVG.Number.datatype [panose-1]::string [stemv]::SVG.Number.datatype [stemh]::SVG.Number.datatype [slope]::SVG.Number.datatype [cap-height]::SVG.Number.datatype [x-height]::SVG.Number.datatype [accent-height]::SVG.Number.datatype [ascent]::SVG.Number.datatype [descent]::SVG.Number.datatype [widths]::string [bbox]::string [ideographic]::SVG.Number.datatype [alphabetic]::SVG.Number.datatype [mathematical]::SVG.Number.datatype [hanging]::SVG.Number.datatype [v-ideographic]::SVG.Number.datatype [v-alphabetic]::SVG.Number.datatype [v-mathematical]::SVG.Number.datatype [v-hanging]::SVG.Number.datatype [underline-position]::SVG.Number.datatype [underline-thickness]::SVG.Number.datatype [strikethrough-position]::SVG.Number.datatype [strikethrough-thickness]::SVG.Number.datatype [overline-position]::SVG.Number.datatype [overline-thickness]::SVG.Number.datatype
SVG.glyph ::= [glyph]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Style.attrib SVG.Presentation.attrib [unicode]::string [glyph-name]::string [d]::SVG.PathData.datatype [orientation]::string [arabic-form]::string [lang]::SVG.LanguageCodes.datatype [horiz-adv-x]::SVG.Number.datatype [vert-origin-x]::SVG.Number.datatype [vert-origin-y]::SVG.Number.datatype [vert-adv-y]::SVG.Number.datatype
SVG.missing-glyph ::= [missing-glyph]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Style.attrib SVG.Presentation.attrib [d]::SVG.PathData.datatype [horiz-adv-x]::SVG.Number.datatype [vert-origin-x]::SVG.Number.datatype [vert-origin-y]::SVG.Number.datatype [vert-adv-y]::SVG.Number.datatype
SVG.hkern ::= [hkern]::ε SVG.Core.attrib [u1]::string [g1]::string [u2]::string [g2]::string [k]::SVG.Number.datatype
SVG.vkern ::= [vkern]::ε SVG.Core.attrib [u1]::string [g1]::string [u2]::string [g2]::string [k]::SVG.Number.datatype
SVG.font-face-src ::= [font-face-src]::SVG.font-face-uriSVG.font-face-name SVG.Core.attrib
SVG.font-face-uri ::= [font-face-uri]::SVG.font-face-format SVG.Core.attrib SVG.XLinkRequired.attrib
SVG.font-face-format ::= [font-face-format]::ε SVG.Core.attrib [string]::string
SVG.font-face-name ::= [font-face-name]::ε SVG.Core.attrib [name]::string
SVG.definition-src ::= [definition-src]::ε SVG.Core.attrib SVG.XLinkRequired.attrib
SVG.NumberOrPercentage.datatype ::= string
SVG.Gradient.extra.class ::= ε
SVG.Gradient.class ::= SVG.linearGradient SVG.radialGradient SVG.Gradient.extra.class
SVG.Gradient.extra.attrib ::= ε
SVG.Gradient.attrib ::= [stop-color]::SVG.SVGColor.datatype [stop-opacity]::SVG.OpacityValue.datatype SVG.Gradient.extra.attrib
SVG.linearGradient ::= [linearGradient]::SVG.Description.class SVG.stopSVG.animateSVG.setSVG.animateTransform SVG.Core.attrib SVG.Style.attrib SVG.Color.attrib SVG.Gradient.attrib SVG.XLink.attrib SVG.External.attrib [x1]::SVG.Coordinate.datatype [y1]::SVG.Coordinate.datatype [x2]::SVG.Coordinate.datatype [y2]::SVG.Coordinate.datatype [gradientUnits]::"userSpaceOnUse""objectBoundingBox" [gradientTransform]::SVG.TransformList.datatype [spreadMethod]::"pad""reflect""repeat"
SVG.radialGradient ::= [radialGradient]::SVG.Description.class SVG.stopSVG.animateSVG.setSVG.animateTransform SVG.Core.attrib SVG.Style.attrib SVG.Color.attrib SVG.Gradient.attrib SVG.XLink.attrib SVG.External.attrib [cx]::SVG.Coordinate.datatype [cy]::SVG.Coordinate.datatype [r]::SVG.Length.datatype [fx]::SVG.Coordinate.datatype [fy]::SVG.Coordinate.datatype [gradientUnits]::"userSpaceOnUse""objectBoundingBox" [gradientTransform]::SVG.TransformList.datatype [spreadMethod]::"pad""reflect""repeat"
SVG.stop ::= [stop]::SVG.animateSVG.setSVG.animateColor SVG.Core.attrib SVG.Style.attrib SVG.Color.attrib SVG.Gradient.attrib [offset]::SVG.NumberOrPercentage.datatype
SVG.onfocusin.attrib ::=
[onfocusin]::SVG.Script.datatypeSVG.onfocusout.attrib ::=
[onfocusout]::SVG.Script.datatypeSVG.onactivate.attrib ::=
[onactivate]::SVG.Script.datatypeSVG.onclick.attrib ::=
[onclick]::SVG.Script.datatypeSVG.onmousedown.attrib ::=
[onmousedown]::SVG.Script.datatypeSVG.onmouseup.attrib ::=
[onmouseup]::SVG.Script.datatypeSVG.onmouseover.attrib ::=
[onmouseover]::SVG.Script.datatypeSVG.onmousemove.attrib ::=
[onmousemove]::SVG.Script.datatypeSVG.onmouseout.attrib ::=
[onmouseout]::SVG.Script.datatypeSVG.onload.attrib ::=
[onload]::SVG.Script.datatypeSVG.GraphicalEvents.extra.attrib ::= ε
SVG.GraphicalEvents.attrib ::= SVG.onfocusin.attrib SVG.onfocusout.attrib SVG.onactivate.attrib SVG.onclick.attrib SVG.onmousedown.attrib SVG.onmouseup.attrib SVG.onmouseover.attrib SVG.onmousemove.attrib SVG.onmouseout.attrib SVG.onload.attrib SVG.GraphicalEvents.extra.attrib
SVG.display.attrib ::= [display]::"inline""block""list-item""run-in""compact""marker""table""inline-table""table-row-group""table-header-group""table-footer-group""table-row""table-column-group""table-column""table-cell""table-caption""none""inherit"
SVG.image-rendering.attrib ::= [image-rendering]::"auto""optimizeSpeed""optimizeQuality""inherit"
SVG.pointer-events.attrib ::= [pointer-events]::"visiblePainted""visibleFill""visibleStroke""visible""painted""fill""stroke""all""none""inherit"
SVG.shape-rendering.attrib ::= [shape-rendering]::"auto""optimizeSpeed""crispEdges""geometricPrecision""inherit"
SVG.text-rendering.attrib ::= [text-rendering]::"auto""optimizeSpeed""optimizeLegibility""geometricPrecision""inherit"
SVG.visibility.attrib ::= [visibility]::"visible""hidden""inherit"
SVG.Graphics.extra.attrib ::= ε
SVG.Graphics.attrib ::= SVG.display.attrib SVG.image-rendering.attrib SVG.pointer-events.attrib SVG.shape-rendering.attrib SVG.text-rendering.attrib SVG.visibility.attrib SVG.Graphics.extra.attrib
SVG.LinkTarget.datatype ::= string
SVG.Hyperlink.extra.class ::= ε
SVG.Hyperlink.class ::= SVG.a SVG.Hyperlink.extra.class
SVG.a ::= [a]::stringSVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.XLinkReplace.attrib SVG.External.attrib [transform]::SVG.TransformList.datatype [target]::SVG.LinkTarget.datatype
SVG.Image.extra.class ::= ε
SVG.Image.class ::= SVG.image SVG.Image.extra.class
SVG.image ::= [image]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Viewport.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Profile.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.XLinkEmbed.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [preserveAspectRatio]::SVG.PreserveAspectRatioSpec.datatype [transform]::SVG.TransformList.datatype
SVG.MaskValue.datatype ::= string
SVG.Mask.extra.class ::= ε
SVG.Mask.class ::= SVG.mask SVG.Mask.extra.class
SVG.Mask.extra.attrib ::= ε
SVG.Mask.attrib ::=
[mask]::SVG.MaskValue.datatype SVG.Mask.extra.attribSVG.mask ::= [mask]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [maskUnits]::"userSpaceOnUse""objectBoundingBox" [maskContentUnits]::"userSpaceOnUse""objectBoundingBox"
SVG.opacity.attrib ::=
[opacity]::SVG.OpacityValue.datatypeSVG.fill-opacity.attrib ::=
[fill-opacity]::SVG.OpacityValue.datatypeSVG.stroke-opacity.attrib ::=
[stroke-opacity]::SVG.OpacityValue.datatypeSVG.Opacity.extra.attrib ::= ε
SVG.Opacity.attrib ::= SVG.opacity.attrib SVG.fill-opacity.attrib SVG.stroke-opacity.attrib SVG.Opacity.extra.attrib
SVG.Paint.datatype ::= string
SVG.StrokeDashArrayValue.datatype ::= string
SVG.StrokeDashOffsetValue.datatype ::= string
SVG.StrokeMiterLimitValue.datatype ::= string
SVG.StrokeWidthValue.datatype ::= string
SVG.fill.attrib ::=
[fill]::SVG.Paint.datatypeSVG.fill-rule.attrib ::=
[fill-rule]::SVG.ClipFillRule.datatypeSVG.stroke.attrib ::=
[stroke]::SVG.Paint.datatypeSVG.stroke-dasharray.attrib ::=
[stroke-dasharray]::SVG.StrokeDashArrayValue.datatypeSVG.stroke-dashoffset.attrib ::=
[stroke-dashoffset]::SVG.StrokeDashOffsetValue.datatypeSVG.stroke-linecap.attrib ::= [stroke-linecap]::"butt""round""square""inherit"
SVG.stroke-linejoin.attrib ::= [stroke-linejoin]::"miter""round""bevel""inherit"
SVG.stroke-miterlimit.attrib ::=
[stroke-miterlimit]::SVG.StrokeMiterLimitValue.datatypeSVG.stroke-width.attrib ::=
[stroke-width]::SVG.StrokeWidthValue.datatypeSVG.Paint.extra.attrib ::= ε
SVG.Paint.attrib ::= SVG.fill.attrib SVG.fill-rule.attrib SVG.stroke.attrib SVG.stroke-dasharray.attrib SVG.stroke-dashoffset.attrib SVG.stroke-linecap.attrib SVG.stroke-linejoin.attrib SVG.stroke-miterlimit.attrib SVG.stroke-width.attrib SVG.Paint.extra.attrib
SVG.color.attrib ::=
[color]::SVG.Color.datatypeSVG.color-interpolation.attrib ::= [color-interpolation]::"auto""sRGB""linearRGB""inherit"
SVG.color-rendering.attrib ::= [color-rendering]::"auto""optimizeSpeed""optimizeQuality""inherit"
SVG.Color.extra.attrib ::= ε
SVG.Color.attrib ::= SVG.color.attrib SVG.color-interpolation.attrib SVG.color-rendering.attrib SVG.Color.extra.attrib
SVG.Pattern.extra.class ::= ε
SVG.Pattern.class ::= SVG.pattern SVG.Pattern.extra.class
SVG.pattern ::= [pattern]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.XLink.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [patternUnits]::"userSpaceOnUse""objectBoundingBox" [patternContentUnits]::"userSpaceOnUse""objectBoundingBox" [patternTransform]::SVG.TransformList.datatype [viewBox]::SVG.ViewBoxSpec.datatype [preserveAspectRatio]::SVG.PreserveAspectRatioSpec.datatype
SVG.Profile.extra.class ::= ε
SVG.Profile.class ::= SVG.color-profile SVG.Profile.extra.class
SVG.Profile.extra.attrib ::= ε
SVG.Profile.attrib ::=
[color-profile]::string SVG.Profile.extra.attribSVG.color-profile ::= [color-profile]::SVG.Description.class SVG.Core.attrib SVG.XLink.attrib [local]::string [name]::string [rendering-intent]::"auto""perceptual""relative-colorimetric""saturation""absolute-colorimetric"
SVG.Script.extra.class ::= ε
SVG.Script.class ::= SVG.script SVG.Script.extra.class
SVG.script ::= [script]::string SVG.Core.attrib SVG.XLink.attrib SVG.External.attrib [type]::SVG.ContentType.datatype
SVG.Points.datatype ::= string
SVG.Shape.extra.class ::= ε
SVG.Shape.class ::= SVG.path SVG.rect SVG.circle SVG.line SVG.ellipse SVG.polyline SVG.polygon SVG.Shape.extra.class
SVG.path ::= [path]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Marker.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [d]::SVG.PathData.datatype [pathLength]::SVG.Number.datatype [transform]::SVG.TransformList.datatype
SVG.rect ::= [rect]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [rx]::SVG.Length.datatype [ry]::SVG.Length.datatype [transform]::SVG.TransformList.datatype
SVG.circle ::= [circle]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [cx]::SVG.Coordinate.datatype [cy]::SVG.Coordinate.datatype [r]::SVG.Length.datatype [transform]::SVG.TransformList.datatype
SVG.line ::= [line]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Marker.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [x1]::SVG.Coordinate.datatype [y1]::SVG.Coordinate.datatype [x2]::SVG.Coordinate.datatype [y2]::SVG.Coordinate.datatype [transform]::SVG.TransformList.datatype
SVG.ellipse ::= [ellipse]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [cx]::SVG.Coordinate.datatype [cy]::SVG.Coordinate.datatype [rx]::SVG.Length.datatype [ry]::SVG.Length.datatype [transform]::SVG.TransformList.datatype
SVG.polyline ::= [polyline]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Marker.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [points]::SVG.Points.datatype [transform]::SVG.TransformList.datatype
SVG.polygon ::= [polygon]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Marker.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [points]::SVG.Points.datatype [transform]::SVG.TransformList.datatype
SVG.Description.extra.class ::= ε
SVG.Description.class ::= SVG.desc SVG.title SVG.metadata SVG.Description.extra.class
SVG.Use.extra.class ::= ε
SVG.Use.class ::= SVG.use SVG.Use.extra.class
SVG.Structure.extra.class ::= ε
SVG.Structure.class ::= SVG.svg SVG.g SVG.defs SVG.symbol SVG.Use.class SVG.Structure.extra.class
SVG.svg ::= [svg]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.DocumentEvents.attrib SVG.GraphicalEvents.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [viewBox]::SVG.ViewBoxSpec.datatype [preserveAspectRatio]::SVG.PreserveAspectRatioSpec.datatype [zoomAndPan]::"disable""magnify" [version]::SVG.Number.datatype [baseProfile]::SVG.Text.datatype [contentScriptType]::SVG.ContentType.datatype [contentStyleType]::SVG.ContentType.datatype
SVG.g ::= [g]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.External.attrib [transform]::SVG.TransformList.datatype
SVG.defs ::= [defs]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.External.attrib [transform]::SVG.TransformList.datatype
SVG.desc ::= [desc]::string SVG.Core.attrib SVG.Style.attrib
SVG.title ::= [title]::string SVG.Core.attrib SVG.Style.attrib
SVG.metadata ::= [metadata]::string SVG.Core.attrib
SVG.symbol ::= [symbol]::SVG.Description.classSVG.Animation.classSVG.Structure.classSVG.Conditional.classSVG.Image.classSVG.Style.classSVG.Shape.classSVG.Text.classSVG.Marker.classSVG.Profile.classSVG.Gradient.classSVG.Pattern.classSVG.Clip.classSVG.Mask.classSVG.Filter.classSVG.Cursor.classSVG.Hyperlink.classSVG.View.classSVG.Script.classSVG.Font.class SVG.Core.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.External.attrib [viewBox]::SVG.ViewBoxSpec.datatype [preserveAspectRatio]::SVG.PreserveAspectRatioSpec.datatype
SVG.use ::= [use]::SVG.Description.class SVG.Animation.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Presentation.attrib SVG.GraphicalEvents.attrib SVG.XLinkEmbed.attrib SVG.External.attrib [x]::SVG.Coordinate.datatype [y]::SVG.Coordinate.datatype [width]::SVG.Length.datatype [height]::SVG.Length.datatype [transform]::SVG.TransformList.datatype
SVG.ClassList.datatype ::= string
SVG.MediaDesc.datatype ::= string
SVG.StyleSheet.datatype ::= string
SVG.Style.extra.class ::= ε
SVG.Style.class ::= SVG.style SVG.Style.extra.class
SVG.Style.extra.attrib ::= ε
SVG.Style.attrib ::= [style]::SVG.StyleSheet.datatype [class]::SVG.ClassList.datatype SVG.Style.extra.attrib
SVG.style ::= [style]::string SVG.Core.attrib [type]::SVG.ContentType.datatype [media]::SVG.MediaDesc.datatype [title]::SVG.Text.datatype
SVG.BaselineShiftValue.datatype ::= string
SVG.FontFamilyValue.datatype ::= string
SVG.FontSizeValue.datatype ::= string
SVG.FontSizeAdjustValue.datatype ::= string
SVG.GlyphOrientationHorizontalValue.datatype ::= string
SVG.GlyphOrientationVerticalValue.datatype ::= string
SVG.KerningValue.datatype ::= string
SVG.SpacingValue.datatype ::= string
SVG.TextDecorationValue.datatype ::= string
SVG.Text.extra.class ::= ε
SVG.Text.class ::= SVG.text SVG.altGlyphDef SVG.Text.extra.class
SVG.TextContent.extra.class ::= ε
SVG.TextContent.class ::= SVG.tspan SVG.tref SVG.textPath SVG.altGlyph SVG.TextContent.extra.class
SVG.Text.extra.attrib ::= ε
SVG.Text.attrib ::= [writing-mode]::"lr-tb""rl-tb""tb-rl""lr""rl""tb""inherit" SVG.Text.extra.attrib
SVG.TextContent.extra.attrib ::= ε
SVG.TextContent.attrib ::= [alignment-baseline]::"baseline""top""before-edge""text-top""text-before-edge""middle""bottom""after-edge""text-bottom""text-after-edge""ideographic""lower""hanging""mathematical""inherit" [baseline-shift]::SVG.BaselineShiftValue.datatype [direction]::"ltr""rtl""inherit" [dominant-baseline]::"auto""autosense-script""no-change""reset""ideographic""lower""hanging""mathematical""inherit" [glyph-orientation-horizontal]::SVG.GlyphOrientationHorizontalValue.datatype [glyph-orientation-vertical]::SVG.GlyphOrientationVerticalValue.datatype [kerning]::SVG.KerningValue.datatype [letter-spacing]::SVG.SpacingValue.datatype [text-anchor]::"start""middle""end""inherit" [text-decoration]::SVG.TextDecorationValue.datatype [unicode-bidi]::"normal""embed""bidi-override""inherit" [word-spacing]::SVG.SpacingValue.datatype SVG.TextContent.extra.attrib
SVG.Font.extra.attrib ::= ε
SVG.Font.attrib ::= [font-family]::SVG.FontFamilyValue.datatype [font-size]::SVG.FontSizeValue.datatype [font-size-adjust]::SVG.FontSizeAdjustValue.datatype [font-stretch]::"normal""wider""narrower""ultra-condensed""extra-condensed""condensed""semi-condensed""semi-expanded""expanded""extra-expanded""ultra-expanded""inherit" [font-style]::"normal""italic""oblique""inherit" [font-variant]::"normal""small-caps""inherit" [font-weight]::"normal""bold""bolder""lighter""100""200""300""400""500""600""700""800""900""inherit" SVG.Font.extra.attrib
SVG.text ::= [text]::stringSVG.Description.classSVG.Animation.classSVG.TextContent.classSVG.Hyperlink.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.Text.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [x]::SVG.Coordinates.datatype [y]::SVG.Coordinates.datatype [dx]::SVG.Lengths.datatype [dy]::SVG.Lengths.datatype [rotate]::SVG.Numbers.datatype [textLength]::SVG.Length.datatype [lengthAdjust]::"spacing""spacingAndGlyphs" [transform]::SVG.TransformList.datatype
SVG.tspan ::= [tspan]::stringSVG.tspanSVG.trefSVG.altGlyphSVG.animateSVG.setSVG.animateColorSVG.Description.classSVG.Hyperlink.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.External.attrib [x]::SVG.Coordinates.datatype [y]::SVG.Coordinates.datatype [dx]::SVG.Lengths.datatype [dy]::SVG.Lengths.datatype [rotate]::SVG.Numbers.datatype [textLength]::SVG.Length.datatype [lengthAdjust]::"spacing""spacingAndGlyphs"
SVG.tref ::= [tref]::SVG.animateSVG.setSVG.animateColorSVG.Description.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.XLinkRequired.attrib SVG.External.attrib [x]::SVG.Coordinates.datatype [y]::SVG.Coordinates.datatype [dx]::SVG.Lengths.datatype [dy]::SVG.Lengths.datatype [rotate]::SVG.Numbers.datatype [textLength]::SVG.Length.datatype [lengthAdjust]::"spacing""spacingAndGlyphs"
SVG.textPath ::= [textPath]::stringSVG.tspanSVG.trefSVG.altGlyphSVG.animateSVG.setSVG.animateColorSVG.Description.classSVG.Hyperlink.class SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.XLinkRequired.attrib SVG.External.attrib [startOffset]::SVG.Length.datatype [textLength]::SVG.Length.datatype [lengthAdjust]::"spacing""spacingAndGlyphs" [method]::"align""stretch" [spacing]::"auto""exact"
SVG.altGlyph ::= [altGlyph]::string SVG.Core.attrib SVG.Conditional.attrib SVG.Style.attrib SVG.TextContent.attrib SVG.Font.attrib SVG.Paint.attrib SVG.Color.attrib SVG.Opacity.attrib SVG.Graphics.attrib SVG.Clip.attrib SVG.Mask.attrib SVG.Filter.attrib SVG.GraphicalEvents.attrib SVG.Cursor.attrib SVG.XLink.attrib SVG.External.attrib [x]::SVG.Coordinates.datatype [y]::SVG.Coordinates.datatype [dx]::SVG.Lengths.datatype [dy]::SVG.Lengths.datatype [glyphRef]::string [format]::string [rotate]::SVG.Numbers.datatype
SVG.altGlyphDef ::= [altGlyphDef]::SVG.glyphRefSVG.altGlyphItem SVG.Core.attrib
SVG.altGlyphItem ::= [altGlyphItem]::SVG.glyphRef SVG.Core.attrib
SVG.glyphRef ::= [glyphRef]::ε SVG.Core.attrib SVG.Style.attrib SVG.Font.attrib SVG.XLink.attrib [x]::SVG.Coordinates.datatype [y]::SVG.Coordinates.datatype [dx]::SVG.Lengths.datatype [dy]::SVG.Lengths.datatype [glyphRef]::string [format]::string
SVG.View.extra.class ::= ε
SVG.View.class ::= SVG.view SVG.View.extra.class
SVG.view ::= [view]::SVG.Description.class SVG.Core.attrib SVG.External.attrib [viewBox]::SVG.ViewBoxSpec.datatype [preserveAspectRatio]::SVG.PreserveAspectRatioSpec.datatype [zoomAndPan]::"disable""magnify" [viewTarget]::string
SVG.ClipValue.datatype ::= string
SVG.clip.attrib ::=
[clip]::SVG.ClipValue.datatypeSVG.overflow.attrib ::= [overflow]::"visible""hidden""scroll""auto""inherit"
SVG.Viewport.extra.attrib ::= ε
SVG.Viewport.attrib ::= SVG.clip.attrib SVG.overflow.attrib SVG.Viewport.extra.attrib
SVG.XLink.extra.attrib ::= ε
SVG.XLink.attrib ::= [xlink:type]::"simple" [xlink:href]::SVG.URI.datatype [xlink:role]::SVG.URI.datatype [xlink:arcrole]::SVG.URI.datatype [xlink:title]::string [xlink:show]::"other" [xlink:actuate]::"onLoad" SVG.XLink.extra.attrib
SVG.XLinkRequired.extra.attrib ::= ε
SVG.XLinkRequired.attrib ::= [xlink:type]::"simple" [xlink:href]::SVG.URI.datatype [xlink:role]::SVG.URI.datatype [xlink:arcrole]::SVG.URI.datatype [xlink:title]::string [xlink:show]::"other" [xlink:actuate]::"onLoad" SVG.XLinkRequired.extra.attrib
SVG.XLinkEmbed.extra.attrib ::= ε
SVG.XLinkEmbed.attrib ::= [xlink:type]::"simple" [xlink:href]::SVG.URI.datatype [xlink:role]::SVG.URI.datatype [xlink:arcrole]::SVG.URI.datatype [xlink:title]::string [xlink:show]::"embed" [xlink:actuate]::"onLoad" SVG.XLinkEmbed.extra.attrib
SVG.XLinkReplace.extra.attrib ::= ε
SVG.XLinkReplace.attrib ::= [xlink:type]::"simple" [xlink:href]::SVG.URI.datatype [xlink:role]::SVG.URI.datatype [xlink:arcrole]::SVG.URI.datatype [xlink:title]::string [xlink:show]::"new""replace" [xlink:actuate]::"onRequest" SVG.XLinkReplace.extra.attrib