blob: e678f204f2a4141c5725f8a512b0d8dd25830044 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2018, 2020 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0 which is available at
http://www.eclipse.org/legal/epl-2.0,
or the Eclipse Distribution License v. 1.0 which is available at
http://www.eclipse.org/org/documents/edl-v10.php.
SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
-->
<entity-mappings version="2.0" xmlns="http://java.sun.com/xml/ns/persistence/orm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm orm_2_0.xsd">
<description>XML composite advanced member_3 Test Model Instance Document</description>
<entity name="XMLPhoneNumber" class="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.PhoneNumber" access="PROPERTY">
<table name="XML_MBR3_PHONENUMBER"/>
<id-class class="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.PhoneNumberPK"/>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
<attributes>
<id name="id">
<column name="OWNER_ID" insertable="false" updatable="false"/>
</id>
<id name="type">
<column name="TYPE"/>
</id>
<basic name="number">
<column name="NUMB"/>
</basic>
<basic name="areaCode">
<column name="AREA_CODE"/>
</basic>
<many-to-one name="owner" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_2.Employee" access="FIELD">
<join-column name="OWNER_ID" referenced-column-name="EMP_ID"/>
</many-to-one>
</attributes>
</entity>
<entity name="XMLLargeProject" class="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.LargeProject" access="PROPERTY">
<table name="XML_MBR3_LPROJECT"/>
<discriminator-value>L</discriminator-value>
<named-query name="findXMLLargeProjectsWithBudgetLargerThan">
<query>SELECT OBJECT(project) FROM XMLLargeProject project WHERE project.budget >= :amount</query>
</named-query>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
</entity>
<entity name="XMLSmallProject" class="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.SmallProject" access="PROPERTY">
<table name="XML_MBR3_PROJECT"/>
<discriminator-value>S</discriminator-value>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
</entity>
<entity name="XMLProject" class="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.Project" access="FIELD">
<table name="XML_MBR3_PROJECT"/>
<inheritance strategy="JOINED"/>
<discriminator-value>P</discriminator-value>
<discriminator-column name="PROJ_TYPE"/>
<sequence-generator name="XML_MBR3_PROJECT_SEQUENCE_GENERATOR" sequence-name="XML_MBR3_PROJECT_SEQ" allocation-size="10"/>
<named-query name="findXMLProjectByName">
<query>SELECT OBJECT(project) FROM XMLProject project WHERE project.name = :name</query>
</named-query>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
<pre-persist method-name="prePersist"/>
<post-persist method-name="postPersist"/>
<pre-remove method-name="preRemove"/>
<post-remove method-name="postRemove"/>
<pre-update method-name="preUpdate"/>
<post-update method-name="postUpdate"/>
<post-load method-name="postLoad"/>
<attributes>
<id name="id">
<column name="PROJ_ID"/>
<generated-value strategy="SEQUENCE" generator="XML_MBR3_PROJECT_SEQUENCE_GENERATOR"/>
</id>
<basic name="name">
<column name="PROJ_NAME"/>
</basic>
<basic name="description">
<column name="DESCRIP"/>
</basic>
<version name="version">
<column name="VERSION"/>
</version>
<one-to-one name="teamLeader" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_2.Employee" access="PROPERTY">
<join-column name="LEADER_ID"/>
</one-to-one>
<many-to-many name="teamMembers" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_2.Employee" mapped-by="projects" access="PROPERTY"/>
<transient name="pre_update_count"></transient>
<transient name="post_update_count"></transient>
<transient name="pre_remove_count"></transient>
<transient name="post_remove_count"></transient>
<transient name="pre_persist_count"></transient>
<transient name="post_persist_count"></transient>
<transient name="post_load_count"></transient>
</attributes>
</entity>
<entity name="XMLDealer" class="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_3.Dealer" access="PROPERTY">
<table name="XML_MBR3_DEALER"/>
<table-generator name="XML_MBR3_DEALER_TABLE_GENERATOR" table="XML_MBR3_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="DEALER_SEQ"/>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
<attributes>
<id name="id">
<column name="DEALER_ID"/>
<generated-value strategy="TABLE" generator="XML_MBR3_DEALER_TABLE_GENERATOR"/>
</id>
<basic name="firstName">
<column name="F_NAME"/>
</basic>
<basic name="lastName">
<column name="L_NAME"/>
</basic>
<basic name="status"/>
<version name="version">
<column name="VERSION"/>
</version>
<one-to-many name="customers" target-entity="org.eclipse.persistence.testing.models.jpa.xml.composite.advanced.member_1.Customer">
<join-column name="FK_DEALER_ID"/>
<cascade>
<cascade-persist/>
<cascade-merge/>
</cascade>
</one-to-many>
</attributes>
</entity>
</entity-mappings>