<?xml version="1.0" encoding="UTF-8"?>
<!-- datatypes w = "http://whattf.org/datatype-draft" -->
<grammar xml:lang="en" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
  <a:documentation>
    SVG 1.1 Core Attribute Module
    file: svg-core-attrib.rng

    This is SVG, a language for describing two-dimensional graphics in XML.
    Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.

    Modifications Copyright 2007-2008 Mozilla Foundation

    $Id$
  </a:documentation>
  <a:documentation>
    Core Attribute

        id, xml:base, xml:lang, xml:space

    This module defines the core set of attributes that can be present on
    any element.
  </a:documentation>
  <!--    SVG.id.attrib = attribute id { w:xml-name }? -->
  <define name="SVG.id.attrib">
    <optional>
      <attribute name="id">
        <data type="ID"/>
      </attribute>
    </optional>
  </define>
  <define name="SVG.base.attrib">
    <optional>
      <attribute name="xml:base">
        <ref name="URI.datatype"/>
      </attribute>
    </optional>
  </define>
  <define name="SVG.lang.attrib">
    <optional>
      <choice>
        <attribute name="xml:lang">
          <ref name="LanguageCode.datatype"/>
        </attribute>
        <attribute name="lang">
          <ref name="LanguageCode.datatype"/>
        </attribute>
      </choice>
    </optional>
  </define>
  <define name="SVG.space.attrib">
    <optional>
      <attribute name="xml:space">
        <choice>
          <value type="string" datatypeLibrary="">default</value>
          <value type="string" datatypeLibrary="">preserve</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SVG.tabindex.attrib">
    <optional>
      <attribute name="tabindex">
        <ref name="Integer.datatype"/>
      </attribute>
    </optional>
  </define>
  <define name="SVG.focusable.attrib">
    <optional>
      <attribute name="focusable">
        <choice>
          <value type="string" datatypeLibrary="">true</value>
          <value type="string" datatypeLibrary="">false</value>
        </choice>
      </attribute>
    </optional>
  </define>
  <define name="SVG.Core.extra.attrib">
    <empty/>
  </define>
  <define name="SVG.Core.attrib">
    <ref name="SVG.id.attrib"/>
    <ref name="SVG.base.attrib"/>
    <ref name="SVG.lang.attrib"/>
    <ref name="SVG.space.attrib"/>
    <ref name="SVG.tabindex.attrib"/>
    <ref name="SVG.focusable.attrib"/>
    <ref name="SVG.Core.extra.attrib"/>
  </define>
</grammar>
