<schema xmlns='http://www.w3.org/2000/10/XMLSchema' targetNamespace='http://www.w3.org/namespace/' xmlns:t='http://www.w3.org/namespace/'> <element name='application'> <complexType> <sequence> <element ref='t:specification' minOccurs='0' maxOccurs='unbounded'/> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:content' minOccurs='0' maxOccurs='1'/> <element ref='t:typedef' minOccurs='0' maxOccurs='unbounded'/> <element ref='t:group' minOccurs='0' maxOccurs='unbounded'/> <element ref='t:entity' minOccurs='0' maxOccurs='unbounded'/> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='version' type='string' use='optional'/> <attribute name='revision' type='string' use='optional'/> <attribute name='currency' type='string' use='optional'/> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='typedef'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:in-implementation' minOccurs='0' maxOccurs='unbounded'/> <element ref='t:help' minOccurs='0' maxOccurs='unbounded'/> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='type' use='optional'> <simpleType> <restriction base='string'> <enumeration value='string'/> <enumeration value='integer'/> <enumeration value='real'/> <enumeration value='money'/> <enumeration value='date'/> <enumeration value='time'/> <enumeration value='timestamp'/> <enumeration value='uploadable'/> </restriction> </simpleType> </attribute> <attribute name='size' type='string' use='optional'/> <attribute name='pattern' type='string' use='optional'/> <attribute name='minimum' type='string' use='optional'/> <attribute name='maximum' type='string' use='optional'/> </complexType> </element> <element name='in-implementation'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='target' type='string' use='required'/> <attribute name='value' type='string' use='required'/> <attribute name='kind' type='string' use='optional'/> </complexType> </element> <element name='group'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='parent' type='string' use='optional'/> </complexType> </element> <element name='entity'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:prompt' minOccurs='0' maxOccurs='unbounded'/> <element ref='t:content' minOccurs='0' maxOccurs='1'/> <element ref='t:key' minOccurs='0' maxOccurs='1'/> <element ref='t:property' minOccurs='0' maxOccurs='unbounded'/> <element ref='t:permission' minOccurs='0' maxOccurs='unbounded'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:form'/> <element ref='t:page'/> <element ref='t:list'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='natural-key' type='string' use='optional'/> <attribute name='table' type='string' use='optional'/> <attribute name='foreign' use='optional'> <simpleType> <restriction base='string'> <enumeration value='true'/> <enumeration value='false'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='documentation'> <complexType mixed='true'> <sequence minOccurs='0' maxOccurs='unbounded'> <element ref='t:reference'/> </sequence> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='key'> <complexType> <sequence> <element ref='t:property' minOccurs='0' maxOccurs='unbounded'/> </sequence> </complexType> </element> <element name='property'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:generator' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:permission'/> <element ref='t:option'/> <element ref='t:prompt'/> <element ref='t:help'/> <element ref='t:ifmissing'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='type' use='required'> <simpleType> <restriction base='string'> <enumeration value='entity'/> <enumeration value='link'/> <enumeration value='list'/> <enumeration value='defined'/> <enumeration value='string'/> <enumeration value='integer'/> <enumeration value='real'/> <enumeration value='money'/> <enumeration value='date'/> <enumeration value='time'/> <enumeration value='timestamp'/> <enumeration value='uploadable'/> <enumeration value='boolean'/> <enumeration value='text'/> <enumeration value='geopos'/> <enumeration value='image'/> <enumeration value='message'/> </restriction> </simpleType> </attribute> <attribute name='default' type='string' use='optional'/> <attribute name='typedef' type='string' use='optional'/> <attribute name='distinct' use='optional'> <simpleType> <restriction base='string'> <enumeration value='none'/> <enumeration value='all'/> <enumeration value='user'/> <enumeration value='system'/> </restriction> </simpleType> </attribute> <attribute name='entity' type='string' use='optional'/> <attribute name='farkey' type='string' use='optional'/> <attribute name='required' use='optional'> <simpleType> <restriction base='string'> <enumeration value='true'/> <enumeration value='false'/> </restriction> </simpleType> </attribute> <attribute name='immutable' use='optional'> <simpleType> <restriction base='string'> <enumeration value='true'/> <enumeration value='false'/> </restriction> </simpleType> </attribute> <attribute name='size' type='string' use='optional'/> <attribute name='column' type='string' use='optional'/> <attribute name='concrete' use='optional'> <simpleType> <restriction base='string'> <enumeration value='true'/> <enumeration value='false'/> </restriction> </simpleType> </attribute> <attribute name='cascade' use='optional'> <simpleType> <restriction base='string'> <enumeration value='all'/> <enumeration value='all-delete-orphan'/> <enumeration value='delete'/> <enumeration value='manual'/> <enumeration value='save-update'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='generator'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:param' minOccurs='0' maxOccurs='unbounded'/> </sequence> <attribute name='action' use='required'> <simpleType> <restriction base='string'> <enumeration value='assigned'/> <enumeration value='guid'/> <enumeration value='manual'/> <enumeration value='native'/> </restriction> </simpleType> </attribute> <attribute name='class' type='string' use='optional'/> </complexType> </element> <element name='param'> <complexType mixed='true'> <attribute name='name' type='string' use='required'/> </complexType> </element> <element name='option'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:prompt' minOccurs='0' maxOccurs='unbounded'/> </sequence> <attribute name='value' type='string' use='optional'/> </complexType> </element> <element name='permission'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='group' type='string' use='required'/> <attribute name='permission' use='required'> <simpleType> <restriction base='string'> <enumeration value='none'/> <enumeration value='read'/> <enumeration value='insert'/> <enumeration value='noedit'/> <enumeration value='edit'/> <enumeration value='all'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='pragma'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='value' type='string' use='required'/> </complexType> </element> <element name='prompt'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='prompt' type='string' use='required'/> <attribute name='locale' type='string' use='required'/> </complexType> </element> <element name='help'> <complexType mixed='true'> <attribute name='locale' type='string' use='required'/> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='ifmissing'> <complexType mixed='true'> <attribute name='locale' type='string' use='required'/> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='form'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:head'/> <element ref='t:top'/> <element ref='t:foot'/> <element ref='t:field'/> <element ref='t:fieldgroup'/> <element ref='t:auxlist'/> <element ref='t:verb'/> <element ref='t:permission'/> <element ref='t:pragma'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='properties' use='required'> <simpleType> <restriction base='string'> <enumeration value='all'/> <enumeration value='user-distinct'/> <enumeration value='listed'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='page'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:head'/> <element ref='t:top'/> <element ref='t:foot'/> <element ref='t:field'/> <element ref='t:fieldgroup'/> <element ref='t:auxlist'/> <element ref='t:verb'/> <element ref='t:permission'/> <element ref='t:pragma'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='properties' use='required'> <simpleType> <restriction base='string'> <enumeration value='all'/> <enumeration value='user-distinct'/> <enumeration value='listed'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='order'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='property' type='string' use='required'/> <attribute name='sequence' use='optional'> <simpleType> <restriction base='string'> <enumeration value='canonical'/> <enumeration value='reverse-canonical'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='list'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:head'/> <element ref='t:top'/> <element ref='t:foot'/> <element ref='t:field'/> <element ref='t:fieldgroup'/> <element ref='t:auxlist'/> <element ref='t:verb'/> <element ref='t:permission'/> <element ref='t:pragma'/> <element ref='t:order'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='properties' use='required'> <simpleType> <restriction base='string'> <enumeration value='all'/> <enumeration value='user-distinct'/> <enumeration value='listed'/> </restriction> </simpleType> </attribute> <attribute name='onselect' type='string' use='optional'/> </complexType> </element> <element name='auxlist'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:prompt'/> <element ref='t:field'/> <element ref='t:fieldgroup'/> <element ref='t:auxlist'/> <element ref='t:verb'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> <attribute name='properties' use='required'> <simpleType> <restriction base='string'> <enumeration value='all'/> <enumeration value='user-distinct'/> <enumeration value='listed'/> </restriction> </simpleType> </attribute> <attribute name='property' type='string' use='required'/> <attribute name='onselect' type='string' use='optional'/> <attribute name='canadd' use='optional'> <simpleType> <restriction base='string'> <enumeration value='true'/> <enumeration value='false'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='fieldgroup'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:prompt'/> <element ref='t:permission'/> <element ref='t:field'/> <element ref='t:fieldgroup'/> <element ref='t:auxlist'/> <element ref='t:verb'/> </choice> </sequence> <attribute name='name' type='string' use='required'/> </complexType> </element> <element name='field'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:prompt'/> <element ref='t:help'/> <element ref='t:permission'/> </choice> </sequence> <attribute name='property' type='string' use='required'/> </complexType> </element> <element name='verb'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:prompt'/> <element ref='t:help'/> <element ref='t:permission'/> </choice> </sequence> <attribute name='verb' type='string' use='required'/> <attribute name='dangerous' use='required'> <simpleType> <restriction base='string'> <enumeration value='true'/> <enumeration value='false'/> </restriction> </simpleType> </attribute> </complexType> </element> <element name='content'> <complexType> <choice minOccurs='0' maxOccurs='unbounded'> <element ref='t:head'/> <element ref='t:top'/> <element ref='t:foot'/> </choice> </complexType> </element> <element name='head'> <complexType mixed='true'> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='top'> <complexType mixed='true'> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='foot'> <complexType mixed='true'> <attribute name='xmlns' type='string' use='optional'/> </complexType> </element> <element name='specification'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> <element ref='t:reference' minOccurs='0' maxOccurs='unbounded'/> </sequence> <attribute name='url' type='string' use='optional'/> <attribute name='name' type='string' use='required'/> <attribute name='abbr' type='string' use='required'/> </complexType> </element> <element name='reference'> <complexType> <sequence> <element ref='t:documentation' minOccurs='0' maxOccurs='1'/> </sequence> <attribute name='abbr' type='string' use='optional'/> <attribute name='section' type='string' use='optional'/> <attribute name='entity' type='string' use='optional'/> <attribute name='property' type='string' use='optional'/> </complexType> </element> </schema>