gnu-social/vendor/zetacomponents/document/tests/files/ezxml/ezxml_schema.rng
2020-08-07 23:42:38 +01:00

321 lines
7.6 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<grammar ns="http://ez.no/namespaces/ezpublish3" xmlns:xhtml="http://ez.no/namespaces/ezpublish3/xhtml/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="">
<start>
<element name="section">
<zeroOrMore>
<ref name="sectionContent"/>
</zeroOrMore>
</element>
</start>
<define name="sectionContent">
<choice>
<element name="section">
<oneOrMore>
<ref name="sectionContent"/>
</oneOrMore>
</element>
<element name="paragraph">
<ref name="paragraphContent"/>
</element>
<element name="header">
<ref name="headerContent"/>
</element>
</choice>
</define>
<define name="headerContent">
<optional>
<attribute name="anchor_name">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="level">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<text/>
</define>
<define name="paragraphContent">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<oneOrMore>
<choice>
<ref name="inlineContent"/>
<element name="line">
<ref name="inlineContent"/>
</element>
<element name="embed">
<ref name="embedAttributes"/>
</element>
<element name="ol">
<ref name="listContent"/>
</element>
<element name="ul">
<ref name="listContent"/>
</element>
<element name="custom">
<attribute name="name">
<data type="string"/>
</attribute>
</element>
<element name="literal">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<text/>
</element>
<element name="table">
<ref name="tableContent"/>
</element>
</choice>
</oneOrMore>
</define>
<define name="listContent">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<oneOrMore>
<element name="li">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<oneOrMore>
<element name="paragraph">
<ref name="paragraphContent"/>
</element>
</oneOrMore>
</element>
</oneOrMore>
</define>
<define name="tableContent">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="width">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="border">
<data type="string"/>
</attribute>
</optional>
<oneOrMore>
<element name="tr">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<choice>
<oneOrMore>
<element name="td">
<ref name="tableCellContent"/>
</element>
</oneOrMore>
<oneOrMore>
<element name="th">
<ref name="tableCellContent"/>
</element>
</oneOrMore>
</choice>
</element>
</oneOrMore>
</define>
<define name="tableCellContent">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="xhtml:width">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="xhtml:colspan">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="xhtml:rowspan">
<data type="string"/>
</attribute>
</optional>
<zeroOrMore>
<choice>
<ref name="sectionContent"/>
<element name="table">
<ref name="tableContent"/>
</element>
</choice>
</zeroOrMore>
</define>
<define name="inlineContent">
<zeroOrMore>
<choice>
<text/>
<element name="embed">
<ref name="embedAttributes"/>
</element>
<element name="embed-inline">
<ref name="embedAttributes"/>
</element>
<element name="strong">
<ref name="inlineElementContent"/>
</element>
<element name="emphasize">
<ref name="inlineElementContent"/>
</element>
<element name="link">
<ref name="linkContent"/>
</element>
<element name="anchor">
<optional>
<attribute name="name">
<data type="string"/>
</attribute>
</optional>
<ref name="inlineContent"/>
</element>
</choice>
</zeroOrMore>
</define>
<define name="inlineElementContent">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<ref name="inlineContent"/>
</define>
<define name="embedAttributes">
<optional>
<attribute name="id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="object_id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="node_id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="show_path">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="size">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="align">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="view">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="xhtml:id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="target">
<data type="string"/>
</attribute>
</optional>
</define>
<define name="linkContent">
<optional>
<attribute name="class">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="xhtml:id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="target">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="xhtml:title">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="object_id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="node_id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="show_path">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="anchor_name">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="url_id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="id">
<data type="string"/>
</attribute>
</optional>
<optional>
<attribute name="view">
<data type="string"/>
</attribute>
</optional>
<ref name="inlineContent"/>
</define>
</grammar>