177 lines
5.2 KiB
XML
177 lines
5.2 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0">
|
|
<!-- ##################################################################### -->
|
|
<define name="section.elem">
|
|
<a:documentation> RELAX NG Schema for HTML 5: Block Markup Added in HTML5 #</a:documentation>
|
|
<!-- ##################################################################### -->
|
|
<a:documentation>Section: <section></a:documentation>
|
|
<element name="section">
|
|
<interleave>
|
|
<ref name="section.inner"/>
|
|
<ref name="section.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="section.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<choice>
|
|
<ref name="common.attrs.aria"/>
|
|
<ref name="common.attrs.aria.implicit.region"/>
|
|
</choice>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="section.inner">
|
|
<zeroOrMore>
|
|
<ref name="style.elem.scoped"/>
|
|
</zeroOrMore>
|
|
<ref name="common.inner.flow"/>
|
|
</define>
|
|
<define name="common.elem.flow" combine="choice">
|
|
<ref name="section.elem"/>
|
|
</define>
|
|
<define name="nav.elem">
|
|
<a:documentation>Navigational Links: <nav></a:documentation>
|
|
<element name="nav">
|
|
<interleave>
|
|
<ref name="nav.inner"/>
|
|
<ref name="nav.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="nav.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<choice>
|
|
<ref name="common.attrs.aria.implicit.region"/>
|
|
<ref name="common.attrs.aria.landmark.navigation"/>
|
|
</choice>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="nav.inner">
|
|
<ref name="common.inner.flow"/>
|
|
</define>
|
|
<define name="common.elem.flow" combine="choice">
|
|
<ref name="nav.elem"/>
|
|
</define>
|
|
<define name="article.elem">
|
|
<a:documentation>Article: <article></a:documentation>
|
|
<element name="article">
|
|
<interleave>
|
|
<ref name="article.inner"/>
|
|
<ref name="article.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="article.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<choice>
|
|
<ref name="common.attrs.aria.implicit.region"/>
|
|
<ref name="common.attrs.aria.landmark.article"/>
|
|
<ref name="common.attrs.aria.landmark.main"/>
|
|
<ref name="common.attrs.aria.landmark.document"/>
|
|
<ref name="common.attrs.aria.landmark.application"/>
|
|
</choice>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="article.inner">
|
|
<zeroOrMore>
|
|
<ref name="style.elem"/>
|
|
</zeroOrMore>
|
|
<ref name="common.inner.flow"/>
|
|
</define>
|
|
<define name="common.elem.flow" combine="choice">
|
|
<ref name="article.elem"/>
|
|
</define>
|
|
<define name="aside.elem">
|
|
<a:documentation>Tangential Aside: <aside></a:documentation>
|
|
<element name="aside">
|
|
<interleave>
|
|
<ref name="aside.inner"/>
|
|
<ref name="aside.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="aside.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<choice>
|
|
<ref name="common.attrs.aria.implicit.region"/>
|
|
<ref name="common.attrs.aria.landmark.complementary"/>
|
|
<ref name="common.attrs.aria.landmark.search"/>
|
|
<ref name="common.attrs.aria.landmark.note"/>
|
|
</choice>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="aside.inner">
|
|
<zeroOrMore>
|
|
<ref name="style.elem"/>
|
|
</zeroOrMore>
|
|
<ref name="common.inner.flow"/>
|
|
</define>
|
|
<define name="common.elem.flow" combine="choice">
|
|
<ref name="aside.elem"/>
|
|
</define>
|
|
<define name="header.elem">
|
|
<a:documentation>Header: <header></a:documentation>
|
|
<element name="header">
|
|
<interleave>
|
|
<ref name="header.inner"/>
|
|
<ref name="header.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="header.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<choice>
|
|
<ref name="common.attrs.aria.implicit.region"/>
|
|
<ref name="common.attrs.aria.landmark.banner"/>
|
|
</choice>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="header.inner">
|
|
<ref name="common.inner.flow"/>
|
|
</define>
|
|
<define name="common.elem.flow" combine="choice">
|
|
<ref name="header.elem"/>
|
|
</define>
|
|
<define name="footer.elem">
|
|
<a:documentation>Footer: <footer></a:documentation>
|
|
<element name="footer">
|
|
<interleave>
|
|
<ref name="footer.inner"/>
|
|
<ref name="footer.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="footer.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<choice>
|
|
<ref name="common.attrs.aria.implicit.region"/>
|
|
<ref name="common.attrs.aria.landmark.contentinfo"/>
|
|
</choice>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="footer.inner">
|
|
<ref name="common.inner.flow"/>
|
|
</define>
|
|
<define name="common.elem.flow" combine="choice">
|
|
<ref name="footer.elem"/>
|
|
</define>
|
|
</grammar>
|