dhodovsk / source-git / pacemaker

Forked from source-git/pacemaker 3 years ago
Clone
Blob Blame History Raw
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0" 
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
  <start>
    <optional>
      <ref name="element-acls"/>
    </optional>
  </start>

  <define name="element-acls">
    <element name="acls">
      <zeroOrMore>
        <choice>
          <element name="acl_user">
            <attribute name="id"><data type="ID"/></attribute>
            <choice>
              <zeroOrMore>
                <element name="role_ref">
                  <attribute name="id"><data type="IDREF"/></attribute>
                </element>
              </zeroOrMore>
              <zeroOrMore>
                <ref name="element-acl"/>
              </zeroOrMore>
            </choice>
          </element>
          <element name="acl_role">
            <attribute name="id"><data type="ID"/></attribute>
            <zeroOrMore>
              <ref name="element-acl"/>
            </zeroOrMore>
          </element>
        </choice>
      </zeroOrMore>
    </element>
  </define>

  <define name="element-acl">
    <choice>
      <element name="read">
        <ref name="attribute-acl"/>
      </element>
      <element name="write">
        <ref name="attribute-acl"/>
      </element>
      <element name="deny">
        <ref name="attribute-acl"/>
      </element>
    </choice>
  </define>

  <define name="attribute-acl">
    <attribute name="id"><data type="ID"/></attribute>
      <choice>
        <attribute name="tag"><text/></attribute>
        <attribute name="ref"><data type="IDREF"/></attribute>
        <group>
          <attribute name="tag"><text/></attribute>
          <attribute name="ref"><data type="IDREF"/></attribute>
        </group>
        <attribute name="xpath"><text/></attribute>
      </choice>
      <optional>
        <attribute name="attribute"><text/></attribute>
      </optional>
  </define>

</grammar>