<?xml version="1.0" encoding="UTF-8"?>
<grammar ns="http://www.w3.org/2002/06/xhtml2"
         xmlns="http://relaxng.org/ns/structure/1.0"
         xmlns:x="http://www.w3.org/1999/xhtml">

<x:p>Checks exclusions applying to the l element.
     This schema is intended to be used in addition to xhtml2.rng.</x:p>

  <start>
    <ref name="normalElement"/>
  </start>

  <define name="normalElement">
    <element>
      <anyName>
        <except>
          <name>l</name>
        </except>
      </anyName>
      <ref name="normalContent"/>
    </element>
  </define>

  <define name="normalContent">
    <zeroOrMore>
      <choice>
        <ref name="normalElement"/>
        <ref name="lElement"/>
        <ref name="anyAttribute"/>
        <text/>
      </choice>
    </zeroOrMore>
  </define>

  <define name="lElement">
    <element name="l">
      <ref name="lContent"/>
    </element>
  </define>

  <define name="lContent">
    <zeroOrMore>
      <choice>
        <element>
          <anyName>
            <except>
              <name>l</name>
            </except>
          </anyName>
          <ref name="lContent"/>
        </element>
        <ref name="anyAttribute"/>
        <text/>
      </choice>
    </zeroOrMore>
  </define>

  <define name="anyAttribute">
    <attribute>
      <anyName/>
    </attribute>
  </define>

</grammar>
