User: dsundstrom
  Date: 01/11/24 19:32:42

  Modified:    src/resources/org/jboss/metadata jbosscmp-jdbc.dtd
  Log:
  First review.
  
  Fixed alot of bugs and added missing sections.
  There are still problems with type-mapping and read-ahead that will require
  changes to the metadata classes.
  
  Revision  Changes    Path
  1.2       +387 -219  jboss/src/resources/org/jboss/metadata/jbosscmp-jdbc.dtd
  
  Index: jbosscmp-jdbc.dtd
  ===================================================================
  RCS file: /cvsroot/jboss/jboss/src/resources/org/jboss/metadata/jbosscmp-jdbc.dtd,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- jbosscmp-jdbc.dtd 2001/11/21 22:01:30     1.1
  +++ jbosscmp-jdbc.dtd 2001/11/25 03:32:42     1.2
  @@ -2,332 +2,500 @@
   
   <!--
   This is the XML DTD for the jbosscmp-jdbc deployment descriptor.
  -  <!DOCTYPE jaws PUBLIC
  +  <!DOCTYPE jbosscmp-jdbc PUBLIC
         "-//JBoss//DTD jbosscmp-jdbc//EN"
         "http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc.dtd";>
   -->
   
  -<!--                    jbosscmp-jdbc                              -->
  -<!--                    Top level element for jboss cmp2 for jdbc
  -                        datasources                                -->
  -<!ELEMENT  jbosscmp-jdbc
  -                        (defaults, (enterprise-beans, relationships?,
  -                         dependent-value-classes?)?)                   >
  +<!--
  +The root element of JBossCMP-JDBC configuration files.
  +-->
  +<!ELEMENT jbosscmp-jdbc (defaults, enterprise-beans?, relationships?,
  +         dependent-value-classes?, type-mappings?)>
   
  -<!--                    defaults                                   -->
  -<!--                    Default values for many entity bean
  -                        settings                                   -->
  -<!ELEMENT  defaults     (datasource, debug, create-table,
  -                         remove-table, tuned-updates, read-only,
  -                         time-out, select-for-update, pk-constraint,
  -                         relation-mapping-style)                     >
  +<!--
  +The optional defaults elements contains the default values for 
  +entities, and relationships.
  +-->
  +<!ELEMENT defaults (datasource?, type-mapping?, create-table?, remove-table?,
  +         read-only?, time-out?, select-for-update?, pk-constraint?,
  +         preferred-relation-mapping?, read-ahead?)>
   
   
  -<!--                    datasource                                 -->
  -<!--                    datasource for connections to underlying
  -                        persistent store.                          -->
  -<!ELEMENT  datasource   (#PCDATA)                                      >
  +<!--
  +The optional datasource element contains the jndi-name used to lookup
  +the datasource.  All database connections used by an entity or relation table are 
obtained from the datasource. 
  +-->
  +<!ELEMENT datasource (#PCDATA)>
   
   
  -<!--                    debug                                      -->
  -<!--                    Turns on sql logging                       -->
  -<!ELEMENT  debug        (#PCDATA)                                      >
   
  +<!--
  +Should the persistence manager attempt to create tables if they are 
  +not present?
   
  +The create-table element must be one of the two following:
  +         <create-table>true</create-table>
  +         <create-table>false</create-table>
  +-->
  +<!ELEMENT create-table (#PCDATA)>
   
   
  -<!--                    create-table                               -->
  -<!--                    Should the persistence manager attempt to
  -                        create tables if they are not present?
  -                        (true/false)                               -->
  -<!ELEMENT  create-table (#PCDATA)                                      >
  +<!--
  +Should the persistence manager attempt to remove tables during shutdown?
   
  +The remove-table element must be one of the two following:
  +         <remove-table>true</remove-table>
  +         <remove-table>false</remove-table>
  +-->
  +<!ELEMENT remove-table (#PCDATA)>
   
  -<!--                    remove-table                               -->
  -<!--                    Should the persistence manager attempt to
  -                        remove tables on shutdown? (true/false)    -->
  -<!ELEMENT  remove-table (#PCDATA)                                      >
   
  +<!--
  +Is the entity or cmp-field read-only?
   
  -<!--                    tuned-updates                              -->
  -<!--                    Should the persistence manager include
  -                        only modified fields in update statements?
  -                        (true/false)                               -->
  -<!ELEMENT  tuned-updates (#PCDATA)                                      >
  +The read-only element must be one of the two following:
  +         <read-only>true</read-only>
  +         <read-only>false</read-only>
  +-->
  +<!ELEMENT read-only (#PCDATA)>
   
   
  -<!--                    read-only                                  -->
  -<!--                    Is the bean read-only? (true/false)        -->
  -<!ELEMENT  read-only    (#PCDATA)                                      >
  +<!--
  +Specifies the ammount of time that a read-only field is considered
  +valid (milliseconds).
  +-->
  +<!ELEMENT time-out (#PCDATA)>
  +
  +
  +<!--
  +Should select statements the SELECT ... FOR UPDATE syntax?
  +
  +The select-for-update element must be one of the two following:
  +         <select-for-update>true</select-for-update>
  +         <select-for-update>false</select-for-update>
  +-->
  +<!ELEMENT select-for-update (#PCDATA)>
   
   
  -<!--                    time-out                                   -->
  -<!--                    Timeout value for connection activity 
  -                        (milliseconds).                            -->
  -<!ELEMENT  time-out     (#PCDATA)                                      >
  +<!--
  +Should a primary key constraint be added when creating tables?
   
  +The pk-constraint element must be one of the two following:
  +         <pk-constraint>true</pk-constraint>
  +         <pk-constraint>false</pk-constraint>
  +-->
  +<!ELEMENT pk-constraint (#PCDATA)>
   
  -<!--                    select-for-update                          -->
  -<!--                    Should select statements lock using select
  -                        for update? (true/false)                   -->
  -<!ELEMENT  select-for-update
  -                        (#PCDATA)                                      >
   
  +<!--
  +Specifies the preferred mapping style for relationships.
   
  -<!--                    pk-constraint                              -->
  -<!--                    Should the persistence manager generate
  -                        primary keys for generated tables?
  -                        (true/false)                               -->
  -<!ELEMENT  pk-constraint(#PCDATA)                                      >
  +The preferred-relation-mapping element must be one of the two following:
  +   <preferred-relation-mapping>foreign-key</preferred-relation-mapping>
  +   <preferred-relation-mapping>relation-table</preferred-relation-mapping>
  +-->
  +<!ELEMENT preferred-relation-mapping (#PCDATA)>
   
  +<!--
  +The read-ahead element can use either #PCDATA (true/false) or a 
  +strategy, limit, and cache-size element, but not both.  This 
  +is a problem for most parsers, because it has mixed types.
  +We should change this synatx.
  +-->
   
  -<!--                    relation-mapping-style                     -->
  -<!--                    Relation mapping style (foreign-key/??)    -->
  -<!ELEMENT  relation-mapping-style
  -                        (#PCDATA)                                      >
  +<!--
  +Specifies the read ahead strategy.
   
  +The read-ahead element must be one of the following:
  +         <read-ahead>true</read-ahead>
   
  +         <read-ahead>false</read-ahead>
  +         
  +         <read-ahead>
  +            <strategy>none</strategy>
  +         </read-ahead>
  +
  +         <read-ahead>
  +            <strategy>on-load</strategy>
  +            <limit>255</limit>
  +            <cache-size>1000</cache-size>
  +         </read-ahead>
  +-->
  +<!ELEMENT read-ahead ANY>
   
  -<!--                    enterprise-beans                           -->
  -<!--                    Element containing all enterprise beans
  -                        for cmp-2                                  -->
  -<!ELEMENT  enterprise-beans
  -                        (entity*)                                    >
  +<!--
  +Specifies the strategy used to read-ahead data in queries.
   
  -<!--                    entity                                     -->
  -<!--                    Metadata for one entity bean               -->
  -<!ELEMENT  entity       (ejb-name, datasource?, table-name?, cmp-field*,
  -                         eager-load?, lazy-load-groups*, query*)      >
  +The strategy element must be one of the two following:
  +         <strategy>none</strategy>
  +         <strategy>on-load</strategy>
  +-->
  +<!ELEMENT strategy (#PCDATA)>
   
   
  -<!--                    ejb-name                                   -->
  -<!--                    Name of the entity ejb                     -->
  -<!ELEMENT  ejb-name     (#PCDATA)                                      >
  +<!--
  +Specifies the number of entities that will be read in a single 
  +read-ahead load query. This is effectively the page size. 
  +-->
  +<!ELEMENT limit (#PCDATA)>
   
   
  -<!--                    table-name                                 -->
  -<!--                    Name of the database table to store
  -                        entities in                                -->
  -<!ELEMENT  table-name   (#PCDATA)                                      >
  +<!--
  +Specifies the number of simultaneous queries that can be served by 
  +the cache for an entity. 
  +-->
  +<!ELEMENT cache-size (#PCDATA)>
   
   
  -<!--                    cmp-field                                  -->
  -<!--                    Metadata for one cmp field                 -->
  -<!ELEMENT  cmp-field    (field-name, ((column-name, jdbc-type?,
  -                         sql-type?) | (property*)))                                 
 >
  +<!--
  +The enterprise-beans element contains the entity elements that will 
  +be configured.
  +-->
  +<!ELEMENT enterprise-beans (entity+)>
   
   
  -<!--                    field-name                                 -->
  -<!--                    Name of entity cmp field                   -->
  -<!ELEMENT  field-name   (#PCDATA)                                      >
  +<!--
  +The entity element contains the configuration of an entity
  +-->
  +<!ELEMENT entity (ejb-name, datasource?, type-mapping?, create-table?, 
  +         remove-table?, read-only?, time-out?, select-for-update?, 
  +         pk-constraint?, read-ahead?, table-name?, cmp-field*, 
  +         eager-load?, lazy-load-groups*, query*)>
  +
  +<!--
  +Name of the entity being configured.  This must match an entity declared
  +in the ejb-jar.xml file.
  +-->
  +<!ELEMENT ejb-name (#PCDATA)>
   
   
  -<!--                    column-name                                -->
  -<!--                    Name of column in table.                   -->
  -<!ELEMENT  column-name  (#PCDATA)                                      >
  +<!--
  +This is the name of the table that will hold data for this entity. 
  +Each entity instance will be stored in one row of this table. 
  +-->
  +<!ELEMENT table-name (#PCDATA)>
   
   
  -<!--                    jdbc-type                                  -->
  -<!--                    JDBC type for use with driver.             -->
  -<!ELEMENT  jdbc-type    (#PCDATA)                                      >
  +<!--
  +The cmp-field element contains the configuration of a cmp-field.
  +-->
  +<!ELEMENT cmp-field (field-name, read-only?, time-out?, 
  +         column-name?, ((jdbc-type, sql-type) | (property+))? )>
  +
  +
  +<!--
  +Name of the cmp-field being configured.  This must match a cmp-field 
  +declared for this entity in the ejb-jar.xml file.
  +-->
  +<!ELEMENT field-name (#PCDATA)>
  +
  +
  +<!--
  +The name of the column that will hold the data for this field.
  +-->
  +<!ELEMENT column-name (#PCDATA)>
  +
  +
  +<!--
  +This is the JDBC type that is used when setting parameters in a JDBC
  +PreparedStatement or loading data from a JDBC ResultSet for this 
  +cmp-field. The valid types are defined in java.sql.Types. 
  +-->
  +<!ELEMENT jdbc-type (#PCDATA)>
    
   
  -<!--                    sql-type                                   -->
  -<!--                    SQL type specification for use in defining
  -                        tables.                                    -->
  -<!ELEMENT  sql-type     (#PCDATA)                                      >
  +<!--
  +This is the SQL type that is used in create table statements for 
  +this field. Valid sql-types are only limited by your database vendor. 
  +-->
  +<!ELEMENT sql-type (#PCDATA)>
   
   
  -<!--                    property                                   -->
  -<!--                    A component of a cmp-field                 -->
  -<!ELEMENT  property     (property-name, column-name?, jdbc-type?,
  -                         sql-type?)                                  >
  +<!--
  +The property element contains the configuration of a dependent
  +value class property of a cmp-field that is the type of a dependent
  +value class.
  +-->
  +<!ELEMENT property (property-name, column-name?, 
  +         (jdbc-type, sql-type)?)>
   
   
  -<!--                    property-name                              -->
  -<!--                    Name of a property component of a cmp
  -                        field.                                     -->
  -<!ELEMENT  property-name
  -                        (#PCDATA)                                      >
  +<!--
  +Name of the property being configured. In a dependent-value-class
  +element this must match a JavaBean property of the class. In a
  +cmp-field element this must match a flattened propety of the
  +dependent-value-class field type.
  +-->
  +<!ELEMENT property-name (#PCDATA)>
   
   
  -<!--                    eager-load                                 -->
  -<!--                    Fields to load by default                  -->
  -<!ELEMENT  eager-load   (field-name*)                                >
  +<!--
  +Contains the fields that are eager loaded for this entity.
  +-->
  +<!ELEMENT eager-load (field-name*)>
   
   
  -<!--                    lazy-load-groups                           -->
  -<!--                    groups of fields to be loaded together.    -->
  -<!ELEMENT  lazy-load-groups
  -                        (lazy-load-group*)                           >
  +<!--
  +Contains the groups of lazy load fields.
  +-->
  +<!ELEMENT lazy-load-groups (lazy-load-group+)>
   
   
  -<!--                    lazy-load-group                            -->
  -<!--                    One named group of fields to be loaded
  -                        together.                                  -->
  -<!ELEMENT  lazy-load-group
  -                        (description, field-name+)                   >
  +<!--
  +A group of fields that will be lazy loaded together.
  +-->
  +<!ELEMENT lazy-load-group (description, field-name+)>
   
   
  -<!--                    description                                -->
  -<!--                    Descriptive text                           -->
  -<!ELEMENT  description  (#PCDATA)                                      >
  +<!--
  +Descriptive text.
  +-->
  +<!ELEMENT description (#PCDATA)>
   
   
  -<!--                    query                                      -->
  -<!--                    Description of a query                     -->
  -<!ELEMENT  query        (description, query-method, declared-sql?)   >
  +<!--
  +The query element contains the configuration of a query.
  +-->
  +<!ELEMENT query (description, query-method, declared-sql?)>
   
   
  -<!--                    query-method                               -->
  -<!--                    Name and parameters for the method that
  -                        executes the query.                        -->
  -<!ELEMENT  query-method (method-name, method-params)                >
  +<!--
  +The query method that being configured.  This must match a 
  +query-method declared for this entity in the ejb-jar.xml file.
  +-->
  +<!ELEMENT query-method (method-name, method-params)>
   
   
  -<!--                    method-name                                -->
  -<!--                    Name of method that will execute query     -->
  -<!ELEMENT  method-name  (#PCDATA)                                      >
  +<!-- 
  +The name of the query method that is being configured.
  +-->
  +<!ELEMENT method-name (#PCDATA)>
   
   
  -<!--                    method-params                              -->
  -<!--                    Parameters for a query                     -->
  -<!ELEMENT  method-params (method-param*)                              >
  +<!--
  +The method-parameters contains the parameters of the method that is
  +being configured. Method parameters must be in the same order as the
  +method and have the same type.
  +-->
  +<!ELEMENT method-params (method-param*)>
   
   
  -<!--                    method-param                               -->
  -<!--                    The java class of one parameter for a query-->
  -<!ELEMENT  method-param (#PCDATA)                                      >
  +<!--
  +The java class of one parameter for a query.
   
  +An example follows:
  +   <method-param>java.lang.String</method-param>
  +-->
  +<!ELEMENT method-param (#PCDATA)>
   
  -<!--                    declared-sql                               -->
  -<!--                    Explicitly declared sql fragments.         -->
  -<!ELEMENT  declared-sql (select?, from?, where?, order?)                            
   >
   
  -<!--                    select                                     -->
  -<!--                    Select clause for sql query.               -->
  -<!ELEMENT  select       (distinct?, ejb-name, field-name*)           >
  +<!--
  +Explicitly declared sql fragments.
  +-->
  +<!ELEMENT declared-sql (select?, from?, where?, order?)>
   
  +<!--
  +Delcares what is to be selected.  This element is only allowed
  +for ejbSelect methods.
  +-->
  +<!ELEMENT select (distinct?, ejb-name, field-name?)>
   
  -<!--                    from                                       -->
  -<!--                    From clause for sql query.
  -                        Example:   , FullAddressEJB as a           -->
  -<!ELEMENT  from         (#PCDATA)                                      >
   
  -<!--                    distinct                                   -->
  -<!--                    Empty distinct element to specify distinct
  -                        keyword                                    -->
  -<!ELEMENT  distinct     EMPTY                                        >
  +<!--
  +Delared additional SQl to append to the generated from clause.
   
  +Example:  <from>, FullAddressEJB as a</from>
  +-->
  +<!ELEMENT from (#PCDATA)>
   
  -<!--                    where                                      -->
  -<!--                    Where clause for sql query. Example: 
  -                <where>TITLE={0} OR ARTIST={0} OR TYPE={0} OR NOTES={0}</where>  
  -                                                                   -->
  -<!ELEMENT  where        (#PCDATA)                                      >
  +<!-- 
  +If the empty distinct element is present, the SELECT DISTINCT 
  +syntax will be used. This syntax is used by default for ejbSelect
  +methods that return a java.util.Set.
  +-->
  +<!ELEMENT distinct EMPTY>
   
   
  -<!--                    order                                      -->
  -<!--                    Order clause for sql statement             -->
  -<!ELEMENT  order        (#PCDATA)                                      >
  +<!--
  +Declares the where clause for the query.
   
  +Example: <where>TITLE={0} OR ARTIST={0} OR TYPE={0} OR NOTES={0}</where>
  +-->
  +<!ELEMENT where (#PCDATA)>
   
  -<!--                    relationships                              -->
  -<!--                    Describes relationships between cmp 2
  -                        entity beans                               -->
  -<!ELEMENT  relationships
  -                        (ejb-relation*)                              >
   
  +<!--
  +Declares the order clause for the query.
   
  -<!--                    ejb-relation                               -->
  -<!--                    Describes a relationship between cmp 2
  -                        entity beans                               -->
  -<!ELEMENT  ejb-relation (ejb-relation-name, 
  -                        (foreign-key-mapping | table-mapping))     >
  +Example: <order>TITLE</order>
  +-->
  +<!ELEMENT order (#PCDATA)>
   
   
  -<!--                    ejb-relation-name                          -->
  -<!--                    Name of an ejb-relation                    -->
  -<!ELEMENT  ejb-relation-name
  -                        (#PCDATA)                                      >
  +<!--
  +The relationships element contains the ejb-relation elements that will 
  +be configured.
  +-->
  +<!ELEMENT relationships (ejb-relation+)>
   
   
  -<!--                    foreign-key-mapping                        -->
  -<!--                    Mapping between columns in the
  -                        relationship.                              -->
  -<!ELEMENT  foreign-key-mapping
  -                        (ejb-relationship-role, ejb-relationship-role)?
  -                                                                     >
  +<!--
  +The ejb-relation element contains the configuration of an
  +ejb-relation.
  +-->
  +<!ELEMENT ejb-relation (ejb-relation-name, 
  +         (foreign-key-mapping | table-mapping))>
   
   
  -<!--                    ejb-relationship-role                      -->
  -<!--                    Role in an ejb-relationship                -->
  -<!ELEMENT  ejb-relationship-role
  -                        (ejb-relationship-role-name,
  -                         (foreign-key-fields | table-key-fields))                   
      >
  +<!--
  +Name of the ejb-relation being configured.  This must match an 
  +ejb-relation declared in the ejb-jar.xml file.
  +-->
  +<!ELEMENT ejb-relation-name (#PCDATA)>
   
   
  -<!--                    ejb-relationship-role-name                 -->
  -<!--                    Name of an ejb relationship role           -->
  -<!ELEMENT  ejb-relationship-role-name
  -                        (#PCDATA)                                      >
  +<!--
  +Specifies that the ejb-relation should be mapped with foreign-keys.
  +This mapping is not available for many-to-many relationships.
  +-->
  +<!ELEMENT foreign-key-mapping
  +         (ejb-relationship-role, ejb-relationship-role)?>
   
   
  -<!--                    foreign-key-fields                         -->
  -<!--                    Set of foreign key fields in an ejb
  -                        relationship                               -->
  -<!ELEMENT  foreign-key-fields
  -                        (foreign-key-field*)                         >
  +<!--
  +The ejb-rejationship-role element contains the configuration of an
  +ejb-relationship-role.
  +-->
  +<!ELEMENT ejb-relationship-role (ejb-relationship-role-name,
  +         (foreign-key-fields | table-key-fields))>
  +
  +
  +<!--
  +Name of the ejb-relationship-role being configured.  This must match
  +an ejb-relationship-role declared for this ejb-relation in the 
  +ejb-jar.xml file.
  +-->
  +<!ELEMENT ejb-relationship-role-name (#PCDATA)>
  +
   
  -<!--                    foreign-key-field                          -->
  -<!--                    One foreign key field                      -->
  -<!ELEMENT  foreign-key-field
  -                        (field-name, column-name)                    >
  +<!--
  +Contains the foreign key fields.
  +-->
  +<!ELEMENT foreign-key-fields (foreign-key-field*)>
   
  +<!--
  +The foreign-key-field element declared the configuration of a foreign
  +key. The field-name element must match the field-name of one of the 
  +primary key fields of the related element. This is similar to the 
  +REFERANCES clause of a SQL foreign key declaration. 
  +-->
  +<!ELEMENT foreign-key-field (field-name, 
  +         ((column-name, (jdbc-type, sql-type)?) | (property*))
  +         )>
   
  -<!--                    table-mapping                              -->
  -<!--                    Table mapping style of ejb-relation (many
  -                        to many)                                   -->
  -<!ELEMENT  table-mapping(table-name, create-table, remove-table,
  -                         read-only, time-out, select-for-update,
  -                         pk-constraint, 
  -                         (ejb-relationship-role, ejb-relationship-role)?)>
   
  +<!--
  +Specifies that the ejb-relation should be mapped with a 
  +relation-table. This is the only mapping available for many-to-many
  +relationships.
  +-->
  +<!ELEMENT table-mapping (table-name?, datasource?, create-table?, 
  +         remove-table?, select-for-update?, pk-constraint?,
  +         (ejb-relationship-role, ejb-relationship-role)?)>
   
  -<!--                    table-key-fields                           -->
  -<!--                    Table key fields in a table-mapping
  -                        relationship.                              -->
  -<!ELEMENT  table-key-fields
  -                        (table-key-field*)                           >
  +
  +<!--
  +Contains the table key fields.
  +-->
  +<!ELEMENT table-key-fields (table-key-field+)>
   
   
  -<!--                    table-key-field                            -->
  -<!--                    One field in a table-key-fields            -->
  -<!ELEMENT  table-key-field
  -                        (field-name, column-name)                    >
  +<!--
  +The table-key-field element declared the configuration of a table
  +key. The field-name element must match the field-name of one of the 
  +primary key fields of this element.
  +-->
  +<!ELEMENT table-key-field (field-name, 
  +         ((column-name, (jdbc-type, sql-type)?) | (property*))
  +         )>
   
   
  -<!--There may be a problem.  It appears possible that the
  -table/foreign key mapping choice is correlated with the
  -table-key-fields/foreign-key-fields choices in
  +<!--There is a problem.  The table/foreign key mapping choice is 
  +correlated with the table-key-fields/foreign-key-fields choices in
   ejb-relationship-role,-->
   
   
  +<!--
  +Contains the known dependene value classes.
  +-->
  +<!ELEMENT dependent-value-classes (dependent-value-class+)>
  +
   
  -<!--                    dependent-value-classes                    -->
  -<!--                    Dependent value classes                    -->
  -<!ELEMENT  dependent-value-classes
  -                        (dependent-value-class*)                     >
  +<!--
  +The dependent-value-class element contains the configuration of a
  +dependent value class.
  +-->
  +<!ELEMENT dependent-value-class (description, class, property+)>
   
   
  -<!--                    dependent-value-class                      -->
  -<!--                    dependent value class metadata             -->
  -<!ELEMENT  dependent-value-class
  -                        (description, class, property+)              >
  +<!--
  +Name of the java class to which the dependent value class configuration 
  +applies.
  +-->
  +<!ELEMENT class (#PCDATA)>
   
   
  -<!--                    class                                      -->
  -<!--                    Class name of dependent value object       -->
  -<!ELEMENT  class        (#PCDATA)                                      >
  +<!--
  +The type-mappings element contains the java to sql mappings.
  +-->
  +<!ELEMENT type-mappings (type-mapping+)>
   
  +<!--
  +The type-mapping element contains a named java to sql mapping.
  +This includes both type mapping and function mapping.
  +
  +
  +Should be:
  +<!ELEMENT type-mapping (name, (function-mapping, mapping)+)>
  +-->
  +<!ELEMENT type-mapping ANY>
  +
  +<!--
  +Name of the type-mapping.
  +-->
  +<!ELEMENT name (#PCDATA)>
  +
  +<!--
  +Specifies the mapping from a java type to a jdbc and a sql type.
  +-->
  +<!ELEMENT mapping (java-type, jdbc-type, sql-type)>
  +
  +<!-- 
  +Specifies the java class type to be mapped.
  +-->
  +<!ELEMENT java-type (#PCDATA)>
  +
  +<!--
  +Specifies the mapping from an EJB-QL function to a sql function.
  +-->
  +<!ELEMENT function-mapping (function-name, function-sql)>
  +
  +<!--
  +The name of the function to be mapped.
  +-->
  +<!ELEMENT function-name (#PCDATA)>
  +
  +<!--
  +The sql to which the function is mapped.  The sql can contain
  +parameters specified with a question mark followed by the base one
  +parameter number.  For example, function mapping for concat in Oracle
  +follows:
  +
  +<function-mapping>
  +   <function-name>concat</function-name>
  +   <function-sql>(?1 || ?2)</function-sql>
  +</function-mapping>
  +-->
  +<!ELEMENT function-sql (#PCDATA)>
   
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to