Listing of graphmeta.rng
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns:g="http://emegir.info/gdl"
xmlns="http://relaxng.org/ns/structure/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" >
<define name="g.meta">
<optional>
<ref name="break"/>
</optional>
<optional>
<ref name="status.flags"/>
</optional>
<optional>
<ref name="status.spans"/>
</optional>
<optional>
<ref name="paleography.attr"/>
</optional>
<optional>
<ref name="linguistic.attr"/>
</optional>
<optional>
<ref name="proximity.attr"/>
</optional>
<optional>
<ref name="opener"/>
</optional>
<optional>
<ref name="closer"/>
</optional>
<optional>
<ref name="hsqb_o"/>
</optional>
<optional>
<ref name="hsqb_c"/>
</optional>
<optional>
<ref name="emhyph"/>
</optional>
<optional>
<ref name="varnum"/>
</optional>
<optional>
<ref name="utf8"/>
</optional>
<optional>
<ref name="delim"/>
</optional>
</define>
<define name="break">
<attribute name="g:break">
<choice>
<value>damaged</value>
<value>missing</value>
</choice>
</attribute>
</define>
<define name="opener">
<attribute name="g:o"/>
</define>
<define name="closer">
<attribute name="g:c"/>
</define>
<define name="hsqb_o">
<attribute name="g:ho">
<value>1</value>
</attribute>
</define>
<define name="hsqb_c">
<attribute name="g:hc">
<value>1</value>
</attribute>
</define>
<define name="emhyph">
<attribute name="g:em">
<value>1</value>
</attribute>
</define>
<define name="utf8">
<attribute name="g:utf8"/>
</define>
<define name="delim">
<attribute name="g:delim"/>
</define>
<define name="varnum">
<optional>
<attribute name="g:varo"/>
</optional>
<optional>
<attribute name="g:vari"/>
</optional>
<optional>
<attribute name="g:varc"/>
</optional>
</define>
<define name="status.flags">
<optional>
<attribute name="g:collated">
<data type="boolean"/>
</attribute>
</optional>
<optional>
<attribute name="g:queried">
<data type="boolean"/>
</attribute>
</optional>
<optional>
<attribute name="g:remarked">
<data type="boolean"/>
</attribute>
</optional>
</define>
<define name="gloss">
<choice>
<ref name="det"/>
<ref name="glo"/>
</choice>
</define>
<define name="pos">
<attribute name="g:pos">
<choice>
<value>pre</value>
<value>post</value>
<value>free</value>
</choice>
</attribute>
</define>
<define name="det">
<element name="g:d">
<ref name="pos"/>
<ref name="dtyp"/>
<optional>
<ref name="delim"/>
</optional>
<optional>
<ref name="emhyph"/>
</optional>
<choice>
<ref name="dingir"/>
<ref name="mister"/>
<zeroOrMore>
<ref name="word.content"/>
</zeroOrMore>
</choice>
</element>
</define>
<define name="dtyp">
<attribute name="g:role">
<choice>
<value>phonetic</value>
<value>semantic</value>
</choice>
</attribute>
</define>
<define name="glo">
<element name="g:gloss">
<attribute name="g:type">
<choice>
<value>lang</value>
<value>text</value>
</choice>
</attribute>
<optional>
<ref name="delim"/>
</optional>
<ref name="pos"/>
<ref name="words"/>
</element>
</define>
<define name="status.spans">
<attribute name="g:status">
<choice>
<value>ok</value>
<value>erased</value>
<value>excised</value>
<value>implied</value>
<value>maybe</value>
<value>supplied</value>
</choice>
</attribute>
</define>
<define name="paleography.attr">
<attribute name="g:script">
<data type="NCName"/>
</attribute>
</define>
<define name="linguistic.attr">
<optional>
<attribute name="xml:lang">
<data type="language"/>
</attribute>
</optional>
<!---->
<choice>
<attribute name="g:role">
<choice>
<value>sign</value>
<value>ideo</value>
<value>num</value>
<value>syll</value>
</choice>
</attribute>
<group>
<attribute name="g:role">
<value>logo</value>
</attribute>
<attribute name="g:logolang">
<data type="language"/>
</attribute>
</group>
</choice>
</define>
<define name="proximity.attr">
<attribute name="g:prox">
<data type="integer"/>
</attribute>
</define>
<define name="nongrapheme">
<element name="g:x">
<choice>
<attribute name="g:type">
<choice>
<value>newline</value>
<value>user</value>
</choice>
</attribute>
<group>
<attribute name="g:type">
<value>ellipsis</value>
</attribute>
<ref name="status.spans"/>
<optional>
<ref name="opener"/>
</optional>
<optional>
<ref name="closer"/>
</optional>
<optional>
<ref name="break"/>
</optional>
</group>
</choice>
<optional>
<ref name="delim"/>
</optional>
<optional>
<text/>
</optional>
<optional>
<ref name="varnum"/>
</optional>
</element>
</define>
</grammar>