blob: af1c44297d4a36a6cb695639d425e04e24b29370 [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_1_0.xsd">
<description>Relationships Test Model Instance Document</description>
<persistence-unit-metadata>
<persistence-unit-defaults>
<access>PROPERTY</access>
</persistence-unit-defaults>
</persistence-unit-metadata>
<package>org.eclipse.persistence.testing.models.jpa.xml.relationships</package>
<access>PROPERTY</access>
<named-query name="findAllXMLCustomers">
<query>SELECT OBJECT(thecust) FROM XMLCustomer thecust</query>
<hint name="refresh" value="true"/>
</named-query>
<named-query name="findAllXMLOrdersByItem">
<query>SELECT OBJECT(theorder) FROM XMLOrderBean theorder WHERE theorder.item.itemId = :id</query>
</named-query>
<named-query name="findAllXMLItemsByName">
<query>SELECT OBJECT(item) FROM XMLItem item WHERE item.name = ?1</query>
</named-query>
<mapped-superclass class="Human">
<attributes>
<transient name="new"/>
</attributes>
</mapped-superclass>
<entity name="XMLCustomer" class="Customer">
<table name="XML_CUSTOMER"/>
<table-generator name="CUSTOMER_GENERATOR_TABLE" table="XML_CUSTOMER_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="CUST_SEQ"/>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
<attributes>
<id name="customerId">
<column name="CUST_ID"/>
<generated-value strategy="TABLE" generator="CUSTOMER_GENERATOR_TABLE"/>
</id>
<basic name="city">
<column name="CITY"/>
</basic>
<basic name="name">
<column name="NAME"/>
</basic>
<version name="version">
<column name="CUST_VERSION"/>
</version>
<one-to-many name="orders" target-entity="Order" mapped-by="customer">
<cascade>
<cascade-all/>
</cascade>
</one-to-many>
</attributes>
</entity>
<entity name="XMLOrderBean" class="Order" metadata-complete="false">
<table name="XML_ORDER"/>
<table-generator name="ORDER_TABLE_GENERATOR" table="XML_CUSTOMER_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="ORDER_SEQ"/>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
<attributes>
<id name="orderId">
<column name="ORDER_ID"/>
<generated-value strategy="TABLE" generator="ORDER_TABLE_GENERATOR"/>
</id>
<basic name="quantity"/>
<basic name="shippingAddress">
<column name="SHIP_ADDR"/>
</basic>
<version name="version">
<column name="ORDER_VERSION"/>
</version>
<many-to-one name="customer" target-entity="Customer" fetch="LAZY">
<join-column name="CUST_ID"/>
</many-to-one>
<many-to-one name="auditor" target-entity="Auditor">
<join-table name="XML_ORDER_AUDITOR">
<join-column name="ORDER_ID"/>
<inverse-join-column name="AUDITOR_ID"/>
</join-table>
</many-to-one>
<one-to-one name="orderLabel">
<join-table name="XML_ORDER_ORDER_LABEL">
<join-column name="ORDER_ID"/>
<inverse-join-column name="ORDER_LABEL_ID"/>
</join-table>
<cascade>
<cascade-persist/>
</cascade>
</one-to-one>
<one-to-one name="orderCard" mapped-by="order">
<cascade>
<cascade-persist/>
</cascade>
</one-to-one>
<one-to-one name="item" fetch="LAZY">
<!--primary-key-join-column name="ITEM_ID" referenced-column-name="ITEM_ID"/-->
<join-column name="ITEM_ID" referenced-column-name="ITEM_ID"/>
<cascade>
<cascade-persist/>
<cascade-refresh/>
</cascade>
</one-to-one>
</attributes>
</entity>
<entity name="XMLOrderCard" class="OrderCard">
<table name="XML_ORDER_CARD"/>
<table-generator name="XML_ORDER_CARD_TABLE_GENERATOR" table="XML_CUSTOMER_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="ORDER_CARD_SEQ"/>
<attributes>
<id name="id">
<generated-value strategy="TABLE" generator="XML_ORDER_CARD_TABLE_GENERATOR"/>
</id>
<one-to-one name="order">
<!-- use the defaults for the join table -->
<join-table/>
</one-to-one>
</attributes>
</entity>
<entity name="XMLOrderLabel" class="OrderLabel">
<table name="XML_ORDER_LABEL"/>
<table-generator name="XML_ORDER_LABEL_TABLE_GENERATOR" table="XML_CUSTOMER_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="ORDER_LABEL_SEQ"/>
<attributes>
<id name="orderLabelId">
<column name="ID"/>
<generated-value strategy="TABLE" generator="XML_ORDER_LABEL_TABLE_GENERATOR"/>
</id>
<basic name="description">
<column name="DESCRIP"/>
</basic>
</attributes>
</entity>
<entity name="XMLAuditor" class="Auditor">
<table name="XML_AUDITOR"/>
<table-generator name="XML_AUDITOR_TABLE_GENERATOR" table="XML_CUSTOMER_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="AUDITOR_SEQ"/>
<attributes>
<id name="id">
<generated-value strategy="TABLE" generator="XML_AUDITOR_TABLE_GENERATOR"/>
</id>
<one-to-many name="orders" mapped-by="auditor" target-entity="Order"/>
</attributes>
</entity>
<entity name="XMLItem" class="Item" metadata-complete="false">
<table name="XML_ITEM"/>
<table-generator name="ITEM_TABLE_GENERATOR" table="XML_CUSTOMER_SEQ" pk-column-name="SEQ_NAME" value-column-name="SEQ_COUNT" pk-column-value="ITEM_SEQ"/>
<exclude-default-listeners/>
<exclude-superclass-listeners/>
<attributes>
<id name="itemId">
<column name="ITEM_ID"/>
<generated-value strategy="TABLE" generator="ITEM_TABLE_GENERATOR"/>
</id>
<basic name="name"/>
<basic name="description"/>
<basic name="image">
<column name="IMAGE" length="1280"/>
<lob/>
</basic>
<version name="version">
<column name="ITEM_VERSION"/>
</version>
</attributes>
</entity>
</entity-mappings>