115 lines
3.3 KiB
XML
115 lines
3.3 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="time.elem">
|
|
<a:documentation> RELAX NG Schema for HTML 5: Static Data Markup #</a:documentation>
|
|
<!-- ##################################################################### -->
|
|
<a:documentation>Time: <time></a:documentation>
|
|
<element name="time">
|
|
<interleave>
|
|
<ref name="time.inner"/>
|
|
<ref name="time.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="time.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<optional>
|
|
<ref name="time.attrs.datetime"/>
|
|
</optional>
|
|
<optional>
|
|
<ref name="time.attrs.pubdate"/>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="time.attrs.datetime">
|
|
<attribute name="datetime">
|
|
<ref name="common.data.date-or-time"/>
|
|
<!-- REVISIT check format -->
|
|
</attribute>
|
|
</define>
|
|
<define name="time.attrs.pubdate">
|
|
<attribute name="pubdate">
|
|
<choice>
|
|
<value type="string">pubdate</value>
|
|
<value type="string"/>
|
|
</choice>
|
|
</attribute>
|
|
</define>
|
|
<define name="time.inner">
|
|
<ref name="common.inner.phrasing"/>
|
|
</define>
|
|
<!-- Cannot enforce textContent format here -->
|
|
<define name="common.elem.phrasing" combine="choice">
|
|
<ref name="time.elem"/>
|
|
</define>
|
|
<define name="meter.elem">
|
|
<a:documentation>Scalar Gauge: <meter></a:documentation>
|
|
<element name="meter">
|
|
<interleave>
|
|
<ref name="meter.inner"/>
|
|
<ref name="meter.attrs"/>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
<define name="meter.attrs">
|
|
<interleave>
|
|
<ref name="common.attrs"/>
|
|
<ref name="meter.attrs.value"/>
|
|
<optional>
|
|
<ref name="meter.attrs.min"/>
|
|
</optional>
|
|
<optional>
|
|
<ref name="meter.attrs.low"/>
|
|
</optional>
|
|
<optional>
|
|
<ref name="meter.attrs.high"/>
|
|
</optional>
|
|
<optional>
|
|
<ref name="meter.attrs.max"/>
|
|
</optional>
|
|
<optional>
|
|
<ref name="meter.attrs.optimum"/>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
<define name="meter.attrs.value">
|
|
<attribute name="value">
|
|
<ref name="common.data.float"/>
|
|
</attribute>
|
|
</define>
|
|
<define name="meter.attrs.min">
|
|
<attribute name="min">
|
|
<ref name="common.data.float"/>
|
|
</attribute>
|
|
</define>
|
|
<define name="meter.attrs.low">
|
|
<attribute name="low">
|
|
<ref name="common.data.float"/>
|
|
</attribute>
|
|
</define>
|
|
<define name="meter.attrs.high">
|
|
<attribute name="high">
|
|
<ref name="common.data.float"/>
|
|
</attribute>
|
|
</define>
|
|
<define name="meter.attrs.max">
|
|
<attribute name="max">
|
|
<ref name="common.data.float"/>
|
|
</attribute>
|
|
</define>
|
|
<define name="meter.attrs.optimum">
|
|
<attribute name="optimum">
|
|
<ref name="common.data.float"/>
|
|
</attribute>
|
|
</define>
|
|
<define name="meter.inner">
|
|
<ref name="common.inner.phrasing"/>
|
|
</define>
|
|
<!-- Cannot enforce textContent format here -->
|
|
<define name="common.elem.phrasing" combine="choice">
|
|
<ref name="meter.elem"/>
|
|
</define>
|
|
</grammar>
|