<?xml version="1.0" encoding="iso-8859-1"?>

<!-- file: xhtml-struct-1.rng

     This is XHTML, a reformulation of HTML as a modular XML application.
     Copyright 1998-2010 W3C (MIT, ERCIM, Keio), All Rights Reserved.
     Revision: $Id: xhtml-struct-1.rng,v 1.1 2010/12/12 23:24:11 smccarro Exp $

     This RelaxNG module is identified by URI:
        
        http://www.w3.org/MarkUp/RELAXNG/xhtml-struct-1.rng
     .................................................................... -->
<!-- Structure Module -->
<grammar xmlns="http://relaxng.org/ns/structure/1.0">

<start>
  <ref name="xhtml.html"/>
</start>

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

<define name="xhtml.title.attlist">
  <ref name="xhtml.I18n.attrib"/>
</define>

<define name="xhtml.head">
  <element name="head">
    <ref name="xhtml.head.attlist"/>
    <ref name="xhtml.head.content"/>
  </element>
</define>

<define name="xhtml.head.attlist">
  <ref name="xhtml.I18n.attrib"/>
  <ref name="xhtml.profile.attlist"/>
</define>

<define name="xhtml.head.content">
  <ref name="xhtml.title"/>
</define>

<define name="xhtml.profile.attlist">
  <optional>
    <attribute name="profile">
      <ref name="xhtml.URIs.datatype"/>
    </attribute>     
  </optional>
</define>

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

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

<define name="xhtml.html">
  <element name="html">
    <ref name="xhtml.html.attlist"/>
    <ref name="xhtml.head"/>
    <ref name="xhtml.body"/>
  </element>
</define>

<define name="xhtml.html.attlist">
  <ref name="xhtml.XHTML.version.attrib"/>
  <ref name="xhtml.I18n.attrib"/>
</define>

<define name="xhtml.XHTML.version.attrib">
  <optional>
    <attribute name="version">
      <text/>
    </attribute>
  </optional>
</define>

</grammar>

