Schema
(i) is now valid (ii) allows HTML in head, top and foot
This commit is contained in:
parent
f59c6bf601
commit
e672bbd40f
|
@ -1,26 +1,27 @@
|
||||||
<schema
|
<schema
|
||||||
xmlns='http://www.w3.org/2000/10/XMLSchema'
|
xmlns='http://www.w3.org/2001/XMLSchema'
|
||||||
targetNamespace='http://www.cygnets.co.uk/schemas/adl/'
|
targetNamespace='http://www.cygnets.co.uk/schemas/adl-0.xsd'
|
||||||
xmlns:adl='http://www.cygnets.co.uk/schemas/adl/'>
|
xmlns:adl='http://www.cygnets.co.uk/schemas/adl-0.xsd'
|
||||||
|
xmlns:html='http://www.w3.org/1999/xhtml'>
|
||||||
|
|
||||||
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
|
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<!-- adl-0.xsd -->
|
<!-- adl-0.xsd -->
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<!-- Purpose: -->
|
<!-- Purpose: -->
|
||||||
<!-- XML Schema Application Description Language. Note that this -->
|
<!-- XML Schema for Application Description Language. Note that this -->
|
||||||
<!-- is experimental; the DTD is still normative at this stage -->
|
<!-- is experimental; the DTD is still normative at this stage -->
|
||||||
<!-- This revision autoconverted using dtd2xsd.pl from -->
|
<!-- This revision autoconverted using dtd2xsd.pl from -->
|
||||||
<!-- adl-0.dtd revision 1.2 -->
|
<!-- adl-0.dtd revision 1.2 -->
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<!-- Author: Simon Brooke <simon@cygnets.co.uk> -->
|
<!-- Author: Simon Brooke <simon@cygnets.co.uk> -->
|
||||||
<!-- Created: 9th January 2008 -->
|
<!-- Created: 9th January 2008 -->
|
||||||
<!-- $Revision: 1.1 $
|
<!-- $Revision: 1.2 $ -->
|
||||||
<!-- Copyright: (c) 2008 Cygnet Solutions Ltd -->
|
<!-- Copyright: (c) 2008 Cygnet Solutions Ltd -->
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
|
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
|
||||||
|
|
||||||
<!-- the application that the document describes: required top level element -->
|
<!-- the application that the document describes: required top level element -->
|
||||||
<element name='application'>
|
<element name='application'>
|
||||||
<complexType>
|
<complexType>
|
||||||
<sequence>
|
<sequence>
|
||||||
|
@ -78,7 +79,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
a group of people with similar permissions to one another
|
a group of people with similar permissions to one another
|
||||||
name: the name of this group
|
name: the name of this group
|
||||||
parent: the name of a group of which this group is subset
|
parent: the name of a group of which this group is subset
|
||||||
|
@ -93,7 +94,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
an entity which has properties and relationships; maps onto a database
|
an entity which has properties and relationships; maps onto a database
|
||||||
table or a Java serialisable class - or, of course, various other things
|
table or a Java serialisable class - or, of course, various other things
|
||||||
|
|
||||||
|
@ -121,7 +122,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
contains documentation on the element which immediately contains it. TODO:
|
contains documentation on the element which immediately contains it. TODO:
|
||||||
should HTML markup within a documentation element be allowed? If so, are
|
should HTML markup within a documentation element be allowed? If so, are
|
||||||
there restrictions?
|
there restrictions?
|
||||||
|
@ -131,7 +132,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
a property (field) of an entity (table)
|
a property (field) of an entity (table)
|
||||||
|
|
||||||
name: the name of this property.
|
name: the name of this property.
|
||||||
|
@ -222,7 +223,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
one of an explicit list of optional values a property may have
|
one of an explicit list of optional values a property may have
|
||||||
NOTE: whether options get encoded at application layer or at database layer
|
NOTE: whether options get encoded at application layer or at database layer
|
||||||
is UNDEFINED; either behaviour is correct. If at database layer it's also
|
is UNDEFINED; either behaviour is correct. If at database layer it's also
|
||||||
|
@ -239,7 +240,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
permissions policy on an entity, a page, form, list or field
|
permissions policy on an entity, a page, form, list or field
|
||||||
|
|
||||||
group: the group to which permission is granted
|
group: the group to which permission is granted
|
||||||
|
@ -266,7 +267,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
pragmatic advice to generators of lists and forms, in the form of
|
pragmatic advice to generators of lists and forms, in the form of
|
||||||
name/value pairs which may contain anything. Over time some pragmas
|
name/value pairs which may contain anything. Over time some pragmas
|
||||||
will become 'well known', but the whole point of having a pragma
|
will become 'well known', but the whole point of having a pragma
|
||||||
|
@ -282,7 +283,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
a prompt for a property or field; used as the prompt text for a widget
|
a prompt for a property or field; used as the prompt text for a widget
|
||||||
which edits it. Typically there will be only one of these per property
|
which edits it. Typically there will be only one of these per property
|
||||||
per locale; if there are more than one all those matching the locale may
|
per locale; if there are more than one all those matching the locale may
|
||||||
|
@ -301,7 +302,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
helptext about a property of an entity, or a field of a page, form or
|
helptext about a property of an entity, or a field of a page, form or
|
||||||
list, or a definition. Typically there will be only one of these per property
|
list, or a definition. Typically there will be only one of these per property
|
||||||
per locale; if there are more than one all those matching the locale may
|
per locale; if there are more than one all those matching the locale may
|
||||||
|
@ -322,13 +323,13 @@
|
||||||
be concatenated, or just one may be used. Later there may be more sophisticated
|
be concatenated, or just one may be used. Later there may be more sophisticated
|
||||||
behaviour here.
|
behaviour here.
|
||||||
-->
|
-->
|
||||||
<element name='ifmissing'>
|
<element name='ifmissing'>
|
||||||
<complexType mixed='true'>
|
<complexType mixed='true'>
|
||||||
<attribute name='locale' type='string' use='required'/>
|
<attribute name='locale' type='string' use='required'/>
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!-- a form through which an entity may be added or edited -->
|
<!-- a form through which an entity may be added or edited -->
|
||||||
<element name='form'>
|
<element name='form'>
|
||||||
<complexType>
|
<complexType>
|
||||||
<sequence>
|
<sequence>
|
||||||
|
@ -358,7 +359,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!-- a page on which an entity may be displayed -->
|
<!-- a page on which an entity may be displayed -->
|
||||||
<element name='page'>
|
<element name='page'>
|
||||||
<complexType>
|
<complexType>
|
||||||
<sequence>
|
<sequence>
|
||||||
|
@ -388,7 +389,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
a list on which entities of a given type are listed
|
a list on which entities of a given type are listed
|
||||||
|
|
||||||
onselect: name of form/page/list to go to when
|
onselect: name of form/page/list to go to when
|
||||||
|
@ -424,7 +425,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
a subsidiary list, on which entities related to primary
|
a subsidiary list, on which entities related to primary
|
||||||
entities in the enclosing page or list are listed
|
entities in the enclosing page or list are listed
|
||||||
|
|
||||||
|
@ -460,7 +461,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
a group of fields and other controls within a form or list, which the
|
a group of fields and other controls within a form or list, which the
|
||||||
renderer might render as a single pane in a tabbed display, for example.
|
renderer might render as a single pane in a tabbed display, for example.
|
||||||
-->
|
-->
|
||||||
|
@ -480,7 +481,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!-- a field in a form or page
|
<!-- a field in a form or page
|
||||||
|
|
||||||
property: the property which this field displays/edits
|
property: the property which this field displays/edits
|
||||||
-->
|
-->
|
||||||
|
@ -496,7 +497,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!-- a verb is something that may be done through a form. Probably the verbs 'store'
|
<!-- a verb is something that may be done through a form. Probably the verbs 'store'
|
||||||
and 'delete' are implied, but maybe they need to be explicitly declared. The 'verb'
|
and 'delete' are implied, but maybe they need to be explicitly declared. The 'verb'
|
||||||
attribute of the verb is what gets returned to the controller -->
|
attribute of the verb is what gets returned to the controller -->
|
||||||
<element name='verb'>
|
<element name='verb'>
|
||||||
|
@ -519,7 +520,7 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!-- a container for global content -->
|
<!-- a container for global content -->
|
||||||
<element name='content'>
|
<element name='content'>
|
||||||
<complexType>
|
<complexType>
|
||||||
<choice minOccurs='0' maxOccurs='unbounded'>
|
<choice minOccurs='0' maxOccurs='unbounded'>
|
||||||
|
@ -530,33 +531,52 @@
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
content to place in the head of the generated document; this is #PCDATA
|
content to place in the head of the generated document; this is #PCDATA
|
||||||
because it will almost certainly belong to a different namespace
|
because it will almost certainly belong to a different namespace
|
||||||
(usually HTML)
|
(usually HTML)
|
||||||
-->
|
-->
|
||||||
<element name='head'>
|
<element name='head'>
|
||||||
<complexType mixed='true'>
|
<complexType>
|
||||||
|
<sequence>
|
||||||
|
<any namespace="http://www.w3.org/1999/xhtml"
|
||||||
|
minOccurs="1" maxOccurs="unbounded"
|
||||||
|
processContents="skip"/>
|
||||||
|
</sequence>
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
content to place in the top of the body of the generated document;
|
content to place in the top of the body of the generated document;
|
||||||
this is #PCDATA because it will almost certainly belong to a different
|
this is #PCDATA because it will almost certainly belong to a different
|
||||||
namespace (usually HTML)
|
namespace (usually HTML)
|
||||||
|
|
||||||
|
Schema only: no harm in this being required to be contained in an HTML div
|
||||||
-->
|
-->
|
||||||
<element name='top'>
|
<element name='top'>
|
||||||
<complexType mixed='true'>
|
<complexType>
|
||||||
|
<sequence>
|
||||||
|
<any namespace="http://www.w3.org/1999/xhtml"
|
||||||
|
minOccurs="1" maxOccurs="unbounded"
|
||||||
|
processContents="skip"/>
|
||||||
|
</sequence>
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
content to place at the foot of the body of the generated document;
|
content to place at the foot of the body of the generated document;
|
||||||
this is #PCDATA because it will almost certainly belong to a different
|
this is #PCDATA because it will almost certainly belong to a different
|
||||||
namespace (usually HTML)
|
namespace (usually HTML)
|
||||||
|
|
||||||
|
Schema only: no harm in this being required to be contained in an HTML div
|
||||||
-->
|
-->
|
||||||
<element name='foot'>
|
<element name='foot'>
|
||||||
<complexType mixed='true'>
|
<complexType>
|
||||||
|
<sequence>
|
||||||
|
<any namespace="http://www.w3.org/1999/xhtml"
|
||||||
|
minOccurs="1" maxOccurs="unbounded"
|
||||||
|
processContents="skip"/>
|
||||||
|
</sequence>
|
||||||
</complexType>
|
</complexType>
|
||||||
</element>
|
</element>
|
||||||
</schema>
|
</schema>
|
||||||
|
|
Loading…
Reference in a new issue