<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--

    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 xmlns="http://java.sun.com/xml/ns/persistence/orm"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
    xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_4.xsd">
    <named-query name="Person.findAll">
        <query>select p from Person p</query>
    </named-query>
    <embeddable access="VIRTUAL" class="org.eclipse.persistence.testing.models.jpa.nosql.dynamic.Address">
        <no-sql data-format="MAPPED" />
        <attributes>
            <basic attribute-type="java.lang.String" name="street2">
                <field name="street2" />
            </basic>
            <basic attribute-type="java.lang.Integer" name="zip">
                <field name="zip" />

            </basic>
            <basic attribute-type="java.lang.String" name="street1">
                <field name="street1" />
            </basic>
            <basic attribute-type="java.lang.String" name="state">
                <field name="state" />
            </basic>
            <basic attribute-type="java.lang.String" name="city">
                <field name="city" />

            </basic>
        </attributes>
    </embeddable>
    <entity access="VIRTUAL" class="org.eclipse.persistence.testing.models.jpa.nosql.dynamic.Person">
        <no-sql data-format="MAPPED" data-type="person" />
        <attributes>
            <basic attribute-type="java.lang.String" name="currentemployer">
                <field name="currentEmployer" />
            </basic>

            <basic attribute-type="java.lang.String" name="lastname">
                <field name="lastName" />
            </basic>
            <basic attribute-type="java.lang.String" name="occupation">
                <field name="occupation" />
            </basic>
            <id attribute-type="java.lang.String" name="id">
                <field name="_id" />
                <generated-value/>
            </id>

            <basic attribute-type="java.lang.Integer" name="age">
                <field name="age" />
            </basic>
            <element-collection attribute-type="java.util.Vector"
                name="pastEmployers" target-class="java.lang.String">
                <field name="pastEmployers" />
            </element-collection>
            <element-collection attribute-type="java.util.Vector"
                name="addresses" target-class="org.eclipse.persistence.testing.models.jpa.nosql.dynamic.Address">
                <field name="addresses" />
            </element-collection>

            <basic attribute-type="java.lang.String" name="firstname">
                <field name="firstName" />
            </basic>
            <basic attribute-type="java.lang.Boolean" name="employed">
                <field name="employed" />
            </basic>
        </attributes>
    </entity>
</entity-mappings>
