dain 2004/10/14 21:49:05
Modified: modules/core/src/schema openejb-jar.xsd
Log:
Committed Gianny's massive patch:
http://jira.codehaus.org/browse/OPENEJB-13
This adds support for the following:
* CMP sql mapping
* CMR support
* Compound primary key
* Unknown primary key
There are still a few weirdisms...
* Full sql mapping is now required
* SQL is now compiled against physical schema names instead of logical schema names
Revision Changes Path
1.10 +49 -0 openejb/modules/core/src/schema/openejb-jar.xsd
Index: openejb-jar.xsd
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/schema/openejb-jar.xsd,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- openejb-jar.xsd 13 Oct 2004 16:45:44 -0000 1.9
+++ openejb-jar.xsd 15 Oct 2004 01:49:05 -0000 1.10
@@ -88,6 +88,7 @@
<xs:sequence>
<xs:element name="dependency" type="openejb:dependencyType"
minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="cmp-connection-factory" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="transaction-manager" type="xs:string" minOccurs="0"/>
<xs:element name="enterprise-beans">
<xs:complexType>
@@ -99,6 +100,8 @@
</xs:complexType>
</xs:element>
+ <xs:element name="relationships" type="openejb:relationshipsType"
minOccurs="0"/>
+
<xs:element name="gbean" type="openejb:gbeanType" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="security" type="openejb:securityType" minOccurs="0"/>
</xs:sequence>
@@ -124,6 +127,18 @@
<xs:element name="jndi-name" type="xs:string" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="local-jndi-name" type="xs:string" minOccurs="0"
maxOccurs="unbounded"/>
+ <xs:sequence minOccurs="0">
+ <xs:element name="table-name" type="xs:string"/>
+ <xs:element name="cmp-field-mapping" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="cmp-field-name" type="xs:string"/>
+ <xs:element name="table-column" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+
<xs:element name="query" type="openejb:queryType" minOccurs="0"
maxOccurs="unbounded"/>
<!--xs:group ref="naming:jndiEnvironmentRefsGroup"/-->
@@ -166,6 +181,40 @@
<xs:group ref="openejb:openejb-jndiEnvironmentRefsGroup"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID"/>
+ </xs:complexType>
+
+ <xs:complexType name="relationshipsType">
+ <xs:sequence>
+ <xs:element name="ejb-relation" type="openejb:ejb-relationType"
maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="ejb-relationType">
+ <xs:sequence>
+ <xs:element name="ejb-relation-name" type="xs:string"/>
+ <xs:element name="many-to-many-table-name" type="xs:string"
minOccurs="0"/>
+ <xs:element name="ejb-relationship-role"
type="openejb:ejb-relationship-roleType" maxOccurs="2"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="ejb-relationship-roleType">
+ <xs:sequence>
+ <xs:element name="ejb-relationship-role-name" type="xs:string"/>
+ <xs:element name="role-mapping">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="cmr-field-mapping" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="key-column" type="xs:string"/>
+ <xs:element name="foreign-key-column"
type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
</xs:complexType>
<xs:complexType name="activation-configType">