
<!-- ==============================================================
      SVG12-RNG | Document Events attributes
     ============================================================== -->

<grammar ns='http://www.w3.org/2000/svg'
         xml:lang='en'
         xmlns='http://relaxng.org/ns/structure/1.0'
         xmlns:a='http://relaxng.org/ns/compatibility/annotations/1.0'
         datatypeLibrary='http://www.w3.org/2001/XMLSchema-datatypes'
         >

  <define name='SVG.onunload.attrib'>
    <optional>
      <attribute name='onunload'>
        <ref name='Script.datatype'/>
      </attribute>
    </optional>
  </define>

  <define name='SVG.onabort.attrib'>
    <optional>
      <attribute name='onabort'>
        <ref name='Script.datatype'/>
      </attribute>
    </optional>
  </define>

  <define name='SVG.onerror.attrib'>
    <optional>
      <attribute name='onerror'>
        <ref name='Script.datatype'/>
      </attribute>
    </optional>
  </define>

  <define name='SVG.onresize.attrib'>
    <optional>
      <attribute name='onresize'>
        <ref name='Script.datatype'/>
      </attribute>
    </optional>
  </define>

  <define name='SVG.onscroll.attrib'>
    <optional>
      <attribute name='onscroll'>
        <ref name='Script.datatype'/>
      </attribute>
    </optional>
  </define>

  <define name='SVG.onzoom.attrib'>
    <optional>
      <attribute name='onzoom'>
        <ref name='Script.datatype'/>
      </attribute>
    </optional>
  </define>

  <define name='SVG.DocumentEvents.attrib' combine='interleave'>
    <ref name='SVG.onunload.attrib'/>
    <ref name='SVG.onabort.attrib'/>
    <ref name='SVG.onerror.attrib'/>
    <ref name='SVG.onresize.attrib'/>
    <ref name='SVG.onscroll.attrib'/>
    <ref name='SVG.onzoom.attrib'/>
  </define>

</grammar>
