<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<jdo xmlns="https://db.apache.org/jdo/xmlns/jdo"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="https://db.apache.org/jdo/xmlns/jdo
     https://db.apache.org/jdo/xmlns/jdo_3_2.xsd">
<package name="org.apache.jdo.tck.pc.fieldtypes">
<class name="VectorCollections" identity-type="application"
    objectid-class="org.apache.jdo.tck.pc.fieldtypes.VectorCollections$Oid">
<field name="identifier" primary-key="true"/>
<field name="VectorOfObject0" >
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass">
</collection>
</field>
<field name="VectorOfObject1" >
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass" embedded-element="true">
</collection>
</field>
<field name="VectorOfObject2" >
  <collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass" serialized-element="true">
  </collection>
</field>
<field name="VectorOfSimpleClass3" >
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass">
</collection>
</field>
<field name="VectorOfSimpleClass4" >
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass" embedded-element="true">
</collection>
</field>
<field name="VectorOfSimpleClass5" >
  <collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass" serialized-element="true">
  </collection>
</field>
<field name="VectorOfSimpleClass42" serialized="true">
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass" embedded-element="false">
</collection>
</field>
<field name="VectorOfSimpleInterface6" >
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass">
</collection>
</field>
<field name="VectorOfSimpleInterface7" >
<collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass" embedded-element="true">
</collection>
</field>
<field name="VectorOfSimpleInterface8">
  <collection element-type="org.apache.jdo.tck.pc.fieldtypes.SimpleClass"
              serialized-element="true">
  </collection>
</field>
<field name="VectorOfString9" >
<collection element-type="java.lang.String">
</collection>
</field>
<field name="VectorOfString10" >
<collection element-type="java.lang.String" embedded-element="true">
</collection>
</field>
<field name="VectorOfString11" serialized="true">
<collection element-type="java.lang.String" embedded-element="false">
</collection>
</field>
<field name="VectorOfDate12" >
<collection element-type="java.util.Date">
</collection>
</field>
<field name="VectorOfDate13" >
<collection element-type="java.util.Date" embedded-element="true">
</collection>
</field>
<field name="VectorOfDate14" serialized="true">
<collection element-type="java.util.Date" embedded-element="false">
</collection>
</field>
<field name="VectorOfLocale15" >
<collection element-type="java.util.Locale">
</collection>
</field>
<field name="VectorOfLocale16" >
<collection element-type="java.util.Locale" embedded-element="true">
</collection>
</field>
<field name="VectorOfLocale17" serialized="true">
<collection element-type="java.util.Locale" embedded-element="false">
</collection>
</field>
<field name="VectorOfBigDecimal18" >
<collection element-type="java.math.BigDecimal">
</collection>
</field>
<field name="VectorOfBigDecimal19" >
<collection element-type="java.math.BigDecimal" embedded-element="true">
</collection>
</field>
<field name="VectorOfBigDecimal20" serialized="true">
<collection element-type="java.math.BigDecimal" embedded-element="false">
</collection>
</field>
<field name="VectorOfBigInteger21" >
<collection element-type="java.math.BigInteger">
</collection>
</field>
<field name="VectorOfBigInteger22" >
<collection element-type="java.math.BigInteger" embedded-element="true">
</collection>
</field>
<field name="VectorOfBigInteger23" serialized="true">
<collection element-type="java.math.BigInteger" embedded-element="false">
</collection>
</field>
<field name="VectorOfByte24" >
<collection element-type="java.lang.Byte">
</collection>
</field>
<field name="VectorOfByte25" >
<collection element-type="java.lang.Byte" embedded-element="true">
</collection>
</field>
<field name="VectorOfByte26" serialized="true">
<collection element-type="java.lang.Byte" embedded-element="false">
</collection>
</field>
<field name="VectorOfDouble27" >
<collection element-type="java.lang.Double">
</collection>
</field>
<field name="VectorOfDouble28" >
<collection element-type="java.lang.Double" embedded-element="true">
</collection>
</field>
<field name="VectorOfDouble29" serialized="true">
<collection element-type="java.lang.Double" embedded-element="false">
</collection>
</field>
<field name="VectorOfFloat30" >
<collection element-type="java.lang.Float">
</collection>
</field>
<field name="VectorOfFloat31" >
<collection element-type="java.lang.Float" embedded-element="true">
</collection>
</field>
<field name="VectorOfFloat32" serialized="true">
<collection element-type="java.lang.Float" embedded-element="false">
</collection>
</field>
<field name="VectorOfInteger33" >
<collection element-type="java.lang.Integer">
</collection>
</field>
<field name="VectorOfInteger34" >
<collection element-type="java.lang.Integer" embedded-element="true">
</collection>
</field>
<field name="VectorOfInteger35" serialized="true">
<collection element-type="java.lang.Integer" embedded-element="false">
</collection>
</field>
<field name="VectorOfLong36" >
<collection element-type="java.lang.Long">
</collection>
</field>
<field name="VectorOfLong37" >
<collection element-type="java.lang.Long" embedded-element="true">
</collection>
</field>
<field name="VectorOfLong38" serialized="true">
<collection element-type="java.lang.Long" embedded-element="false">
</collection>
</field>
<field name="VectorOfShort39" >
<collection element-type="java.lang.Short">
</collection>
</field>
<field name="VectorOfShort40" >
<collection element-type="java.lang.Short" embedded-element="true">
</collection>
</field>
<field name="VectorOfShort41" serialized="true">
<collection element-type="java.lang.Short" embedded-element="false">
</collection>
</field>
</class>
</package>
</jdo>
