Mainly grammatical changes involving the replacement of type='serial' with generators

This commit is contained in:
sb 2008-02-04 15:54:46 +00:00
parent 78a038a764
commit d61f36c13d
2 changed files with 73 additions and 27 deletions

View file

@ -13,7 +13,7 @@
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!--
$Revision: 1.7 $
$Revision: 1.8 $
-->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
@ -82,15 +82,8 @@
char(1) java.sql.Types.CHAR
text: text or java.sql.Types.LONGVARCHAR
memo java.sql.Types.CLOB
Also, a hack, which may not belong here:
serial: An integer whose value is automatically assigned by the database. Given
that Canonical ADL requires that every key must be specified, we
need a way of distinguishing those which are system generated from
those which aren't. This may not be the right way to do it!
-->
<!ENTITY % SimpleDataTypes "%DefinableDataTypes;|boolean|text|serial" >
<!ENTITY % SimpleDataTypes "%DefinableDataTypes;|boolean|text" >
<!--
data types which are more complex than SimpleDataTypes...
@ -128,6 +121,18 @@
"name CDATA #REQUIRED
properties (all|user-distict|listed) #REQUIRED" >
<!-- Actions for generators (mainly for keyfields - see entity 'generator', below
assigned: In manually-maintained code, you contract to assign a value
to this property before it is persisted.
guid: The system will supply a unique GUid value to this field
before it is persisted.
mannual: You contract to supply a generatos class in manually maintained
code.
native: The database will supply a unique value to this field when it
is persisted; the value will be an integer. RECOMMENDED!
-->
<!ENTITY % GeneratorActions "assigned|guid|manual|native">
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- Elements -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
@ -276,7 +281,7 @@
committed to persistent store, the value which it holds before
it has been committed
-->
<!ELEMENT property ( documentation?, permission*, option*, prompt*, help*, ifmissing*)>
<!ELEMENT property ( documentation?, generator?, permission*, option*, prompt*, help*, ifmissing*)>
<!ATTLIST property
name CDATA #REQUIRED
@ -394,15 +399,45 @@ property[@type='entity']. TODO: Not complete, not yet strictly convinced it's th
-->
<!ELEMENT many-to-one (documentation?)>
<!ATTLIST many-to-one
name CDATA #REQUIRED
name CDATA #REQUIRED
distinct (none|all|user|system) #IMPLIED
entity CDATA #IMPLIED
farkey CDATA #IMPLIED
required %Boolean; #IMPLIED
concrete %Boolean; #IMPLIED
cascade (%CascadeActions;) #IMPLIED
column CDATA #IMPLIED
unsaved-value CDATA #IMPLIED>
entity CDATA #IMPLIED
farkey CDATA #IMPLIED
required %Boolean; #IMPLIED
concrete %Boolean; #IMPLIED
cascade (%CascadeActions;) #IMPLIED
column CDATA #IMPLIED
unsaved-value CDATA #IMPLIED>
<!--
marks a property which is auto-generated by some part of the system.
This is based on the Hibernate construct, except that the Hibernate
implementation folds both its internal generators and custom generators
onto the same attribute. This separates them onto two attributes so we
can police values for Hibernate's 'builtin' generators.
action: one of the supported Hibernate builtin generators, or
'manual'. 'native' is strongly recommended in most instances
class: if action is 'manual', the name of a manually maintained
class conforming to the Hibernate IdentifierGenerator
interface, or its equivalent in other languages
-->
<!ELEMENT generator (documentation?, param*)>
<!ATTLIST generator
action (%GeneratorActions;) #REQUIRED
class CDATA #IMPLIED>
<!--
A parameter passed to the generator. Again, based on the Hibernate
implementation.
name: the name of this parameter
-->
<!ELEMENT param (CDATA)>
<!ATTLIST param
name CDATA #REQUIRED>
<!--
one of an explicit list of optional values a property may have