⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hibernate-mapping-3.0.dtd

📁 Hibernate开发及整合应用大全 蔡雪焘编著 本书用典型的示例剖析Hibernate开发中的重点和难点
💻 DTD
📖 第 1 页 / 共 3 页
字号:
	<!ATTLIST list node CDATA #IMPLIED>
	<!ATTLIST list embed-xml (true|false) "true">

<!ELEMENT array (
	meta*,
	subselect?,
	cache?,
	synchronize*,
	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 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) #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*,
	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 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) #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)*>
	<!ATTLIST element column CDATA #IMPLIED>
	<!ATTLIST element node CDATA #IMPLIED>
	<!ATTLIST element formula CDATA #IMPLIED>
	<!ATTLIST element type CDATA #REQUIRED>
	<!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 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)*)>
	<!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 outer-join (true|false|auto) #IMPLIED>
	<!ATTLIST many-to-many fetch (join|select) "join">
	<!ATTLIST many-to-many foreign-key CDATA #IMPLIED>
	<!ATTLIST many-to-many unique (true|false) "false">

<!-- 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">
	<!ATTLIST list-index node CDATA #IMPLIED>

<!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>
	<!ATTLIST index node 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 EMPTY>
	<!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: none -->

<!-- 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 -->

<!-- A mapped query-list allows a named query to be attached to
a property of the domain model -->

<!ELEMENT query-list EMPTY>
	<!ATTLIST query-list name CDATA #REQUIRED>
	<!ATTLIST query-list query-ref CDATA #REQUIRED>

<!ELEMENT loader EMPTY>
	<!ATTLIST loader query-ref CDATA #REQUIRED>

<!-- The query element declares a named Hibernate query string -->

<!ELEMENT query (#PCDATA|representation)*>
	<!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>

<!ELEMENT representation EMPTY>
	<!ATTLIST representation name (pojo|dom4j|dynamic-map) #REQUIRED>

<!-- The sql-query element declares a named SQL query string -->
<!ELEMENT sql-query (#PCDATA|return-scalar|return|return-join|load-collection|synchronize)*>
	<!ATTLIST sql-query name CDATA #REQUIRED>
	<!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>

<!--
	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 EMPTY>
	<!ATTLIST return alias CDATA #REQUIRED>
	<!ATTLIST return class CDATA #REQUIRED>
	<!ATTLIST return lock-mode (none|read|upgrade|upgrade-nowait|write) "read">	

<!ELEMENT return-join EMPTY>
	<!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 EMPTY>
	<!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 #REQUIRED>

<!ELEMENT synchronize EMPTY>
	<!ATTLIST synchronize table CDATA #REQUIRED>
	
<!-- custom sql operations -->
<!ELEMENT sql-insert (#PCDATA)>
	<!ATTLIST sql-insert callable (true|false) "false">	

<!ELEMENT sql-update (#PCDATA)>
	<!ATTLIST sql-update callable (true|false) "false">	

<!ELEMENT sql-delete (#PCDATA)>
	<!ATTLIST sql-delete callable (true|false) "false">	

<!ELEMENT sql-delete-all (#PCDATA)>
	<!ATTLIST sql-delete-all callable (true|false) "false">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -