| <!-- Hibernate Mapping DTD. |
| |
| <!DOCTYPE hibernate-mapping PUBLIC |
| "-//Hibernate/Hibernate Mapping DTD 3.0//EN" |
| "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> |
| |
| An instance of this XML document may contain mappings for an arbitrary |
| number of classes. The class mappings may contain associations to classes |
| mapped in the same document or in another document. No class may be |
| mapped more than once. Each document may also contain definitions of an |
| arbitrary number of queries, and import declarations of arbitrary classes. |
| |
| --> |
| |
| <!-- |
| The document root. |
| --> |
| |
| <!ELEMENT hibernate-mapping ( |
| meta*, |
| typedef*, |
| import*, |
| (class|subclass|joined-subclass|union-subclass)*, |
| resultset*, |
| (query|sql-query)*, |
| filter-def*, |
| database-object* |
| )> |
| <!ATTLIST hibernate-mapping schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST hibernate-mapping catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST hibernate-mapping default-cascade CDATA "none"> |
| <!ATTLIST hibernate-mapping default-access CDATA "property"> |
| <!ATTLIST hibernate-mapping default-lazy (true|false) "true"> |
| <!ATTLIST hibernate-mapping auto-import (true|false) "true"> |
| <!ATTLIST hibernate-mapping package CDATA #IMPLIED> <!-- default: none --> |
| |
| <!-- |
| META element definition; used to assign meta-level attributes to a class |
| or property. Is currently used by codegenerator as a placeholder for |
| values that is not directly related to OR mappings. |
| --> |
| <!ELEMENT meta (#PCDATA)> |
| <!ATTLIST meta attribute CDATA #REQUIRED> |
| <!ATTLIST meta inherit (true|false) "true"> |
| |
| <!-- |
| TYPEDEF element definition; defines a new name for a Hibernate type. May |
| contain parameters for parameterizable types. |
| --> |
| <!ELEMENT typedef (param*)> |
| <!ATTLIST typedef class CDATA #REQUIRED> |
| <!ATTLIST typedef name CDATA #REQUIRED> |
| |
| <!-- |
| IMPORT element definition; an explicit query language "import" |
| --> |
| <!ELEMENT import EMPTY> |
| <!ATTLIST import class CDATA #REQUIRED> |
| <!ATTLIST import rename CDATA #IMPLIED> <!-- default: unqualified class name --> |
| |
| <!-- |
| Root entity mapping. Poorly named as entities do not have to be represented by |
| classes at all. Mapped entities may be represented via different methodologies |
| (POJO, Map, Dom4j). |
| --> |
| <!ELEMENT class ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| tuplizer*, |
| (id|composite-id), |
| discriminator?, |
| natural-id?, |
| (version|timestamp)?, |
| (property|many-to-one|one-to-one|component|dynamic-component|properties|any|map|set|list|bag|idbag|array|primitive-array)*, |
| ((join*,subclass*)|joined-subclass*|union-subclass*), |
| loader?,sql-insert?,sql-update?,sql-delete?, |
| filter*, |
| resultset*, |
| (query|sql-query)* |
| )> |
| <!ATTLIST class entity-name CDATA #IMPLIED> |
| <!ATTLIST class name CDATA #IMPLIED> <!-- this is the class name --> |
| <!ATTLIST class proxy CDATA #IMPLIED> <!-- default: no proxy interface --> |
| <!ATTLIST class lazy (true|false) #IMPLIED> |
| <!ATTLIST class table CDATA #IMPLIED> <!-- default: unqualified classname --> |
| <!ATTLIST class schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST class catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST class subselect CDATA #IMPLIED> |
| <!ATTLIST class discriminator-value CDATA #IMPLIED> <!-- default: unqualified class name | none --> |
| <!ATTLIST class mutable (true|false) "true"> |
| <!ATTLIST class abstract (true|false) #IMPLIED> |
| <!ATTLIST class polymorphism (implicit|explicit) "implicit"> |
| <!ATTLIST class where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST class persister CDATA #IMPLIED> |
| <!ATTLIST class dynamic-update (true|false) "false"> |
| <!ATTLIST class dynamic-insert (true|false) "false"> |
| <!ATTLIST class batch-size CDATA #IMPLIED> |
| <!ATTLIST class select-before-update (true|false) "false"> |
| <!ATTLIST class optimistic-lock (none|version|dirty|all) "version"> |
| <!ATTLIST class check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST class rowid CDATA #IMPLIED> |
| <!ATTLIST class node CDATA #IMPLIED> |
| |
| <!-- |
| TUPLIZER element; defines tuplizer to use for a component/entity for a given entity-mode |
| --> |
| <!ELEMENT tuplizer EMPTY> |
| <!ATTLIST tuplizer entity-mode (pojo|dom4j|dynamic-map) #IMPLIED> <!-- entity mode for which tuplizer is in effect --> |
| <!ATTLIST tuplizer class CDATA #REQUIRED> <!-- the tuplizer class to use --> |
| |
| <!-- |
| FILTER-DEF element; top-level filter definition. |
| --> |
| <!ELEMENT filter-def (#PCDATA|filter-param)*> |
| <!ATTLIST filter-def name CDATA #REQUIRED> <!-- The filter name --> |
| <!ATTLIST filter-def condition CDATA #IMPLIED> |
| |
| <!-- |
| FILTER-PARAM element; qualifies parameters found within a FILTER-DEF |
| condition. |
| --> |
| <!ELEMENT filter-param EMPTY> |
| <!ATTLIST filter-param name CDATA #REQUIRED> <!-- The parameter name --> |
| <!ATTLIST filter-param type CDATA #REQUIRED> <!-- The parameter type --> |
| |
| <!-- |
| FILTER element; used to apply a filter. |
| --> |
| <!ELEMENT filter (#PCDATA)> |
| <!ATTLIST filter name CDATA #REQUIRED> |
| <!ATTLIST filter condition CDATA #IMPLIED> |
| |
| |
| <!-- A join allows some properties of a class to be persisted to a second table --> |
| |
| <!ELEMENT join ( |
| subselect?, |
| comment?, |
| key, |
| (property|many-to-one|component|dynamic-component|any)*, |
| sql-insert?,sql-update?,sql-delete? |
| )> |
| <!ATTLIST join table CDATA #REQUIRED> |
| <!ATTLIST join schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST join catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST join subselect CDATA #IMPLIED> |
| <!ATTLIST join fetch (join|select) "join"> |
| <!ATTLIST join inverse (true|false) "false"> |
| <!ATTLIST join optional (true|false) "false"> |
| |
| <!-- A natural-id element allows declaration of the unique business key --> |
| |
| <!ELEMENT natural-id ( (property|many-to-one|component|dynamic-component|any)* )> |
| <!ATTLIST natural-id mutable (true|false) "false"> |
| |
| <!-- Declares the id type, column and generation algorithm for an entity class. |
| If a name attribut is given, the id is exposed to the application through the |
| named property of the class. If not, the id is only exposed to the application |
| via Session.getIdentifier() --> |
| |
| <!ELEMENT id (meta*,column*,type?,generator?)> |
| <!ATTLIST id name CDATA #IMPLIED> |
| <!ATTLIST id node CDATA #IMPLIED> |
| <!ATTLIST id access CDATA #IMPLIED> |
| <!ATTLIST id column CDATA #IMPLIED> |
| <!ATTLIST id type CDATA #IMPLIED> |
| <!ATTLIST id length CDATA #IMPLIED> |
| <!ATTLIST id unsaved-value CDATA #IMPLIED> <!-- any|none|null|undefined|0|-1|... --> |
| |
| <!-- A composite key may be modelled by a java class with a property for each |
| key column. The class must implement java.io.Serializable and reimplement equals() |
| and hashCode(). --> |
| |
| <!ELEMENT composite-id ( meta*, (key-property|key-many-to-one)+ )> |
| <!ATTLIST composite-id class CDATA #IMPLIED> |
| <!ATTLIST composite-id mapped (true|false) "false"> |
| <!ATTLIST composite-id name CDATA #IMPLIED> |
| <!ATTLIST composite-id node CDATA #IMPLIED> |
| <!ATTLIST composite-id access CDATA #IMPLIED> |
| <!ATTLIST composite-id unsaved-value (undefined|any|none) "undefined"> |
| |
| <!-- Polymorphic data requires a column holding a class discriminator value. This |
| value is not directly exposed to the application. --> |
| |
| <!ELEMENT discriminator ((column|formula)?)> |
| <!ATTLIST discriminator column CDATA #IMPLIED> <!-- default: "class"|none --> |
| <!ATTLIST discriminator formula CDATA #IMPLIED> |
| <!ATTLIST discriminator type CDATA "string"> |
| <!ATTLIST discriminator not-null (true|false) "true"> |
| <!ATTLIST discriminator length CDATA #IMPLIED> |
| <!ATTLIST discriminator force (true|false) "false"> |
| <!ATTLIST discriminator insert (true|false) "true"> |
| |
| <!-- Versioned data requires a column holding a version number. This is exposed to the |
| application through a property of the Java class. --> |
| |
| <!ELEMENT version (meta*,column*)> |
| <!ATTLIST version name CDATA #REQUIRED> |
| <!ATTLIST version node CDATA #IMPLIED> |
| <!ATTLIST version access CDATA #IMPLIED> |
| <!ATTLIST version column CDATA #IMPLIED> |
| <!ATTLIST version type CDATA "integer"> |
| <!ATTLIST version unsaved-value (null|negative|undefined) "undefined"> |
| <!ATTLIST version generated (never|always) "never"> |
| <!ATTLIST version insert (true|false) #IMPLIED> |
| |
| <!ELEMENT timestamp (meta*)> |
| <!ATTLIST timestamp name CDATA #REQUIRED> |
| <!ATTLIST timestamp node CDATA #IMPLIED> |
| <!ATTLIST timestamp column CDATA #IMPLIED> |
| <!ATTLIST timestamp access CDATA #IMPLIED> |
| <!ATTLIST timestamp unsaved-value (null|undefined) "null"> |
| <!ATTLIST timestamp source (vm|db) "vm"> |
| <!ATTLIST timestamp generated (never|always) "never"> |
| |
| |
| <!-- |
| Subclass declarations are nested beneath the root class declaration to achieve |
| polymorphic persistence with the table-per-hierarchy mapping strategy. |
| |
| See the note on the class element regarding <pojo/> vs. @name usage... |
| --> |
| <!ELEMENT subclass ( |
| meta*, |
| tuplizer*, |
| synchronize*, |
| (property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|idbag|array|primitive-array)*, |
| join*, |
| subclass*, |
| loader?,sql-insert?,sql-update?,sql-delete?, |
| resultset*, |
| (query|sql-query)* |
| )> |
| <!ATTLIST subclass entity-name CDATA #IMPLIED> |
| <!ATTLIST subclass name CDATA #IMPLIED> |
| <!ATTLIST subclass proxy CDATA #IMPLIED> <!-- default: no proxy interface --> |
| <!ATTLIST subclass discriminator-value CDATA #IMPLIED> <!-- default: unqualified class name | none --> |
| <!ATTLIST subclass dynamic-update (true|false) "false"> |
| <!ATTLIST subclass dynamic-insert (true|false) "false"> |
| <!ATTLIST subclass select-before-update (true|false) "false"> |
| <!ATTLIST subclass extends CDATA #IMPLIED> <!-- default: empty when a toplevel, otherwise the nearest class definition --> |
| <!ATTLIST subclass lazy (true|false) #IMPLIED> |
| <!ATTLIST subclass abstract (true|false) #IMPLIED> |
| <!ATTLIST subclass persister CDATA #IMPLIED> |
| <!ATTLIST subclass batch-size CDATA #IMPLIED> |
| <!ATTLIST subclass node CDATA #IMPLIED> |
| |
| <!-- |
| Joined subclasses are used for the normalized table-per-subclass mapping strategy |
| |
| See the note on the class element regarding <pojo/> vs. @name usage... |
| --> |
| <!ELEMENT joined-subclass ( |
| meta*, |
| subselect?, |
| synchronize*, |
| comment?, |
| tuplizer*, |
| key, |
| (property|many-to-one|one-to-one|component|dynamic-component|properties|any|map|set|list|bag|idbag|array|primitive-array)*, |
| joined-subclass*, |
| loader?,sql-insert?,sql-update?,sql-delete?, |
| resultset*, |
| (query|sql-query)* |
| )> |
| <!ATTLIST joined-subclass entity-name CDATA #IMPLIED> |
| <!ATTLIST joined-subclass name CDATA #IMPLIED> |
| <!ATTLIST joined-subclass proxy CDATA #IMPLIED> <!-- default: no proxy interface --> |
| <!ATTLIST joined-subclass table CDATA #IMPLIED> <!-- default: unqualified class name --> |
| <!ATTLIST joined-subclass schema CDATA #IMPLIED> |
| <!ATTLIST joined-subclass catalog CDATA #IMPLIED> |
| <!ATTLIST joined-subclass subselect CDATA #IMPLIED> |
| <!ATTLIST joined-subclass dynamic-update (true|false) "false"> |
| <!ATTLIST joined-subclass dynamic-insert (true|false) "false"> |
| <!ATTLIST joined-subclass select-before-update (true|false) "false"> |
| <!ATTLIST joined-subclass extends CDATA #IMPLIED> <!-- default: none when toplevel, otherwise the nearest class definition --> |
| <!ATTLIST joined-subclass lazy (true|false) #IMPLIED> |
| <!ATTLIST joined-subclass abstract (true|false) #IMPLIED> |
| <!ATTLIST joined-subclass persister CDATA #IMPLIED> |
| <!ATTLIST joined-subclass check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST joined-subclass batch-size CDATA #IMPLIED> |
| <!ATTLIST joined-subclass node CDATA #IMPLIED> |
| |
| <!-- |
| Union subclasses are used for the table-per-concrete-class mapping strategy |
| |
| See the note on the class element regarding <pojo/> vs. @name usage... |
| --> |
| <!ELEMENT union-subclass ( |
| meta*, |
| subselect?, |
| synchronize*, |
| comment?, |
| tuplizer*, |
| (property|many-to-one|one-to-one|component|dynamic-component|properties|any|map|set|list|bag|idbag|array|primitive-array)*, |
| union-subclass*, |
| loader?,sql-insert?,sql-update?,sql-delete?, |
| resultset*, |
| (query|sql-query)* |
| )> |
| <!ATTLIST union-subclass entity-name CDATA #IMPLIED> |
| <!ATTLIST union-subclass name CDATA #IMPLIED> |
| <!ATTLIST union-subclass proxy CDATA #IMPLIED> <!-- default: no proxy interface --> |
| <!ATTLIST union-subclass table CDATA #IMPLIED> <!-- default: unqualified class name --> |
| <!ATTLIST union-subclass schema CDATA #IMPLIED> |
| <!ATTLIST union-subclass catalog CDATA #IMPLIED> |
| <!ATTLIST union-subclass subselect CDATA #IMPLIED> |
| <!ATTLIST union-subclass dynamic-update (true|false) "false"> |
| <!ATTLIST union-subclass dynamic-insert (true|false) "false"> |
| <!ATTLIST union-subclass select-before-update (true|false) "false"> |
| <!ATTLIST union-subclass extends CDATA #IMPLIED> <!-- default: none when toplevel, otherwise the nearest class definition --> |
| <!ATTLIST union-subclass lazy (true|false) #IMPLIED> |
| <!ATTLIST union-subclass abstract (true|false) #IMPLIED> |
| <!ATTLIST union-subclass persister CDATA #IMPLIED> |
| <!ATTLIST union-subclass check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST union-subclass batch-size CDATA #IMPLIED> |
| <!ATTLIST union-subclass node CDATA #IMPLIED> |
| |
| <!-- Property of an entity class or component, component-element, composite-id, etc. |
| JavaBeans style properties are mapped to table columns. --> |
| |
| <!ELEMENT property (meta*,(column|formula)*,type?)> |
| <!ATTLIST property name CDATA #REQUIRED> |
| <!ATTLIST property node CDATA #IMPLIED> |
| <!ATTLIST property access CDATA #IMPLIED> |
| <!ATTLIST property type CDATA #IMPLIED> |
| <!ATTLIST property column CDATA #IMPLIED> |
| <!ATTLIST property length CDATA #IMPLIED> |
| <!ATTLIST property precision CDATA #IMPLIED> |
| <!ATTLIST property scale CDATA #IMPLIED> |
| <!ATTLIST property not-null (true|false) #IMPLIED> |
| <!ATTLIST property unique (true|false) "false"> |
| <!ATTLIST property unique-key CDATA #IMPLIED> |
| <!ATTLIST property index CDATA #IMPLIED> <!-- include the columns spanned by this property in an index --> |
| <!ATTLIST property update (true|false) #IMPLIED> |
| <!ATTLIST property insert (true|false) #IMPLIED> |
| <!ATTLIST property optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST property formula CDATA #IMPLIED> |
| <!ATTLIST property lazy (true|false) "false"> |
| <!ATTLIST property generated (never|insert|always) "never"> |
| |
| <!-- Declares the type of the containing property (overrides an eventually existing type |
| attribute of the property). May contain param elements to customize a ParametrizableType. --> |
| <!ELEMENT type (param*)> |
| <!ATTLIST type name CDATA #REQUIRED> |
| |
| <!-- Declares an association between two entities (Or from a component, component element, |
| etc. to an entity). --> |
| |
| <!ELEMENT many-to-one (meta*,(column|formula)*)> |
| <!ATTLIST many-to-one name CDATA #REQUIRED> |
| <!ATTLIST many-to-one access CDATA #IMPLIED> |
| <!ATTLIST many-to-one class CDATA #IMPLIED> |
| <!ATTLIST many-to-one entity-name CDATA #IMPLIED> |
| <!ATTLIST many-to-one column CDATA #IMPLIED> |
| <!ATTLIST many-to-one not-null (true|false) #IMPLIED> |
| <!ATTLIST many-to-one unique (true|false) "false"> |
| <!ATTLIST many-to-one unique-key CDATA #IMPLIED> |
| <!ATTLIST many-to-one index CDATA #IMPLIED> |
| <!ATTLIST many-to-one cascade CDATA #IMPLIED> |
| <!ATTLIST many-to-one outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST many-to-one fetch (join|select) #IMPLIED> |
| <!ATTLIST many-to-one update (true|false) "true"> |
| <!ATTLIST many-to-one insert (true|false) "true"> |
| <!ATTLIST many-to-one optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST many-to-one foreign-key CDATA #IMPLIED> |
| <!ATTLIST many-to-one property-ref CDATA #IMPLIED> |
| <!ATTLIST many-to-one formula CDATA #IMPLIED> |
| <!ATTLIST many-to-one lazy (false|proxy|no-proxy) #IMPLIED> |
| <!ATTLIST many-to-one not-found (exception|ignore) "exception"> |
| <!ATTLIST many-to-one node CDATA #IMPLIED> |
| <!ATTLIST many-to-one embed-xml (true|false) "true"> |
| |
| <!-- Declares a one-to-one association between two entities (Or from a component, |
| component element, etc. to an entity). --> |
| |
| <!ELEMENT one-to-one (meta*,formula*)> |
| <!ATTLIST one-to-one name CDATA #REQUIRED> |
| <!ATTLIST one-to-one formula CDATA #IMPLIED> |
| <!ATTLIST one-to-one access CDATA #IMPLIED> |
| <!ATTLIST one-to-one class CDATA #IMPLIED> |
| <!ATTLIST one-to-one entity-name CDATA #IMPLIED> |
| <!ATTLIST one-to-one cascade CDATA #IMPLIED> |
| <!ATTLIST one-to-one outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST one-to-one fetch (join|select) #IMPLIED> |
| <!ATTLIST one-to-one constrained (true|false) "false"> |
| <!ATTLIST one-to-one foreign-key CDATA #IMPLIED> |
| <!ATTLIST one-to-one property-ref CDATA #IMPLIED> |
| <!ATTLIST one-to-one lazy (false|proxy|no-proxy) #IMPLIED> |
| <!ATTLIST one-to-one node CDATA #IMPLIED> |
| <!ATTLIST one-to-one embed-xml (true|false) "true"> |
| |
| <!-- A property embedded in a composite identifier or map index (always not-null). --> |
| |
| <!ELEMENT key-property (meta*,column*,type?)> |
| <!ATTLIST key-property name CDATA #REQUIRED> |
| <!ATTLIST key-property access CDATA #IMPLIED> |
| <!ATTLIST key-property type CDATA #IMPLIED> |
| <!ATTLIST key-property column CDATA #IMPLIED> |
| <!ATTLIST key-property length CDATA #IMPLIED> |
| <!ATTLIST key-property node CDATA #IMPLIED> |
| |
| <!-- A many-to-one association embedded in a composite identifier or map index |
| (always not-null, never cascade). --> |
| |
| <!ELEMENT key-many-to-one (meta*,column*)> |
| <!ATTLIST key-many-to-one name CDATA #REQUIRED> |
| <!ATTLIST key-many-to-one access CDATA #IMPLIED> |
| <!ATTLIST key-many-to-one class CDATA #IMPLIED> |
| <!ATTLIST key-many-to-one entity-name CDATA #IMPLIED> |
| <!ATTLIST key-many-to-one column CDATA #IMPLIED> |
| <!ATTLIST key-many-to-one foreign-key CDATA #IMPLIED> |
| <!ATTLIST key-many-to-one lazy (false|proxy) #IMPLIED> |
| |
| <!-- An "any" association is a polymorphic association to any table with |
| the given identifier type. The first listed column is a VARCHAR column |
| holding the name of the class (for that row). --> |
| |
| <!ELEMENT any (meta*,meta-value*,column,column+)> |
| <!ATTLIST any id-type CDATA #REQUIRED> |
| <!ATTLIST any meta-type CDATA #IMPLIED> <!--- default: Hibernate.STRING --> |
| <!ATTLIST any name CDATA #REQUIRED> |
| <!ATTLIST any access CDATA #IMPLIED> |
| <!ATTLIST any insert (true|false) "true"> |
| <!ATTLIST any update (true|false) "true"> |
| <!ATTLIST any cascade CDATA #IMPLIED> |
| <!ATTLIST any index CDATA #IMPLIED> <!-- include the columns spanned by this association in an index --> |
| <!ATTLIST any optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST any lazy (true|false) "false"> |
| <!ATTLIST any node CDATA #IMPLIED> |
| |
| <!ELEMENT meta-value EMPTY> |
| <!ATTLIST meta-value value CDATA #REQUIRED> |
| <!ATTLIST meta-value class CDATA #REQUIRED> |
| |
| <!-- A component is a user-defined class, persisted along with its containing entity |
| to the table of the entity class. JavaBeans style properties of the component are |
| mapped to columns of the table of the containing entity. A null component reference |
| is mapped to null values in all columns and vice versa. Components do not support |
| shared reference semantics. --> |
| |
| <!ELEMENT component ( |
| meta*, |
| tuplizer*, |
| parent?, |
| (property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|array|primitive-array)* |
| )> |
| <!ATTLIST component class CDATA #IMPLIED> |
| <!ATTLIST component name CDATA #REQUIRED> |
| <!ATTLIST component access CDATA #IMPLIED> |
| <!ATTLIST component unique (true|false) "false"> |
| <!ATTLIST component update (true|false) "true"> |
| <!ATTLIST component insert (true|false) "true"> |
| <!ATTLIST component lazy (true|false) "false"> |
| <!ATTLIST component optimistic-lock (true|false) "true"> |
| <!ATTLIST component node CDATA #IMPLIED> |
| |
| <!-- A dynamic-component maps columns of the database entity to a java.util.Map |
| at the Java level --> |
| |
| <!ELEMENT dynamic-component ( |
| (property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|array|primitive-array)* |
| )> |
| <!ATTLIST dynamic-component name CDATA #REQUIRED> |
| <!ATTLIST dynamic-component access CDATA #IMPLIED> |
| <!ATTLIST dynamic-component unique (true|false) "false"> |
| <!ATTLIST dynamic-component update (true|false) "true"> |
| <!ATTLIST dynamic-component insert (true|false) "true"> |
| <!ATTLIST dynamic-component optimistic-lock (true|false) "true"> |
| <!ATTLIST dynamic-component node CDATA #IMPLIED> |
| |
| <!-- properties declares that the contained properties form an alternate key. The name |
| attribute allows an alternate key to be used as the target of a property-ref. --> |
| |
| <!ELEMENT properties ( |
| (property|many-to-one|component|dynamic-component)* |
| )> |
| <!ATTLIST properties name CDATA #REQUIRED> |
| <!ATTLIST properties unique (true|false) "false"> |
| <!ATTLIST properties insert (true|false) "true"> |
| <!ATTLIST properties update (true|false) "true"> |
| <!ATTLIST properties optimistic-lock (true|false) "true"> |
| <!ATTLIST properties node CDATA #IMPLIED> |
| |
| <!-- The parent element maps a property of the component class as a pointer back to |
| the owning entity. --> |
| |
| <!ELEMENT parent EMPTY> |
| <!ATTLIST parent name CDATA #REQUIRED> |
| |
| <!-- Collection declarations nested inside a class declaration indicate a foreign key |
| relationship from the collection table to the enclosing class. --> |
| |
| <!ELEMENT map ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| key, |
| (map-key|composite-map-key|map-key-many-to-many|index|composite-index|index-many-to-many|index-many-to-any), |
| (element|one-to-many|many-to-many|composite-element|many-to-any), |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all?, |
| filter* |
| )> |
| <!ATTLIST map name CDATA #REQUIRED> |
| <!ATTLIST map access CDATA #IMPLIED> |
| <!ATTLIST map table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST map schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST map subselect CDATA #IMPLIED> |
| <!ATTLIST map catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST map lazy (true|false|extra) #IMPLIED> |
| <!ATTLIST map mutable (true|false) "true"> |
| <!ATTLIST map inverse (true|false) "false"> |
| <!ATTLIST map sort CDATA "unsorted"> <!-- unsorted|natural|"comparator class", default: unsorted --> |
| <!ATTLIST map cascade CDATA #IMPLIED> |
| <!ATTLIST map order-by CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST map where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST map batch-size CDATA #IMPLIED> |
| <!ATTLIST map outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST map fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST map check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST map persister CDATA #IMPLIED> |
| <!ATTLIST map collection-type CDATA #IMPLIED> |
| <!ATTLIST map optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST map node CDATA #IMPLIED> |
| <!ATTLIST map embed-xml (true|false) "true"> |
| |
| <!ELEMENT set ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| key, |
| (element|one-to-many|many-to-many|composite-element|many-to-any), |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all?, |
| filter* |
| )> |
| <!ATTLIST set name CDATA #REQUIRED> |
| <!ATTLIST set access CDATA #IMPLIED> |
| <!ATTLIST set table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST set schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST set catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST set subselect CDATA #IMPLIED> |
| <!ATTLIST set lazy (true|false|extra) #IMPLIED> |
| <!ATTLIST set sort CDATA "unsorted"> <!-- unsorted|natural|"comparator class" --> |
| <!ATTLIST set inverse (true|false) "false"> |
| <!ATTLIST set mutable (true|false) "true"> |
| <!ATTLIST set cascade CDATA #IMPLIED> |
| <!ATTLIST set order-by CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST set where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST set batch-size CDATA #IMPLIED> |
| <!ATTLIST set outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST set fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST set persister CDATA #IMPLIED> |
| <!ATTLIST set collection-type CDATA #IMPLIED> |
| <!ATTLIST set check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST set optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST set node CDATA #IMPLIED> |
| <!ATTLIST set embed-xml (true|false) "true"> |
| |
| <!ELEMENT bag ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| key, |
| (element|one-to-many|many-to-many|composite-element|many-to-any), |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all?, |
| filter* |
| )> |
| <!ATTLIST bag name CDATA #REQUIRED> |
| <!ATTLIST bag access CDATA #IMPLIED> |
| <!ATTLIST bag table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST bag schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST bag catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST bag subselect CDATA #IMPLIED> |
| <!ATTLIST bag lazy (true|false|extra) #IMPLIED> |
| <!ATTLIST bag inverse (true|false) "false"> |
| <!ATTLIST bag mutable (true|false) "true"> |
| <!ATTLIST bag cascade CDATA #IMPLIED> |
| <!ATTLIST bag order-by CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST bag where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST bag batch-size CDATA #IMPLIED> |
| <!ATTLIST bag outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST bag fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST bag persister CDATA #IMPLIED> |
| <!ATTLIST bag collection-type CDATA #IMPLIED> |
| <!ATTLIST bag check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST bag optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST bag node CDATA #IMPLIED> |
| <!ATTLIST bag embed-xml (true|false) "true"> |
| |
| <!ELEMENT idbag ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| collection-id, |
| key, |
| (element|many-to-many|composite-element|many-to-any), |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all?, |
| filter* |
| )> |
| <!ATTLIST idbag name CDATA #REQUIRED> |
| <!ATTLIST idbag access CDATA #IMPLIED> |
| <!ATTLIST idbag table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST idbag schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST idbag catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST idbag subselect CDATA #IMPLIED> |
| <!ATTLIST idbag lazy (true|false|extra) #IMPLIED> |
| <!ATTLIST idbag mutable (true|false) "true"> |
| <!ATTLIST idbag cascade CDATA #IMPLIED> |
| <!ATTLIST idbag order-by CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST idbag where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST idbag batch-size CDATA #IMPLIED> |
| <!ATTLIST idbag outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST idbag fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST idbag persister CDATA #IMPLIED> |
| <!ATTLIST idbag collection-type CDATA #IMPLIED> |
| <!ATTLIST idbag check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST idbag optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST idbag node CDATA #IMPLIED> |
| <!ATTLIST idbag embed-xml (true|false) "true"> |
| |
| <!ELEMENT list ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| key, |
| (index|list-index), |
| (element|one-to-many|many-to-many|composite-element|many-to-any), |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all?, |
| filter* |
| )> |
| <!ATTLIST list name CDATA #REQUIRED> |
| <!ATTLIST list access CDATA #IMPLIED> |
| <!ATTLIST list table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST list schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST list catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST list subselect CDATA #IMPLIED> |
| <!ATTLIST list lazy (true|false|extra) #IMPLIED> |
| <!ATTLIST list inverse (true|false) "false"> |
| <!ATTLIST list mutable (true|false) "true"> |
| <!ATTLIST list cascade CDATA #IMPLIED> |
| <!ATTLIST list where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST list batch-size CDATA #IMPLIED> |
| <!ATTLIST list outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST list fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST list persister CDATA #IMPLIED> |
| <!ATTLIST list collection-type CDATA #IMPLIED> |
| <!ATTLIST list check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST list optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST list node CDATA #IMPLIED> |
| <!ATTLIST list embed-xml (true|false) "true"> |
| |
| <!ELEMENT array ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| key, |
| (index|list-index), |
| (element|one-to-many|many-to-many|composite-element|many-to-any), |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all? |
| )> |
| <!ATTLIST array name CDATA #REQUIRED> |
| <!ATTLIST array access CDATA #IMPLIED> |
| <!ATTLIST array table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST array schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST array catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST array subselect CDATA #IMPLIED> |
| <!ATTLIST array inverse (true|false) "false"> |
| <!ATTLIST array mutable (true|false) "true"> |
| <!ATTLIST array element-class CDATA #IMPLIED> |
| <!ATTLIST array cascade CDATA #IMPLIED> |
| <!ATTLIST array where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST array batch-size CDATA #IMPLIED> |
| <!ATTLIST array outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST array fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST array persister CDATA #IMPLIED> |
| <!ATTLIST array collection-type CDATA #IMPLIED> |
| <!ATTLIST array check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST array optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST array node CDATA #IMPLIED> |
| <!ATTLIST array embed-xml (true|false) "true"> |
| |
| <!ELEMENT primitive-array ( |
| meta*, |
| subselect?, |
| cache?, |
| synchronize*, |
| comment?, |
| key, |
| (index|list-index), |
| element, |
| loader?,sql-insert?,sql-update?,sql-delete?,sql-delete-all? |
| )> |
| <!ATTLIST primitive-array name CDATA #REQUIRED> |
| <!ATTLIST primitive-array access CDATA #IMPLIED> |
| <!ATTLIST primitive-array table CDATA #IMPLIED> <!-- default: name --> |
| <!ATTLIST primitive-array schema CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST primitive-array catalog CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST primitive-array subselect CDATA #IMPLIED> |
| <!ATTLIST primitive-array mutable (true|false) "true"> |
| <!ATTLIST primitive-array where CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST primitive-array batch-size CDATA #IMPLIED> |
| <!ATTLIST primitive-array outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST primitive-array fetch (join|select|subselect) #IMPLIED> |
| <!ATTLIST primitive-array persister CDATA #IMPLIED> |
| <!ATTLIST primitive-array collection-type CDATA #IMPLIED> |
| <!ATTLIST primitive-array check CDATA #IMPLIED> <!-- default: none --> |
| <!ATTLIST primitive-array optimistic-lock (true|false) "true"> <!-- only supported for properties of a class (not component) --> |
| <!ATTLIST primitive-array node CDATA #IMPLIED> |
| <!ATTLIST primitive-array embed-xml (true|false) "true"> |
| |
| <!-- Declares the element type of a collection of basic type --> |
| |
| <!ELEMENT element ( (column|formula)*, type? )> |
| <!ATTLIST element column CDATA #IMPLIED> |
| <!ATTLIST element node CDATA #IMPLIED> |
| <!ATTLIST element formula CDATA #IMPLIED> |
| <!ATTLIST element type CDATA #IMPLIED> |
| <!ATTLIST element length CDATA #IMPLIED> |
| <!ATTLIST element precision CDATA #IMPLIED> |
| <!ATTLIST element scale CDATA #IMPLIED> |
| <!ATTLIST element not-null (true|false) "false"> |
| <!ATTLIST element unique (true|false) "false"> |
| |
| <!-- One to many association. This tag declares the entity-class |
| element type of a collection and specifies a one-to-many relational model --> |
| |
| <!ELEMENT one-to-many EMPTY> |
| <!ATTLIST one-to-many class CDATA #IMPLIED> |
| <!ATTLIST one-to-many not-found (exception|ignore) "exception"> |
| <!ATTLIST one-to-many node CDATA #IMPLIED> |
| <!ATTLIST one-to-many embed-xml (true|false) "true"> |
| <!ATTLIST one-to-many entity-name CDATA #IMPLIED> |
| <!-- No column declaration attributes required in this case. The primary |
| key column of the associated class is already mapped elsewhere.--> |
| |
| <!-- Many to many association. This tag declares the entity-class |
| element type of a collection and specifies a many-to-many relational model --> |
| |
| <!ELEMENT many-to-many (meta*,(column|formula)*,filter*)> |
| <!ATTLIST many-to-many class CDATA #IMPLIED> |
| <!ATTLIST many-to-many node CDATA #IMPLIED> |
| <!ATTLIST many-to-many embed-xml (true|false) "true"> |
| <!ATTLIST many-to-many entity-name CDATA #IMPLIED> |
| <!ATTLIST many-to-many column CDATA #IMPLIED> |
| <!ATTLIST many-to-many formula CDATA #IMPLIED> |
| <!ATTLIST many-to-many not-found (exception|ignore) "exception"> |
| <!ATTLIST many-to-many outer-join (true|false|auto) #IMPLIED> |
| <!ATTLIST many-to-many fetch (join|select) #IMPLIED> |
| <!ATTLIST many-to-many lazy (false|proxy) #IMPLIED> |
| <!ATTLIST many-to-many foreign-key CDATA #IMPLIED> |
| <!ATTLIST many-to-many unique (true|false) "false"> |
| <!ATTLIST many-to-many where CDATA #IMPLIED> |
| <!ATTLIST many-to-many order-by CDATA #IMPLIED> |
| <!ATTLIST many-to-many property-ref CDATA #IMPLIED> |
| |
| <!-- A composite element allows a collection to hold instances of an arbitrary |
| class, without the requirement of joining to an entity table. Composite elements |
| have component semantics - no shared references and ad hoc null value semantics. |
| Composite elements may not hold nested collections. --> |
| |
| <!ELEMENT composite-element ( |
| (meta*), |
| parent?, |
| (property|many-to-one|any|nested-composite-element)* |
| )> |
| <!ATTLIST composite-element class CDATA #REQUIRED> |
| <!ATTLIST composite-element node CDATA #IMPLIED> |
| |
| <!ELEMENT nested-composite-element ( |
| parent?, |
| (property|many-to-one|any|nested-composite-element)* |
| )> |
| <!ATTLIST nested-composite-element class CDATA #REQUIRED> |
| <!ATTLIST nested-composite-element name CDATA #REQUIRED> |
| <!ATTLIST nested-composite-element access CDATA #IMPLIED> |
| <!ATTLIST nested-composite-element node CDATA #IMPLIED> |
| |
| <!-- Declares the column name of a foreign key. --> |
| |
| <!ELEMENT key (column*)> |
| <!ATTLIST key column CDATA #IMPLIED> |
| <!ATTLIST key property-ref CDATA #IMPLIED> |
| <!ATTLIST key foreign-key CDATA #IMPLIED> |
| <!ATTLIST key on-delete (cascade|noaction) "noaction"> |
| <!ATTLIST key not-null (true|false) #IMPLIED> |
| <!ATTLIST key update (true|false) #IMPLIED> |
| <!ATTLIST key unique (true|false) #IMPLIED> |
| |
| <!-- Declares the type and column mapping for a collection index (array or |
| list index, or key of a map). --> |
| |
| <!ELEMENT list-index (column?)> |
| <!ATTLIST list-index column CDATA #IMPLIED> |
| <!ATTLIST list-index base CDATA "0"> |
| |
| <!ELEMENT map-key ((column|formula)*)> |
| <!ATTLIST map-key column CDATA #IMPLIED> |
| <!ATTLIST map-key formula CDATA #IMPLIED> |
| <!ATTLIST map-key type CDATA #REQUIRED> |
| <!ATTLIST map-key length CDATA #IMPLIED> |
| <!ATTLIST map-key node CDATA #IMPLIED> |
| |
| <!ELEMENT index (column*)> |
| <!ATTLIST index column CDATA #IMPLIED> |
| <!ATTLIST index type CDATA #IMPLIED> <!-- required for maps --> |
| <!ATTLIST index length CDATA #IMPLIED> |
| |
| <!-- Many to many association mapped to the key of a map. ie. a map keyed |
| on entities. --> |
| |
| <!ELEMENT map-key-many-to-many ((column|formula)*)> |
| <!ATTLIST map-key-many-to-many class CDATA #IMPLIED> |
| <!ATTLIST map-key-many-to-many entity-name CDATA #IMPLIED> |
| <!ATTLIST map-key-many-to-many column CDATA #IMPLIED> |
| <!ATTLIST map-key-many-to-many formula CDATA #IMPLIED> |
| <!ATTLIST map-key-many-to-many foreign-key CDATA #IMPLIED> |
| |
| <!ELEMENT index-many-to-many (column*)> |
| <!ATTLIST index-many-to-many class CDATA #REQUIRED> |
| <!ATTLIST index-many-to-many entity-name CDATA #IMPLIED> |
| <!ATTLIST index-many-to-many column CDATA #IMPLIED> |
| <!ATTLIST index-many-to-many foreign-key CDATA #IMPLIED> |
| |
| <!-- Composite index of a map ie. a map keyed on components. --> |
| |
| <!ELEMENT composite-map-key ( (key-property|key-many-to-one)+ )> |
| <!ATTLIST composite-map-key class CDATA #REQUIRED> |
| |
| <!ELEMENT composite-index ( (key-property|key-many-to-one)+ )> |
| <!ATTLIST composite-index class CDATA #REQUIRED> |
| |
| <!-- A "many to any" defines a polymorphic association to any table |
| with the given identifier type. The first listed column is a VARCHAR column |
| holding the name of the class (for that row). --> |
| |
| <!ELEMENT many-to-any (meta-value*,column, column+)> |
| <!ATTLIST many-to-any id-type CDATA #REQUIRED> |
| <!ATTLIST many-to-any meta-type CDATA #IMPLIED> <!--- default: Hibernate.CLASS --> |
| |
| <!ELEMENT index-many-to-any (column, column+)> |
| <!ATTLIST index-many-to-any id-type CDATA #REQUIRED> |
| <!ATTLIST index-many-to-any meta-type CDATA #IMPLIED> <!--- default: Hibernate.CLASS --> |
| |
| <!ELEMENT collection-id (meta*, column*, generator)> |
| <!ATTLIST collection-id column CDATA #REQUIRED> |
| <!ATTLIST collection-id type CDATA #REQUIRED> |
| <!ATTLIST collection-id length CDATA #IMPLIED> |
| |
| <!-- Generators generate unique identifiers. The class attribute specifies a Java |
| class implementing an id generation algorithm. --> |
| |
| <!ELEMENT generator (param*)> |
| <!ATTLIST generator class CDATA #REQUIRED> |
| <!ELEMENT param (#PCDATA)> |
| <!ATTLIST param name CDATA #REQUIRED> |
| |
| <!-- The column element is an alternative to column attributes and required for |
| mapping associations to classes with composite ids. --> |
| |
| <!ELEMENT column (comment?)> |
| <!ATTLIST column name CDATA #REQUIRED> |
| <!ATTLIST column length CDATA #IMPLIED> <!-- default: 255 --> |
| <!ATTLIST column precision CDATA #IMPLIED> |
| <!ATTLIST column scale CDATA #IMPLIED> |
| <!ATTLIST column not-null (true|false) #IMPLIED> <!-- default: false (except for id properties) --> |
| <!ATTLIST column unique (true|false) #IMPLIED> <!-- default: false (except for id properties) --> |
| <!ATTLIST column unique-key CDATA #IMPLIED> <!-- default: no unique key --> |
| <!ATTLIST column sql-type CDATA #IMPLIED> <!-- override default column type for hibernate type --> |
| <!ATTLIST column index CDATA #IMPLIED> |
| <!ATTLIST column check CDATA #IMPLIED> <!-- default: no check constraint --> |
| <!ATTLIST column default CDATA #IMPLIED> <!-- default: no default value --> |
| |
| <!-- The formula and subselect elements allow us to map derived properties and |
| entities. --> |
| |
| <!ELEMENT formula (#PCDATA)> |
| <!ELEMENT subselect (#PCDATA)> |
| |
| <!-- The cache element enables caching of an entity class. --> |
| <!ELEMENT cache EMPTY> |
| <!ATTLIST cache usage (read-only|read-write|nonstrict-read-write|transactional) #REQUIRED> |
| <!ATTLIST cache region CDATA #IMPLIED> <!-- default: class or collection role name --> |
| <!ATTLIST cache include (all|non-lazy) "all"> |
| |
| <!-- The comment element allows definition of a database table or column comment. --> |
| |
| <!ELEMENT comment (#PCDATA)> |
| |
| <!-- The loader element allows specification of a named query to be used for fetching |
| an entity or collection --> |
| |
| <!ELEMENT loader EMPTY> |
| <!ATTLIST loader query-ref CDATA #REQUIRED> |
| |
| <!-- The query element declares a named Hibernate query string --> |
| |
| <!ELEMENT query (#PCDATA|query-param)*> |
| <!ATTLIST query name CDATA #REQUIRED> |
| <!ATTLIST query flush-mode (auto|never|always) #IMPLIED> |
| <!ATTLIST query cacheable (true|false) "false"> |
| <!ATTLIST query cache-region CDATA #IMPLIED> |
| <!ATTLIST query fetch-size CDATA #IMPLIED> |
| <!ATTLIST query timeout CDATA #IMPLIED> |
| <!ATTLIST query cache-mode (get|ignore|normal|put|refresh) #IMPLIED> |
| <!ATTLIST query read-only (true|false) #IMPLIED> |
| <!ATTLIST query comment CDATA #IMPLIED> |
| |
| <!-- The sql-query element declares a named SQL query string --> |
| |
| <!ELEMENT sql-query (#PCDATA|return-scalar|return|return-join|load-collection|synchronize|query-param)*> |
| <!ATTLIST sql-query name CDATA #REQUIRED> |
| <!ATTLIST sql-query resultset-ref CDATA #IMPLIED> |
| <!ATTLIST sql-query flush-mode (auto|never|always) #IMPLIED> |
| <!ATTLIST sql-query cacheable (true|false) "false"> |
| <!ATTLIST sql-query cache-region CDATA #IMPLIED> |
| <!ATTLIST sql-query fetch-size CDATA #IMPLIED> |
| <!ATTLIST sql-query timeout CDATA #IMPLIED> |
| <!ATTLIST sql-query cache-mode (get|ignore|normal|put|refresh) #IMPLIED> |
| <!ATTLIST sql-query read-only (true|false) #IMPLIED> |
| <!ATTLIST sql-query comment CDATA #IMPLIED> |
| <!ATTLIST sql-query callable (true|false) "false"> |
| |
| <!-- The query-param element is used only by tools that generate |
| finder methods for named queries --> |
| |
| <!ELEMENT query-param EMPTY> |
| <!ATTLIST query-param name CDATA #REQUIRED> |
| <!ATTLIST query-param type CDATA #REQUIRED> |
| |
| <!-- The resultset element declares a named resultset mapping definition for SQL queries --> |
| <!ELEMENT resultset (return-scalar|return|return-join|load-collection)*> |
| <!ATTLIST resultset name CDATA #REQUIRED> |
| |
| <!-- |
| Defines a return component for a sql-query. Alias refers to the alias |
| used in the actual sql query; lock-mode specifies the locking to be applied |
| when the query is executed. The class, collection, and role attributes are mutually exclusive; |
| class refers to the class name of a "root entity" in the object result; collection refers |
| to a collection of a given class and is used to define custom sql to load that owned collection |
| and takes the form "ClassName.propertyName"; role refers to the property path for an eager fetch |
| and takes the form "owningAlias.propertyName" |
| --> |
| <!ELEMENT return (return-discriminator?,return-property)*> |
| <!ATTLIST return alias CDATA #IMPLIED> |
| <!ATTLIST return entity-name CDATA #IMPLIED> |
| <!ATTLIST return class CDATA #IMPLIED> |
| <!ATTLIST return lock-mode (none|read|upgrade|upgrade-nowait|write) "read"> |
| |
| <!ELEMENT return-property (return-column*)> |
| <!ATTLIST return-property name CDATA #REQUIRED> |
| <!ATTLIST return-property column CDATA #IMPLIED> |
| |
| <!ELEMENT return-column EMPTY> |
| <!ATTLIST return-column name CDATA #REQUIRED> |
| |
| <!ELEMENT return-discriminator EMPTY> |
| <!ATTLIST return-discriminator column CDATA #REQUIRED> |
| |
| <!ELEMENT return-join (return-property)*> |
| <!ATTLIST return-join alias CDATA #REQUIRED> |
| <!ATTLIST return-join property CDATA #REQUIRED> |
| <!ATTLIST return-join lock-mode (none|read|upgrade|upgrade-nowait|write) "read"> |
| |
| <!ELEMENT load-collection (return-property)*> |
| <!ATTLIST load-collection alias CDATA #REQUIRED> |
| <!ATTLIST load-collection role CDATA #REQUIRED> |
| <!ATTLIST load-collection lock-mode (none|read|upgrade|upgrade-nowait|write) "read"> |
| |
| <!ELEMENT return-scalar EMPTY> |
| <!ATTLIST return-scalar column CDATA #REQUIRED> |
| <!ATTLIST return-scalar type CDATA #IMPLIED> |
| |
| <!ELEMENT synchronize EMPTY> |
| <!ATTLIST synchronize table CDATA #REQUIRED> |
| |
| <!-- custom sql operations --> |
| <!ELEMENT sql-insert (#PCDATA)> |
| <!ATTLIST sql-insert callable (true|false) "false"> |
| <!ATTLIST sql-insert check (none|rowcount|param) #IMPLIED> |
| |
| <!ELEMENT sql-update (#PCDATA)> |
| <!ATTLIST sql-update callable (true|false) "false"> |
| <!ATTLIST sql-update check (none|rowcount|param) #IMPLIED> |
| |
| <!ELEMENT sql-delete (#PCDATA)> |
| <!ATTLIST sql-delete callable (true|false) "false"> |
| <!ATTLIST sql-delete check (none|rowcount|param) #IMPLIED> |
| |
| <!ELEMENT sql-delete-all (#PCDATA)> |
| <!ATTLIST sql-delete-all callable (true|false) "false"> |
| <!ATTLIST sql-delete-all check (none|rowcount|param) #IMPLIED> |
| |
| <!-- |
| Element for defining "auxiliary" database objects. Must be one of two forms: |
| |
| #1 : |
| <database-object> |
| <definition class="CustomClassExtendingAuxiliaryObject"/> |
| </database-object> |
| |
| #2 : |
| <database-object> |
| <create>CREATE OR REPLACE ....</create> |
| <drop>DROP ....</drop> |
| </database-object> |
| --> |
| <!ELEMENT database-object ( (definition|(create,drop)), dialect-scope* )> |
| |
| <!ELEMENT definition EMPTY> |
| <!ATTLIST definition class CDATA #REQUIRED> |
| |
| <!ELEMENT create (#PCDATA)> |
| <!ELEMENT drop (#PCDATA)> |
| |
| <!-- |
| dialect-scope element allows scoping auxiliary-objects to a particular |
| Hibernate dialect implementation. |
| --> |
| <!ELEMENT dialect-scope (#PCDATA)> |
| <!ATTLIST dialect-scope name CDATA #REQUIRED> |
| |