<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Script Module -->
<grammar xmlns="http://relaxng.org/ns/structure/1.0">

<define name="script">
  <element name="script">
    <ref name="script.attlist"/>
    <text/>
  </element>
</define>

<define name="script.attlist">
  <optional>
    <attribute name="charset">
      <ref name="Charset.datatype"/>
    </attribute>
  </optional>
  <attribute name="type">
    <ref name="ContentType.datatype"/>
  </attribute>
  <optional>
    <attribute name="src">
      <ref name="URI.datatype"/>
    </attribute>
  </optional>
  <optional>
    <attribute name="defer">
      <value>defer</value>
    </attribute>
  </optional>
  <optional>
    <attribute name="xml:space">
      <value>preserve</value>
    </attribute>
  </optional>
</define>

<define name="noscript">
  <element name="noscript">
    <ref name="noscript.attlist"/>
    <ref name="Block.model"/>
  </element>
</define>

<define name="noscript.attlist">
  <ref name="Common.attrib"/>
</define>

<define name="head.content" combine="interleave">
  <zeroOrMore>
    <ref name="script"/>
  </zeroOrMore>
</define>

<define name="Script.class">
  <choice>
    <ref name="noscript"/>
    <ref name="script"/>
  </choice>
</define>

<define name="Inline.class" combine="choice">
  <ref name="Script.class"/>
</define>

<define name="Block.class" combine="choice">
  <ref name="Script.class"/>
</define>

</grammar>