Schema Name | audao.xsd |
---|---|
Target Namespace | http://www.spoledge.com/audao |
Default Element Form | qualified |
Default Attribute Form | unqualified |
Used by type ColumnReferenceParamType, type ParamsType, type ColumnType, type FindType, type CountType, type UpdateType, type DeleteType, type MoveType, type InsertAllType, type ColumnViewType, type TableType, type TableType, type ViewType
Restricted type xs:token
XSD:
<xs:simpleType name="NameType"> <xs:restriction base="xs:token"> <xs:pattern value="[a-zA-Z][a-zA-Z0-9_]*"/> <xs:restriction> <xs:simpleType>
Used by type TableType, type ViewType, type DatabaseType
Restricted type NameType
XSD:
<xs:simpleType name="SchemaNameType"> <xs:restriction base="NameType"> <xs:maxLength value="30"/> <xs:restriction> <xs:simpleType>
Used by type RefTableType, type RefTableAliasType, type RefTableAliasColumnOptType, type RefTableColumnType, type RefTableColumnOptType, type RefTableOptColumnOptType, type MoveType, type TableType, type TableType
Restricted type NameType
XSD:
<xs:simpleType name="TableNameType"> <xs:restriction base="NameType"> <xs:maxLength value="30"/> <xs:restriction> <xs:simpleType>
Used by type ViewType
Restricted type NameType
XSD:
<xs:simpleType name="ViewNameType"> <xs:restriction base="NameType"> <xs:maxLength value="30"/> <xs:restriction> <xs:simpleType>
Used by type IndexFindType, type IndexType
Restricted type NameType
XSD:
<xs:simpleType name="IndexNameType"> <xs:restriction base="NameType"> <xs:maxLength value="30"/> <xs:restriction> <xs:simpleType>
Used by type ColumnType
Restricted type NameType
XSD:
<xs:simpleType name="SequenceNameType"> <xs:restriction base="NameType"> <xs:maxLength value="30"/> <xs:restriction> <xs:simpleType>
Used by type ColumnReferenceType, type ColumnReferenceParamType, type ColumnOrderReferenceType, type RefTableAliasColumnOptType, type RefTableColumnType, type RefTableColumnOptType, type RefTableOptColumnOptType, type ColumnType, type ColumnViewType
Restricted type NameType
XSD:
<xs:simpleType name="ColumnNameType"> <xs:restriction base="NameType"> <xs:maxLength value="30"/> <xs:restriction> <xs:simpleType>
Used by type ConfigDtoType, type ConfigDaoType
Restricted type xs:token
XSD:
<xs:simpleType name="JavaFullNameType"> <xs:restriction base="xs:token"> <xs:pattern value="[a-zA-Z][a-zA-Z0-9_.]*"/> <xs:restriction> <xs:simpleType>
Used by type TableType
Restricted type xs:string - enumeration:
Value | Description |
---|---|
column | |
row |
XSD:
<xs:simpleType name="EditModeType"> <xs:restriction base="xs:string"> <xs:enumeration value="column"/> <xs:enumeration value="row"/> <xs:restriction> <xs:simpleType>
Used by type ParamsType
Restricted type xs:string - enumeration:
Value | Description |
---|---|
boolean | |
short | |
int | |
long | |
double | |
String | |
Date | |
Timestamp | |
byte[] | |
Serializable | |
List |
XSD:
<xs:simpleType name="ColumnTypeListType"> <xs:restriction base="xs:string"> <xs:enumeration value="boolean"/> <xs:enumeration value="short"/> <xs:enumeration value="int"/> <xs:enumeration value="long"/> <xs:enumeration value="double"/> <xs:enumeration value="String"/> <xs:enumeration value="Date"/> <xs:enumeration value="Timestamp"/> <xs:enumeration value="byte[]"/> <xs:enumeration value="Serializable"/> <xs:enumeration value="List"/> <xs:restriction> <xs:simpleType>
Used by type ConfigDtoType
Restricted type xs:string - enumeration:
Value | Description |
---|---|
full | |
columns | |
pk | |
identity | |
none |
XSD:
<xs:simpleType name="EqualityType"> <xs:restriction base="xs:string"> <xs:enumeration value="full"/> <xs:enumeration value="columns"/> <xs:enumeration value="pk"/> <xs:enumeration value="identity"/> <xs:enumeration value="none"/> <xs:restriction> <xs:simpleType>
Used by type ConfigDaoType
Restricted type xs:string - enumeration:
Value | Description |
---|---|
list | |
array |
XSD:
<xs:simpleType name="FindManyResultType"> <xs:restriction base="xs:string"> <xs:enumeration value="list"/> <xs:enumeration value="array"/> <xs:restriction> <xs:simpleType>
Used by type ColumnType, type ColumnViewType
Extended type ColumnTypeListType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
min-length | no | xs:int | The minimum length of the field. For String type the unit is a character. For byte[] and Serializable types the unit is a byte. | ||
max-length | no | xs:int | The maximum length of the field - mandatory for String and byte[] types. Optional for Serializable field - if not set, then no checks are performed; the maximum types are used (longblob, long raw, Blob). If Serializable class is a 'gae:' core class (e.g. GeoPt), then the core class is used unless max-length is specified. For String type the unit is a character. For byte[] and Serializable types the unit is a byte. | ||
i18n | no | xs:boolean | Only for 'String' type: if true, then international characters are expected to be stored in this column. Used for Oracle: type NVARCHAR2 instead of VARCHAR2. Also internationalization is enabled for sorting. | ||
class | no | xs:string | Optionally for 'Serializable' and 'List' types: it specifies the target class for the given column and the generic List type resp. A full java name must be specified for custom classes. The default class for 'Serializable' type is 'java.io.Serializable', for 'List' type it is 'java.util.List' (not generic). The classes in package java.lang can be specified shortly: e.g. 'String'. The generated other DTO classes can be specified as 'table:table_name'. GAE only: the GAE core classes can be specified shortly as 'gae:ShortClassName' - fo example 'gae:GeoPt' or 'gae:User'. In such case no attribute @max-length should be specified, otherwise even the core class would be converted to ShortBlob or Blob according to the @max-length's value. GAE only: the items of the 'List' types are automatically converted to blobs, unless the class is a GAE core class ('gae:*' + 'String', 'Long', ..). But if the type is 'Serializable' and class is 'java.util.List', then a native GAE List type is used - no conversions of the list's item is performed and it is the developer's responsibility to pass only core GAE types to the list. |
XSD:
<xs:complexType name="ColumnTypeType"> <xs:simpleContent> <xs:extension base="ColumnTypeListType"> <xs:attribute name="min-length" type="xs:int" use="optional"/> <xs:attribute name="max-length" type="xs:int" use="optional"/> <xs:attribute name="i18n" type="xs:boolean" use="optional"/> <xs:attribute name="class" type="xs:string" use="optional"/> <xs:extension> <xs:simpleContent> <xs:complexType>
Used by type ColumnType, type ColumnViewType
Sequence: ( value+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
value | 1 - unbounded |
|
XSD:
<xs:complexType name="ColumnEnumType"> <xs:sequence> <xs:element name="value" maxOccurs="unbounded"> <xs:complexType> <xs:simpleContent> <xs:extension base="NameType"> <xs:attribute name="id" type="xs:int" use="optional"/> <xs:attribute name="db" type="xs:string" use="optional"/> <xs:extension> <xs:simpleContent> <xs:complexType> <xs:element> <xs:sequence> <xs:complexType>
Used by type ColumnsType
Sequence: ( comment? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | ColumnNameType |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
XSD:
<xs:complexType name="ColumnReferenceType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:sequence> <xs:attribute name="name" type="ColumnNameType" use="required"/> <xs:complexType>
Used by type ParamsType
Sequence: ( comment? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | ColumnNameType | The name of the referenced column. | ||
java | no | NameType | The Java name - use this if you want to specify your own name or when a collision of names occurs (e.g. two same columns in one query). | ||
list | no | xs:boolean | false | For GAE only: forces to use List<column-type> parameter instead of the simple type. |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
XSD:
<xs:complexType name="ColumnReferenceParamType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:sequence> <xs:attribute name="name" type="ColumnNameType" use="required"/> <xs:attribute name="java" type="NameType" use="optional"/> <xs:attribute name="list" type="xs:boolean" use="optional" default="false"/> <xs:complexType>
Used by type FindType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | ColumnNameType | |||
desc | no | xs:boolean |
XSD:
<xs:complexType name="ColumnOrderReferenceType"> <xs:attribute name="name" type="ColumnNameType" use="required"/> <xs:attribute name="desc" type="xs:boolean" use="optional"/> <xs:complexType>
Used by type IndexType
Sequence: ( column+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
column | 1 - unbounded | ColumnReferenceType |
XSD:
<xs:complexType name="ColumnsType"> <xs:sequence> <xs:element name="column" type="ColumnReferenceType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Used by type FindType, type CountType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
table | yes | TableNameType |
XSD:
<xs:complexType name="RefTableType"> <xs:attribute name="table" type="TableNameType" use="required"/> <xs:complexType>
Used by type ViewType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
table | yes | TableNameType | |||
alias | yes | xs:token |
XSD:
<xs:complexType name="RefTableAliasType"> <xs:attribute name="table" type="TableNameType" use="required"/> <xs:attribute name="alias" type="xs:token" use="required"/> <xs:complexType>
Used by type ColumnViewType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
table | no | TableNameType | |||
alias | no | xs:token | |||
column | no | ColumnNameType |
XSD:
<xs:complexType name="RefTableAliasColumnOptType"> <xs:attribute name="table" type="TableNameType" use="optional"/> <xs:attribute name="alias" type="xs:token" use="optional"/> <xs:attribute name="column" type="ColumnNameType" use="optional"/> <xs:complexType>
Not used by any object in this file.
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
table | yes | TableNameType | |||
column | yes | ColumnNameType |
XSD:
<xs:complexType name="RefTableColumnType"> <xs:attribute name="table" type="TableNameType" use="required"/> <xs:attribute name="column" type="ColumnNameType" use="required"/> <xs:complexType>
Not used by any object in this file.
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
table | yes | TableNameType | |||
column | no | ColumnNameType |
XSD:
<xs:complexType name="RefTableColumnOptType"> <xs:attribute name="table" type="TableNameType" use="required"/> <xs:attribute name="column" type="ColumnNameType" use="optional"/> <xs:complexType>
Used by type ColumnType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
table | no | TableNameType | |||
column | no | ColumnNameType | |||
fk | no | xs:boolean | true | Specifies whether foreign key should be created in the database. It is true by default, but sometimes it is useful to disable this - for example when you only want to share the same type of the column without fk contraint. | |
gae-parent | no | xs:boolean | false | This is currently used only for GAE and ignored for other implementations. When the "gae-parent" option is enabled, and the target column is a primary key, then a "Key" field is generated. If unilateral relation is detected, then it is handled as a parent-key relation. Thus the entities are in the same entity group and transactions are supported. |
XSD:
<xs:complexType name="RefTableOptColumnOptType"> <xs:attribute name="table" type="TableNameType" use="optional"/> <xs:attribute name="column" type="ColumnNameType" use="optional"/> <xs:attribute name="fk" type="xs:boolean" use="optional" default="true"/> <xs:attribute name="gae-parent" type="xs:boolean" use="optional" default="false"/> <xs:complexType>
Used by type TableType, type DatabaseType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
pk | no | xs:boolean | true | This attribute specifies whether method "findByPrimaryKey" will be automatically generated. | |
index | no | xs:boolean | true | This attribute specifies whether "frindByXXX" methods based on existing indexes will be automatically generated. |
XSD:
<xs:complexType name="AutoFindType"> <xs:attribute name="pk" type="xs:boolean" use="optional" default="true"/> <xs:attribute name="index" type="xs:boolean" use="optional" default="true"/> <xs:complexType>
Used by type ConditionType, type UpdateSetType
Elements:
Name | Card | Type | Description |
---|---|---|---|
column | 1 | ColumnReferenceParamType | A column which is used as the reference for parameter name and type. |
param | 1 |
|
XSD:
<xs:complexType name="ParamsType"> <xs:choice maxOccurs="unbounded"> <xs:element name="column" type="ColumnReferenceParamType"/> <xs:element name="param"> <xs:complexType> <xs:attribute name="name" type="NameType" use="required"/> <xs:attribute name="type" type="ColumnTypeListType" use="required"/> <xs:attribute name="class" type="xs:string" use="optional"/> <xs:attribute name="list" type="xs:boolean" use="optional" default="false"/> <xs:complexType> <xs:element> <xs:choice> <xs:complexType>
Used by type FindType, type CountType, type UpdateType, type DeleteType, type MoveType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | IndexNameType | |||
level | no | xs:int | 1 | The level of the index to be generated. Level 1 means all parameters, level 2 all but one ... | |
list | no | xs:boolean | false | For GAE only: forces to use List<@class> parameter instead of the default type (Object or @class). |
XSD:
<xs:complexType name="IndexFindType"> <xs:attribute name="name" type="IndexNameType" use="required"/> <xs:attribute name="level" type="xs:int" use="optional" default="1"/> <xs:attribute name="list" type="xs:boolean" use="optional" default="false"/> <xs:complexType>
Used by type FindType, type CountType, type UpdateType, type DeleteType, type MoveType
Elements:
Name | Card | Type | Description |
---|---|---|---|
query | 1 - unbounded | StringWithDbType | An SQL condition used for preparing statement - for SQL use "?" for parameters, for Google App Engine (gae) use numbered parameters like ":1", ":2" etc., for Google App Engine - JDO (gaejdo) use implicit parameters like ":myParamName". You can define different queries for different DB types. |
params | 0 - 1 | ParamsType | Finder parameters which are passed to the prepared statement. |
XSD:
<xs:complexType name="ConditionType"> <xs:sequence> <xs:element name="query" type="StringWithDbType" minOccurs="1" maxOccurs="unbounded"/> <xs:element name="params" minOccurs="0" type="ParamsType"/> <xs:sequence> <xs:complexType>
Used by type UpdateType
Sequence: ( query?, params? )
Elements:
Name | Card | Type | Description |
---|---|---|---|
query | 0 - 1 | xs:string | An SQL "SET" clause (without "SET") used for preparing statement - use "?" for parameters. If not set, then it is automatically generated using the params/column definitions. If not set, no params/param definitions are allowed. |
params | 0 - 1 | ParamsType | Parameters which are passed to the prepared statement. |
XSD:
<xs:complexType name="UpdateSetType"> <xs:sequence> <xs:element name="query" type="xs:string" minOccurs="0"/> <xs:element name="params" minOccurs="0" type="ParamsType"/> <xs:sequence> <xs:complexType>
Used by type ConditionType, type ViewType, type ViewType, type ViewType, type ViewType
Extended type xs:string
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
dbtype | no | xs:token | The underlying DB type like 'mysql', 'oracle', 'gae' or 'gaejdo'. If you let it empty then it will indicate the default or independent content. |
XSD:
<xs:complexType name="StringWithDbType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="dbtype" type="xs:token" use="optional"/> <xs:extension> <xs:simpleContent> <xs:complexType>
Used by type ColumnType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
unindexed | no | xs:boolean | GAE only: when set to "true", then this property is stored as unindexed property and you cannot search by it in future. This can save datastore space. | ||
empty | no | xs:boolean | GAE only: when set to "true", then null values are never stored - the property is not set at all. This can save datastore space. NOTE: You cannot search for null values in future. |
XSD:
<xs:complexType name="GaeColumnExtType"> <xs:attribute name="unindexed" type="xs:boolean" use="optional"/> <xs:attribute name="empty" type="xs:boolean" use="optional"/> <xs:complexType>
Used by type TableType
Sequence: ( comment*, ( ( type, enum?, auto? ) | ref ), transient?, not-null?, pk?, default-value?, edit?, gae? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | ColumnNameType | |||
java | no | NameType |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - unbounded | xs:string | A comment which is copied to the java code. |
type | 1 | ColumnTypeType | |
enum | 0 - 1 | ColumnEnumType | |
auto | 0 - 1 |
|
Flag: if present, then this column is automatically filled when inserting a new or updating an existing record. Autoincrement (mysql) or sequences (oracle) are used for "short", "int" and "long" columns. The current date is used for "Date" columns. The current date and time is used for "Timestamp" columns. The default mode is 'insert'. The 'update' mode allows to update Date and Timestamp columns for both 'insert' and 'update' operations. For integer types only the 'insert' mode is valid. |
ref | 1 | RefTableOptColumnOptType | Reference to other (table's) column. If the column name is not specified, then it is the same as the current column's name. The type (including enums) are taken from the other column's type. |
transient | 0 - 1 |
|
Flags the column as transient - data are not serialized. Optional attributes allow you to specify the serialization policy exactly ("io"=java IO, "gwt"=GWT serialization) |
not-null | 0 - 1 | - | |
pk | 0 - 1 | - | |
default-value | 0 - 1 | xs:string | Defines default value (Java syntax: e.g. 1, 2.2, true, "abcd", com.foo.CONSTANT ) |
edit | 0 - 1 | - | Flags the collumn as editable - it means that this column can be updated. |
gae | 0 - 1 | GaeColumnExtType | GAE only extension attributes. |
XSD:
<xs:complexType name="ColumnType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:choice> <xs:sequence> <xs:element name="type" type="ColumnTypeType"/> <xs:element name="enum" type="ColumnEnumType" minOccurs="0"/> <xs:element name="auto" minOccurs="0"> <xs:complexType> <xs:attribute name="sequence" type="SequenceNameType" use="optional"/> <xs:attribute name="start" type="xs:int" use="optional"/> <xs:attribute name="on" use="optional" default="insert"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="insert"/> <xs:enumeration value="update"/> <xs:enumeration value="update-only"/> <xs:restriction> <xs:simpleType> <xs:attribute> <xs:complexType> <xs:element> <xs:sequence> <xs:element name="ref" type="RefTableOptColumnOptType"/> <xs:choice> <xs:element name="transient" minOccurs="0"> <xs:complexType> <xs:attribute name="io" type="xs:boolean" use="optional" default="true"/> <xs:attribute name="gwt" type="xs:boolean" use="optional" default="true"/> <xs:complexType> <xs:element> <xs:element name="not-null" minOccurs="0"/> <xs:element name="pk" minOccurs="0"/> <xs:element name="default-value" type="xs:string" minOccurs="0"/> <xs:element name="edit" minOccurs="0"/> <xs:element name="gae" type="GaeColumnExtType" minOccurs="0"/> <xs:sequence> <xs:attribute name="name" type="ColumnNameType" use="required"/> <xs:attribute name="java" type="NameType" use="optional"/> <xs:complexType>
Used by type TableType
Sequence: ( unique?, no-find?, columns )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | IndexNameType |
Elements:
Name | Card | Type | Description |
---|---|---|---|
unique | 0 - 1 | - | Flag: if present, then the index is unique. |
no-find | 0 - 1 |
|
Flag: if present, then no finder method is generated for this index. If one or more level is specified, then only the level is not generated. The levels are numbered 1,2,3,... |
columns | 1 | ColumnsType |
XSD:
<xs:complexType name="IndexType"> <xs:sequence> <xs:element name="unique" minOccurs="0"/> <xs:element name="no-find" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="level" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:attribute name="no" type="xs:int" use="required"/> <xs:complexType> <xs:element> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="columns" type="ColumnsType"/> <xs:sequence> <xs:attribute name="name" type="IndexNameType" use="required"/> <xs:complexType>
Used by type TableType, type ViewType
Sequence: ( comment?, ( unique | range )?, ( all | dynamic | pk | index | condition | ref ), order-by?, use-no-cache? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | no | NameType | The name of the finder - the java name is constructed as "find" + ucfirst(@name). The attribute is optional for condition types: "all" (findAll), "dynamic" (findDynamic), pk (findByPrimaryKey) and "index" (findBy + index columns). | ||
limit | no | xs:int | -1 | Limits the result. Only applicable for non-unique finders. |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
unique | 1 | - | Flag: if present, then the finder is unique and returns one record at most. |
range | 1 | - | Flag: if present, then the finder method will contain "offset" and "count" variables. |
all | 1 | - | A special finder: finds all records. |
dynamic | 1 | - | A generic finder - allows to pass SQL condition + parameters. |
pk | 1 | - | Find a record by its primary key. |
index | 1 | IndexFindType | Condition constructed using existing index. |
condition | 1 | ConditionType | Explicit finder - allows to pass parameters to predefined SQL. |
ref | 1 | RefTableType | Finds records by a reference. |
order-by | 0 - 1 |
|
|
use-no-cache | 0 - 1 | - | Forces not using default cache - can be used only for "pk" finder types. |
XSD:
<xs:complexType name="FindType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:choice minOccurs="0"> <xs:element name="unique"/> <xs:element name="range"/> <xs:choice> <xs:choice> <xs:element name="all"/> <xs:element name="dynamic"/> <xs:element name="pk"/> <xs:element name="index" type="IndexFindType"/> <xs:element name="condition" type="ConditionType"/> <xs:element name="ref" type="RefTableType"/> <xs:choice> <xs:element name="order-by" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="column" type="ColumnOrderReferenceType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="use-no-cache" minOccurs="0"/> <xs:sequence> <xs:attribute name="name" type="NameType" use="optional"/> <xs:attribute name="limit" type="xs:int" use="optional" default="-1"/> <xs:complexType>
Used by type TableType, type ViewType
Sequence: ( comment?, ( all | dynamic | index | condition | ref ) )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | no | NameType | The name of the finder - the java name is constructed as "count" + ucfirst(@name). The attribute is optional for condition types: "all" (countAll), "dynamic" (countDynamic), pk (countByPrimaryKey) and "index" (countBy + index columns). |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
all | 1 | - | A special finder: finds all records. |
dynamic | 1 | - | A generic finder - allows to pass SQL condition + parameters. |
index | 1 | IndexFindType | Condition constructed using existing index. |
condition | 1 | ConditionType | Explicit finder - allows to pass parameters to predefined SQL. |
ref | 1 | RefTableType | Finds records by a reference. |
XSD:
<xs:complexType name="CountType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:choice> <xs:element name="all"/> <xs:element name="dynamic"/> <xs:element name="index" type="IndexFindType"/> <xs:element name="condition" type="ConditionType"/> <xs:element name="ref" type="RefTableType"/> <xs:choice> <xs:sequence> <xs:attribute name="name" type="NameType" use="optional"/> <xs:complexType>
Used by type TableType
Sequence: ( comment?, unique?, set, ( all | dynamic | index | condition | pk ) )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | no | NameType | The name of the method - the java name is constructed as "update" + ucfirst(@name). The attribute is optional for condition types: "all" (updateAll), "dynamic" (updateDynamic), pk (updateByPrimaryKey) and "index" (updateBy + index columns). |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
unique | 0 - 1 | - | Flag: if present, then the update is unique and if more than one record is updated, then a DaoException is thrown. |
set | 1 | UpdateSetType | Describes which columns will be updated and how. |
all | 1 | - | Updates all records. |
dynamic | 1 | - | A generic update - allows to pass SQL condition + parameters. |
index | 1 | IndexFindType | Condition constructed using existing index. |
condition | 1 | ConditionType | Explicit update - allows to pass parameters to predefined SQL. |
pk | 1 | - | Updates record by its primary key. |
XSD:
<xs:complexType name="UpdateType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:element name="unique" minOccurs="0"/> <xs:element name="set" type="UpdateSetType"/> <xs:choice> <xs:element name="all"/> <xs:element name="dynamic"/> <xs:element name="index" type="IndexFindType"/> <xs:element name="condition" type="ConditionType"/> <xs:element name="pk"/> <xs:choice> <xs:sequence> <xs:attribute name="name" type="NameType" use="optional"/> <xs:complexType>
Used by type TableType
Sequence: ( comment? )
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
XSD:
<xs:complexType name="TruncateType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:sequence> <xs:complexType>
Used by type TableType
Sequence: ( comment?, unique?, ( all | dynamic | index | condition | pk ) )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | no | NameType | The name of the delete - the java name is constructed as "delete" + ucfirst(@name). The attribute is optional for condition types: "all" (deleteAll), "dynamic" (deleteDynamic), pk (deleteByPrimaryKey) and "index" (deleteBy + index columns). |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
unique | 0 - 1 | - | Flag: if present, then the delete is unique and if more than one record is deleted, then a DaoException is thrown. |
all | 1 | - | Deletes all records. |
dynamic | 1 | - | A generic delete - allows to pass SQL condition + parameters. |
index | 1 | IndexFindType | Condition constructed using existing index. |
condition | 1 | ConditionType | Explicit delete - allows to pass parameters to predefined SQL. |
pk | 1 | - | Deletes record by its primary key. |
XSD:
<xs:complexType name="DeleteType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:element name="unique" minOccurs="0"/> <xs:choice> <xs:element name="all"/> <xs:element name="dynamic"/> <xs:element name="index" type="IndexFindType"/> <xs:element name="condition" type="ConditionType"/> <xs:element name="pk"/> <xs:choice> <xs:sequence> <xs:attribute name="name" type="NameType" use="optional"/> <xs:complexType>
Used by type TableType
Sequence: ( comment?, ( all | dynamic | index | condition ) )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | no | NameType | The name of the move - the java name is constructed as "move" + ucfirst(@name). The attribute is optional for condition types: "all" (moveAll), "dynamic" (moveDynamic), pk (moveByPrimaryKey) and "index" (moveBy + index columns). | ||
target | yes | TableNameType | The target table. |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - 1 | xs:string | A comment which is copied to the java code. |
all | 1 | - | Moves all records. |
dynamic | 1 | - | A generic move - allows to pass SQL condition + parameters. |
index | 1 | IndexFindType | Condition constructed using existing index. |
condition | 1 | ConditionType | Explicit move - allows to pass parameters to predefined SQL. |
XSD:
<xs:complexType name="MoveType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0"/> <xs:choice> <xs:element name="all"/> <xs:element name="dynamic"/> <xs:element name="index" type="IndexFindType"/> <xs:element name="condition" type="ConditionType"/> <xs:choice> <xs:sequence> <xs:attribute name="name" type="NameType" use="optional"/> <xs:attribute name="target" type="TableNameType" use="required"/> <xs:complexType>
Used by type TableType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | no | NameType | The name of the insert-all - the java name is "insertAll" + ucfirst(@name). The attribute is optional and the default name i "insertAll". |
XSD:
<xs:complexType name="InsertAllType"> <xs:attribute name="name" type="NameType" use="optional"/> <xs:complexType>
Used by type TableType
Sequence: ( c+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
c | 1 - unbounded | xs:string |
XSD:
<xs:complexType name="RowType"> <xs:sequence> <xs:element name="c" type="xs:string" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Used by type ConfigDaoImplType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
max-size | yes | xs:int | The maximum number of cached pairs (key,value). This is used only for L1 caches (Memory). | ||
expire-millis | no | xs:int | -1 | The number of milliseconds after which the cached item expires. If not specified or a negative number is specified, then items never expires. | |
l2-expire-millis | no | xs:int | -1 | L2 cache expiration period - currently used for GAE (MemcacheService). The number of milliseconds after which the cached item expires. If not specified or a negative number is specified, then items never expires. |
XSD:
<xs:complexType name="DefaultCacheType"> <xs:attribute name="max-size" type="xs:int" use="required"/> <xs:attribute name="expire-millis" type="xs:int" use="optional" default="-1"/> <xs:attribute name="l2-expire-millis" type="xs:int" use="optional" default="-1"/> <xs:complexType>
Used by type ConfigType, type ConfigTableType
Sequence: ( root? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
enum-column | no | xs:boolean | false | Enables generating of the "Column" enumeration in every DTO class. | |
serial-version | no | xs:int | Forces the Serializable's static attribute serialVersionUID to be a specific number. | ||
equality | no | EqualityType | columns | Defines how methods equals() and hashCode() will be constructed. "full" = compares all column values and also "modified" flags. "columns" = compares all column values. "pk" = compares only primary key (and gae parent keys if exist). "identity" = same as no equals() nor hashCode() methods were generated, but if parent exists, then the parent's methods are overriden. "none" = no equals() not hashCode() methods are generated. If a parent exists, then the parent's methods are used. | |
gwt-compatible | no | xs:boolean | false | Forces DTOs to be GWT compatible. Currently these differences are applied: - method hashCode(): "double" columns "Float.floatToIntBits(val)" is not GWT compatible, and is replaced by "(int)val". |
Elements:
Name | Card | Type | Description |
---|---|---|---|
root | 0 - 1 | JavaFullNameType | The full java name of a specific parent class for each DTO. The default is com.spoledge.audao.db.dto.AbstractDto . |
XSD:
<xs:complexType name="ConfigDtoType"> <xs:sequence> <xs:element name="root" type="JavaFullNameType" minOccurs="0"/> <xs:sequence> <xs:attribute name="enum-column" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="serial-version" type="xs:int" use="optional"/> <xs:attribute name="equality" type="EqualityType" default="columns" use="optional"/> <xs:attribute name="gwt-compatible" type="xs:boolean" default="false" use="optional"/> <xs:complexType>
Used by type ConfigType, type ConfigTableType
Sequence: ( root? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
method-get-order-expr | no | xs:boolean | false | Enables generating of the "getOrderExpr" method in every DTO class. This also forces generating of the "Column" enumeration in every DTO class. | |
find-many-result | no | FindManyResultType | array | Switches between the types of the finders (non-unique) - either arrays or lists. |
Elements:
Name | Card | Type | Description |
---|---|---|---|
root | 0 - 1 | JavaFullNameType | The full java name of a specific parent class for each DAO. The default is com.spoledge.audao.db.dao.AbstractDao . |
XSD:
<xs:complexType name="ConfigDaoType"> <xs:sequence> <xs:element name="root" type="JavaFullNameType" minOccurs="0"/> <xs:sequence> <xs:attribute name="method-get-order-expr" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="find-many-result" type="FindManyResultType" default="array" use="optional"/> <xs:complexType>
Used by type ConfigType, type ConfigTableType
Sequence: ( root*, default-cache? )
Elements:
Name | Card | Type | Description |
---|---|---|---|
root | 0 - unbounded |
|
The full java name of a specific parent class for each DAO Impl. The default is either com.spoledge.audao.db.dao.AbstractDaoImpl (mysql|oracle) or com.spoledge.audao.db.dao.gae.GaeAbstractDaoImpl (gae) or com.spoledge.audao.db.dao.gae.GaeJdoAbstractDaoImpl (gaejdo) depending on the dbtype. |
default-cache | 0 - 1 | DefaultCacheType | The default cache configuration. The default cache is that cache which is filled by the insert and find/pk (findByPrimaryKey) methods and peeked by the find/pk method. If no default cache is set, then data are not cached. |
XSD:
<xs:complexType name="ConfigDaoImplType"> <xs:sequence> <xs:element name="root" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:simpleContent> <xs:extension base="JavaFullNameType"> <xs:attribute name="dbtype" type="xs:token" use="optional"/> <xs:extension> <xs:simpleContent> <xs:complexType> <xs:element> <xs:element name="default-cache" minOccurs="0" type="DefaultCacheType"/> <xs:sequence> <xs:complexType>
Used by type ConfigType
Sequence: ( create-params? )
Elements:
Name | Card | Type | Description |
---|---|---|---|
create-params | 0 - 1 |
|
Specifies whether the createXXXDao() methods will have parameter (Connection or PersistenceManager or DatastoreService) or not. |
XSD:
<xs:complexType name="ConfigFactoryType"> <xs:sequence> <xs:element name="create-params" minOccurs="0"> <xs:complexType> <xs:attribute name="default" type="xs:boolean" default="true" use="optional"/> <xs:attribute name="connection" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="pm" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="gaeds" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="direct" type="xs:boolean" default="false" use="optional"/> <xs:complexType> <xs:element> <xs:sequence> <xs:complexType>
Used by type ViewType
Choice: ( ( type, enum?, not-null? ) | ( ref, null? ) )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | ColumnNameType | |||
java | no | NameType |
Elements:
Name | Card | Type | Description |
---|---|---|---|
type | 1 | ColumnTypeType | |
enum | 0 - 1 | ColumnEnumType | |
not-null | 0 - 1 | - | |
ref | 1 | RefTableAliasColumnOptType | Reference to a table's column. If the column name is not specified, then it is the same as the current column's name. The type (including enums) and nullable flag are taken from the other column's type. |
null | 0 - 1 | - | Forces column to be not "not-null". When joining tables this can often happen - the original column is not-null, but the column in the view can be null. |
XSD:
<xs:complexType name="ColumnViewType"> <xs:choice> <xs:sequence> <xs:element name="type" type="ColumnTypeType"/> <xs:element name="enum" type="ColumnEnumType" minOccurs="0"/> <xs:element name="not-null" minOccurs="0"/> <xs:sequence> <xs:sequence> <xs:element name="ref" type="RefTableAliasColumnOptType"/> <xs:element name="null" minOccurs="0"/> <xs:sequence> <xs:choice> <xs:attribute name="name" type="ColumnNameType" use="required"/> <xs:attribute name="java" type="NameType" use="optional"/> <xs:complexType>
Used by type DatabaseType
Sequence: ( comment*, config?, ( read-only | edit-mode )?, auto-find?, columns?, indexes?, methods?, data? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | TableNameType | The name of the table/entity. This is the name used for DB table. | ||
schema | no | SchemaNameType | If specified, then the schema name is prepended to the table name and all asociated objects (indexes, sequences). | ||
java | no | NameType | A Java name used for generating names of DTO, DAO and DAO-implementation classes. The default Java name is constructed from the table name. | ||
abstract | no | xs:boolean | false | If true, then no real DB table is created/used and the java classes are flagged as abstract. | |
force-dto | no | xs:boolean | false | If this is true, then using of the table's own DTO is forced rather using of inherited one. For abstract classes this also forces to stop using generic DTO template <T>. | |
extends | no | TableNameType | The name of the parent table. All generated DTO, DAO and DAO-impl classes extend the parent classes if exist. | ||
prefix-index | no | NameType | The prefix add for all index names. Usefull when defining an index in the parent table. The different prefixes defined by child tables avoid conflicts in the "create tables" SQL. |
Elements:
Name | Card | Type | Description |
---|---|---|---|
comment | 0 - unbounded | xs:string | A comment which is copied to the java code. |
config | 0 - 1 | ConfigTableType | The local configuration options which affect the SQL and DAO generator. |
read-only | 1 | - | Flags the table as a read-only. No insert/update/delete/move methods are generated. |
edit-mode | 1 | EditModeType | The edit mode for the table. Default is 'row'. NOTE: for the 'row' mode you must flag at least one column by the 'edit' flag in order to be the 'update' method generated. |
auto-find | 0 - 1 | AutoFindType | Flag: specifies whether finders are automatically generated for all tables. See more information on AutoFindType. |
columns | 0 - 1 |
|
A list of all columns. This can be omitted when extending a table or creating an abstract table. If omitted and the table extends another table, then instead of generating own DTO class, the DTO class of the parent table is used. |
indexes | 0 - 1 |
|
|
methods | 0 - 1 |
|
|
data | 0 - 1 |
|
XSD:
<xs:complexType name="TableType"> <xs:sequence> <xs:element name="comment" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="config" minOccurs="0" type="ConfigTableType"/> <xs:choice minOccurs="0"> <xs:element name="read-only"/> <xs:element name="edit-mode" type="EditModeType"/> <xs:choice> <xs:element name="auto-find" type="AutoFindType" minOccurs="0"/> <xs:element name="columns" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="column" type="ColumnType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="indexes" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="index" type="IndexType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="methods" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:choice maxOccurs="unbounded"> <xs:element name="count" type="CountType"/> <xs:element name="find" type="FindType"/> <xs:element name="update" type="UpdateType"/> <xs:element name="delete" type="DeleteType"/> <xs:element name="truncate" type="TruncateType"/> <xs:element name="move" type="MoveType"/> <xs:element name="insert-all" type="InsertAllType"/> <xs:choice> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="data" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="row" type="RowType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:sequence> <xs:attribute name="name" type="TableNameType" use="required"/> <xs:attribute name="schema" type="SchemaNameType" use="optional"/> <xs:attribute name="java" type="NameType" use="optional"/> <xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/> <xs:attribute name="force-dto" type="xs:boolean" use="optional" default="false"/> <xs:attribute name="extends" type="TableNameType" use="optional"/> <xs:attribute name="prefix-index" type="NameType" use="optional"/> <xs:complexType>
Used by type DatabaseType
Sequence: ( tables, columns, sql?, methods? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | ViewNameType | |||
schema | no | SchemaNameType | If specified, then the schema name is prepended to the view name. | ||
java | no | NameType |
Elements:
Name | Card | Type | Description |
---|---|---|---|
tables | 1 |
|
|
columns | 1 |
|
|
sql | 0 - 1 |
|
The SQL definition of the view. If not present, then it is generated as specified by the "tables" and "columns" sections. |
methods | 0 - 1 |
|
XSD:
<xs:complexType name="ViewType"> <xs:sequence> <xs:element name="tables"> <xs:complexType> <xs:sequence> <xs:element name="ref" type="RefTableAliasType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="columns"> <xs:complexType> <xs:sequence> <xs:element name="column" type="ColumnViewType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="sql" minOccurs="0"> <xs:complexType> <xs:choice> <xs:element name="query" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:sequence> <xs:element name="columns" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="from" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="where" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:sequence> <xs:choice> <xs:complexType> <xs:element> <xs:element name="methods" minOccurs="0"> <xs:complexType> <xs:choice maxOccurs="unbounded"> <xs:element name="count" type="CountType"/> <xs:element name="find" type="FindType"/> <xs:choice> <xs:complexType> <xs:element> <xs:sequence> <xs:attribute name="name" type="ViewNameType" use="required"/> <xs:attribute name="schema" type="SchemaNameType" use="optional"/> <xs:attribute name="java" type="NameType" use="optional"/> <xs:complexType>
Used by type DatabaseType
Sequence: ( dto?, dao?, dao-impl?, factory? )
Elements:
Name | Card | Type | Description |
---|---|---|---|
dto | 0 - 1 | ConfigDtoType | Configuration options for DTO classes. |
dao | 0 - 1 | ConfigDaoType | Configuration options for DAO classes. |
dao-impl | 0 - 1 | ConfigDaoImplType | Configuration options for DAO Impl classes. |
factory | 0 - 1 | ConfigFactoryType | Configuration options for DAO factory. |
XSD:
<xs:complexType name="ConfigType"> <xs:sequence> <xs:element name="dto" type="ConfigDtoType" minOccurs="0"/> <xs:element name="dao" type="ConfigDaoType" minOccurs="0"/> <xs:element name="dao-impl" type="ConfigDaoImplType" minOccurs="0"/> <xs:element name="factory" type="ConfigFactoryType" minOccurs="0"/> <xs:sequence> <xs:complexType>
Used by type TableType
Sequence: ( dto?, dao?, dao-impl? )
Elements:
Name | Card | Type | Description |
---|---|---|---|
dto | 0 - 1 | ConfigDtoType | Configuration options for DTO classes. |
dao | 0 - 1 | ConfigDaoType | Configuration options for DAO classes. |
dao-impl | 0 - 1 | ConfigDaoImplType | Configuration options for DAO Impl classes. |
XSD:
<xs:complexType name="ConfigTableType"> <xs:sequence> <xs:element name="dto" type="ConfigDtoType" minOccurs="0"/> <xs:element name="dao" type="ConfigDaoType" minOccurs="0"/> <xs:element name="dao-impl" type="ConfigDaoImplType" minOccurs="0"/> <xs:sequence> <xs:complexType>
Used by element database
Sequence: ( config?, tables?, views? )
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
version | yes | xs:string | The version of the AUDAO schema. The current version is 1.0. | ||
schema | no | SchemaNameType | If specified, then the schema name is prepended to all objects. |
Elements:
Name | Card | Type | Description |
---|---|---|---|
config | 0 - 1 | ConfigType | The global configuration options which affect the SQL and DAO generator. |
tables | 0 - 1 |
|
|
views | 0 - 1 |
|
XSD:
<xs:complexType name="DatabaseType"> <xs:sequence> <xs:element name="config" minOccurs="0" type="ConfigType"/> <xs:element name="tables" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="auto-find" type="AutoFindType" minOccurs="0"/> <xs:element name="table" type="TableType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:element name="views" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="view" type="ViewType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType> <xs:element> <xs:sequence> <xs:attribute name="version" type="xs:string" use="required"/> <xs:attribute name="schema" type="SchemaNameType" use="optional"/> <xs:complexType>
Type:
DatabaseType
Cardinality: 1
XSD:
<xs:element name="database" type="DatabaseType"/>
Defined by type ColumnEnumType
Extended type NameType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
id | no | xs:int | |||
db | no | xs:string |
XSD:
<xs:complexType> <xs:simpleContent> <xs:extension base="NameType"> <xs:attribute name="id" type="xs:int" use="optional"/> <xs:attribute name="db" type="xs:string" use="optional"/> <xs:extension> <xs:simpleContent> <xs:complexType>
Defined by type ParamsType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
name | yes | NameType | The parameter name. | ||
type | yes | ColumnTypeListType | The parameter type. | ||
class | no | xs:string | The Java class to use for Serializable ans List types. See the ColumnTypeType documentation. | ||
list | no | xs:boolean | false | For GAE only: forces to use List<param-type> parameter instead of the simple type. |
XSD:
<xs:complexType> <xs:attribute name="name" type="NameType" use="required"/> <xs:attribute name="type" type="ColumnTypeListType" use="required"/> <xs:attribute name="class" type="xs:string" use="optional"/> <xs:attribute name="list" type="xs:boolean" use="optional" default="false"/> <xs:complexType>
Defined by type ColumnType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
sequence | no | SequenceNameType | The sequence name used for oracle DB. The default value is "seq_" + the name of the table. | ||
start | no | xs:int | The start value used for sequences in oracle DB. The default value is "1". | ||
on | no |
|
insert | The event when the auto-filling is enabled. The 'update' and 'update-only' value is allowed only for 'Date' and 'Timestamp' types. |
XSD:
<xs:complexType> <xs:attribute name="sequence" type="SequenceNameType" use="optional"/> <xs:attribute name="start" type="xs:int" use="optional"/> <xs:attribute name="on" use="optional" default="insert"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="insert"/> <xs:enumeration value="update"/> <xs:enumeration value="update-only"/> <xs:restriction> <xs:simpleType> <xs:attribute> <xs:complexType>
Defined by type ColumnType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
io | no | xs:boolean | true | ||
gwt | no | xs:boolean | true |
XSD:
<xs:complexType> <xs:attribute name="io" type="xs:boolean" use="optional" default="true"/> <xs:attribute name="gwt" type="xs:boolean" use="optional" default="true"/> <xs:complexType>
Defined by type IndexType
Sequence: ( level* )
Elements:
Name | Card | Type | Description |
---|---|---|---|
level | 0 - unbounded |
|
XSD:
<xs:complexType> <xs:sequence> <xs:element name="level" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:attribute name="no" type="xs:int" use="required"/> <xs:complexType> <xs:element> <xs:sequence> <xs:complexType>
Defined by type IndexType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
no | yes | xs:int |
XSD:
<xs:complexType> <xs:attribute name="no" type="xs:int" use="required"/> <xs:complexType>
Defined by type FindType
Sequence: ( column+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
column | 1 - unbounded | ColumnOrderReferenceType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="column" type="ColumnOrderReferenceType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type ConfigDaoImplType
Extended type JavaFullNameType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
dbtype | no | xs:token | The target database type the root is applied for. |
XSD:
<xs:complexType> <xs:simpleContent> <xs:extension base="JavaFullNameType"> <xs:attribute name="dbtype" type="xs:token" use="optional"/> <xs:extension> <xs:simpleContent> <xs:complexType>
Defined by type ConfigFactoryType
Attributes:
Name | Required | Type | Default Value | Fixed Value | Description |
---|---|---|---|---|---|
default | no | xs:boolean | true | Enables implicit method without parameters - the Connection/PM is retrieved via current Factory. | |
connection | no | xs:boolean | false | Enables method with parameter of type Connection - the Connection is passed directly to DAO implementation. | |
pm | no | xs:boolean | false | Enables method with parameter of type PersistenceManager (GAE - JDO) - the PersistenceManager is passed directly to DAO implementation. This is used by 'gaejdo' dbtype. | |
gaeds | no | xs:boolean | false | Enables method with parameter of type DatastoreService (GAE) - the DatastoreService is passed directly to DAO implementation. This is used by 'gae' dbtype. | |
direct | no | xs:boolean | false | Enables method with parameter of type Connection or PersistenceManager (depends on the dbtype) - the Connection/PersistenceManager/DatastoreService is passed directly to DAO implementation. This option can cause problems when developing for multiple DB types, because the DAOFactory methods signatures depend on the target DB type. |
XSD:
<xs:complexType> <xs:attribute name="default" type="xs:boolean" default="true" use="optional"/> <xs:attribute name="connection" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="pm" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="gaeds" type="xs:boolean" default="false" use="optional"/> <xs:attribute name="direct" type="xs:boolean" default="false" use="optional"/> <xs:complexType>
Defined by type TableType
Sequence: ( column+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
column | 1 - unbounded | ColumnType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="column" type="ColumnType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type TableType
Sequence: ( index+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
index | 1 - unbounded | IndexType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="index" type="IndexType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type TableType
Sequence: ( ( count | find | update | delete | truncate | move | insert-all )+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
count | 1 | CountType | |
find | 1 | FindType | |
update | 1 | UpdateType | |
delete | 1 | DeleteType | |
truncate | 1 | TruncateType | |
move | 1 | MoveType | |
insert-all | 1 | InsertAllType |
XSD:
<xs:complexType> <xs:sequence> <xs:choice maxOccurs="unbounded"> <xs:element name="count" type="CountType"/> <xs:element name="find" type="FindType"/> <xs:element name="update" type="UpdateType"/> <xs:element name="delete" type="DeleteType"/> <xs:element name="truncate" type="TruncateType"/> <xs:element name="move" type="MoveType"/> <xs:element name="insert-all" type="InsertAllType"/> <xs:choice> <xs:sequence> <xs:complexType>
Defined by type TableType
Sequence: ( row+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
row | 1 - unbounded | RowType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="row" type="RowType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type ViewType
Sequence: ( ref+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
ref | 1 - unbounded | RefTableAliasType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="ref" type="RefTableAliasType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type ViewType
Sequence: ( column+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
column | 1 - unbounded | ColumnViewType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="column" type="ColumnViewType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type ViewType
Choice: ( query* | ( columns*, from*, where* ) )
Elements:
Name | Card | Type | Description |
---|---|---|---|
query | 0 - unbounded | StringWithDbType | A full SQL query which will be used to generate the view (SELECT .. FROM ...). |
columns | 0 - unbounded | StringWithDbType | A definition of columns of the view: e.g: "*" or "t1.id, t2.name, t3.amount". The alias prefixes must be used exactly as specified in the "tables" section. |
from | 0 - unbounded | StringWithDbType | A definition of the "from" part of the SQL, e.g.: "accounts a left join users u on a.created_by=u.user_id". The alias prefixes must be used exactly as specified in the "tables" section. |
where | 0 - unbounded | StringWithDbType | An optional "where" condition used for truncating the result, e.g: "a.account_type=1". The alias prefixes must be used exactly as specified in the "tables" section. |
XSD:
<xs:complexType> <xs:choice> <xs:element name="query" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:sequence> <xs:element name="columns" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="from" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="where" type="StringWithDbType" minOccurs="0" maxOccurs="unbounded"/> <xs:sequence> <xs:choice> <xs:complexType>
Defined by type ViewType
Elements:
Name | Card | Type | Description |
---|---|---|---|
count | 1 | CountType | |
find | 1 | FindType |
XSD:
<xs:complexType> <xs:choice maxOccurs="unbounded"> <xs:element name="count" type="CountType"/> <xs:element name="find" type="FindType"/> <xs:choice> <xs:complexType>
Defined by type DatabaseType
Sequence: ( auto-find?, table+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
auto-find | 0 - 1 | AutoFindType | Flag: specifies whether finders are automatically generated for this table. This value overrides global auto-find value. See more information on AutoFindType. |
table | 1 - unbounded | TableType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="auto-find" type="AutoFindType" minOccurs="0"/> <xs:element name="table" type="TableType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type DatabaseType
Sequence: ( view+ )
Elements:
Name | Card | Type | Description |
---|---|---|---|
view | 1 - unbounded | ViewType |
XSD:
<xs:complexType> <xs:sequence> <xs:element name="view" type="ViewType" maxOccurs="unbounded"/> <xs:sequence> <xs:complexType>
Defined by type ColumnType
Restricted type xs:string - enumeration:
Value | Description |
---|---|
insert | |
update | |
update-only |
XSD:
<xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="insert"/> <xs:enumeration value="update"/> <xs:enumeration value="update-only"/> <xs:restriction> <xs:simpleType>