blob: 0f9828e03961e8c2b2769a271bf284d130deee12 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<data-map xmlns="http://cayenne.apache.org/schema/3.0/modelMap"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://cayenne.apache.org/schema/3.0/modelMap http://cayenne.apache.org/schema/3.0/modelMap"
project-version="3.0">
<property name="defaultPackage" value="org.apache.click.examples.domain"/>
<property name="defaultSuperclass" value="org.apache.click.examples.domain.BaseEntity"/>
<db-entity name="ADDRESS">
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="line_1" type="VARCHAR" isMandatory="true" length="64"/>
<db-attribute name="line_2" type="VARCHAR" length="64"/>
<db-attribute name="post_code" type="VARCHAR" isMandatory="true" length="8"/>
<db-attribute name="state" type="VARCHAR" isMandatory="true" length="8"/>
<db-attribute name="suburb" type="VARCHAR" isMandatory="true" length="64"/>
</db-entity>
<db-entity name="CLIENT">
<db-attribute name="active" type="BOOLEAN"/>
<db-attribute name="address_id" type="INTEGER"/>
<db-attribute name="date_joined" type="DATE" isMandatory="true"/>
<db-attribute name="email" type="VARCHAR" length="64"/>
<db-attribute name="first_name" type="VARCHAR" isMandatory="true" length="64"/>
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="last_name" type="VARCHAR" isMandatory="true" length="64"/>
<db-attribute name="title" type="VARCHAR" length="8"/>
</db-entity>
<db-entity name="COURSE">
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="name" type="VARCHAR" length="50"/>
</db-entity>
<db-entity name="COURSE_BOOKING">
<db-attribute name="bookingDate" type="DATE" isMandatory="true"/>
<db-attribute name="bookingNotes" type="LONGVARCHAR" isMandatory="true" length="1024"/>
<db-attribute name="courseType" type="VARCHAR" isMandatory="true" length="32"/>
<db-attribute name="createdAt" type="DATE" isMandatory="true"/>
<db-attribute name="customerId" type="INTEGER" isMandatory="true"/>
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
</db-entity>
<db-entity name="CUSTOMER">
<db-attribute name="active" type="BOOLEAN"/>
<db-attribute name="age" type="INTEGER"/>
<db-attribute name="dateJoined" type="DATE"/>
<db-attribute name="email" type="VARCHAR" length="48"/>
<db-attribute name="holdings" type="DOUBLE"/>
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="investments" type="VARCHAR" length="32"/>
<db-attribute name="name" type="VARCHAR" isMandatory="true" length="32"/>
</db-entity>
<db-entity name="ENROLLMENT">
<db-attribute name="courseId" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="studentId" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
</db-entity>
<db-entity name="POST_CODE">
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="locality" type="VARCHAR" isMandatory="true" length="50"/>
<db-attribute name="postCode" type="VARCHAR" isMandatory="true" length="5"/>
<db-attribute name="state" type="VARCHAR" isMandatory="true" length="5"/>
</db-entity>
<db-entity name="STUDENT">
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="name" type="VARCHAR" length="50"/>
<db-attribute name="studentHouseId" type="INTEGER"/>
</db-entity>
<db-entity name="STUDENT_HOUSE">
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="name" type="VARCHAR" length="50"/>
</db-entity>
<db-entity name="SYSTEM_CODE">
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="label" type="VARCHAR" isMandatory="true" length="32"/>
<db-attribute name="name" type="VARCHAR" isMandatory="true" length="32"/>
<db-attribute name="orderBy" type="INTEGER" isMandatory="true"/>
<db-attribute name="value" type="VARCHAR" isMandatory="true" length="32"/>
</db-entity>
<db-entity name="USERS">
<db-attribute name="email" type="VARCHAR" length="32"/>
<db-attribute name="fullname" type="VARCHAR" isMandatory="true" length="32"/>
<db-attribute name="id" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
<db-attribute name="password" type="VARCHAR" isMandatory="true" length="16"/>
<db-attribute name="username" type="VARCHAR" isMandatory="true" length="16"/>
</db-entity>
<obj-entity name="Address" className="org.apache.click.examples.domain.Address" dbEntityName="ADDRESS" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="line1" type="java.lang.String" db-attribute-path="line_1"/>
<obj-attribute name="line2" type="java.lang.String" db-attribute-path="line_2"/>
<obj-attribute name="postCode" type="java.lang.String" db-attribute-path="post_code"/>
<obj-attribute name="state" type="java.lang.String" db-attribute-path="state"/>
<obj-attribute name="suburb" type="java.lang.String" db-attribute-path="suburb"/>
</obj-entity>
<obj-entity name="Client" className="org.apache.click.examples.domain.Client" dbEntityName="CLIENT" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="active" type="java.lang.Boolean" db-attribute-path="active"/>
<obj-attribute name="dateJoined" type="java.util.Date" db-attribute-path="date_joined"/>
<obj-attribute name="email" type="java.lang.String" db-attribute-path="email"/>
<obj-attribute name="firstName" type="java.lang.String" db-attribute-path="first_name"/>
<obj-attribute name="lastName" type="java.lang.String" db-attribute-path="last_name"/>
<obj-attribute name="title" type="java.lang.String" db-attribute-path="title"/>
</obj-entity>
<obj-entity name="Course" className="org.apache.click.examples.domain.Course" dbEntityName="COURSE" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="name" type="java.lang.String" db-attribute-path="name"/>
</obj-entity>
<obj-entity name="CourseBooking" className="org.apache.click.examples.domain.CourseBooking" dbEntityName="COURSE_BOOKING" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="bookingDate" type="java.util.Date" db-attribute-path="bookingDate"/>
<obj-attribute name="bookingNotes" type="java.lang.String" db-attribute-path="bookingNotes"/>
<obj-attribute name="courseType" type="java.lang.String" db-attribute-path="courseType"/>
<obj-attribute name="createdAt" type="java.util.Date" db-attribute-path="createdAt"/>
<obj-attribute name="customerId" type="java.lang.Integer" db-attribute-path="customerId"/>
</obj-entity>
<obj-entity name="Customer" className="org.apache.click.examples.domain.Customer" dbEntityName="CUSTOMER" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="active" type="java.lang.Boolean" db-attribute-path="active"/>
<obj-attribute name="age" type="java.lang.Integer" db-attribute-path="age"/>
<obj-attribute name="dateJoined" type="java.util.Date" db-attribute-path="dateJoined"/>
<obj-attribute name="email" type="java.lang.String" db-attribute-path="email"/>
<obj-attribute name="holdings" type="java.lang.Double" db-attribute-path="holdings"/>
<obj-attribute name="investments" type="java.lang.String" db-attribute-path="investments"/>
<obj-attribute name="name" type="java.lang.String" db-attribute-path="name"/>
</obj-entity>
<obj-entity name="PostCode" className="org.apache.click.examples.domain.PostCode" dbEntityName="POST_CODE" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="locality" type="java.lang.String" db-attribute-path="locality"/>
<obj-attribute name="postCode" type="java.lang.String" db-attribute-path="postCode"/>
<obj-attribute name="state" type="java.lang.String" db-attribute-path="state"/>
</obj-entity>
<obj-entity name="Student" className="org.apache.click.examples.domain.Student" dbEntityName="STUDENT" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="name" type="java.lang.String" db-attribute-path="name"/>
</obj-entity>
<obj-entity name="StudentHouse" className="org.apache.click.examples.domain.StudentHouse" dbEntityName="STUDENT_HOUSE" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="name" type="java.lang.String" db-attribute-path="name"/>
</obj-entity>
<obj-entity name="SystemCode" className="org.apache.click.examples.domain.SystemCode" dbEntityName="SYSTEM_CODE" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="label" type="java.lang.String" db-attribute-path="label"/>
<obj-attribute name="name" type="java.lang.String" db-attribute-path="name"/>
<obj-attribute name="orderBy" type="java.lang.Integer" db-attribute-path="orderBy"/>
<obj-attribute name="value" type="java.lang.String" db-attribute-path="value"/>
</obj-entity>
<obj-entity name="User" className="org.apache.click.examples.domain.User" dbEntityName="USERS" superClassName="org.apache.click.examples.domain.BaseEntity">
<obj-attribute name="email" type="java.lang.String" db-attribute-path="email"/>
<obj-attribute name="fullname" type="java.lang.String" db-attribute-path="fullname"/>
<obj-attribute name="password" type="java.lang.String" db-attribute-path="password"/>
<obj-attribute name="username" type="java.lang.String" db-attribute-path="username"/>
</obj-entity>
<db-relationship name="client" source="ADDRESS" target="CLIENT" toMany="true">
<db-attribute-pair source="id" target="address_id"/>
</db-relationship>
<db-relationship name="address" source="CLIENT" target="ADDRESS" toMany="false">
<db-attribute-pair source="address_id" target="id"/>
</db-relationship>
<db-relationship name="ENROLLMENT" source="COURSE" target="ENROLLMENT" toMany="true">
<db-attribute-pair source="id" target="courseId"/>
</db-relationship>
<db-relationship name="COURSE" source="ENROLLMENT" target="COURSE" toMany="false">
<db-attribute-pair source="courseId" target="id"/>
</db-relationship>
<db-relationship name="STUDENT" source="ENROLLMENT" target="STUDENT" toDependentPK="true" toMany="false">
<db-attribute-pair source="studentId" target="id"/>
</db-relationship>
<db-relationship name="ENROLLMENT" source="STUDENT" target="ENROLLMENT" toMany="true">
<db-attribute-pair source="id" target="studentId"/>
</db-relationship>
<db-relationship name="STUDENT_HOUSE" source="STUDENT" target="STUDENT_HOUSE" toMany="false">
<db-attribute-pair source="studentHouseId" target="id"/>
</db-relationship>
<db-relationship name="STUDENT" source="STUDENT_HOUSE" target="STUDENT" toMany="true">
<db-attribute-pair source="id" target="studentHouseId"/>
</db-relationship>
<obj-relationship name="client" source="Address" target="Client" db-relationship-path="client"/>
<obj-relationship name="address" source="Client" target="Address" db-relationship-path="address"/>
<obj-relationship name="students" source="Course" target="Student" db-relationship-path="ENROLLMENT.STUDENT"/>
<obj-relationship name="courses" source="Student" target="Course" db-relationship-path="ENROLLMENT.COURSE"/>
<obj-relationship name="studentHouse" source="Student" target="StudentHouse" db-relationship-path="STUDENT_HOUSE"/>
<obj-relationship name="student" source="StudentHouse" target="Student" db-relationship-path="STUDENT"/>
<query name="states" factory="org.apache.cayenne.map.SelectQueryBuilder" root="obj-entity" root-name="SystemCode">
<property name="cayenne.GenericSelectQuery.cacheStrategy" value="SHARED_CACHE"/>
<qualifier><![CDATA[name = "STATE"]]></qualifier>
<ordering><![CDATA[orderBy]]></ordering>
</query>
<query name="titles" factory="org.apache.cayenne.map.SelectQueryBuilder" root="obj-entity" root-name="SystemCode">
<property name="cayenne.GenericSelectQuery.cacheStrategy" value="SHARED_CACHE"/>
<qualifier><![CDATA[name = "TITLE"]]></qualifier>
<ordering><![CDATA[orderBy]]></ordering>
</query>
</data-map>