<?xml version='1.0' encoding='utf-8' ?>
<xsd:schema xmlns="http://www.w3.org/2000/svg"
			xmlns:xsd='http://www.w3.org/2001/XMLSchema'
			version="1.0"
			targetNamespace='http://www.w3.org/2000/svg'
			xmlns:vs='http://schemas.microsoft.com/Visual-Studio-Intellisense'
			vs:ishtmlschema="false"
			vs:isserverschema="false"
			vs:SuccinctFriendlyName="SVG 1.1">
  <!--
	 Warning:																					
	 Warning: 
	 Warning: Do not change the targetNamespace above 
	 Warning: 
	 Warning: 
   -->

  <xsd:annotation>
    <xsd:documentation>
      Microsoft Visual Studio schema for SVG 1.1
    </xsd:documentation>
  </xsd:annotation>

  <xsd:attributeGroup name='SVG.Presentation.attrib'>
    <xsd:attribute name='flood-color'/>
    <xsd:attribute name='flood-opacity'/>
    <xsd:attribute name='lighting-color'/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.FilterPrimitiveWithIn.attrib'>
    <xsd:attributeGroup ref='SVG.FilterPrimitive.attrib'/>
    <xsd:attribute name='in'/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.FilterPrimitive.attrib'>
    <xsd:attribute name='x'/>
    <xsd:attribute name='y'/>
    <xsd:attribute name='width'/>
    <xsd:attribute name='height'/>
    <xsd:attribute name='result'/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.Animation.attrib'>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.AnimationAttribute.attrib'>
    <xsd:attribute name='attributeName' use='required'/>
    <xsd:attribute name='attributeType'/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.AnimationTiming.attrib'>
    <xsd:attribute name='begin'/>
    <xsd:attribute name='dur'/>
    <xsd:attribute name='end'/>
    <xsd:attribute name='min'/>
    <xsd:attribute name='max'/>
    <xsd:attribute name='restart' default='always'>
      <xsd:simpleType>
        <xsd:restriction base='xsd:string'>
          <xsd:enumeration value='always'/>
          <xsd:enumeration value='never'/>
          <xsd:enumeration value='whenNotActive'/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
    <xsd:attribute name='repeatCount'/>
    <xsd:attribute name='repeatDur'/>
    <xsd:attribute name='fill' default='remove'>
      <xsd:simpleType>
        <xsd:restriction base='xsd:string'>
          <xsd:enumeration value='remove'/>
          <xsd:enumeration value='freeze'/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.AnimationValue.attrib'>
    <xsd:attribute name='calcMode' default='linear'>
      <xsd:simpleType>
        <xsd:restriction base='xsd:string'>
          <xsd:enumeration value='discrete'/>
          <xsd:enumeration value='linear'/>
          <xsd:enumeration value='paced'/>
          <xsd:enumeration value='spline'/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
    <xsd:attribute name='values'/>
    <xsd:attribute name='keyTimes'/>
    <xsd:attribute name='keySplines'/>
    <xsd:attribute name='from'/>
    <xsd:attribute name='to'/>
    <xsd:attribute name='by'/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name='SVG.AnimationAddtion.attrib'>
    <xsd:attribute name='additive' default='replace'>
      <xsd:simpleType>
        <xsd:restriction base='xsd:string'>
          <xsd:enumeration value='replace'/>
          <xsd:enumeration value='sum'/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
    <xsd:attribute name='accumulate' default='none'>
      <xsd:simpleType>
        <xsd:restriction base='xsd:string'>
          <xsd:enumeration value='none'/>
          <xsd:enumeration value='sum'/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
  </xsd:attributeGroup>
  <xsd:element name='a'>
    <xsd:complexType mixed='true'>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='transform'/>
      <xsd:attribute name='target' type='xsd:NMTOKEN'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='altGlyph'>
    <xsd:complexType mixed='true'>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='dx'/>
      <xsd:attribute name='dy'/>
      <xsd:attribute name='glyphRef'/>
      <xsd:attribute name='format'/>
      <xsd:attribute name='rotate'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='altGlyphDef'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice>
          <xsd:element ref='glyphRef' maxOccurs='unbounded'/>
          <xsd:element ref='altGlyphItem' maxOccurs='unbounded'/>
        </xsd:choice>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='altGlyphItem'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref='glyphRef' maxOccurs='unbounded'/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='animate'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Animation.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAttribute.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationTiming.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationValue.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAddtion.attrib'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='animateColor'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Animation.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAttribute.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationTiming.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationValue.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAddtion.attrib'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='animateMotion'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:element ref='mpath' minOccurs='0'/>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.Animation.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationTiming.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAddtion.attrib'/>
      <xsd:attribute name='calcMode' default='paced'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='discrete'/>
            <xsd:enumeration value='linear'/>
            <xsd:enumeration value='paced'/>
            <xsd:enumeration value='spline'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='values'/>
      <xsd:attribute name='keyTimes'/>
      <xsd:attribute name='keySplines'/>
      <xsd:attribute name='from'/>
      <xsd:attribute name='to'/>
      <xsd:attribute name='by'/>
      <xsd:attribute name='path'/>
      <xsd:attribute name='keyPoints'/>
      <xsd:attribute name='rotate'/>
      <xsd:attribute name='origin'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='animateTransform'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Animation.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAttribute.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationTiming.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationValue.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAddtion.attrib'/>
      <xsd:attribute name='type' default='translate'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='translate'/>
            <xsd:enumeration value='scale'/>
            <xsd:enumeration value='rotate'/>
            <xsd:enumeration value='skewX'/>
            <xsd:enumeration value='skewY'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='circle'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='cx'/>
      <xsd:attribute name='cy'/>
      <xsd:attribute name='r' use='required'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='clipPath'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
          <xsd:element ref='use'/>
          <xsd:element ref='path'/>
          <xsd:element ref='rect'/>
          <xsd:element ref='circle'/>
          <xsd:element ref='line'/>
          <xsd:element ref='ellipse'/>
          <xsd:element ref='polyline'/>
          <xsd:element ref='polygon'/>
          <xsd:element ref='text'/>
          <xsd:element ref='altGlyphDef'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='transform'/>
      <xsd:attribute name='clipPathUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='color-profile'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attribute name='local'/>
      <xsd:attribute name='name' use='required'/>
      <xsd:attribute name='rendering-intent' default='auto'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='auto'/>
            <xsd:enumeration value='perceptual'/>
            <xsd:enumeration value='relative-colorimetric'/>
            <xsd:enumeration value='saturation'/>
            <xsd:enumeration value='absolute-colorimetric'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='cursor'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='definition-src'>
    <xsd:complexType>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='defs'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='desc'>
    <xsd:complexType mixed='true'>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='ellipse'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='cx'/>
      <xsd:attribute name='cy'/>
      <xsd:attribute name='rx' use='required'/>
      <xsd:attribute name='ry' use='required'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feBlend'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='in2' use='required'/>
      <xsd:attribute name='mode' default='normal'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='normal'/>
            <xsd:enumeration value='multiply'/>
            <xsd:enumeration value='screen'/>
            <xsd:enumeration value='darken'/>
            <xsd:enumeration value='lighten'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feColorMatrix'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='type' default='matrix'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='matrix'/>
            <xsd:enumeration value='saturate'/>
            <xsd:enumeration value='hueRotate'/>
            <xsd:enumeration value='luminanceToAlpha'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='values'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feComponentTransfer'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref='feFuncR' minOccurs='0'/>
        <xsd:element ref='feFuncG' minOccurs='0'/>
        <xsd:element ref='feFuncB' minOccurs='0'/>
        <xsd:element ref='feFuncA' minOccurs='0'/>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feComposite'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='in2' use='required'/>
      <xsd:attribute name='operator' default='over'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='over'/>
            <xsd:enumeration value='in'/>
            <xsd:enumeration value='out'/>
            <xsd:enumeration value='atop'/>
            <xsd:enumeration value='xor'/>
            <xsd:enumeration value='arithmetic'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='k1'/>
      <xsd:attribute name='k2'/>
      <xsd:attribute name='k3'/>
      <xsd:attribute name='k4'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feConvolveMatrix'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='order' use='required'/>
      <xsd:attribute name='kernelMatrix' use='required'/>
      <xsd:attribute name='divisor'/>
      <xsd:attribute name='bias'/>
      <xsd:attribute name='targetX'/>
      <xsd:attribute name='targetY'/>
      <xsd:attribute name='edgeMode' default='duplicate'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='duplicate'/>
            <xsd:enumeration value='wrap'/>
            <xsd:enumeration value='none'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='kernelUnitLength'/>
      <xsd:attribute name='preserveAlpha'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='false'/>
            <xsd:enumeration value='true'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feDiffuseLighting'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice>
          <xsd:element ref='feDistantLight'/>
          <xsd:element ref='fePointLight'/>
          <xsd:element ref='feSpotLight'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateColor'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='lighting-color'/>
      <xsd:attribute name='surfaceScale'/>
      <xsd:attribute name='diffuseConstant'/>
      <xsd:attribute name='kernelUnitLength'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feDisplacementMap'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='in2' use='required'/>
      <xsd:attribute name='scale'/>
      <xsd:attribute name='xChannelSelector' default='A'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='R'/>
            <xsd:enumeration value='G'/>
            <xsd:enumeration value='B'/>
            <xsd:enumeration value='A'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='yChannelSelector' default='A'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='R'/>
            <xsd:enumeration value='G'/>
            <xsd:enumeration value='B'/>
            <xsd:enumeration value='A'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feDistantLight'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='azimuth'/>
      <xsd:attribute name='elevation'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feFlood'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateColor'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='flood-color'/>
      <xsd:attribute name='flood-opacity'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feFuncA'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='type' use='required'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='identity'/>
            <xsd:enumeration value='table'/>
            <xsd:enumeration value='discrete'/>
            <xsd:enumeration value='linear'/>
            <xsd:enumeration value='gamma'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='tableValues'/>
      <xsd:attribute name='slope'/>
      <xsd:attribute name='intercept'/>
      <xsd:attribute name='amplitude'/>
      <xsd:attribute name='exponent'/>
      <xsd:attribute name='offset'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feFuncB'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='type' use='required'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='identity'/>
            <xsd:enumeration value='table'/>
            <xsd:enumeration value='discrete'/>
            <xsd:enumeration value='linear'/>
            <xsd:enumeration value='gamma'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='tableValues'/>
      <xsd:attribute name='slope'/>
      <xsd:attribute name='intercept'/>
      <xsd:attribute name='amplitude'/>
      <xsd:attribute name='exponent'/>
      <xsd:attribute name='offset'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feFuncG'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='type' use='required'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='identity'/>
            <xsd:enumeration value='table'/>
            <xsd:enumeration value='discrete'/>
            <xsd:enumeration value='linear'/>
            <xsd:enumeration value='gamma'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='tableValues'/>
      <xsd:attribute name='slope'/>
      <xsd:attribute name='intercept'/>
      <xsd:attribute name='amplitude'/>
      <xsd:attribute name='exponent'/>
      <xsd:attribute name='offset'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feFuncR'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='type' use='required'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='identity'/>
            <xsd:enumeration value='table'/>
            <xsd:enumeration value='discrete'/>
            <xsd:enumeration value='linear'/>
            <xsd:enumeration value='gamma'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='tableValues'/>
      <xsd:attribute name='slope'/>
      <xsd:attribute name='intercept'/>
      <xsd:attribute name='amplitude'/>
      <xsd:attribute name='exponent'/>
      <xsd:attribute name='offset'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feGaussianBlur'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='stdDeviation'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feImage'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateTransform'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attributeGroup ref='SVG.FilterPrimitive.attrib'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feMerge'>
    <xsd:complexType>
      <xsd:sequence minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='feMergeNode'/>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.FilterPrimitive.attrib'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feMergeNode'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='in'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feMorphology'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='operator' default='erode'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='erode'/>
            <xsd:enumeration value='dilate'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='radius'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feOffset'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='dx'/>
      <xsd:attribute name='dy'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='fePointLight'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='z'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feSpecularLighting'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice>
          <xsd:element ref='feDistantLight'/>
          <xsd:element ref='fePointLight'/>
          <xsd:element ref='feSpotLight'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateColor'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
      <xsd:attribute name='lighting-color'/>
      <xsd:attribute name='surfaceScale'/>
      <xsd:attribute name='specularConstant'/>
      <xsd:attribute name='specularExponent'/>
      <xsd:attribute name='kernelUnitLength'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feSpotLight'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='z'/>
      <xsd:attribute name='pointsAtX'/>
      <xsd:attribute name='pointsAtY'/>
      <xsd:attribute name='pointsAtZ'/>
      <xsd:attribute name='specularExponent'/>
      <xsd:attribute name='limitingConeAngle'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feTile'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitiveWithIn.attrib'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='feTurbulence'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.FilterPrimitive.attrib'/>
      <xsd:attribute name='baseFrequency'/>
      <xsd:attribute name='numOctaves'/>
      <xsd:attribute name='seed'/>
      <xsd:attribute name='stitchTiles' default='noStitch'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='stitch'/>
            <xsd:enumeration value='noStitch'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='type' default='turbulence'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='fractalNoise'/>
            <xsd:enumeration value='turbulence'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='filter'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='feBlend'/>
          <xsd:element ref='feColorMatrix'/>
          <xsd:element ref='feComponentTransfer'/>
          <xsd:element ref='feComposite'/>
          <xsd:element ref='feConvolveMatrix'/>
          <xsd:element ref='feDiffuseLighting'/>
          <xsd:element ref='feDisplacementMap'/>
          <xsd:element ref='feFlood'/>
          <xsd:element ref='feGaussianBlur'/>
          <xsd:element ref='feImage'/>
          <xsd:element ref='feMerge'/>
          <xsd:element ref='feMorphology'/>
          <xsd:element ref='feOffset'/>
          <xsd:element ref='feSpecularLighting'/>
          <xsd:element ref='feTile'/>
          <xsd:element ref='feTurbulence'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width'/>
      <xsd:attribute name='height'/>
      <xsd:attribute name='filterRes'/>
      <xsd:attribute name='filterUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='primitiveUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='font'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:element ref='font-face'/>
        <xsd:element ref='missing-glyph'/>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='glyph'/>
          <xsd:element ref='hkern'/>
          <xsd:element ref='vkern'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='horiz-origin-x'/>
      <xsd:attribute name='horiz-origin-y'/>
      <xsd:attribute name='horiz-adv-x' use='required'/>
      <xsd:attribute name='vert-origin-x'/>
      <xsd:attribute name='vert-origin-y'/>
      <xsd:attribute name='vert-adv-y'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='font-face'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:element ref='font-face-src' minOccurs='0'/>
        <xsd:element ref='definition-src' minOccurs='0'/>
      </xsd:sequence>
      <xsd:attribute name='font-family'/>
      <xsd:attribute name='font-style'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='normal'/>
            <xsd:enumeration value='italic'/>
            <xsd:enumeration value='oblique'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='font-variant'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='normal'/>
            <xsd:enumeration value='small-caps'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='font-weight'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='normal'/>
            <xsd:enumeration value='bold'/>
            <xsd:enumeration value='100'/>
            <xsd:enumeration value='200'/>
            <xsd:enumeration value='300'/>
            <xsd:enumeration value='400'/>
            <xsd:enumeration value='500'/>
            <xsd:enumeration value='600'/>
            <xsd:enumeration value='700'/>
            <xsd:enumeration value='800'/>
            <xsd:enumeration value='900'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='font-stretch'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='normal'/>
            <xsd:enumeration value='ultra-condensed'/>
            <xsd:enumeration value='extra-condensed'/>
            <xsd:enumeration value='condensed'/>
            <xsd:enumeration value='semi-condensed'/>
            <xsd:enumeration value='semi-expanded'/>
            <xsd:enumeration value='expanded'/>
            <xsd:enumeration value='extra-expanded'/>
            <xsd:enumeration value='ultra-expanded'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='font-size'/>
      <xsd:attribute name='unicode-range'/>
      <xsd:attribute name='units-per-em'/>
      <xsd:attribute name='panose-1'/>
      <xsd:attribute name='stemv'/>
      <xsd:attribute name='stemh'/>
      <xsd:attribute name='slope'/>
      <xsd:attribute name='cap-height'/>
      <xsd:attribute name='x-height'/>
      <xsd:attribute name='accent-height'/>
      <xsd:attribute name='ascent'/>
      <xsd:attribute name='descent'/>
      <xsd:attribute name='widths'/>
      <xsd:attribute name='bbox'/>
      <xsd:attribute name='ideographic'/>
      <xsd:attribute name='alphabetic'/>
      <xsd:attribute name='mathematical'/>
      <xsd:attribute name='hanging'/>
      <xsd:attribute name='v-ideographic'/>
      <xsd:attribute name='v-alphabetic'/>
      <xsd:attribute name='v-mathematical'/>
      <xsd:attribute name='v-hanging'/>
      <xsd:attribute name='underline-position'/>
      <xsd:attribute name='underline-thickness'/>
      <xsd:attribute name='strikethrough-position'/>
      <xsd:attribute name='strikethrough-thickness'/>
      <xsd:attribute name='overline-position'/>
      <xsd:attribute name='overline-thickness'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='font-face-format'>
    <xsd:complexType>
      <xsd:attribute name='string'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='font-face-name'>
    <xsd:complexType>
      <xsd:attribute name='name'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='font-face-src'>
    <xsd:complexType>
      <xsd:choice maxOccurs='unbounded'>
        <xsd:element ref='font-face-uri'/>
        <xsd:element ref='font-face-name'/>
      </xsd:choice>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='font-face-uri'>
    <xsd:complexType>
      <xsd:sequence minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='font-face-format'/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='foreignObject'>
    <xsd:complexType mixed='true'>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width' use='required'/>
      <xsd:attribute name='height' use='required'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='g'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='glyph'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='unicode'/>
      <xsd:attribute name='glyph-name'/>
      <xsd:attribute name='d'/>
      <xsd:attribute name='orientation'/>
      <xsd:attribute name='arabic-form'/>
      <xsd:attribute name='lang'/>
      <xsd:attribute name='horiz-adv-x'/>
      <xsd:attribute name='vert-origin-x'/>
      <xsd:attribute name='vert-origin-y'/>
      <xsd:attribute name='vert-adv-y'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='glyphRef'>
    <xsd:complexType>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='dx'/>
      <xsd:attribute name='dy'/>
      <xsd:attribute name='glyphRef'/>
      <xsd:attribute name='format'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='hkern'>
    <xsd:complexType>
      <xsd:attribute name='u1'/>
      <xsd:attribute name='g1'/>
      <xsd:attribute name='u2'/>
      <xsd:attribute name='g2'/>
      <xsd:attribute name='k' use='required'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='image'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width' use='required'/>
      <xsd:attribute name='height' use='required'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='line'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='x1'/>
      <xsd:attribute name='y1'/>
      <xsd:attribute name='x2'/>
      <xsd:attribute name='y2'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='linearGradient'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='stop'/>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='x1'/>
      <xsd:attribute name='y1'/>
      <xsd:attribute name='x2'/>
      <xsd:attribute name='y2'/>
      <xsd:attribute name='gradientUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='gradientTransform'/>
      <xsd:attribute name='spreadMethod'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='pad'/>
            <xsd:enumeration value='reflect'/>
            <xsd:enumeration value='repeat'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='marker'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='refX'/>
      <xsd:attribute name='refY'/>
      <xsd:attribute name='markerUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='strokeWidth'/>
            <xsd:enumeration value='userSpaceOnUse'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='markerWidth'/>
      <xsd:attribute name='markerHeight'/>
      <xsd:attribute name='orient'/>
      <xsd:attribute name='viewBox'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='mask'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width'/>
      <xsd:attribute name='height'/>
      <xsd:attribute name='maskUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='maskContentUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='metadata'>
    <xsd:complexType mixed='true'>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='missing-glyph'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='d'/>
      <xsd:attribute name='horiz-adv-x'/>
      <xsd:attribute name='vert-origin-x'/>
      <xsd:attribute name='vert-origin-y'/>
      <xsd:attribute name='vert-adv-y'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='mpath'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='path'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='d' use='required'/>
      <xsd:attribute name='pathLength'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='pattern'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width'/>
      <xsd:attribute name='height'/>
      <xsd:attribute name='patternUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='patternContentUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='patternTransform'/>
      <xsd:attribute name='viewBox'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='polygon'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='points' use='required'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='polyline'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='points' use='required'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='radialGradient'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='stop'/>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='cx'/>
      <xsd:attribute name='cy'/>
      <xsd:attribute name='r'/>
      <xsd:attribute name='fx'/>
      <xsd:attribute name='fy'/>
      <xsd:attribute name='gradientUnits'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='userSpaceOnUse'/>
            <xsd:enumeration value='objectBoundingBox'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='gradientTransform'/>
      <xsd:attribute name='spreadMethod'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='pad'/>
            <xsd:enumeration value='reflect'/>
            <xsd:enumeration value='repeat'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='rect'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width' use='required'/>
      <xsd:attribute name='height' use='required'/>
      <xsd:attribute name='rx'/>
      <xsd:attribute name='ry'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='script'>
    <xsd:complexType mixed='true'>
      <xsd:attribute name='type' use='required'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='set'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Animation.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationAttribute.attrib'/>
      <xsd:attributeGroup ref='SVG.AnimationTiming.attrib'/>
      <xsd:attribute name='to'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='stop'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateColor'/>
      </xsd:choice>
      <xsd:attribute name='offset' use='required'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='style'>
    <xsd:complexType mixed='true'>
      <xsd:attribute name='type' use='required'/>
      <xsd:attribute name='media'/>
      <xsd:attribute name='title'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='svg'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width'/>
      <xsd:attribute name='height'/>
      <xsd:attribute name='viewBox'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
      <xsd:attribute name='zoomAndPan' default='magnify'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='disable'/>
            <xsd:enumeration value='magnify'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='version' fixed='1.1'/>
      <xsd:attribute name='baseProfile'/>
      <xsd:attribute name='contentScriptType' default='text/ecmascript'/>
      <xsd:attribute name='contentStyleType' default='text/css'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='switch'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='svg'/>
          <xsd:element ref='g'/>
          <xsd:element ref='use'/>
          <xsd:element ref='text'/>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
          <xsd:element ref='switch'/>
          <xsd:element ref='image'/>
          <xsd:element ref='path'/>
          <xsd:element ref='rect'/>
          <xsd:element ref='circle'/>
          <xsd:element ref='line'/>
          <xsd:element ref='ellipse'/>
          <xsd:element ref='polyline'/>
          <xsd:element ref='polygon'/>
          <xsd:element ref='a'/>
          <xsd:element ref='foreignObject'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='symbol'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='svg'/>
        <xsd:element ref='g'/>
        <xsd:element ref='defs'/>
        <xsd:element ref='symbol'/>
        <xsd:element ref='use'/>
        <xsd:element ref='switch'/>
        <xsd:element ref='image'/>
        <xsd:element ref='style'/>
        <xsd:element ref='path'/>
        <xsd:element ref='rect'/>
        <xsd:element ref='circle'/>
        <xsd:element ref='line'/>
        <xsd:element ref='ellipse'/>
        <xsd:element ref='polyline'/>
        <xsd:element ref='polygon'/>
        <xsd:element ref='text'/>
        <xsd:element ref='altGlyphDef'/>
        <xsd:element ref='marker'/>
        <xsd:element ref='color-profile'/>
        <xsd:element ref='linearGradient'/>
        <xsd:element ref='radialGradient'/>
        <xsd:element ref='pattern'/>
        <xsd:element ref='clipPath'/>
        <xsd:element ref='mask'/>
        <xsd:element ref='filter'/>
        <xsd:element ref='cursor'/>
        <xsd:element ref='a'/>
        <xsd:element ref='view'/>
        <xsd:element ref='script'/>
        <xsd:element ref='font'/>
        <xsd:element ref='font-face'/>
      </xsd:choice>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='viewBox'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='text'>
    <xsd:complexType mixed='true'>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateMotion'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='animateTransform'/>
        <xsd:element ref='tspan'/>
        <xsd:element ref='tref'/>
        <xsd:element ref='textPath'/>
        <xsd:element ref='altGlyph'/>
        <xsd:element ref='a'/>
      </xsd:choice>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='dx'/>
      <xsd:attribute name='dy'/>
      <xsd:attribute name='rotate'/>
      <xsd:attribute name='textLength'/>
      <xsd:attribute name='lengthAdjust'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='spacing'/>
            <xsd:enumeration value='spacingAndGlyphs'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='textPath'>
    <xsd:complexType mixed='true'>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='tspan'/>
        <xsd:element ref='tref'/>
        <xsd:element ref='altGlyph'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='a'/>
      </xsd:choice>
      <xsd:attribute name='startOffset'/>
      <xsd:attribute name='textLength'/>
      <xsd:attribute name='lengthAdjust'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='spacing'/>
            <xsd:enumeration value='spacingAndGlyphs'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='method'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='align'/>
            <xsd:enumeration value='stretch'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='spacing'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='auto'/>
            <xsd:enumeration value='exact'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='title'>
    <xsd:complexType mixed='true'>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='tref'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='dx'/>
      <xsd:attribute name='dy'/>
      <xsd:attribute name='rotate'/>
      <xsd:attribute name='textLength'/>
      <xsd:attribute name='lengthAdjust'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='spacing'/>
            <xsd:enumeration value='spacingAndGlyphs'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='tspan'>
    <xsd:complexType mixed='true'>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='tspan'/>
        <xsd:element ref='tref'/>
        <xsd:element ref='altGlyph'/>
        <xsd:element ref='animate'/>
        <xsd:element ref='set'/>
        <xsd:element ref='animateColor'/>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
        <xsd:element ref='a'/>
      </xsd:choice>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='dx'/>
      <xsd:attribute name='dy'/>
      <xsd:attribute name='rotate'/>
      <xsd:attribute name='textLength'/>
      <xsd:attribute name='lengthAdjust'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='spacing'/>
            <xsd:enumeration value='spacingAndGlyphs'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='use'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='desc'/>
          <xsd:element ref='title'/>
          <xsd:element ref='metadata'/>
        </xsd:choice>
        <xsd:choice minOccurs='0' maxOccurs='unbounded'>
          <xsd:element ref='animate'/>
          <xsd:element ref='set'/>
          <xsd:element ref='animateMotion'/>
          <xsd:element ref='animateColor'/>
          <xsd:element ref='animateTransform'/>
        </xsd:choice>
      </xsd:sequence>
      <xsd:attributeGroup ref='SVG.Presentation.attrib'/>
      <xsd:attribute name='x'/>
      <xsd:attribute name='y'/>
      <xsd:attribute name='width'/>
      <xsd:attribute name='height'/>
      <xsd:attribute name='transform'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='view'>
    <xsd:complexType>
      <xsd:choice minOccurs='0' maxOccurs='unbounded'>
        <xsd:element ref='desc'/>
        <xsd:element ref='title'/>
        <xsd:element ref='metadata'/>
      </xsd:choice>
      <xsd:attribute name='viewBox'/>
      <xsd:attribute name='preserveAspectRatio' default='xMidYMid meet'/>
      <xsd:attribute name='zoomAndPan' default='magnify'>
        <xsd:simpleType>
          <xsd:restriction base='xsd:string'>
            <xsd:enumeration value='disable'/>
            <xsd:enumeration value='magnify'/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
      <xsd:attribute name='viewTarget'/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name='vkern'>
    <xsd:complexType>
      <xsd:attribute name='u1'/>
      <xsd:attribute name='g1'/>
      <xsd:attribute name='u2'/>
      <xsd:attribute name='g2'/>
      <xsd:attribute name='k' use='required'/>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>
