bind9/xml/statistics-schema.xml
2006-12-21 06:03:37 +00:00

174 lines
4.5 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<!-- default namespace = "http://isc.org/isc/1.0/statistics/1.0/" -->
<start>
<ref name="isc"/>
</start>
<define name="isc">
<element name="isc">
<attribute name="version">
<data type="string"/>
</attribute>
<ref name="statistics"/>
</element>
</define>
<define name="statistics">
<element name="statistics">
<attribute name="version">
<data type="string"/>
</attribute>
<oneOrMore>
<ref name="node"/>
</oneOrMore>
</element>
</define>
<define name="node">
<element name="node">
<interleave>
<attribute name="name">
<data type="string"/>
</attribute>
<attribute name="id">
<data type="integer"/>
</attribute>
<zeroOrMore>
<attribute name="description">
<data type="string"/>
</attribute>
</zeroOrMore>
</interleave>
<oneOrMore>
<choice>
<ref name="node"/>
<ref name="statistic"/>
</choice>
</oneOrMore>
</element>
</define>
<define name="statistic">
<zeroOrMore>
<choice>
<ref name="stat-ui32"/>
<ref name="stat-i32"/>
<ref name="stat-ui64"/>
<ref name="stat-i64"/>
<ref name="stat-string"/>
</choice>
</zeroOrMore>
</define>
<define name="stat-ui32">
<element name="statistic">
<interleave>
<attribute name="name">
<data type="string"/>
</attribute>
<attribute name="id">
<data type="int"/>
</attribute>
<zeroOrMore>
<attribute name="description">
<data type="string"/>
</attribute>
</zeroOrMore>
<attribute name="type">
<data type="string">
<param name="pattern">uint32</param>
</data>
</attribute>
</interleave>
<data type="unsignedInt"/>
</element>
</define>
<define name="stat-i32">
<element name="statistic">
<interleave>
<attribute name="name">
<data type="string"/>
</attribute>
<attribute name="id">
<data type="int"/>
</attribute>
<zeroOrMore>
<attribute name="description">
<data type="string"/>
</attribute>
</zeroOrMore>
<attribute name="type">
<data type="string">
<param name="pattern">int32</param>
</data>
</attribute>
</interleave>
<data type="int"/>
</element>
</define>
<define name="stat-ui64">
<element name="statistic">
<interleave>
<attribute name="name">
<data type="string"/>
</attribute>
<attribute name="id">
<data type="int"/>
</attribute>
<zeroOrMore>
<attribute name="description">
<data type="string"/>
</attribute>
</zeroOrMore>
<attribute name="type">
<data type="string">
<param name="pattern">uint64</param>
</data>
</attribute>
</interleave>
<data type="unsignedLong"/>
</element>
</define>
<define name="stat-i64">
<element name="statistic">
<interleave>
<attribute name="name">
<data type="string"/>
</attribute>
<attribute name="id">
<data type="int"/>
</attribute>
<zeroOrMore>
<attribute name="description">
<data type="string"/>
</attribute>
</zeroOrMore>
<attribute name="type">
<data type="string">
<param name="pattern">int64</param>
</data>
</attribute>
</interleave>
<data type="long"/>
</element>
</define>
<define name="stat-string">
<element name="statistic">
<interleave>
<attribute name="name">
<data type="string"/>
</attribute>
<attribute name="id">
<data type="int"/>
</attribute>
<zeroOrMore>
<attribute name="description">
<data type="string"/>
</attribute>
</zeroOrMore>
<attribute name="type">
<data type="string">
<param name="pattern">string</param>
</data>
</attribute>
</interleave>
<data type="string"/>
</element>
</define>
</grammar>