001// license-header java merge-point
002//
003// Attention: Generated code! Do not modify by hand!
004// Generated by: hibernate/HibernateSearchProperties.vsl in andromda-spring-cartridge.
005//
006package fr.ifremer.adagio.core.dao;
007
008/*
009 * #%L
010 * SIH-Adagio :: Core
011 * $Id:$
012 * $HeadURL:$
013 * %%
014 * Copyright (C) 2012 - 2014 Ifremer
015 * %%
016 * This program is free software: you can redistribute it and/or modify
017 * it under the terms of the GNU Affero General Public License as published by
018 * the Free Software Foundation, either version 3 of the License, or
019 * (at your option) any later version.
020 * 
021 * This program is distributed in the hope that it will be useful,
022 * but WITHOUT ANY WARRANTY; without even the implied warranty of
023 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
024 * GNU General Public License for more details.
025 * 
026 * You should have received a copy of the GNU Affero General Public License
027 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
028 * #L%
029 */
030
031import fr.ifremer.adagio.core.dao.administration.programStrategy.AcquisitionLevelImpl;
032import fr.ifremer.adagio.core.dao.administration.programStrategy.AppliedPeriodImpl;
033import fr.ifremer.adagio.core.dao.administration.programStrategy.AppliedStrategyImpl;
034import fr.ifremer.adagio.core.dao.administration.programStrategy.BatchModelAppliedStrategyImpl;
035import fr.ifremer.adagio.core.dao.administration.programStrategy.PmfmAppliedStrategyImpl;
036import fr.ifremer.adagio.core.dao.administration.programStrategy.PmfmStrategyImpl;
037import fr.ifremer.adagio.core.dao.administration.programStrategy.Program2DepartmentImpl;
038import fr.ifremer.adagio.core.dao.administration.programStrategy.Program2PersonExceptionImpl;
039import fr.ifremer.adagio.core.dao.administration.programStrategy.Program2PersonImpl;
040import fr.ifremer.adagio.core.dao.administration.programStrategy.ProgramImpl;
041import fr.ifremer.adagio.core.dao.administration.programStrategy.ProgramPrivilegeImpl;
042import fr.ifremer.adagio.core.dao.administration.programStrategy.ReferenceTaxonStrategyImpl;
043import fr.ifremer.adagio.core.dao.administration.programStrategy.StrategyImpl;
044import fr.ifremer.adagio.core.dao.administration.user.DepartmentImpl;
045import fr.ifremer.adagio.core.dao.administration.user.DepartmentPrivilegeTransfertImpl;
046import fr.ifremer.adagio.core.dao.administration.user.ManagedDataImpl;
047import fr.ifremer.adagio.core.dao.administration.user.ManagedDataTransferImpl;
048import fr.ifremer.adagio.core.dao.administration.user.ManagedDataTypeImpl;
049import fr.ifremer.adagio.core.dao.administration.user.PersonImpl;
050import fr.ifremer.adagio.core.dao.administration.user.PersonSessionImpl;
051import fr.ifremer.adagio.core.dao.administration.user.PersonSessionVesselImpl;
052import fr.ifremer.adagio.core.dao.administration.user.UserProfilImpl;
053import fr.ifremer.adagio.core.dao.administration.user.VesselManagePeriodImpl;
054import fr.ifremer.adagio.core.dao.administration.user.ageReader.AgeReaderQualificationImpl;
055import fr.ifremer.adagio.core.dao.data.batch.BatchExhaustiveInventoryImpl;
056import fr.ifremer.adagio.core.dao.data.batch.BatchImpl;
057import fr.ifremer.adagio.core.dao.data.batch.BatchModelImpl;
058import fr.ifremer.adagio.core.dao.data.batch.CatchBatchImpl;
059import fr.ifremer.adagio.core.dao.data.batch.SortingBatchImpl;
060import fr.ifremer.adagio.core.dao.data.batch.denormalized.DenormalisedBatchSortingValueImpl;
061import fr.ifremer.adagio.core.dao.data.batch.denormalized.DenormalizedBatchImpl;
062import fr.ifremer.adagio.core.dao.data.fishingArea.FishingArea2ManagedLocationImpl;
063import fr.ifremer.adagio.core.dao.data.fishingArea.FishingArea2RegulationLocationImpl;
064import fr.ifremer.adagio.core.dao.data.fishingArea.FishingAreaImpl;
065import fr.ifremer.adagio.core.dao.data.history.DeletedItemHistoryImpl;
066import fr.ifremer.adagio.core.dao.data.history.InsertedItemHistoryImpl;
067import fr.ifremer.adagio.core.dao.data.history.ProcessingHistoryImpl;
068import fr.ifremer.adagio.core.dao.data.history.UpdatedItemHistoryImpl;
069import fr.ifremer.adagio.core.dao.data.link.LinkedItemImpl;
070import fr.ifremer.adagio.core.dao.data.measure.GearPhysicalMeasurementImpl;
071import fr.ifremer.adagio.core.dao.data.measure.GearUseMeasurementImpl;
072import fr.ifremer.adagio.core.dao.data.measure.LandingMeasurementImpl;
073import fr.ifremer.adagio.core.dao.data.measure.MeasurementImpl;
074import fr.ifremer.adagio.core.dao.data.measure.ProduceQuantificationMeasurementImpl;
075import fr.ifremer.adagio.core.dao.data.measure.ProduceSortingMeasurementImpl;
076import fr.ifremer.adagio.core.dao.data.measure.QuantificationMeasurementImpl;
077import fr.ifremer.adagio.core.dao.data.measure.SaleMeasurementImpl;
078import fr.ifremer.adagio.core.dao.data.measure.SampleMeasurementImpl;
079import fr.ifremer.adagio.core.dao.data.measure.SamplingStrataMeasurementImpl;
080import fr.ifremer.adagio.core.dao.data.measure.SortingMeasurementImpl;
081import fr.ifremer.adagio.core.dao.data.measure.SurveyMeasurementImpl;
082import fr.ifremer.adagio.core.dao.data.measure.TakeOverMeasurementImpl;
083import fr.ifremer.adagio.core.dao.data.measure.VesselPersonMeasurementImpl;
084import fr.ifremer.adagio.core.dao.data.measure.VesselPhysicalMeasurementImpl;
085import fr.ifremer.adagio.core.dao.data.measure.VesselPositionMeasurementImpl;
086import fr.ifremer.adagio.core.dao.data.measure.VesselUseMeasurementImpl;
087import fr.ifremer.adagio.core.dao.data.measure.file.MeasurementFileImpl;
088import fr.ifremer.adagio.core.dao.data.measure.photo.PhotoImpl;
089import fr.ifremer.adagio.core.dao.data.operation.FishingOperationImpl;
090import fr.ifremer.adagio.core.dao.data.operation.OperationImpl;
091import fr.ifremer.adagio.core.dao.data.operation.OperationVesselAssociationImpl;
092import fr.ifremer.adagio.core.dao.data.operation.denormalized.DenormalizedOperationImpl;
093import fr.ifremer.adagio.core.dao.data.produce.ProduceImpl;
094import fr.ifremer.adagio.core.dao.data.qualification.AppliedQualificationRuleImpl;
095import fr.ifremer.adagio.core.dao.data.qualification.QualifiedItemImpl;
096import fr.ifremer.adagio.core.dao.data.sale.ExpectedSaleImpl;
097import fr.ifremer.adagio.core.dao.data.sample.SampleImpl;
098import fr.ifremer.adagio.core.dao.data.samplingScheme.SamplingSchemeImpl;
099import fr.ifremer.adagio.core.dao.data.samplingScheme.SamplingStrata2FisheryImpl;
100import fr.ifremer.adagio.core.dao.data.samplingScheme.SamplingStrata2GroupingImpl;
101import fr.ifremer.adagio.core.dao.data.samplingScheme.SamplingStrata2VesselImpl;
102import fr.ifremer.adagio.core.dao.data.samplingScheme.SamplingStrataImpl;
103import fr.ifremer.adagio.core.dao.data.samplingScheme.denormalized.DenormalizedSamplingStrataImpl;
104import fr.ifremer.adagio.core.dao.data.survey.activity.ActivityCalendarImpl;
105import fr.ifremer.adagio.core.dao.data.survey.activity.DailyActivityCalendarImpl;
106import fr.ifremer.adagio.core.dao.data.survey.declaration.DeclaredDocumentReferenceImpl;
107import fr.ifremer.adagio.core.dao.data.survey.economy.EconomicalSurveyImpl;
108import fr.ifremer.adagio.core.dao.data.survey.fishingEffort.FishingEffortCalendarImpl;
109import fr.ifremer.adagio.core.dao.data.survey.fishingTrip.FishingTripImpl;
110import fr.ifremer.adagio.core.dao.data.survey.fishingTrip.FishingTripOriginImpl;
111import fr.ifremer.adagio.core.dao.data.survey.fishingTrip.ObservedFishingTripImpl;
112import fr.ifremer.adagio.core.dao.data.survey.landing.LandingImpl;
113import fr.ifremer.adagio.core.dao.data.survey.landing.LandingOriginImpl;
114import fr.ifremer.adagio.core.dao.data.survey.landing.ObservedLandingImpl;
115import fr.ifremer.adagio.core.dao.data.survey.observedLocation.ObservedLocationFeaturesImpl;
116import fr.ifremer.adagio.core.dao.data.survey.observedLocation.ObservedLocationImpl;
117import fr.ifremer.adagio.core.dao.data.survey.observedLocation.ObservedLocationMeasurmentImpl;
118import fr.ifremer.adagio.core.dao.data.survey.physicalGear.PhysicalGearSurveyImpl;
119import fr.ifremer.adagio.core.dao.data.survey.sale.ObservedSaleImpl;
120import fr.ifremer.adagio.core.dao.data.survey.sale.SaleImpl;
121import fr.ifremer.adagio.core.dao.data.survey.sale.SaleOriginImpl;
122import fr.ifremer.adagio.core.dao.data.survey.scientificCruise.ScientificCruiseImpl;
123import fr.ifremer.adagio.core.dao.data.survey.takeOver.TakeOverImpl;
124import fr.ifremer.adagio.core.dao.data.transshipment.TransshipmentImpl;
125import fr.ifremer.adagio.core.dao.data.vessel.VesselCommissioningPeriodImpl;
126import fr.ifremer.adagio.core.dao.data.vessel.VesselFleetEventImpl;
127import fr.ifremer.adagio.core.dao.data.vessel.VesselImpl;
128import fr.ifremer.adagio.core.dao.data.vessel.VesselOwnerImpl;
129import fr.ifremer.adagio.core.dao.data.vessel.VesselOwnerPeriodImpl;
130import fr.ifremer.adagio.core.dao.data.vessel.VesselRegistrationPeriodImpl;
131import fr.ifremer.adagio.core.dao.data.vessel.feature.person.VesselPersonFeaturesImpl;
132import fr.ifremer.adagio.core.dao.data.vessel.feature.person.VesselPersonImpl;
133import fr.ifremer.adagio.core.dao.data.vessel.feature.physical.GearPhysicalFeaturesImpl;
134import fr.ifremer.adagio.core.dao.data.vessel.feature.physical.GearPhysicalFeaturesOriginImpl;
135import fr.ifremer.adagio.core.dao.data.vessel.feature.physical.PhysicalFeaturesImpl;
136import fr.ifremer.adagio.core.dao.data.vessel.feature.physical.VesselFeaturesImpl;
137import fr.ifremer.adagio.core.dao.data.vessel.feature.physical.VesselPhysicalFeaturesImpl;
138import fr.ifremer.adagio.core.dao.data.vessel.feature.physical.VesselPhysicalFeaturesOriginImpl;
139import fr.ifremer.adagio.core.dao.data.vessel.feature.use.GearUseFeaturesImpl;
140import fr.ifremer.adagio.core.dao.data.vessel.feature.use.GearUseFeaturesOriginImpl;
141import fr.ifremer.adagio.core.dao.data.vessel.feature.use.UseFeaturesImpl;
142import fr.ifremer.adagio.core.dao.data.vessel.feature.use.VesselUseFeaturesImpl;
143import fr.ifremer.adagio.core.dao.data.vessel.feature.use.VesselUseFeaturesOriginImpl;
144import fr.ifremer.adagio.core.dao.data.vessel.position.VesselPositionImpl;
145import fr.ifremer.adagio.core.dao.data.vessel.position.VesselPositionVMSImpl;
146import fr.ifremer.adagio.core.dao.data.vessel.regulation.RightToProduceImpl;
147import fr.ifremer.adagio.core.dao.playground.PlaygroundFishingEffortZoneImpl;
148import fr.ifremer.adagio.core.dao.playground.PlaygroundFishingTripVesselMasterImpl;
149import fr.ifremer.adagio.core.dao.playground.PlaygroundRicTaxonGroupImpl;
150import fr.ifremer.adagio.core.dao.playground.PlaygroundTaxonGroupSamplingImpl;
151import fr.ifremer.adagio.core.dao.playground.PlaygroundVesselMasterImpl;
152import fr.ifremer.adagio.core.dao.playground.PlaygroundVesselOwnerImpl;
153import fr.ifremer.adagio.core.dao.referential.AnalysisInstrumentImpl;
154import fr.ifremer.adagio.core.dao.referential.DepthGradientImpl;
155import fr.ifremer.adagio.core.dao.referential.DistanceToCoastGradientImpl;
156import fr.ifremer.adagio.core.dao.referential.EducationGradeImpl;
157import fr.ifremer.adagio.core.dao.referential.LinkedItemTypeImpl;
158import fr.ifremer.adagio.core.dao.referential.NearbySpecificAreaImpl;
159import fr.ifremer.adagio.core.dao.referential.NumericalPrecisionImpl;
160import fr.ifremer.adagio.core.dao.referential.ObjectTypeImpl;
161import fr.ifremer.adagio.core.dao.referential.OriginItemTypeImpl;
162import fr.ifremer.adagio.core.dao.referential.PhotoTypeImpl;
163import fr.ifremer.adagio.core.dao.referential.PrecisionTypeImpl;
164import fr.ifremer.adagio.core.dao.referential.ProcessingStatusImpl;
165import fr.ifremer.adagio.core.dao.referential.ProcessingTypeImpl;
166import fr.ifremer.adagio.core.dao.referential.QualityFlagImpl;
167import fr.ifremer.adagio.core.dao.referential.SaleTypeImpl;
168import fr.ifremer.adagio.core.dao.referential.StatusImpl;
169import fr.ifremer.adagio.core.dao.referential.ValidityStatusImpl;
170import fr.ifremer.adagio.core.dao.referential.VesselPersonRoleImpl;
171import fr.ifremer.adagio.core.dao.referential.VesselTypeImpl;
172import fr.ifremer.adagio.core.dao.referential.buyer.BuyerImpl;
173import fr.ifremer.adagio.core.dao.referential.buyer.BuyerTypeImpl;
174import fr.ifremer.adagio.core.dao.referential.conversion.RoundWeightConversionImpl;
175import fr.ifremer.adagio.core.dao.referential.conversion.UnitConversionImpl;
176import fr.ifremer.adagio.core.dao.referential.conversion.WeightLengthConversionImpl;
177import fr.ifremer.adagio.core.dao.referential.gear.FishingGearImpl;
178import fr.ifremer.adagio.core.dao.referential.gear.GearAssociationImpl;
179import fr.ifremer.adagio.core.dao.referential.gear.GearClassificationAssociationImpl;
180import fr.ifremer.adagio.core.dao.referential.gear.GearClassificationImpl;
181import fr.ifremer.adagio.core.dao.referential.gear.GearImpl;
182import fr.ifremer.adagio.core.dao.referential.grouping.GroupingClassificationImpl;
183import fr.ifremer.adagio.core.dao.referential.grouping.GroupingImpl;
184import fr.ifremer.adagio.core.dao.referential.grouping.GroupingItemImpl;
185import fr.ifremer.adagio.core.dao.referential.grouping.GroupingLevelImpl;
186import fr.ifremer.adagio.core.dao.referential.location.LocationAreaImpl;
187import fr.ifremer.adagio.core.dao.referential.location.LocationAssociationImpl;
188import fr.ifremer.adagio.core.dao.referential.location.LocationClassificationImpl;
189import fr.ifremer.adagio.core.dao.referential.location.LocationImpl;
190import fr.ifremer.adagio.core.dao.referential.location.LocationLevelImpl;
191import fr.ifremer.adagio.core.dao.referential.location.LocationLineImpl;
192import fr.ifremer.adagio.core.dao.referential.location.LocationPointImpl;
193import fr.ifremer.adagio.core.dao.referential.metier.MetierImpl;
194import fr.ifremer.adagio.core.dao.referential.order.OrderItemImpl;
195import fr.ifremer.adagio.core.dao.referential.order.OrderTypeImpl;
196import fr.ifremer.adagio.core.dao.referential.pmfm.AggregationLevelImpl;
197import fr.ifremer.adagio.core.dao.referential.pmfm.FractionImpl;
198import fr.ifremer.adagio.core.dao.referential.pmfm.MatrixImpl;
199import fr.ifremer.adagio.core.dao.referential.pmfm.MethodImpl;
200import fr.ifremer.adagio.core.dao.referential.pmfm.ParameterGroupImpl;
201import fr.ifremer.adagio.core.dao.referential.pmfm.ParameterImpl;
202import fr.ifremer.adagio.core.dao.referential.pmfm.PmfmImpl;
203import fr.ifremer.adagio.core.dao.referential.pmfm.QualitativeValueImpl;
204import fr.ifremer.adagio.core.dao.referential.pmfm.UnitImpl;
205import fr.ifremer.adagio.core.dao.referential.qualification.QualificationRuleImpl;
206import fr.ifremer.adagio.core.dao.referential.regulation.CorpusImpl;
207import fr.ifremer.adagio.core.dao.referential.regulation.CorpusTypeImpl;
208import fr.ifremer.adagio.core.dao.referential.regulation.Fishery2GearImpl;
209import fr.ifremer.adagio.core.dao.referential.regulation.Fishery2GroupingImpl;
210import fr.ifremer.adagio.core.dao.referential.regulation.Fishery2MetierImpl;
211import fr.ifremer.adagio.core.dao.referential.regulation.Fishery2TaxonGroupImpl;
212import fr.ifremer.adagio.core.dao.referential.regulation.FisheryImpl;
213import fr.ifremer.adagio.core.dao.referential.regulation.MinimumSizeAllowedImpl;
214import fr.ifremer.adagio.core.dao.referential.regulation.RegulationArea2RegulationLocationImpl;
215import fr.ifremer.adagio.core.dao.referential.regulation.RegulationAreaImpl;
216import fr.ifremer.adagio.core.dao.referential.sale.AppliedSizeCategoryImpl;
217import fr.ifremer.adagio.core.dao.referential.seller.SellerImpl;
218import fr.ifremer.adagio.core.dao.referential.seller.SellerTypeImpl;
219import fr.ifremer.adagio.core.dao.referential.spatial.SpatialItem2LocationImpl;
220import fr.ifremer.adagio.core.dao.referential.spatial.SpatialItemAreaImpl;
221import fr.ifremer.adagio.core.dao.referential.spatial.SpatialItemImpl;
222import fr.ifremer.adagio.core.dao.referential.spatial.SpatialItemLineImpl;
223import fr.ifremer.adagio.core.dao.referential.spatial.SpatialItemPointImpl;
224import fr.ifremer.adagio.core.dao.referential.spatial.SpatialItemTypeImpl;
225import fr.ifremer.adagio.core.dao.referential.taxon.AuthorImpl;
226import fr.ifremer.adagio.core.dao.referential.taxon.CitationImpl;
227import fr.ifremer.adagio.core.dao.referential.taxon.ReferenceDocumentImpl;
228import fr.ifremer.adagio.core.dao.referential.taxon.ReferenceTaxonImpl;
229import fr.ifremer.adagio.core.dao.referential.taxon.TaxonGroupHistoricalRecordImpl;
230import fr.ifremer.adagio.core.dao.referential.taxon.TaxonGroupImpl;
231import fr.ifremer.adagio.core.dao.referential.taxon.TaxonGroupInformationImpl;
232import fr.ifremer.adagio.core.dao.referential.taxon.TaxonGroupLengthPmfmImpl;
233import fr.ifremer.adagio.core.dao.referential.taxon.TaxonGroupTypeImpl;
234import fr.ifremer.adagio.core.dao.referential.taxon.TaxonInformationHistoryImpl;
235import fr.ifremer.adagio.core.dao.referential.taxon.TaxonInformationImpl;
236import fr.ifremer.adagio.core.dao.referential.taxon.TaxonNameHistoryImpl;
237import fr.ifremer.adagio.core.dao.referential.taxon.TaxonNameImpl;
238import fr.ifremer.adagio.core.dao.referential.taxon.TaxonomicLevelImpl;
239import fr.ifremer.adagio.core.dao.referential.taxon.VirtualComponentImpl;
240import fr.ifremer.adagio.core.dao.referential.transcribing.TranscribingItemImpl;
241import fr.ifremer.adagio.core.dao.referential.transcribing.TranscribingItemTypeImpl;
242import fr.ifremer.adagio.core.dao.referential.transcribing.TranscribingSideImpl;
243import fr.ifremer.adagio.core.dao.referential.transcribing.TranscribingSystemImpl;
244import fr.ifremer.adagio.core.dao.technical.optimization.grouping.GroupingItemHierarchyImpl;
245import fr.ifremer.adagio.core.dao.technical.optimization.grouping.GroupingVesselHierarchyImpl;
246import fr.ifremer.adagio.core.dao.technical.optimization.location.LocationHierarchyExceptionImpl;
247import fr.ifremer.adagio.core.dao.technical.optimization.location.LocationHierarchyImpl;
248import fr.ifremer.adagio.core.dao.technical.optimization.location.LocationHierarchyOverrideImpl;
249import fr.ifremer.adagio.core.dao.technical.optimization.taxon.TaxonGroup2TaxonHierarchyImpl;
250import fr.ifremer.adagio.core.dao.technical.optimization.taxon.TaxonGroupHierarchyImpl;
251import fr.ifremer.adagio.core.dao.technical.optimization.user.DepartmentHierarchyImpl;
252import fr.ifremer.adagio.core.dao.technical.optimization.vessel.DenormalizedVesselImpl;
253import fr.ifremer.adagio.core.dao.technical.versionning.SystemVersionImpl;
254import java.util.Arrays;
255import java.util.Collection;
256import java.util.HashMap;
257import java.util.Map;
258import org.apache.commons.collections.CollectionUtils;
259import org.apache.commons.collections.Predicate;
260
261/**
262 * Stores the embedded values and associations of all entities in the system by type.
263 * Is used to determine the appropriate parameter name when an embedded value's property
264 * is referenced as the attribute to search by (as opposed to an association).
265 *
266 * @author Chad Brandon
267 */
268@SuppressWarnings({"unchecked"})
269public class CriteriaSearchProperties
270{
271    private static final Map embeddedValuesByType = new HashMap();
272    private static final Map embeddedValueNamesByType = new HashMap();
273    private static final Map navigableAssociationEndsByType = new HashMap();
274
275    static
276    {
277        initializeNearbySpecificArea1();
278        initializeGearClassificationAssociation2();
279        initializeGear3();
280        initializeGearAssociation4();
281        initializeGearClassification5();
282        initializeFishingGear6();
283        initializeLocation7();
284        initializeLocationClassification8();
285        initializeLocationArea9();
286        initializeLocationLevel10();
287        initializeLocationAssociation11();
288        initializeLocationPoint12();
289        initializeLocationLine13();
290        initializeMetier14();
291        initializeSeller15();
292        initializeSellerType16();
293        initializeWeightLengthConversion17();
294        initializeUnitConversion18();
295        initializeRoundWeightConversion19();
296        initializeStatus20();
297        initializeProcessingType21();
298        initializeNumericalPrecision22();
299        initializeValidityStatus23();
300        initializeAnalysisInstrument24();
301        initializeEducationGrade25();
302        initializeQualityFlag26();
303        initializeGrouping27();
304        initializeGroupingItem28();
305        initializeGroupingClassification29();
306        initializeGroupingLevel30();
307        initializeLinkedItemType31();
308        initializeObjectType32();
309        initializeDepthGradient33();
310        initializeCorpusType34();
311        initializeRegulationArea2RegulationLocation35();
312        initializeFishery2Grouping36();
313        initializeFishery2TaxonGroup37();
314        initializeCorpus38();
315        initializeRegulationArea39();
316        initializeFishery2Gear40();
317        initializeFishery2Metier41();
318        initializeFishery42();
319        initializeMinimumSizeAllowed43();
320        initializePrecisionType44();
321        initializeQualificationRule45();
322        initializeVesselPersonRole46();
323        initializeMethod47();
324        initializeUnit48();
325        initializeFraction49();
326        initializeParameter50();
327        initializeParameterGroup51();
328        initializeAggregationLevel52();
329        initializeMatrix53();
330        initializePmfm54();
331        initializeQualitativeValue55();
332        initializePhotoType56();
333        initializeTranscribingItemType57();
334        initializeTranscribingSystem58();
335        initializeTranscribingItem59();
336        initializeTranscribingSide60();
337        initializeOrderItem61();
338        initializeOrderType62();
339        initializeBuyer63();
340        initializeBuyerType64();
341        initializeSpatialItem2Location65();
342        initializeSpatialItemArea66();
343        initializeSpatialItem67();
344        initializeSpatialItemPoint68();
345        initializeSpatialItemLine69();
346        initializeSpatialItemType70();
347        initializeProcessingStatus71();
348        initializeVesselType72();
349        initializeTaxonGroupInformation73();
350        initializeTaxonGroupType74();
351        initializeAuthor75();
352        initializeTaxonGroupHistoricalRecord76();
353        initializeReferenceTaxon77();
354        initializeTaxonGroupLengthPmfm78();
355        initializeCitation79();
356        initializeTaxonInformationHistory80();
357        initializeTaxonomicLevel81();
358        initializeTaxonGroup82();
359        initializeReferenceDocument83();
360        initializeTaxonNameHistory84();
361        initializeTaxonName85();
362        initializeTaxonInformation86();
363        initializeVirtualComponent87();
364        initializeDistanceToCoastGradient88();
365        initializeOriginItemType89();
366        initializeAppliedSizeCategory90();
367        initializeSaleType91();
368        initializeAgeReaderQualification92();
369        initializeUserProfil93();
370        initializePersonSession94();
371        initializePerson95();
372        initializePersonSessionVessel96();
373        initializeManagedDataTransfer97();
374        initializeDepartment98();
375        initializeDepartmentPrivilegeTransfert99();
376        initializeVesselManagePeriod100();
377        initializeManagedData101();
378        initializeManagedDataType102();
379        initializeProgramPrivilege103();
380        initializeBatchModelAppliedStrategy104();
381        initializeAppliedPeriod105();
382        initializeAcquisitionLevel106();
383        initializePmfmStrategy107();
384        initializeReferenceTaxonStrategy108();
385        initializeProgram109();
386        initializeProgram2Person110();
387        initializeStrategy111();
388        initializeProgram2Department112();
389        initializeAppliedStrategy113();
390        initializeProgram2PersonException114();
391        initializePmfmAppliedStrategy115();
392        initializeSystemVersion116();
393        initializeLocationHierarchyOverride117();
394        initializeLocationHierarchy118();
395        initializeLocationHierarchyException119();
396        initializeTaxonGroupHierarchy120();
397        initializeTaxonGroup2TaxonHierarchy121();
398        initializeDepartmentHierarchy122();
399        initializeGroupingVesselHierarchy123();
400        initializeGroupingItemHierarchy124();
401        initializeDenormalizedVessel125();
402        initializeQualifiedItem126();
403        initializeAppliedQualificationRule127();
404        initializeDenormalizedOperation128();
405        initializeFishingOperation129();
406        initializeOperationVesselAssociation130();
407        initializeOperation131();
408        initializeBatch132();
409        initializeBatchExhaustiveInventory133();
410        initializeCatchBatch134();
411        initializeSortingBatch135();
412        initializeBatchModel136();
413        initializeDenormalisedBatchSortingValue137();
414        initializeDenormalizedBatch138();
415        initializeMeasurement139();
416        initializeSurveyMeasurement140();
417        initializeProduceSortingMeasurement141();
418        initializeSamplingStrataMeasurement142();
419        initializeSampleMeasurement143();
420        initializeQuantificationMeasurement144();
421        initializeVesselUseMeasurement145();
422        initializeTakeOverMeasurement146();
423        initializePhoto147();
424        initializeSortingMeasurement148();
425        initializeMeasurementFile149();
426        initializeLandingMeasurement150();
427        initializeVesselPositionMeasurement151();
428        initializeSaleMeasurement152();
429        initializeGearPhysicalMeasurement153();
430        initializeVesselPersonMeasurement154();
431        initializeGearUseMeasurement155();
432        initializeVesselPhysicalMeasurement156();
433        initializeProduceQuantificationMeasurement157();
434        initializeProduce158();
435        initializeVesselOwner159();
436        initializeVesselRegistrationPeriod160();
437        initializeVessel161();
438        initializeVesselFleetEvent162();
439        initializeVesselUseFeaturesOrigin163();
440        initializeGearUseFeaturesOrigin164();
441        initializeGearUseFeatures165();
442        initializeUseFeatures166();
443        initializeVesselUseFeatures167();
444        initializeVesselPerson168();
445        initializeVesselPersonFeatures169();
446        initializeVesselFeatures170();
447        initializeGearPhysicalFeatures171();
448        initializeVesselPhysicalFeatures172();
449        initializeVesselPhysicalFeaturesOrigin173();
450        initializeGearPhysicalFeaturesOrigin174();
451        initializePhysicalFeatures175();
452        initializeRightToProduce176();
453        initializeVesselPositionVMS177();
454        initializeVesselPosition178();
455        initializeVesselOwnerPeriod179();
456        initializeVesselCommissioningPeriod180();
457        initializeUpdatedItemHistory181();
458        initializeDeletedItemHistory182();
459        initializeProcessingHistory183();
460        initializeInsertedItemHistory184();
461        initializeActivityCalendar185();
462        initializeDailyActivityCalendar186();
463        initializeLandingOrigin187();
464        initializeLanding188();
465        initializeObservedLanding189();
466        initializeEconomicalSurvey190();
467        initializeDeclaredDocumentReference191();
468        initializeObservedSale192();
469        initializeSale193();
470        initializeSaleOrigin194();
471        initializePhysicalGearSurvey195();
472        initializeFishingEffortCalendar196();
473        initializeTakeOver197();
474        initializeScientificCruise198();
475        initializeFishingTrip199();
476        initializeObservedFishingTrip200();
477        initializeFishingTripOrigin201();
478        initializeObservedLocation202();
479        initializeObservedLocationFeatures203();
480        initializeObservedLocationMeasurment204();
481        initializeFishingArea2RegulationLocation205();
482        initializeFishingArea206();
483        initializeFishingArea2ManagedLocation207();
484        initializeTransshipment208();
485        initializeLinkedItem209();
486        initializeSample210();
487        initializeExpectedSale211();
488        initializeSamplingStrata2Grouping212();
489        initializeSamplingScheme213();
490        initializeSamplingStrata2Fishery214();
491        initializeDenormalizedSamplingStrata215();
492        initializeSamplingStrata2Vessel216();
493        initializeSamplingStrata217();
494        initializePlaygroundFishingTripVesselMaster218();
495        initializePlaygroundTaxonGroupSampling219();
496        initializePlaygroundVesselOwner220();
497        initializePlaygroundRicTaxonGroup221();
498        initializePlaygroundFishingEffortZone222();
499        initializePlaygroundVesselMaster223();
500    }
501
502    private static final void initializeNearbySpecificArea1()
503    {
504        embeddedValueNamesByType.put(
505            NearbySpecificAreaImpl.class,
506            null);
507        embeddedValuesByType.put(
508            NearbySpecificAreaImpl.class,
509            null);
510        navigableAssociationEndsByType.put(
511            NearbySpecificAreaImpl.class,
512            Arrays.asList(
513                new PropertyType[]
514                {
515                    new PropertyType("status", StatusImpl.class)
516                }
517            )
518        );
519    }
520
521    private static final void initializeGearClassificationAssociation2()
522    {
523        embeddedValueNamesByType.put(
524            GearClassificationAssociationImpl.class,
525            null);
526        embeddedValuesByType.put(
527            GearClassificationAssociationImpl.class,
528            null);
529        navigableAssociationEndsByType.put(
530            GearClassificationAssociationImpl.class,
531            Arrays.asList(
532                new PropertyType[]
533                {
534                    new PropertyType("toGearClassification", GearClassificationImpl.class),
535                    new PropertyType("fromGearClassification", GearClassificationImpl.class)
536                }
537            )
538        );
539    }
540
541    private static final void initializeGear3()
542    {
543        embeddedValueNamesByType.put(
544            GearImpl.class,
545            null);
546        embeddedValuesByType.put(
547            GearImpl.class,
548            null);
549        navigableAssociationEndsByType.put(
550            GearImpl.class,
551            Arrays.asList(
552                new PropertyType[]
553                {
554                    new PropertyType("parentGear", GearImpl.class),
555                    new PropertyType("validityStatus", ValidityStatusImpl.class),
556                    new PropertyType("childGears", GearImpl.class),
557                    new PropertyType("gearClassification", GearClassificationImpl.class),
558                    new PropertyType("status", StatusImpl.class)
559                }
560            )
561        );
562    }
563
564    private static final void initializeGearAssociation4()
565    {
566        embeddedValueNamesByType.put(
567            GearAssociationImpl.class,
568            null);
569        embeddedValuesByType.put(
570            GearAssociationImpl.class,
571            null);
572        navigableAssociationEndsByType.put(
573            GearAssociationImpl.class,
574            Arrays.asList(
575                new PropertyType[]
576                {
577                    new PropertyType("toGear", GearImpl.class),
578                    new PropertyType("fromGear", GearImpl.class)
579                }
580            )
581        );
582    }
583
584    private static final void initializeGearClassification5()
585    {
586        embeddedValueNamesByType.put(
587            GearClassificationImpl.class,
588            null);
589        embeddedValuesByType.put(
590            GearClassificationImpl.class,
591            null);
592        navigableAssociationEndsByType.put(
593            GearClassificationImpl.class,
594            Arrays.asList(
595                new PropertyType[]
596                {
597                    new PropertyType("gears", GearImpl.class)
598                }
599            )
600        );
601    }
602
603    private static final void initializeFishingGear6()
604    {
605        embeddedValueNamesByType.put(
606            FishingGearImpl.class,
607            null);
608        embeddedValuesByType.put(
609            FishingGearImpl.class,
610            null);
611        navigableAssociationEndsByType.put(
612            FishingGearImpl.class,
613            Arrays.asList(
614                new PropertyType[]
615                {
616                    new PropertyType("parentGear", GearImpl.class),
617                    new PropertyType("validityStatus", ValidityStatusImpl.class),
618                    new PropertyType("childGears", GearImpl.class),
619                    new PropertyType("gearClassification", GearClassificationImpl.class),
620                    new PropertyType("status", StatusImpl.class)
621                }
622            )
623        );
624    }
625
626    private static final void initializeLocation7()
627    {
628        embeddedValueNamesByType.put(
629            LocationImpl.class,
630            null);
631        embeddedValuesByType.put(
632            LocationImpl.class,
633            null);
634        navigableAssociationEndsByType.put(
635            LocationImpl.class,
636            Arrays.asList(
637                new PropertyType[]
638                {
639                    new PropertyType("validityStatus", ValidityStatusImpl.class),
640                    new PropertyType("locationClassification", LocationClassificationImpl.class),
641                    new PropertyType("locationLevel", LocationLevelImpl.class),
642                    new PropertyType("status", StatusImpl.class)
643                }
644            )
645        );
646    }
647
648    private static final void initializeLocationClassification8()
649    {
650        embeddedValueNamesByType.put(
651            LocationClassificationImpl.class,
652            null);
653        embeddedValuesByType.put(
654            LocationClassificationImpl.class,
655            null);
656        navigableAssociationEndsByType.put(
657            LocationClassificationImpl.class,
658            null);
659    }
660
661    private static final void initializeLocationArea9()
662    {
663        embeddedValueNamesByType.put(
664            LocationAreaImpl.class,
665            null);
666        embeddedValuesByType.put(
667            LocationAreaImpl.class,
668            null);
669        navigableAssociationEndsByType.put(
670            LocationAreaImpl.class,
671            Arrays.asList(
672                new PropertyType[]
673                {
674                    new PropertyType("validityStatus", ValidityStatusImpl.class),
675                    new PropertyType("locationClassification", LocationClassificationImpl.class),
676                    new PropertyType("locationLevel", LocationLevelImpl.class),
677                    new PropertyType("status", StatusImpl.class)
678                }
679            )
680        );
681    }
682
683    private static final void initializeLocationLevel10()
684    {
685        embeddedValueNamesByType.put(
686            LocationLevelImpl.class,
687            null);
688        embeddedValuesByType.put(
689            LocationLevelImpl.class,
690            null);
691        navigableAssociationEndsByType.put(
692            LocationLevelImpl.class,
693            Arrays.asList(
694                new PropertyType[]
695                {
696                    new PropertyType("parentLocationLevel", LocationLevelImpl.class),
697                    new PropertyType("locationLevels", LocationLevelImpl.class),
698                    new PropertyType("locationClassification", LocationClassificationImpl.class)
699                }
700            )
701        );
702    }
703
704    private static final void initializeLocationAssociation11()
705    {
706        embeddedValueNamesByType.put(
707            LocationAssociationImpl.class,
708            null);
709        embeddedValuesByType.put(
710            LocationAssociationImpl.class,
711            null);
712        navigableAssociationEndsByType.put(
713            LocationAssociationImpl.class,
714            Arrays.asList(
715                new PropertyType[]
716                {
717                    new PropertyType("parentLocation", LocationImpl.class),
718                    new PropertyType("childLocation", LocationImpl.class)
719                }
720            )
721        );
722    }
723
724    private static final void initializeLocationPoint12()
725    {
726        embeddedValueNamesByType.put(
727            LocationPointImpl.class,
728            null);
729        embeddedValuesByType.put(
730            LocationPointImpl.class,
731            null);
732        navigableAssociationEndsByType.put(
733            LocationPointImpl.class,
734            Arrays.asList(
735                new PropertyType[]
736                {
737                    new PropertyType("validityStatus", ValidityStatusImpl.class),
738                    new PropertyType("locationClassification", LocationClassificationImpl.class),
739                    new PropertyType("locationLevel", LocationLevelImpl.class),
740                    new PropertyType("status", StatusImpl.class)
741                }
742            )
743        );
744    }
745
746    private static final void initializeLocationLine13()
747    {
748        embeddedValueNamesByType.put(
749            LocationLineImpl.class,
750            null);
751        embeddedValuesByType.put(
752            LocationLineImpl.class,
753            null);
754        navigableAssociationEndsByType.put(
755            LocationLineImpl.class,
756            Arrays.asList(
757                new PropertyType[]
758                {
759                    new PropertyType("validityStatus", ValidityStatusImpl.class),
760                    new PropertyType("locationClassification", LocationClassificationImpl.class),
761                    new PropertyType("locationLevel", LocationLevelImpl.class),
762                    new PropertyType("status", StatusImpl.class)
763                }
764            )
765        );
766    }
767
768    private static final void initializeMetier14()
769    {
770        embeddedValueNamesByType.put(
771            MetierImpl.class,
772            null);
773        embeddedValuesByType.put(
774            MetierImpl.class,
775            null);
776        navigableAssociationEndsByType.put(
777            MetierImpl.class,
778            Arrays.asList(
779                new PropertyType[]
780                {
781                    new PropertyType("validityStatus", ValidityStatusImpl.class),
782                    new PropertyType("gear", GearImpl.class),
783                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
784                    new PropertyType("status", StatusImpl.class)
785                }
786            )
787        );
788    }
789
790    private static final void initializeSeller15()
791    {
792        embeddedValueNamesByType.put(
793            SellerImpl.class,
794            null);
795        embeddedValuesByType.put(
796            SellerImpl.class,
797            null);
798        navigableAssociationEndsByType.put(
799            SellerImpl.class,
800            Arrays.asList(
801                new PropertyType[]
802                {
803                    new PropertyType("sellerType", SellerTypeImpl.class),
804                    new PropertyType("baseSaleLocation", LocationImpl.class)
805                }
806            )
807        );
808    }
809
810    private static final void initializeSellerType16()
811    {
812        embeddedValueNamesByType.put(
813            SellerTypeImpl.class,
814            null);
815        embeddedValuesByType.put(
816            SellerTypeImpl.class,
817            null);
818        navigableAssociationEndsByType.put(
819            SellerTypeImpl.class,
820            Arrays.asList(
821                new PropertyType[]
822                {
823                    new PropertyType("status", StatusImpl.class),
824                    new PropertyType("sellers", SellerImpl.class)
825                }
826            )
827        );
828    }
829
830    private static final void initializeWeightLengthConversion17()
831    {
832        embeddedValueNamesByType.put(
833            WeightLengthConversionImpl.class,
834            null);
835        embeddedValuesByType.put(
836            WeightLengthConversionImpl.class,
837            null);
838        navigableAssociationEndsByType.put(
839            WeightLengthConversionImpl.class,
840            Arrays.asList(
841                new PropertyType[]
842                {
843                    new PropertyType("originItemType", OriginItemTypeImpl.class),
844                    new PropertyType("sex", QualitativeValueImpl.class),
845                    new PropertyType("lengthParameter", ParameterImpl.class),
846                    new PropertyType("lengthUnit", UnitImpl.class),
847                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
848                    new PropertyType("location", LocationImpl.class),
849                    new PropertyType("status", StatusImpl.class)
850                }
851            )
852        );
853    }
854
855    private static final void initializeUnitConversion18()
856    {
857        embeddedValueNamesByType.put(
858            UnitConversionImpl.class,
859            null);
860        embeddedValuesByType.put(
861            UnitConversionImpl.class,
862            null);
863        navigableAssociationEndsByType.put(
864            UnitConversionImpl.class,
865            Arrays.asList(
866                new PropertyType[]
867                {
868                    new PropertyType("fromUnit", UnitImpl.class),
869                    new PropertyType("toUnit", UnitImpl.class)
870                }
871            )
872        );
873    }
874
875    private static final void initializeRoundWeightConversion19()
876    {
877        embeddedValueNamesByType.put(
878            RoundWeightConversionImpl.class,
879            null);
880        embeddedValuesByType.put(
881            RoundWeightConversionImpl.class,
882            null);
883        navigableAssociationEndsByType.put(
884            RoundWeightConversionImpl.class,
885            Arrays.asList(
886                new PropertyType[]
887                {
888                    new PropertyType("originItemType", OriginItemTypeImpl.class),
889                    new PropertyType("preserving", QualitativeValueImpl.class),
890                    new PropertyType("dressing", QualitativeValueImpl.class),
891                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
892                    new PropertyType("location", LocationImpl.class)
893                }
894            )
895        );
896    }
897
898    private static final void initializeStatus20()
899    {
900        embeddedValueNamesByType.put(
901            StatusImpl.class,
902            null);
903        embeddedValuesByType.put(
904            StatusImpl.class,
905            null);
906        navigableAssociationEndsByType.put(
907            StatusImpl.class,
908            null);
909    }
910
911    private static final void initializeProcessingType21()
912    {
913        embeddedValueNamesByType.put(
914            ProcessingTypeImpl.class,
915            null);
916        embeddedValuesByType.put(
917            ProcessingTypeImpl.class,
918            null);
919        navigableAssociationEndsByType.put(
920            ProcessingTypeImpl.class,
921            Arrays.asList(
922                new PropertyType[]
923                {
924                    new PropertyType("status", StatusImpl.class),
925                    new PropertyType("processingHistories", ProcessingHistoryImpl.class)
926                }
927            )
928        );
929    }
930
931    private static final void initializeNumericalPrecision22()
932    {
933        embeddedValueNamesByType.put(
934            NumericalPrecisionImpl.class,
935            null);
936        embeddedValuesByType.put(
937            NumericalPrecisionImpl.class,
938            null);
939        navigableAssociationEndsByType.put(
940            NumericalPrecisionImpl.class,
941            Arrays.asList(
942                new PropertyType[]
943                {
944                    new PropertyType("status", StatusImpl.class)
945                }
946            )
947        );
948    }
949
950    private static final void initializeValidityStatus23()
951    {
952        embeddedValueNamesByType.put(
953            ValidityStatusImpl.class,
954            null);
955        embeddedValuesByType.put(
956            ValidityStatusImpl.class,
957            null);
958        navigableAssociationEndsByType.put(
959            ValidityStatusImpl.class,
960            null);
961    }
962
963    private static final void initializeAnalysisInstrument24()
964    {
965        embeddedValueNamesByType.put(
966            AnalysisInstrumentImpl.class,
967            null);
968        embeddedValuesByType.put(
969            AnalysisInstrumentImpl.class,
970            null);
971        navigableAssociationEndsByType.put(
972            AnalysisInstrumentImpl.class,
973            Arrays.asList(
974                new PropertyType[]
975                {
976                    new PropertyType("status", StatusImpl.class)
977                }
978            )
979        );
980    }
981
982    private static final void initializeEducationGrade25()
983    {
984        embeddedValueNamesByType.put(
985            EducationGradeImpl.class,
986            null);
987        embeddedValuesByType.put(
988            EducationGradeImpl.class,
989            null);
990        navigableAssociationEndsByType.put(
991            EducationGradeImpl.class,
992            null);
993    }
994
995    private static final void initializeQualityFlag26()
996    {
997        embeddedValueNamesByType.put(
998            QualityFlagImpl.class,
999            null);
1000        embeddedValuesByType.put(
1001            QualityFlagImpl.class,
1002            null);
1003        navigableAssociationEndsByType.put(
1004            QualityFlagImpl.class,
1005            Arrays.asList(
1006                new PropertyType[]
1007                {
1008                    new PropertyType("status", StatusImpl.class)
1009                }
1010            )
1011        );
1012    }
1013
1014    private static final void initializeGrouping27()
1015    {
1016        embeddedValueNamesByType.put(
1017            GroupingImpl.class,
1018            null);
1019        embeddedValuesByType.put(
1020            GroupingImpl.class,
1021            null);
1022        navigableAssociationEndsByType.put(
1023            GroupingImpl.class,
1024            Arrays.asList(
1025                new PropertyType[]
1026                {
1027                    new PropertyType("validityStatus", ValidityStatusImpl.class),
1028                    new PropertyType("parentGrouping", GroupingImpl.class),
1029                    new PropertyType("groupings", GroupingImpl.class),
1030                    new PropertyType("groupingClassification", GroupingClassificationImpl.class),
1031                    new PropertyType("status", StatusImpl.class),
1032                    new PropertyType("groupingItems", GroupingItemImpl.class),
1033                    new PropertyType("groupingLevel", GroupingLevelImpl.class)
1034                }
1035            )
1036        );
1037    }
1038
1039    private static final void initializeGroupingItem28()
1040    {
1041        embeddedValueNamesByType.put(
1042            GroupingItemImpl.class,
1043            null);
1044        embeddedValuesByType.put(
1045            GroupingItemImpl.class,
1046            null);
1047        navigableAssociationEndsByType.put(
1048            GroupingItemImpl.class,
1049            Arrays.asList(
1050                new PropertyType[]
1051                {
1052                    new PropertyType("grouping", GroupingImpl.class)
1053                }
1054            )
1055        );
1056    }
1057
1058    private static final void initializeGroupingClassification29()
1059    {
1060        embeddedValueNamesByType.put(
1061            GroupingClassificationImpl.class,
1062            null);
1063        embeddedValuesByType.put(
1064            GroupingClassificationImpl.class,
1065            null);
1066        navigableAssociationEndsByType.put(
1067            GroupingClassificationImpl.class,
1068            Arrays.asList(
1069                new PropertyType[]
1070                {
1071                    new PropertyType("objectType", ObjectTypeImpl.class)
1072                }
1073            )
1074        );
1075    }
1076
1077    private static final void initializeGroupingLevel30()
1078    {
1079        embeddedValueNamesByType.put(
1080            GroupingLevelImpl.class,
1081            null);
1082        embeddedValuesByType.put(
1083            GroupingLevelImpl.class,
1084            null);
1085        navigableAssociationEndsByType.put(
1086            GroupingLevelImpl.class,
1087            Arrays.asList(
1088                new PropertyType[]
1089                {
1090                    new PropertyType("parentGroupingLevel", GroupingLevelImpl.class),
1091                    new PropertyType("groupings", GroupingImpl.class),
1092                    new PropertyType("pmfm", PmfmImpl.class),
1093                    new PropertyType("groupingClassification", GroupingClassificationImpl.class),
1094                    new PropertyType("groupingLevels", GroupingLevelImpl.class)
1095                }
1096            )
1097        );
1098    }
1099
1100    private static final void initializeLinkedItemType31()
1101    {
1102        embeddedValueNamesByType.put(
1103            LinkedItemTypeImpl.class,
1104            null);
1105        embeddedValuesByType.put(
1106            LinkedItemTypeImpl.class,
1107            null);
1108        navigableAssociationEndsByType.put(
1109            LinkedItemTypeImpl.class,
1110            Arrays.asList(
1111                new PropertyType[]
1112                {
1113                    new PropertyType("fromObjectType", ObjectTypeImpl.class),
1114                    new PropertyType("toObjectType", ObjectTypeImpl.class),
1115                    new PropertyType("status", StatusImpl.class),
1116                    new PropertyType("fromProgram", ProgramImpl.class),
1117                    new PropertyType("toProgram", ProgramImpl.class)
1118                }
1119            )
1120        );
1121    }
1122
1123    private static final void initializeObjectType32()
1124    {
1125        embeddedValueNamesByType.put(
1126            ObjectTypeImpl.class,
1127            null);
1128        embeddedValuesByType.put(
1129            ObjectTypeImpl.class,
1130            null);
1131        navigableAssociationEndsByType.put(
1132            ObjectTypeImpl.class,
1133            null);
1134    }
1135
1136    private static final void initializeDepthGradient33()
1137    {
1138        embeddedValueNamesByType.put(
1139            DepthGradientImpl.class,
1140            null);
1141        embeddedValuesByType.put(
1142            DepthGradientImpl.class,
1143            null);
1144        navigableAssociationEndsByType.put(
1145            DepthGradientImpl.class,
1146            Arrays.asList(
1147                new PropertyType[]
1148                {
1149                    new PropertyType("status", StatusImpl.class)
1150                }
1151            )
1152        );
1153    }
1154
1155    private static final void initializeCorpusType34()
1156    {
1157        embeddedValueNamesByType.put(
1158            CorpusTypeImpl.class,
1159            null);
1160        embeddedValuesByType.put(
1161            CorpusTypeImpl.class,
1162            null);
1163        navigableAssociationEndsByType.put(
1164            CorpusTypeImpl.class,
1165            null);
1166    }
1167
1168    private static final void initializeRegulationArea2RegulationLocation35()
1169    {
1170        embeddedValueNamesByType.put(
1171            RegulationArea2RegulationLocationImpl.class,
1172            null);
1173        embeddedValuesByType.put(
1174            RegulationArea2RegulationLocationImpl.class,
1175            null);
1176        navigableAssociationEndsByType.put(
1177            RegulationArea2RegulationLocationImpl.class,
1178            Arrays.asList(
1179                new PropertyType[]
1180                {
1181                    new PropertyType("location", LocationImpl.class),
1182                    new PropertyType("regulationArea", RegulationAreaImpl.class)
1183                }
1184            )
1185        );
1186    }
1187
1188    private static final void initializeFishery2Grouping36()
1189    {
1190        embeddedValueNamesByType.put(
1191            Fishery2GroupingImpl.class,
1192            null);
1193        embeddedValuesByType.put(
1194            Fishery2GroupingImpl.class,
1195            null);
1196        navigableAssociationEndsByType.put(
1197            Fishery2GroupingImpl.class,
1198            Arrays.asList(
1199                new PropertyType[]
1200                {
1201                    new PropertyType("grouping", GroupingImpl.class),
1202                    new PropertyType("fishery", FisheryImpl.class)
1203                }
1204            )
1205        );
1206    }
1207
1208    private static final void initializeFishery2TaxonGroup37()
1209    {
1210        embeddedValueNamesByType.put(
1211            Fishery2TaxonGroupImpl.class,
1212            null);
1213        embeddedValuesByType.put(
1214            Fishery2TaxonGroupImpl.class,
1215            null);
1216        navigableAssociationEndsByType.put(
1217            Fishery2TaxonGroupImpl.class,
1218            Arrays.asList(
1219                new PropertyType[]
1220                {
1221                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
1222                    new PropertyType("fishery", FisheryImpl.class)
1223                }
1224            )
1225        );
1226    }
1227
1228    private static final void initializeCorpus38()
1229    {
1230        embeddedValueNamesByType.put(
1231            CorpusImpl.class,
1232            null);
1233        embeddedValuesByType.put(
1234            CorpusImpl.class,
1235            null);
1236        navigableAssociationEndsByType.put(
1237            CorpusImpl.class,
1238            Arrays.asList(
1239                new PropertyType[]
1240                {
1241                    new PropertyType("minimumSizeAlloweds", MinimumSizeAllowedImpl.class),
1242                    new PropertyType("corpusType", CorpusTypeImpl.class),
1243                    new PropertyType("fisheries", FisheryImpl.class),
1244                    new PropertyType("rightToProduces", RightToProduceImpl.class)
1245                }
1246            )
1247        );
1248    }
1249
1250    private static final void initializeRegulationArea39()
1251    {
1252        embeddedValueNamesByType.put(
1253            RegulationAreaImpl.class,
1254            null);
1255        embeddedValuesByType.put(
1256            RegulationAreaImpl.class,
1257            null);
1258        navigableAssociationEndsByType.put(
1259            RegulationAreaImpl.class,
1260            Arrays.asList(
1261                new PropertyType[]
1262                {
1263                    new PropertyType("grouping", GroupingImpl.class),
1264                    new PropertyType("regulationLocations", RegulationArea2RegulationLocationImpl.class),
1265                    new PropertyType("depthGradient", DepthGradientImpl.class),
1266                    new PropertyType("location", LocationImpl.class),
1267                    new PropertyType("fishery", FisheryImpl.class),
1268                    new PropertyType("nearbySpecificArea", NearbySpecificAreaImpl.class),
1269                    new PropertyType("distanceToCoastGradient", DistanceToCoastGradientImpl.class)
1270                }
1271            )
1272        );
1273    }
1274
1275    private static final void initializeFishery2Gear40()
1276    {
1277        embeddedValueNamesByType.put(
1278            Fishery2GearImpl.class,
1279            null);
1280        embeddedValuesByType.put(
1281            Fishery2GearImpl.class,
1282            null);
1283        navigableAssociationEndsByType.put(
1284            Fishery2GearImpl.class,
1285            Arrays.asList(
1286                new PropertyType[]
1287                {
1288                    new PropertyType("fishery", FisheryImpl.class),
1289                    new PropertyType("gear", GearImpl.class)
1290                }
1291            )
1292        );
1293    }
1294
1295    private static final void initializeFishery2Metier41()
1296    {
1297        embeddedValueNamesByType.put(
1298            Fishery2MetierImpl.class,
1299            null);
1300        embeddedValuesByType.put(
1301            Fishery2MetierImpl.class,
1302            null);
1303        navigableAssociationEndsByType.put(
1304            Fishery2MetierImpl.class,
1305            Arrays.asList(
1306                new PropertyType[]
1307                {
1308                    new PropertyType("fishery", FisheryImpl.class),
1309                    new PropertyType("metier", MetierImpl.class)
1310                }
1311            )
1312        );
1313    }
1314
1315    private static final void initializeFishery42()
1316    {
1317        embeddedValueNamesByType.put(
1318            FisheryImpl.class,
1319            null);
1320        embeddedValuesByType.put(
1321            FisheryImpl.class,
1322            null);
1323        navigableAssociationEndsByType.put(
1324            FisheryImpl.class,
1325            Arrays.asList(
1326                new PropertyType[]
1327                {
1328                    new PropertyType("fishery2TaxonGroups", Fishery2TaxonGroupImpl.class),
1329                    new PropertyType("fishery2Groupings", Fishery2GroupingImpl.class),
1330                    new PropertyType("corpuses", CorpusImpl.class),
1331                    new PropertyType("regulationAreas", RegulationAreaImpl.class),
1332                    new PropertyType("fishery2Gears", Fishery2GearImpl.class),
1333                    new PropertyType("fishery2Metiers", Fishery2MetierImpl.class)
1334                }
1335            )
1336        );
1337    }
1338
1339    private static final void initializeMinimumSizeAllowed43()
1340    {
1341        embeddedValueNamesByType.put(
1342            MinimumSizeAllowedImpl.class,
1343            null);
1344        embeddedValuesByType.put(
1345            MinimumSizeAllowedImpl.class,
1346            null);
1347        navigableAssociationEndsByType.put(
1348            MinimumSizeAllowedImpl.class,
1349            Arrays.asList(
1350                new PropertyType[]
1351                {
1352                    new PropertyType("corpus", CorpusImpl.class),
1353                    new PropertyType("sizeUnit", UnitImpl.class),
1354                    new PropertyType("locations", LocationImpl.class),
1355                    new PropertyType("taxonGroup", TaxonGroupImpl.class)
1356                }
1357            )
1358        );
1359    }
1360
1361    private static final void initializePrecisionType44()
1362    {
1363        embeddedValueNamesByType.put(
1364            PrecisionTypeImpl.class,
1365            null);
1366        embeddedValuesByType.put(
1367            PrecisionTypeImpl.class,
1368            null);
1369        navigableAssociationEndsByType.put(
1370            PrecisionTypeImpl.class,
1371            Arrays.asList(
1372                new PropertyType[]
1373                {
1374                    new PropertyType("status", StatusImpl.class)
1375                }
1376            )
1377        );
1378    }
1379
1380    private static final void initializeQualificationRule45()
1381    {
1382        embeddedValueNamesByType.put(
1383            QualificationRuleImpl.class,
1384            null);
1385        embeddedValuesByType.put(
1386            QualificationRuleImpl.class,
1387            null);
1388        navigableAssociationEndsByType.put(
1389            QualificationRuleImpl.class,
1390            Arrays.asList(
1391                new PropertyType[]
1392                {
1393                    new PropertyType("defaultQualityFlag", QualityFlagImpl.class),
1394                    new PropertyType("status", StatusImpl.class)
1395                }
1396            )
1397        );
1398    }
1399
1400    private static final void initializeVesselPersonRole46()
1401    {
1402        embeddedValueNamesByType.put(
1403            VesselPersonRoleImpl.class,
1404            null);
1405        embeddedValuesByType.put(
1406            VesselPersonRoleImpl.class,
1407            null);
1408        navigableAssociationEndsByType.put(
1409            VesselPersonRoleImpl.class,
1410            null);
1411    }
1412
1413    private static final void initializeMethod47()
1414    {
1415        embeddedValueNamesByType.put(
1416            MethodImpl.class,
1417            null);
1418        embeddedValuesByType.put(
1419            MethodImpl.class,
1420            null);
1421        navigableAssociationEndsByType.put(
1422            MethodImpl.class,
1423            Arrays.asList(
1424                new PropertyType[]
1425                {
1426                    new PropertyType("status", StatusImpl.class)
1427                }
1428            )
1429        );
1430    }
1431
1432    private static final void initializeUnit48()
1433    {
1434        embeddedValueNamesByType.put(
1435            UnitImpl.class,
1436            null);
1437        embeddedValuesByType.put(
1438            UnitImpl.class,
1439            null);
1440        navigableAssociationEndsByType.put(
1441            UnitImpl.class,
1442            Arrays.asList(
1443                new PropertyType[]
1444                {
1445                    new PropertyType("status", StatusImpl.class)
1446                }
1447            )
1448        );
1449    }
1450
1451    private static final void initializeFraction49()
1452    {
1453        embeddedValueNamesByType.put(
1454            FractionImpl.class,
1455            null);
1456        embeddedValuesByType.put(
1457            FractionImpl.class,
1458            null);
1459        navigableAssociationEndsByType.put(
1460            FractionImpl.class,
1461            Arrays.asList(
1462                new PropertyType[]
1463                {
1464                    new PropertyType("matrixes", MatrixImpl.class),
1465                    new PropertyType("status", StatusImpl.class)
1466                }
1467            )
1468        );
1469    }
1470
1471    private static final void initializeParameter50()
1472    {
1473        embeddedValueNamesByType.put(
1474            ParameterImpl.class,
1475            null);
1476        embeddedValuesByType.put(
1477            ParameterImpl.class,
1478            null);
1479        navigableAssociationEndsByType.put(
1480            ParameterImpl.class,
1481            Arrays.asList(
1482                new PropertyType[]
1483                {
1484                    new PropertyType("parameterGroup", ParameterGroupImpl.class),
1485                    new PropertyType("status", StatusImpl.class),
1486                    new PropertyType("qualitativeValues", QualitativeValueImpl.class)
1487                }
1488            )
1489        );
1490    }
1491
1492    private static final void initializeParameterGroup51()
1493    {
1494        embeddedValueNamesByType.put(
1495            ParameterGroupImpl.class,
1496            null);
1497        embeddedValuesByType.put(
1498            ParameterGroupImpl.class,
1499            null);
1500        navigableAssociationEndsByType.put(
1501            ParameterGroupImpl.class,
1502            Arrays.asList(
1503                new PropertyType[]
1504                {
1505                    new PropertyType("parentParameterGroup", ParameterGroupImpl.class),
1506                    new PropertyType("childParameterGroups", ParameterGroupImpl.class),
1507                    new PropertyType("status", StatusImpl.class)
1508                }
1509            )
1510        );
1511    }
1512
1513    private static final void initializeAggregationLevel52()
1514    {
1515        embeddedValueNamesByType.put(
1516            AggregationLevelImpl.class,
1517            null);
1518        embeddedValuesByType.put(
1519            AggregationLevelImpl.class,
1520            null);
1521        navigableAssociationEndsByType.put(
1522            AggregationLevelImpl.class,
1523            Arrays.asList(
1524                new PropertyType[]
1525                {
1526                    new PropertyType("status", StatusImpl.class)
1527                }
1528            )
1529        );
1530    }
1531
1532    private static final void initializeMatrix53()
1533    {
1534        embeddedValueNamesByType.put(
1535            MatrixImpl.class,
1536            null);
1537        embeddedValuesByType.put(
1538            MatrixImpl.class,
1539            null);
1540        navigableAssociationEndsByType.put(
1541            MatrixImpl.class,
1542            Arrays.asList(
1543                new PropertyType[]
1544                {
1545                    new PropertyType("fractions", FractionImpl.class),
1546                    new PropertyType("status", StatusImpl.class)
1547                }
1548            )
1549        );
1550    }
1551
1552    private static final void initializePmfm54()
1553    {
1554        embeddedValueNamesByType.put(
1555            PmfmImpl.class,
1556            null);
1557        embeddedValuesByType.put(
1558            PmfmImpl.class,
1559            null);
1560        navigableAssociationEndsByType.put(
1561            PmfmImpl.class,
1562            Arrays.asList(
1563                new PropertyType[]
1564                {
1565                    new PropertyType("validityStatus", ValidityStatusImpl.class),
1566                    new PropertyType("matrix", MatrixImpl.class),
1567                    new PropertyType("method", MethodImpl.class),
1568                    new PropertyType("qualitativeValues", QualitativeValueImpl.class),
1569                    new PropertyType("fraction", FractionImpl.class),
1570                    new PropertyType("parameter", ParameterImpl.class),
1571                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
1572                    new PropertyType("status", StatusImpl.class),
1573                    new PropertyType("unit", UnitImpl.class)
1574                }
1575            )
1576        );
1577    }
1578
1579    private static final void initializeQualitativeValue55()
1580    {
1581        embeddedValueNamesByType.put(
1582            QualitativeValueImpl.class,
1583            null);
1584        embeddedValuesByType.put(
1585            QualitativeValueImpl.class,
1586            null);
1587        navigableAssociationEndsByType.put(
1588            QualitativeValueImpl.class,
1589            Arrays.asList(
1590                new PropertyType[]
1591                {
1592                    new PropertyType("validityStatus", ValidityStatusImpl.class),
1593                    new PropertyType("status", StatusImpl.class),
1594                    new PropertyType("parameter", ParameterImpl.class)
1595                }
1596            )
1597        );
1598    }
1599
1600    private static final void initializePhotoType56()
1601    {
1602        embeddedValueNamesByType.put(
1603            PhotoTypeImpl.class,
1604            null);
1605        embeddedValuesByType.put(
1606            PhotoTypeImpl.class,
1607            null);
1608        navigableAssociationEndsByType.put(
1609            PhotoTypeImpl.class,
1610            Arrays.asList(
1611                new PropertyType[]
1612                {
1613                    new PropertyType("status", StatusImpl.class)
1614                }
1615            )
1616        );
1617    }
1618
1619    private static final void initializeTranscribingItemType57()
1620    {
1621        embeddedValueNamesByType.put(
1622            TranscribingItemTypeImpl.class,
1623            null);
1624        embeddedValuesByType.put(
1625            TranscribingItemTypeImpl.class,
1626            null);
1627        navigableAssociationEndsByType.put(
1628            TranscribingItemTypeImpl.class,
1629            Arrays.asList(
1630                new PropertyType[]
1631                {
1632                    new PropertyType("transcribingSystem", TranscribingSystemImpl.class),
1633                    new PropertyType("status", StatusImpl.class),
1634                    new PropertyType("transcribingSide", TranscribingSideImpl.class),
1635                    new PropertyType("objectType", ObjectTypeImpl.class)
1636                }
1637            )
1638        );
1639    }
1640
1641    private static final void initializeTranscribingSystem58()
1642    {
1643        embeddedValueNamesByType.put(
1644            TranscribingSystemImpl.class,
1645            null);
1646        embeddedValuesByType.put(
1647            TranscribingSystemImpl.class,
1648            null);
1649        navigableAssociationEndsByType.put(
1650            TranscribingSystemImpl.class,
1651            Arrays.asList(
1652                new PropertyType[]
1653                {
1654                    new PropertyType("status", StatusImpl.class)
1655                }
1656            )
1657        );
1658    }
1659
1660    private static final void initializeTranscribingItem59()
1661    {
1662        embeddedValueNamesByType.put(
1663            TranscribingItemImpl.class,
1664            null);
1665        embeddedValuesByType.put(
1666            TranscribingItemImpl.class,
1667            null);
1668        navigableAssociationEndsByType.put(
1669            TranscribingItemImpl.class,
1670            Arrays.asList(
1671                new PropertyType[]
1672                {
1673                    new PropertyType("validityStatus", ValidityStatusImpl.class),
1674                    new PropertyType("transcribingItemType", TranscribingItemTypeImpl.class)
1675                }
1676            )
1677        );
1678    }
1679
1680    private static final void initializeTranscribingSide60()
1681    {
1682        embeddedValueNamesByType.put(
1683            TranscribingSideImpl.class,
1684            null);
1685        embeddedValuesByType.put(
1686            TranscribingSideImpl.class,
1687            null);
1688        navigableAssociationEndsByType.put(
1689            TranscribingSideImpl.class,
1690            null);
1691    }
1692
1693    private static final void initializeOrderItem61()
1694    {
1695        embeddedValueNamesByType.put(
1696            OrderItemImpl.class,
1697            null);
1698        embeddedValuesByType.put(
1699            OrderItemImpl.class,
1700            null);
1701        navigableAssociationEndsByType.put(
1702            OrderItemImpl.class,
1703            Arrays.asList(
1704                new PropertyType[]
1705                {
1706                    new PropertyType("orderType", OrderTypeImpl.class)
1707                }
1708            )
1709        );
1710    }
1711
1712    private static final void initializeOrderType62()
1713    {
1714        embeddedValueNamesByType.put(
1715            OrderTypeImpl.class,
1716            null);
1717        embeddedValuesByType.put(
1718            OrderTypeImpl.class,
1719            null);
1720        navigableAssociationEndsByType.put(
1721            OrderTypeImpl.class,
1722            Arrays.asList(
1723                new PropertyType[]
1724                {
1725                    new PropertyType("orderItems", OrderItemImpl.class),
1726                    new PropertyType("objectType", ObjectTypeImpl.class),
1727                    new PropertyType("status", StatusImpl.class)
1728                }
1729            )
1730        );
1731    }
1732
1733    private static final void initializeBuyer63()
1734    {
1735        embeddedValueNamesByType.put(
1736            BuyerImpl.class,
1737            null);
1738        embeddedValuesByType.put(
1739            BuyerImpl.class,
1740            null);
1741        navigableAssociationEndsByType.put(
1742            BuyerImpl.class,
1743            Arrays.asList(
1744                new PropertyType[]
1745                {
1746                    new PropertyType("buyerType", BuyerTypeImpl.class),
1747                    new PropertyType("status", StatusImpl.class)
1748                }
1749            )
1750        );
1751    }
1752
1753    private static final void initializeBuyerType64()
1754    {
1755        embeddedValueNamesByType.put(
1756            BuyerTypeImpl.class,
1757            null);
1758        embeddedValuesByType.put(
1759            BuyerTypeImpl.class,
1760            null);
1761        navigableAssociationEndsByType.put(
1762            BuyerTypeImpl.class,
1763            Arrays.asList(
1764                new PropertyType[]
1765                {
1766                    new PropertyType("status", StatusImpl.class),
1767                    new PropertyType("buyers", BuyerImpl.class)
1768                }
1769            )
1770        );
1771    }
1772
1773    private static final void initializeSpatialItem2Location65()
1774    {
1775        embeddedValueNamesByType.put(
1776            SpatialItem2LocationImpl.class,
1777            null);
1778        embeddedValuesByType.put(
1779            SpatialItem2LocationImpl.class,
1780            null);
1781        navigableAssociationEndsByType.put(
1782            SpatialItem2LocationImpl.class,
1783            Arrays.asList(
1784                new PropertyType[]
1785                {
1786                    new PropertyType("location", LocationImpl.class),
1787                    new PropertyType("spatialItem", SpatialItemImpl.class)
1788                }
1789            )
1790        );
1791    }
1792
1793    private static final void initializeSpatialItemArea66()
1794    {
1795        embeddedValueNamesByType.put(
1796            SpatialItemAreaImpl.class,
1797            null);
1798        embeddedValuesByType.put(
1799            SpatialItemAreaImpl.class,
1800            null);
1801        navigableAssociationEndsByType.put(
1802            SpatialItemAreaImpl.class,
1803            Arrays.asList(
1804                new PropertyType[]
1805                {
1806                    new PropertyType("spatialItem", SpatialItemImpl.class)
1807                }
1808            )
1809        );
1810    }
1811
1812    private static final void initializeSpatialItem67()
1813    {
1814        embeddedValueNamesByType.put(
1815            SpatialItemImpl.class,
1816            null);
1817        embeddedValuesByType.put(
1818            SpatialItemImpl.class,
1819            null);
1820        navigableAssociationEndsByType.put(
1821            SpatialItemImpl.class,
1822            Arrays.asList(
1823                new PropertyType[]
1824                {
1825                    new PropertyType("spatialItem2Locations", SpatialItem2LocationImpl.class),
1826                    new PropertyType("spatialItemAreas", SpatialItemAreaImpl.class),
1827                    new PropertyType("spatialItemPoints", SpatialItemPointImpl.class),
1828                    new PropertyType("spatialItemLines", SpatialItemLineImpl.class),
1829                    new PropertyType("spatialItemType", SpatialItemTypeImpl.class)
1830                }
1831            )
1832        );
1833    }
1834
1835    private static final void initializeSpatialItemPoint68()
1836    {
1837        embeddedValueNamesByType.put(
1838            SpatialItemPointImpl.class,
1839            null);
1840        embeddedValuesByType.put(
1841            SpatialItemPointImpl.class,
1842            null);
1843        navigableAssociationEndsByType.put(
1844            SpatialItemPointImpl.class,
1845            Arrays.asList(
1846                new PropertyType[]
1847                {
1848                    new PropertyType("spatialItem", SpatialItemImpl.class)
1849                }
1850            )
1851        );
1852    }
1853
1854    private static final void initializeSpatialItemLine69()
1855    {
1856        embeddedValueNamesByType.put(
1857            SpatialItemLineImpl.class,
1858            null);
1859        embeddedValuesByType.put(
1860            SpatialItemLineImpl.class,
1861            null);
1862        navigableAssociationEndsByType.put(
1863            SpatialItemLineImpl.class,
1864            Arrays.asList(
1865                new PropertyType[]
1866                {
1867                    new PropertyType("spatialItem", SpatialItemImpl.class)
1868                }
1869            )
1870        );
1871    }
1872
1873    private static final void initializeSpatialItemType70()
1874    {
1875        embeddedValueNamesByType.put(
1876            SpatialItemTypeImpl.class,
1877            null);
1878        embeddedValuesByType.put(
1879            SpatialItemTypeImpl.class,
1880            null);
1881        navigableAssociationEndsByType.put(
1882            SpatialItemTypeImpl.class,
1883            Arrays.asList(
1884                new PropertyType[]
1885                {
1886                    new PropertyType("status", StatusImpl.class),
1887                    new PropertyType("objectType", ObjectTypeImpl.class),
1888                    new PropertyType("spatialItems", SpatialItemImpl.class)
1889                }
1890            )
1891        );
1892    }
1893
1894    private static final void initializeProcessingStatus71()
1895    {
1896        embeddedValueNamesByType.put(
1897            ProcessingStatusImpl.class,
1898            null);
1899        embeddedValuesByType.put(
1900            ProcessingStatusImpl.class,
1901            null);
1902        navigableAssociationEndsByType.put(
1903            ProcessingStatusImpl.class,
1904            Arrays.asList(
1905                new PropertyType[]
1906                {
1907                    new PropertyType("status", StatusImpl.class),
1908                    new PropertyType("processingHistories", ProcessingHistoryImpl.class)
1909                }
1910            )
1911        );
1912    }
1913
1914    private static final void initializeVesselType72()
1915    {
1916        embeddedValueNamesByType.put(
1917            VesselTypeImpl.class,
1918            null);
1919        embeddedValuesByType.put(
1920            VesselTypeImpl.class,
1921            null);
1922        navigableAssociationEndsByType.put(
1923            VesselTypeImpl.class,
1924            Arrays.asList(
1925                new PropertyType[]
1926                {
1927                    new PropertyType("status", StatusImpl.class)
1928                }
1929            )
1930        );
1931    }
1932
1933    private static final void initializeTaxonGroupInformation73()
1934    {
1935        embeddedValueNamesByType.put(
1936            TaxonGroupInformationImpl.class,
1937            null);
1938        embeddedValuesByType.put(
1939            TaxonGroupInformationImpl.class,
1940            null);
1941        navigableAssociationEndsByType.put(
1942            TaxonGroupInformationImpl.class,
1943            Arrays.asList(
1944                new PropertyType[]
1945                {
1946                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
1947                    new PropertyType("referenceDocument", ReferenceDocumentImpl.class)
1948                }
1949            )
1950        );
1951    }
1952
1953    private static final void initializeTaxonGroupType74()
1954    {
1955        embeddedValueNamesByType.put(
1956            TaxonGroupTypeImpl.class,
1957            null);
1958        embeddedValuesByType.put(
1959            TaxonGroupTypeImpl.class,
1960            null);
1961        navigableAssociationEndsByType.put(
1962            TaxonGroupTypeImpl.class,
1963            Arrays.asList(
1964                new PropertyType[]
1965                {
1966                    new PropertyType("taxonGroups", TaxonGroupImpl.class)
1967                }
1968            )
1969        );
1970    }
1971
1972    private static final void initializeAuthor75()
1973    {
1974        embeddedValueNamesByType.put(
1975            AuthorImpl.class,
1976            null);
1977        embeddedValuesByType.put(
1978            AuthorImpl.class,
1979            null);
1980        navigableAssociationEndsByType.put(
1981            AuthorImpl.class,
1982            Arrays.asList(
1983                new PropertyType[]
1984                {
1985                    new PropertyType("referenceDocuments", ReferenceDocumentImpl.class),
1986                    new PropertyType("status", StatusImpl.class)
1987                }
1988            )
1989        );
1990    }
1991
1992    private static final void initializeTaxonGroupHistoricalRecord76()
1993    {
1994        embeddedValueNamesByType.put(
1995            TaxonGroupHistoricalRecordImpl.class,
1996            null);
1997        embeddedValuesByType.put(
1998            TaxonGroupHistoricalRecordImpl.class,
1999            null);
2000        navigableAssociationEndsByType.put(
2001            TaxonGroupHistoricalRecordImpl.class,
2002            Arrays.asList(
2003                new PropertyType[]
2004                {
2005                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
2006                    new PropertyType("taxonGroup", TaxonGroupImpl.class)
2007                }
2008            )
2009        );
2010    }
2011
2012    private static final void initializeReferenceTaxon77()
2013    {
2014        embeddedValueNamesByType.put(
2015            ReferenceTaxonImpl.class,
2016            null);
2017        embeddedValuesByType.put(
2018            ReferenceTaxonImpl.class,
2019            null);
2020        navigableAssociationEndsByType.put(
2021            ReferenceTaxonImpl.class,
2022            null);
2023    }
2024
2025    private static final void initializeTaxonGroupLengthPmfm78()
2026    {
2027        embeddedValueNamesByType.put(
2028            TaxonGroupLengthPmfmImpl.class,
2029            null);
2030        embeddedValuesByType.put(
2031            TaxonGroupLengthPmfmImpl.class,
2032            null);
2033        navigableAssociationEndsByType.put(
2034            TaxonGroupLengthPmfmImpl.class,
2035            Arrays.asList(
2036                new PropertyType[]
2037                {
2038                    new PropertyType("unit", UnitImpl.class),
2039                    new PropertyType("dressing", QualitativeValueImpl.class),
2040                    new PropertyType("parameter", ParameterImpl.class),
2041                    new PropertyType("pmfm", PmfmImpl.class),
2042                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
2043                    new PropertyType("location", LocationImpl.class)
2044                }
2045            )
2046        );
2047    }
2048
2049    private static final void initializeCitation79()
2050    {
2051        embeddedValueNamesByType.put(
2052            CitationImpl.class,
2053            null);
2054        embeddedValuesByType.put(
2055            CitationImpl.class,
2056            null);
2057        navigableAssociationEndsByType.put(
2058            CitationImpl.class,
2059            Arrays.asList(
2060                new PropertyType[]
2061                {
2062                    new PropertyType("status", StatusImpl.class)
2063                }
2064            )
2065        );
2066    }
2067
2068    private static final void initializeTaxonInformationHistory80()
2069    {
2070        embeddedValueNamesByType.put(
2071            TaxonInformationHistoryImpl.class,
2072            null);
2073        embeddedValuesByType.put(
2074            TaxonInformationHistoryImpl.class,
2075            null);
2076        navigableAssociationEndsByType.put(
2077            TaxonInformationHistoryImpl.class,
2078            Arrays.asList(
2079                new PropertyType[]
2080                {
2081                    new PropertyType("taxonNameHistory", TaxonNameHistoryImpl.class),
2082                    new PropertyType("referenceDocument", ReferenceDocumentImpl.class)
2083                }
2084            )
2085        );
2086    }
2087
2088    private static final void initializeTaxonomicLevel81()
2089    {
2090        embeddedValueNamesByType.put(
2091            TaxonomicLevelImpl.class,
2092            null);
2093        embeddedValuesByType.put(
2094            TaxonomicLevelImpl.class,
2095            null);
2096        navigableAssociationEndsByType.put(
2097            TaxonomicLevelImpl.class,
2098            Arrays.asList(
2099                new PropertyType[]
2100                {
2101                    new PropertyType("taxonNames", TaxonNameImpl.class),
2102                    new PropertyType("status", StatusImpl.class)
2103                }
2104            )
2105        );
2106    }
2107
2108    private static final void initializeTaxonGroup82()
2109    {
2110        embeddedValueNamesByType.put(
2111            TaxonGroupImpl.class,
2112            null);
2113        embeddedValuesByType.put(
2114            TaxonGroupImpl.class,
2115            null);
2116        navigableAssociationEndsByType.put(
2117            TaxonGroupImpl.class,
2118            Arrays.asList(
2119                new PropertyType[]
2120                {
2121                    new PropertyType("validityStatus", ValidityStatusImpl.class),
2122                    new PropertyType("parentTaxonGroup", TaxonGroupImpl.class),
2123                    new PropertyType("childTaxonGroups", TaxonGroupImpl.class),
2124                    new PropertyType("taxonGroupInformations", TaxonGroupInformationImpl.class),
2125                    new PropertyType("taxonGroupType", TaxonGroupTypeImpl.class),
2126                    new PropertyType("taxonGroupHistoricalRecords", TaxonGroupHistoricalRecordImpl.class),
2127                    new PropertyType("status", StatusImpl.class)
2128                }
2129            )
2130        );
2131    }
2132
2133    private static final void initializeReferenceDocument83()
2134    {
2135        embeddedValueNamesByType.put(
2136            ReferenceDocumentImpl.class,
2137            null);
2138        embeddedValuesByType.put(
2139            ReferenceDocumentImpl.class,
2140            null);
2141        navigableAssociationEndsByType.put(
2142            ReferenceDocumentImpl.class,
2143            Arrays.asList(
2144                new PropertyType[]
2145                {
2146                    new PropertyType("authors", AuthorImpl.class),
2147                    new PropertyType("taxonInformationHistories", TaxonInformationHistoryImpl.class),
2148                    new PropertyType("status", StatusImpl.class)
2149                }
2150            )
2151        );
2152    }
2153
2154    private static final void initializeTaxonNameHistory84()
2155    {
2156        embeddedValueNamesByType.put(
2157            TaxonNameHistoryImpl.class,
2158            null);
2159        embeddedValuesByType.put(
2160            TaxonNameHistoryImpl.class,
2161            null);
2162        navigableAssociationEndsByType.put(
2163            TaxonNameHistoryImpl.class,
2164            Arrays.asList(
2165                new PropertyType[]
2166                {
2167                    new PropertyType("citation", CitationImpl.class),
2168                    new PropertyType("taxonName", TaxonNameImpl.class),
2169                    new PropertyType("parentTaxonName", TaxonNameImpl.class)
2170                }
2171            )
2172        );
2173    }
2174
2175    private static final void initializeTaxonName85()
2176    {
2177        embeddedValueNamesByType.put(
2178            TaxonNameImpl.class,
2179            null);
2180        embeddedValuesByType.put(
2181            TaxonNameImpl.class,
2182            null);
2183        navigableAssociationEndsByType.put(
2184            TaxonNameImpl.class,
2185            Arrays.asList(
2186                new PropertyType[]
2187                {
2188                    new PropertyType("citation", CitationImpl.class),
2189                    new PropertyType("parentTaxonName", TaxonNameImpl.class),
2190                    new PropertyType("childTaxonNames", TaxonNameImpl.class),
2191                    new PropertyType("parentTaxonNameHistories", TaxonNameHistoryImpl.class),
2192                    new PropertyType("taxonNamehistories", TaxonNameHistoryImpl.class),
2193                    new PropertyType("taxonomicLevel", TaxonomicLevelImpl.class),
2194                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class)
2195                }
2196            )
2197        );
2198    }
2199
2200    private static final void initializeTaxonInformation86()
2201    {
2202        embeddedValueNamesByType.put(
2203            TaxonInformationImpl.class,
2204            null);
2205        embeddedValuesByType.put(
2206            TaxonInformationImpl.class,
2207            null);
2208        navigableAssociationEndsByType.put(
2209            TaxonInformationImpl.class,
2210            Arrays.asList(
2211                new PropertyType[]
2212                {
2213                    new PropertyType("referenceDocument", ReferenceDocumentImpl.class),
2214                    new PropertyType("taxonName", TaxonNameImpl.class)
2215                }
2216            )
2217        );
2218    }
2219
2220    private static final void initializeVirtualComponent87()
2221    {
2222        embeddedValueNamesByType.put(
2223            VirtualComponentImpl.class,
2224            null);
2225        embeddedValuesByType.put(
2226            VirtualComponentImpl.class,
2227            null);
2228        navigableAssociationEndsByType.put(
2229            VirtualComponentImpl.class,
2230            Arrays.asList(
2231                new PropertyType[]
2232                {
2233                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
2234                    new PropertyType("taxonName", TaxonNameImpl.class)
2235                }
2236            )
2237        );
2238    }
2239
2240    private static final void initializeDistanceToCoastGradient88()
2241    {
2242        embeddedValueNamesByType.put(
2243            DistanceToCoastGradientImpl.class,
2244            null);
2245        embeddedValuesByType.put(
2246            DistanceToCoastGradientImpl.class,
2247            null);
2248        navigableAssociationEndsByType.put(
2249            DistanceToCoastGradientImpl.class,
2250            Arrays.asList(
2251                new PropertyType[]
2252                {
2253                    new PropertyType("status", StatusImpl.class)
2254                }
2255            )
2256        );
2257    }
2258
2259    private static final void initializeOriginItemType89()
2260    {
2261        embeddedValueNamesByType.put(
2262            OriginItemTypeImpl.class,
2263            null);
2264        embeddedValuesByType.put(
2265            OriginItemTypeImpl.class,
2266            null);
2267        navigableAssociationEndsByType.put(
2268            OriginItemTypeImpl.class,
2269            Arrays.asList(
2270                new PropertyType[]
2271                {
2272                    new PropertyType("status", StatusImpl.class)
2273                }
2274            )
2275        );
2276    }
2277
2278    private static final void initializeAppliedSizeCategory90()
2279    {
2280        embeddedValueNamesByType.put(
2281            AppliedSizeCategoryImpl.class,
2282            null);
2283        embeddedValuesByType.put(
2284            AppliedSizeCategoryImpl.class,
2285            null);
2286        navigableAssociationEndsByType.put(
2287            AppliedSizeCategoryImpl.class,
2288            Arrays.asList(
2289                new PropertyType[]
2290                {
2291                    new PropertyType("sizeCategory", QualitativeValueImpl.class),
2292                    new PropertyType("location", LocationImpl.class),
2293                    new PropertyType("dressing", QualitativeValueImpl.class),
2294                    new PropertyType("originItemType", OriginItemTypeImpl.class),
2295                    new PropertyType("taxonGroup", TaxonGroupImpl.class)
2296                }
2297            )
2298        );
2299    }
2300
2301    private static final void initializeSaleType91()
2302    {
2303        embeddedValueNamesByType.put(
2304            SaleTypeImpl.class,
2305            null);
2306        embeddedValuesByType.put(
2307            SaleTypeImpl.class,
2308            null);
2309        navigableAssociationEndsByType.put(
2310            SaleTypeImpl.class,
2311            Arrays.asList(
2312                new PropertyType[]
2313                {
2314                    new PropertyType("marketingTransaction", QualitativeValueImpl.class),
2315                    new PropertyType("marketingStatus", QualitativeValueImpl.class),
2316                    new PropertyType("marketingDestination", QualitativeValueImpl.class),
2317                    new PropertyType("marketingBuyerType", QualitativeValueImpl.class),
2318                    new PropertyType("status", StatusImpl.class)
2319                }
2320            )
2321        );
2322    }
2323
2324    private static final void initializeAgeReaderQualification92()
2325    {
2326        embeddedValueNamesByType.put(
2327            AgeReaderQualificationImpl.class,
2328            null);
2329        embeddedValuesByType.put(
2330            AgeReaderQualificationImpl.class,
2331            null);
2332        navigableAssociationEndsByType.put(
2333            AgeReaderQualificationImpl.class,
2334            Arrays.asList(
2335                new PropertyType[]
2336                {
2337                    new PropertyType("people", PersonImpl.class),
2338                    new PropertyType("locations", LocationImpl.class),
2339                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class)
2340                }
2341            )
2342        );
2343    }
2344
2345    private static final void initializeUserProfil93()
2346    {
2347        embeddedValueNamesByType.put(
2348            UserProfilImpl.class,
2349            null);
2350        embeddedValuesByType.put(
2351            UserProfilImpl.class,
2352            null);
2353        navigableAssociationEndsByType.put(
2354            UserProfilImpl.class,
2355            null);
2356    }
2357
2358    private static final void initializePersonSession94()
2359    {
2360        embeddedValueNamesByType.put(
2361            PersonSessionImpl.class,
2362            null);
2363        embeddedValuesByType.put(
2364            PersonSessionImpl.class,
2365            null);
2366        navigableAssociationEndsByType.put(
2367            PersonSessionImpl.class,
2368            Arrays.asList(
2369                new PropertyType[]
2370                {
2371                    new PropertyType("person", PersonImpl.class),
2372                    new PropertyType("personSessionVessels", PersonSessionVesselImpl.class)
2373                }
2374            )
2375        );
2376    }
2377
2378    private static final void initializePerson95()
2379    {
2380        embeddedValueNamesByType.put(
2381            PersonImpl.class,
2382            null);
2383        embeddedValuesByType.put(
2384            PersonImpl.class,
2385            null);
2386        navigableAssociationEndsByType.put(
2387            PersonImpl.class,
2388            Arrays.asList(
2389                new PropertyType[]
2390                {
2391                    new PropertyType("program2Persons", Program2PersonImpl.class),
2392                    new PropertyType("profils", UserProfilImpl.class),
2393                    new PropertyType("department", DepartmentImpl.class),
2394                    new PropertyType("status", StatusImpl.class)
2395                }
2396            )
2397        );
2398    }
2399
2400    private static final void initializePersonSessionVessel96()
2401    {
2402        embeddedValueNamesByType.put(
2403            PersonSessionVesselImpl.class,
2404            null);
2405        embeddedValuesByType.put(
2406            PersonSessionVesselImpl.class,
2407            null);
2408        navigableAssociationEndsByType.put(
2409            PersonSessionVesselImpl.class,
2410            Arrays.asList(
2411                new PropertyType[]
2412                {
2413                    new PropertyType("objectType", ObjectTypeImpl.class),
2414                    new PropertyType("program", ProgramImpl.class),
2415                    new PropertyType("personSession", PersonSessionImpl.class),
2416                    new PropertyType("vessel", VesselImpl.class)
2417                }
2418            )
2419        );
2420    }
2421
2422    private static final void initializeManagedDataTransfer97()
2423    {
2424        embeddedValueNamesByType.put(
2425            ManagedDataTransferImpl.class,
2426            null);
2427        embeddedValuesByType.put(
2428            ManagedDataTransferImpl.class,
2429            null);
2430        navigableAssociationEndsByType.put(
2431            ManagedDataTransferImpl.class,
2432            Arrays.asList(
2433                new PropertyType[]
2434                {
2435                    new PropertyType("managedData", ManagedDataImpl.class),
2436                    new PropertyType("newManagerUser", PersonImpl.class)
2437                }
2438            )
2439        );
2440    }
2441
2442    private static final void initializeDepartment98()
2443    {
2444        embeddedValueNamesByType.put(
2445            DepartmentImpl.class,
2446            null);
2447        embeddedValuesByType.put(
2448            DepartmentImpl.class,
2449            null);
2450        navigableAssociationEndsByType.put(
2451            DepartmentImpl.class,
2452            Arrays.asList(
2453                new PropertyType[]
2454                {
2455                    new PropertyType("parentDepartment", DepartmentImpl.class),
2456                    new PropertyType("program2Departments", Program2DepartmentImpl.class),
2457                    new PropertyType("departments", DepartmentImpl.class),
2458                    new PropertyType("status", StatusImpl.class)
2459                }
2460            )
2461        );
2462    }
2463
2464    private static final void initializeDepartmentPrivilegeTransfert99()
2465    {
2466        embeddedValueNamesByType.put(
2467            DepartmentPrivilegeTransfertImpl.class,
2468            null);
2469        embeddedValuesByType.put(
2470            DepartmentPrivilegeTransfertImpl.class,
2471            null);
2472        navigableAssociationEndsByType.put(
2473            DepartmentPrivilegeTransfertImpl.class,
2474            Arrays.asList(
2475                new PropertyType[]
2476                {
2477                    new PropertyType("fromDepartment", DepartmentImpl.class),
2478                    new PropertyType("status", StatusImpl.class),
2479                    new PropertyType("toDepartment", DepartmentImpl.class)
2480                }
2481            )
2482        );
2483    }
2484
2485    private static final void initializeVesselManagePeriod100()
2486    {
2487        embeddedValueNamesByType.put(
2488            VesselManagePeriodImpl.class,
2489            null);
2490        embeddedValuesByType.put(
2491            VesselManagePeriodImpl.class,
2492            null);
2493        navigableAssociationEndsByType.put(
2494            VesselManagePeriodImpl.class,
2495            Arrays.asList(
2496                new PropertyType[]
2497                {
2498                    new PropertyType("vessel", VesselImpl.class),
2499                    new PropertyType("managedData", ManagedDataImpl.class)
2500                }
2501            )
2502        );
2503    }
2504
2505    private static final void initializeManagedData101()
2506    {
2507        embeddedValueNamesByType.put(
2508            ManagedDataImpl.class,
2509            null);
2510        embeddedValuesByType.put(
2511            ManagedDataImpl.class,
2512            null);
2513        navigableAssociationEndsByType.put(
2514            ManagedDataImpl.class,
2515            Arrays.asList(
2516                new PropertyType[]
2517                {
2518                    new PropertyType("vesselManagePeriods", VesselManagePeriodImpl.class),
2519                    new PropertyType("viewerUsers", PersonImpl.class),
2520                    new PropertyType("managerUser", PersonImpl.class),
2521                    new PropertyType("supervisorUser", PersonImpl.class),
2522                    new PropertyType("managedDataType", ManagedDataTypeImpl.class),
2523                    new PropertyType("managedDataTransfers", ManagedDataTransferImpl.class)
2524                }
2525            )
2526        );
2527    }
2528
2529    private static final void initializeManagedDataType102()
2530    {
2531        embeddedValueNamesByType.put(
2532            ManagedDataTypeImpl.class,
2533            null);
2534        embeddedValuesByType.put(
2535            ManagedDataTypeImpl.class,
2536            null);
2537        navigableAssociationEndsByType.put(
2538            ManagedDataTypeImpl.class,
2539            Arrays.asList(
2540                new PropertyType[]
2541                {
2542                    new PropertyType("status", StatusImpl.class)
2543                }
2544            )
2545        );
2546    }
2547
2548    private static final void initializeProgramPrivilege103()
2549    {
2550        embeddedValueNamesByType.put(
2551            ProgramPrivilegeImpl.class,
2552            null);
2553        embeddedValuesByType.put(
2554            ProgramPrivilegeImpl.class,
2555            null);
2556        navigableAssociationEndsByType.put(
2557            ProgramPrivilegeImpl.class,
2558            Arrays.asList(
2559                new PropertyType[]
2560                {
2561                    new PropertyType("program2Persons", Program2PersonImpl.class),
2562                    new PropertyType("program2Departments", Program2DepartmentImpl.class)
2563                }
2564            )
2565        );
2566    }
2567
2568    private static final void initializeBatchModelAppliedStrategy104()
2569    {
2570        embeddedValueNamesByType.put(
2571            BatchModelAppliedStrategyImpl.class,
2572            null);
2573        embeddedValuesByType.put(
2574            BatchModelAppliedStrategyImpl.class,
2575            null);
2576        navigableAssociationEndsByType.put(
2577            BatchModelAppliedStrategyImpl.class,
2578            Arrays.asList(
2579                new PropertyType[]
2580                {
2581                    new PropertyType("batchModel", BatchModelImpl.class),
2582                    new PropertyType("acquisitionLevel", AcquisitionLevelImpl.class),
2583                    new PropertyType("appliedStrategy", AppliedStrategyImpl.class)
2584                }
2585            )
2586        );
2587    }
2588
2589    private static final void initializeAppliedPeriod105()
2590    {
2591        embeddedValueNamesByType.put(
2592            AppliedPeriodImpl.class,
2593            null);
2594        embeddedValuesByType.put(
2595            AppliedPeriodImpl.class,
2596            null);
2597        navigableAssociationEndsByType.put(
2598            AppliedPeriodImpl.class,
2599            Arrays.asList(
2600                new PropertyType[]
2601                {
2602                    new PropertyType("appliedStrategy", AppliedStrategyImpl.class)
2603                }
2604            )
2605        );
2606    }
2607
2608    private static final void initializeAcquisitionLevel106()
2609    {
2610        embeddedValueNamesByType.put(
2611            AcquisitionLevelImpl.class,
2612            null);
2613        embeddedValuesByType.put(
2614            AcquisitionLevelImpl.class,
2615            null);
2616        navigableAssociationEndsByType.put(
2617            AcquisitionLevelImpl.class,
2618            null);
2619    }
2620
2621    private static final void initializePmfmStrategy107()
2622    {
2623        embeddedValueNamesByType.put(
2624            PmfmStrategyImpl.class,
2625            null);
2626        embeddedValuesByType.put(
2627            PmfmStrategyImpl.class,
2628            null);
2629        navigableAssociationEndsByType.put(
2630            PmfmStrategyImpl.class,
2631            Arrays.asList(
2632                new PropertyType[]
2633                {
2634                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
2635                    new PropertyType("gear", GearImpl.class),
2636                    new PropertyType("precisionType", PrecisionTypeImpl.class),
2637                    new PropertyType("strategy", StrategyImpl.class),
2638                    new PropertyType("acquisitionLevel", AcquisitionLevelImpl.class),
2639                    new PropertyType("metier", MetierImpl.class),
2640                    new PropertyType("pmfm", PmfmImpl.class)
2641                }
2642            )
2643        );
2644    }
2645
2646    private static final void initializeReferenceTaxonStrategy108()
2647    {
2648        embeddedValueNamesByType.put(
2649            ReferenceTaxonStrategyImpl.class,
2650            null);
2651        embeddedValuesByType.put(
2652            ReferenceTaxonStrategyImpl.class,
2653            null);
2654        navigableAssociationEndsByType.put(
2655            ReferenceTaxonStrategyImpl.class,
2656            Arrays.asList(
2657                new PropertyType[]
2658                {
2659                    new PropertyType("strategy", StrategyImpl.class),
2660                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class)
2661                }
2662            )
2663        );
2664    }
2665
2666    private static final void initializeProgram109()
2667    {
2668        embeddedValueNamesByType.put(
2669            ProgramImpl.class,
2670            null);
2671        embeddedValuesByType.put(
2672            ProgramImpl.class,
2673            null);
2674        navigableAssociationEndsByType.put(
2675            ProgramImpl.class,
2676            Arrays.asList(
2677                new PropertyType[]
2678                {
2679                    new PropertyType("taxonGroupType", TaxonGroupTypeImpl.class),
2680                    new PropertyType("programUsers", Program2PersonImpl.class),
2681                    new PropertyType("strategies", StrategyImpl.class),
2682                    new PropertyType("gearClassification", GearClassificationImpl.class),
2683                    new PropertyType("locations", LocationImpl.class),
2684                    new PropertyType("locationClassifications", LocationClassificationImpl.class),
2685                    new PropertyType("program2Departments", Program2DepartmentImpl.class)
2686                }
2687            )
2688        );
2689    }
2690
2691    private static final void initializeProgram2Person110()
2692    {
2693        embeddedValueNamesByType.put(
2694            Program2PersonImpl.class,
2695            null);
2696        embeddedValuesByType.put(
2697            Program2PersonImpl.class,
2698            null);
2699        navigableAssociationEndsByType.put(
2700            Program2PersonImpl.class,
2701            Arrays.asList(
2702                new PropertyType[]
2703                {
2704                    new PropertyType("program2PersonExceptions", Program2PersonExceptionImpl.class),
2705                    new PropertyType("referencePerson", PersonImpl.class),
2706                    new PropertyType("person", PersonImpl.class),
2707                    new PropertyType("programPrivilege", ProgramPrivilegeImpl.class),
2708                    new PropertyType("program", ProgramImpl.class),
2709                    new PropertyType("location", LocationImpl.class)
2710                }
2711            )
2712        );
2713    }
2714
2715    private static final void initializeStrategy111()
2716    {
2717        embeddedValueNamesByType.put(
2718            StrategyImpl.class,
2719            null);
2720        embeddedValuesByType.put(
2721            StrategyImpl.class,
2722            null);
2723        navigableAssociationEndsByType.put(
2724            StrategyImpl.class,
2725            Arrays.asList(
2726                new PropertyType[]
2727                {
2728                    new PropertyType("referenceTaxonStrategies", ReferenceTaxonStrategyImpl.class),
2729                    new PropertyType("managersUsers", PersonImpl.class),
2730                    new PropertyType("gears", GearImpl.class),
2731                    new PropertyType("pmfmStrategies", PmfmStrategyImpl.class),
2732                    new PropertyType("program", ProgramImpl.class),
2733                    new PropertyType("appliedStrategies", AppliedStrategyImpl.class)
2734                }
2735            )
2736        );
2737    }
2738
2739    private static final void initializeProgram2Department112()
2740    {
2741        embeddedValueNamesByType.put(
2742            Program2DepartmentImpl.class,
2743            null);
2744        embeddedValuesByType.put(
2745            Program2DepartmentImpl.class,
2746            null);
2747        navigableAssociationEndsByType.put(
2748            Program2DepartmentImpl.class,
2749            Arrays.asList(
2750                new PropertyType[]
2751                {
2752                    new PropertyType("programPrivilege", ProgramPrivilegeImpl.class),
2753                    new PropertyType("department", DepartmentImpl.class),
2754                    new PropertyType("location", LocationImpl.class),
2755                    new PropertyType("program", ProgramImpl.class)
2756                }
2757            )
2758        );
2759    }
2760
2761    private static final void initializeAppliedStrategy113()
2762    {
2763        embeddedValueNamesByType.put(
2764            AppliedStrategyImpl.class,
2765            null);
2766        embeddedValuesByType.put(
2767            AppliedStrategyImpl.class,
2768            null);
2769        navigableAssociationEndsByType.put(
2770            AppliedStrategyImpl.class,
2771            Arrays.asList(
2772                new PropertyType[]
2773                {
2774                    new PropertyType("batchModelAppliedStrategies", BatchModelAppliedStrategyImpl.class),
2775                    new PropertyType("appliedPeriods", AppliedPeriodImpl.class),
2776                    new PropertyType("strategy", StrategyImpl.class),
2777                    new PropertyType("location", LocationImpl.class),
2778                    new PropertyType("pmfmAppliedStrategies", PmfmAppliedStrategyImpl.class)
2779                }
2780            )
2781        );
2782    }
2783
2784    private static final void initializeProgram2PersonException114()
2785    {
2786        embeddedValueNamesByType.put(
2787            Program2PersonExceptionImpl.class,
2788            null);
2789        embeddedValuesByType.put(
2790            Program2PersonExceptionImpl.class,
2791            null);
2792        navigableAssociationEndsByType.put(
2793            Program2PersonExceptionImpl.class,
2794            Arrays.asList(
2795                new PropertyType[]
2796                {
2797                    new PropertyType("vessel", VesselImpl.class),
2798                    new PropertyType("program2Person", Program2PersonImpl.class)
2799                }
2800            )
2801        );
2802    }
2803
2804    private static final void initializePmfmAppliedStrategy115()
2805    {
2806        embeddedValueNamesByType.put(
2807            PmfmAppliedStrategyImpl.class,
2808            null);
2809        embeddedValuesByType.put(
2810            PmfmAppliedStrategyImpl.class,
2811            null);
2812        navigableAssociationEndsByType.put(
2813            PmfmAppliedStrategyImpl.class,
2814            Arrays.asList(
2815                new PropertyType[]
2816                {
2817                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
2818                    new PropertyType("gear", GearImpl.class),
2819                    new PropertyType("pmfm", PmfmImpl.class),
2820                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
2821                    new PropertyType("appliedStrategy", AppliedStrategyImpl.class),
2822                    new PropertyType("metier", MetierImpl.class)
2823                }
2824            )
2825        );
2826    }
2827
2828    private static final void initializeSystemVersion116()
2829    {
2830        embeddedValueNamesByType.put(
2831            SystemVersionImpl.class,
2832            null);
2833        embeddedValuesByType.put(
2834            SystemVersionImpl.class,
2835            null);
2836        navigableAssociationEndsByType.put(
2837            SystemVersionImpl.class,
2838            null);
2839    }
2840
2841    private static final void initializeLocationHierarchyOverride117()
2842    {
2843        embeddedValueNamesByType.put(
2844            LocationHierarchyOverrideImpl.class,
2845            null);
2846        embeddedValuesByType.put(
2847            LocationHierarchyOverrideImpl.class,
2848            null);
2849        navigableAssociationEndsByType.put(
2850            LocationHierarchyOverrideImpl.class,
2851            Arrays.asList(
2852                new PropertyType[]
2853                {
2854                    new PropertyType("parent", LocationImpl.class),
2855                    new PropertyType("location", LocationImpl.class)
2856                }
2857            )
2858        );
2859    }
2860
2861    private static final void initializeLocationHierarchy118()
2862    {
2863        embeddedValueNamesByType.put(
2864            LocationHierarchyImpl.class,
2865            null);
2866        embeddedValuesByType.put(
2867            LocationHierarchyImpl.class,
2868            null);
2869        navigableAssociationEndsByType.put(
2870            LocationHierarchyImpl.class,
2871            Arrays.asList(
2872                new PropertyType[]
2873                {
2874                    new PropertyType("location", LocationImpl.class),
2875                    new PropertyType("parent", LocationImpl.class)
2876                }
2877            )
2878        );
2879    }
2880
2881    private static final void initializeLocationHierarchyException119()
2882    {
2883        embeddedValueNamesByType.put(
2884            LocationHierarchyExceptionImpl.class,
2885            null);
2886        embeddedValuesByType.put(
2887            LocationHierarchyExceptionImpl.class,
2888            null);
2889        navigableAssociationEndsByType.put(
2890            LocationHierarchyExceptionImpl.class,
2891            Arrays.asList(
2892                new PropertyType[]
2893                {
2894                    new PropertyType("location", LocationImpl.class),
2895                    new PropertyType("parent", LocationImpl.class)
2896                }
2897            )
2898        );
2899    }
2900
2901    private static final void initializeTaxonGroupHierarchy120()
2902    {
2903        embeddedValueNamesByType.put(
2904            TaxonGroupHierarchyImpl.class,
2905            null);
2906        embeddedValuesByType.put(
2907            TaxonGroupHierarchyImpl.class,
2908            null);
2909        navigableAssociationEndsByType.put(
2910            TaxonGroupHierarchyImpl.class,
2911            Arrays.asList(
2912                new PropertyType[]
2913                {
2914                    new PropertyType("parentTaxonGroup", TaxonGroupImpl.class),
2915                    new PropertyType("childTaxonGroup", TaxonGroupImpl.class)
2916                }
2917            )
2918        );
2919    }
2920
2921    private static final void initializeTaxonGroup2TaxonHierarchy121()
2922    {
2923        embeddedValueNamesByType.put(
2924            TaxonGroup2TaxonHierarchyImpl.class,
2925            null);
2926        embeddedValuesByType.put(
2927            TaxonGroup2TaxonHierarchyImpl.class,
2928            null);
2929        navigableAssociationEndsByType.put(
2930            TaxonGroup2TaxonHierarchyImpl.class,
2931            Arrays.asList(
2932                new PropertyType[]
2933                {
2934                    new PropertyType("parentTaxonGroup", TaxonGroupImpl.class),
2935                    new PropertyType("childReferenceTaxon", ReferenceTaxonImpl.class)
2936                }
2937            )
2938        );
2939    }
2940
2941    private static final void initializeDepartmentHierarchy122()
2942    {
2943        embeddedValueNamesByType.put(
2944            DepartmentHierarchyImpl.class,
2945            null);
2946        embeddedValuesByType.put(
2947            DepartmentHierarchyImpl.class,
2948            null);
2949        navigableAssociationEndsByType.put(
2950            DepartmentHierarchyImpl.class,
2951            Arrays.asList(
2952                new PropertyType[]
2953                {
2954                    new PropertyType("parentDepartment", DepartmentImpl.class),
2955                    new PropertyType("childDepartment", DepartmentImpl.class)
2956                }
2957            )
2958        );
2959    }
2960
2961    private static final void initializeGroupingVesselHierarchy123()
2962    {
2963        embeddedValueNamesByType.put(
2964            GroupingVesselHierarchyImpl.class,
2965            null);
2966        embeddedValuesByType.put(
2967            GroupingVesselHierarchyImpl.class,
2968            null);
2969        navigableAssociationEndsByType.put(
2970            GroupingVesselHierarchyImpl.class,
2971            Arrays.asList(
2972                new PropertyType[]
2973                {
2974                    new PropertyType("grouping", GroupingImpl.class),
2975                    new PropertyType("originProgram", ProgramImpl.class),
2976                    new PropertyType("originObjectType", ObjectTypeImpl.class),
2977                    new PropertyType("vessel", VesselImpl.class),
2978                    new PropertyType("location", LocationImpl.class),
2979                    new PropertyType("groupingClassification", GroupingClassificationImpl.class)
2980                }
2981            )
2982        );
2983    }
2984
2985    private static final void initializeGroupingItemHierarchy124()
2986    {
2987        embeddedValueNamesByType.put(
2988            GroupingItemHierarchyImpl.class,
2989            null);
2990        embeddedValuesByType.put(
2991            GroupingItemHierarchyImpl.class,
2992            null);
2993        navigableAssociationEndsByType.put(
2994            GroupingItemHierarchyImpl.class,
2995            Arrays.asList(
2996                new PropertyType[]
2997                {
2998                    new PropertyType("grouping", GroupingImpl.class),
2999                    new PropertyType("groupingClassification", GroupingClassificationImpl.class)
3000                }
3001            )
3002        );
3003    }
3004
3005    private static final void initializeDenormalizedVessel125()
3006    {
3007        embeddedValueNamesByType.put(
3008            DenormalizedVesselImpl.class,
3009            null);
3010        embeddedValuesByType.put(
3011            DenormalizedVesselImpl.class,
3012            null);
3013        navigableAssociationEndsByType.put(
3014            DenormalizedVesselImpl.class,
3015            Arrays.asList(
3016                new PropertyType[]
3017                {
3018                    new PropertyType("registrationLocation", LocationImpl.class),
3019                    new PropertyType("registrationCountry", LocationImpl.class),
3020                    new PropertyType("vesselOwner", VesselOwnerImpl.class),
3021                    new PropertyType("program", ProgramImpl.class)
3022                }
3023            )
3024        );
3025    }
3026
3027    private static final void initializeQualifiedItem126()
3028    {
3029        embeddedValueNamesByType.put(
3030            QualifiedItemImpl.class,
3031            null);
3032        embeddedValuesByType.put(
3033            QualifiedItemImpl.class,
3034            null);
3035        navigableAssociationEndsByType.put(
3036            QualifiedItemImpl.class,
3037            Arrays.asList(
3038                new PropertyType[]
3039                {
3040                    new PropertyType("appliedQualificationRules", AppliedQualificationRuleImpl.class),
3041                    new PropertyType("objectType", ObjectTypeImpl.class)
3042                }
3043            )
3044        );
3045    }
3046
3047    private static final void initializeAppliedQualificationRule127()
3048    {
3049        embeddedValueNamesByType.put(
3050            AppliedQualificationRuleImpl.class,
3051            null);
3052        embeddedValuesByType.put(
3053            AppliedQualificationRuleImpl.class,
3054            null);
3055        navigableAssociationEndsByType.put(
3056            AppliedQualificationRuleImpl.class,
3057            Arrays.asList(
3058                new PropertyType[]
3059                {
3060                    new PropertyType("processingHistory", ProcessingHistoryImpl.class),
3061                    new PropertyType("qualifiedItem", QualifiedItemImpl.class),
3062                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3063                    new PropertyType("qualificationRule", QualificationRuleImpl.class)
3064                }
3065            )
3066        );
3067    }
3068
3069    private static final void initializeDenormalizedOperation128()
3070    {
3071        embeddedValueNamesByType.put(
3072            DenormalizedOperationImpl.class,
3073            null);
3074        embeddedValuesByType.put(
3075            DenormalizedOperationImpl.class,
3076            null);
3077        navigableAssociationEndsByType.put(
3078            DenormalizedOperationImpl.class,
3079            Arrays.asList(
3080                new PropertyType[]
3081                {
3082                    new PropertyType("fishingTrip", FishingTripImpl.class),
3083                    new PropertyType("selectiveDevice", QualitativeValueImpl.class),
3084                    new PropertyType("rectangleLocation", LocationImpl.class),
3085                    new PropertyType("areaLocation", LocationImpl.class),
3086                    new PropertyType("subpolygonLocation", LocationImpl.class),
3087                    new PropertyType("metier", MetierImpl.class),
3088                    new PropertyType("gear", GearImpl.class)
3089                }
3090            )
3091        );
3092    }
3093
3094    private static final void initializeFishingOperation129()
3095    {
3096        embeddedValueNamesByType.put(
3097            FishingOperationImpl.class,
3098            null);
3099        embeddedValuesByType.put(
3100            FishingOperationImpl.class,
3101            null);
3102        navigableAssociationEndsByType.put(
3103            FishingOperationImpl.class,
3104            Arrays.asList(
3105                new PropertyType[]
3106                {
3107                    new PropertyType("vesselPersonFeatures", VesselPersonFeaturesImpl.class),
3108                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3109                    new PropertyType("vessel", VesselImpl.class),
3110                    new PropertyType("operationVesselAssociations", OperationVesselAssociationImpl.class),
3111                    new PropertyType("catchBatch", CatchBatchImpl.class),
3112                    new PropertyType("produces", ProduceImpl.class),
3113                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
3114                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
3115                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class),
3116                    new PropertyType("vesselPositionVMSs", VesselPositionVMSImpl.class),
3117                    new PropertyType("vesselPositions", VesselPositionImpl.class),
3118                    new PropertyType("fishingTrip", FishingTripImpl.class),
3119                    new PropertyType("samples", SampleImpl.class)
3120                }
3121            )
3122        );
3123    }
3124
3125    private static final void initializeOperationVesselAssociation130()
3126    {
3127        embeddedValueNamesByType.put(
3128            OperationVesselAssociationImpl.class,
3129            null);
3130        embeddedValuesByType.put(
3131            OperationVesselAssociationImpl.class,
3132            null);
3133        navigableAssociationEndsByType.put(
3134            OperationVesselAssociationImpl.class,
3135            Arrays.asList(
3136                new PropertyType[]
3137                {
3138                    new PropertyType("vessel", VesselImpl.class),
3139                    new PropertyType("operation", OperationImpl.class)
3140                }
3141            )
3142        );
3143    }
3144
3145    private static final void initializeOperation131()
3146    {
3147        embeddedValueNamesByType.put(
3148            OperationImpl.class,
3149            null);
3150        embeddedValuesByType.put(
3151            OperationImpl.class,
3152            null);
3153        navigableAssociationEndsByType.put(
3154            OperationImpl.class,
3155            Arrays.asList(
3156                new PropertyType[]
3157                {
3158                    new PropertyType("vesselPersonFeatures", VesselPersonFeaturesImpl.class),
3159                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3160                    new PropertyType("vessel", VesselImpl.class),
3161                    new PropertyType("operationVesselAssociations", OperationVesselAssociationImpl.class),
3162                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
3163                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
3164                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class),
3165                    new PropertyType("vesselPositionVMSs", VesselPositionVMSImpl.class),
3166                    new PropertyType("vesselPositions", VesselPositionImpl.class),
3167                    new PropertyType("fishingTrip", FishingTripImpl.class)
3168                }
3169            )
3170        );
3171    }
3172
3173    private static final void initializeBatch132()
3174    {
3175        embeddedValueNamesByType.put(
3176            BatchImpl.class,
3177            null);
3178        embeddedValuesByType.put(
3179            BatchImpl.class,
3180            null);
3181        navigableAssociationEndsByType.put(
3182            BatchImpl.class,
3183            Arrays.asList(
3184                new PropertyType[]
3185                {
3186                    new PropertyType("location", LocationImpl.class),
3187                    new PropertyType("parentBatch", BatchImpl.class),
3188                    new PropertyType("childBatchs", BatchImpl.class),
3189                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3190                    new PropertyType("batchExhaustiveInventories", BatchExhaustiveInventoryImpl.class),
3191                    new PropertyType("quantificationMeasurements", QuantificationMeasurementImpl.class),
3192                    new PropertyType("produces", ProduceImpl.class)
3193                }
3194            )
3195        );
3196    }
3197
3198    private static final void initializeBatchExhaustiveInventory133()
3199    {
3200        embeddedValueNamesByType.put(
3201            BatchExhaustiveInventoryImpl.class,
3202            null);
3203        embeddedValuesByType.put(
3204            BatchExhaustiveInventoryImpl.class,
3205            null);
3206        navigableAssociationEndsByType.put(
3207            BatchExhaustiveInventoryImpl.class,
3208            Arrays.asList(
3209                new PropertyType[]
3210                {
3211                    new PropertyType("batch", BatchImpl.class)
3212                }
3213            )
3214        );
3215    }
3216
3217    private static final void initializeCatchBatch134()
3218    {
3219        embeddedValueNamesByType.put(
3220            CatchBatchImpl.class,
3221            null);
3222        embeddedValuesByType.put(
3223            CatchBatchImpl.class,
3224            null);
3225        navigableAssociationEndsByType.put(
3226            CatchBatchImpl.class,
3227            Arrays.asList(
3228                new PropertyType[]
3229                {
3230                    new PropertyType("location", LocationImpl.class),
3231                    new PropertyType("parentBatch", BatchImpl.class),
3232                    new PropertyType("childBatchs", BatchImpl.class),
3233                    new PropertyType("fishingOperation", FishingOperationImpl.class),
3234                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3235                    new PropertyType("batchExhaustiveInventories", BatchExhaustiveInventoryImpl.class),
3236                    new PropertyType("sortingBatches", SortingBatchImpl.class),
3237                    new PropertyType("batchModel", BatchModelImpl.class),
3238                    new PropertyType("quantificationMeasurements", QuantificationMeasurementImpl.class),
3239                    new PropertyType("produces", ProduceImpl.class),
3240                    new PropertyType("landing", LandingImpl.class),
3241                    new PropertyType("sale", SaleImpl.class)
3242                }
3243            )
3244        );
3245    }
3246
3247    private static final void initializeSortingBatch135()
3248    {
3249        embeddedValueNamesByType.put(
3250            SortingBatchImpl.class,
3251            null);
3252        embeddedValuesByType.put(
3253            SortingBatchImpl.class,
3254            null);
3255        navigableAssociationEndsByType.put(
3256            SortingBatchImpl.class,
3257            Arrays.asList(
3258                new PropertyType[]
3259                {
3260                    new PropertyType("location", LocationImpl.class),
3261                    new PropertyType("rootBatch", CatchBatchImpl.class),
3262                    new PropertyType("parentBatch", BatchImpl.class),
3263                    new PropertyType("childBatchs", BatchImpl.class),
3264                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3265                    new PropertyType("batchExhaustiveInventories", BatchExhaustiveInventoryImpl.class),
3266                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
3267                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
3268                    new PropertyType("quantificationMeasurements", QuantificationMeasurementImpl.class),
3269                    new PropertyType("sortingMeasurements", SortingMeasurementImpl.class),
3270                    new PropertyType("produces", ProduceImpl.class)
3271                }
3272            )
3273        );
3274    }
3275
3276    private static final void initializeBatchModel136()
3277    {
3278        embeddedValueNamesByType.put(
3279            BatchModelImpl.class,
3280            null);
3281        embeddedValuesByType.put(
3282            BatchModelImpl.class,
3283            null);
3284        navigableAssociationEndsByType.put(
3285            BatchModelImpl.class,
3286            Arrays.asList(
3287                new PropertyType[]
3288                {
3289                    new PropertyType("catchBatch", CatchBatchImpl.class),
3290                    new PropertyType("recorderPerson", PersonImpl.class),
3291                    new PropertyType("recorderDepartment", DepartmentImpl.class)
3292                }
3293            )
3294        );
3295    }
3296
3297    private static final void initializeDenormalisedBatchSortingValue137()
3298    {
3299        embeddedValueNamesByType.put(
3300            DenormalisedBatchSortingValueImpl.class,
3301            null);
3302        embeddedValuesByType.put(
3303            DenormalisedBatchSortingValueImpl.class,
3304            null);
3305        navigableAssociationEndsByType.put(
3306            DenormalisedBatchSortingValueImpl.class,
3307            Arrays.asList(
3308                new PropertyType[]
3309                {
3310                    new PropertyType("pmfm", PmfmImpl.class),
3311                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3312                    new PropertyType("denormalizedBatch", DenormalizedBatchImpl.class),
3313                    new PropertyType("parameter", ParameterImpl.class),
3314                    new PropertyType("unit", UnitImpl.class)
3315                }
3316            )
3317        );
3318    }
3319
3320    private static final void initializeDenormalizedBatch138()
3321    {
3322        embeddedValueNamesByType.put(
3323            DenormalizedBatchImpl.class,
3324            null);
3325        embeddedValuesByType.put(
3326            DenormalizedBatchImpl.class,
3327            null);
3328        navigableAssociationEndsByType.put(
3329            DenormalizedBatchImpl.class,
3330            Arrays.asList(
3331                new PropertyType[]
3332                {
3333                    new PropertyType("weightMethod", MethodImpl.class),
3334                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3335                    new PropertyType("inheritedTaxonGroup", TaxonGroupImpl.class),
3336                    new PropertyType("calculatedTaxonGroup", TaxonGroupImpl.class),
3337                    new PropertyType("inheritedReferenceTaxon", ReferenceTaxonImpl.class),
3338                    new PropertyType("childBatchs", DenormalizedBatchImpl.class),
3339                    new PropertyType("parentBatch", DenormalizedBatchImpl.class),
3340                    new PropertyType("operation", OperationImpl.class),
3341                    new PropertyType("sale", SaleImpl.class),
3342                    new PropertyType("denormalisedBatchSortingValues", DenormalisedBatchSortingValueImpl.class),
3343                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
3344                    new PropertyType("taxonGroup", TaxonGroupImpl.class)
3345                }
3346            )
3347        );
3348    }
3349
3350    private static final void initializeMeasurement139()
3351    {
3352        embeddedValueNamesByType.put(
3353            MeasurementImpl.class,
3354            null);
3355        embeddedValuesByType.put(
3356            MeasurementImpl.class,
3357            null);
3358        navigableAssociationEndsByType.put(
3359            MeasurementImpl.class,
3360            Arrays.asList(
3361                new PropertyType[]
3362                {
3363                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3364                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3365                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3366                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3367                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3368                    new PropertyType("pmfm", PmfmImpl.class),
3369                    new PropertyType("department", DepartmentImpl.class),
3370                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class)
3371                }
3372            )
3373        );
3374    }
3375
3376    private static final void initializeSurveyMeasurement140()
3377    {
3378        embeddedValueNamesByType.put(
3379            SurveyMeasurementImpl.class,
3380            null);
3381        embeddedValuesByType.put(
3382            SurveyMeasurementImpl.class,
3383            null);
3384        navigableAssociationEndsByType.put(
3385            SurveyMeasurementImpl.class,
3386            Arrays.asList(
3387                new PropertyType[]
3388                {
3389                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3390                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3391                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3392                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3393                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3394                    new PropertyType("pmfm", PmfmImpl.class),
3395                    new PropertyType("department", DepartmentImpl.class),
3396                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3397                    new PropertyType("activityCalendar", ActivityCalendarImpl.class),
3398                    new PropertyType("dailyActivityCalendar", DailyActivityCalendarImpl.class),
3399                    new PropertyType("landing", LandingImpl.class),
3400                    new PropertyType("economicalSurvey", EconomicalSurveyImpl.class),
3401                    new PropertyType("declaredDocumentReference", DeclaredDocumentReferenceImpl.class),
3402                    new PropertyType("sale", SaleImpl.class),
3403                    new PropertyType("physicalGearSurvey", PhysicalGearSurveyImpl.class),
3404                    new PropertyType("fishingEffortCalendar", FishingEffortCalendarImpl.class),
3405                    new PropertyType("fishingTrip", FishingTripImpl.class),
3406                    new PropertyType("transshipment", TransshipmentImpl.class)
3407                }
3408            )
3409        );
3410    }
3411
3412    private static final void initializeProduceSortingMeasurement141()
3413    {
3414        embeddedValueNamesByType.put(
3415            ProduceSortingMeasurementImpl.class,
3416            null);
3417        embeddedValuesByType.put(
3418            ProduceSortingMeasurementImpl.class,
3419            null);
3420        navigableAssociationEndsByType.put(
3421            ProduceSortingMeasurementImpl.class,
3422            Arrays.asList(
3423                new PropertyType[]
3424                {
3425                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3426                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3427                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3428                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3429                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3430                    new PropertyType("pmfm", PmfmImpl.class),
3431                    new PropertyType("department", DepartmentImpl.class),
3432                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3433                    new PropertyType("produce", ProduceImpl.class)
3434                }
3435            )
3436        );
3437    }
3438
3439    private static final void initializeSamplingStrataMeasurement142()
3440    {
3441        embeddedValueNamesByType.put(
3442            SamplingStrataMeasurementImpl.class,
3443            null);
3444        embeddedValuesByType.put(
3445            SamplingStrataMeasurementImpl.class,
3446            null);
3447        navigableAssociationEndsByType.put(
3448            SamplingStrataMeasurementImpl.class,
3449            Arrays.asList(
3450                new PropertyType[]
3451                {
3452                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3453                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3454                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3455                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3456                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3457                    new PropertyType("pmfm", PmfmImpl.class),
3458                    new PropertyType("department", DepartmentImpl.class),
3459                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3460                    new PropertyType("samplingStrata", SamplingStrataImpl.class)
3461                }
3462            )
3463        );
3464    }
3465
3466    private static final void initializeSampleMeasurement143()
3467    {
3468        embeddedValueNamesByType.put(
3469            SampleMeasurementImpl.class,
3470            null);
3471        embeddedValuesByType.put(
3472            SampleMeasurementImpl.class,
3473            null);
3474        navigableAssociationEndsByType.put(
3475            SampleMeasurementImpl.class,
3476            Arrays.asList(
3477                new PropertyType[]
3478                {
3479                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3480                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3481                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3482                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3483                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3484                    new PropertyType("pmfm", PmfmImpl.class),
3485                    new PropertyType("department", DepartmentImpl.class),
3486                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3487                    new PropertyType("sample", SampleImpl.class)
3488                }
3489            )
3490        );
3491    }
3492
3493    private static final void initializeQuantificationMeasurement144()
3494    {
3495        embeddedValueNamesByType.put(
3496            QuantificationMeasurementImpl.class,
3497            null);
3498        embeddedValuesByType.put(
3499            QuantificationMeasurementImpl.class,
3500            null);
3501        navigableAssociationEndsByType.put(
3502            QuantificationMeasurementImpl.class,
3503            Arrays.asList(
3504                new PropertyType[]
3505                {
3506                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3507                    new PropertyType("batch", BatchImpl.class),
3508                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3509                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3510                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3511                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3512                    new PropertyType("pmfm", PmfmImpl.class),
3513                    new PropertyType("department", DepartmentImpl.class),
3514                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class)
3515                }
3516            )
3517        );
3518    }
3519
3520    private static final void initializeVesselUseMeasurement145()
3521    {
3522        embeddedValueNamesByType.put(
3523            VesselUseMeasurementImpl.class,
3524            null);
3525        embeddedValuesByType.put(
3526            VesselUseMeasurementImpl.class,
3527            null);
3528        navigableAssociationEndsByType.put(
3529            VesselUseMeasurementImpl.class,
3530            Arrays.asList(
3531                new PropertyType[]
3532                {
3533                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3534                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3535                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3536                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3537                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3538                    new PropertyType("pmfm", PmfmImpl.class),
3539                    new PropertyType("department", DepartmentImpl.class),
3540                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3541                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class)
3542                }
3543            )
3544        );
3545    }
3546
3547    private static final void initializeTakeOverMeasurement146()
3548    {
3549        embeddedValueNamesByType.put(
3550            TakeOverMeasurementImpl.class,
3551            null);
3552        embeddedValuesByType.put(
3553            TakeOverMeasurementImpl.class,
3554            null);
3555        navigableAssociationEndsByType.put(
3556            TakeOverMeasurementImpl.class,
3557            Arrays.asList(
3558                new PropertyType[]
3559                {
3560                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3561                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3562                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3563                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3564                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3565                    new PropertyType("pmfm", PmfmImpl.class),
3566                    new PropertyType("department", DepartmentImpl.class),
3567                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3568                    new PropertyType("takeOver", TakeOverImpl.class)
3569                }
3570            )
3571        );
3572    }
3573
3574    private static final void initializePhoto147()
3575    {
3576        embeddedValueNamesByType.put(
3577            PhotoImpl.class,
3578            null);
3579        embeddedValuesByType.put(
3580            PhotoImpl.class,
3581            null);
3582        navigableAssociationEndsByType.put(
3583            PhotoImpl.class,
3584            Arrays.asList(
3585                new PropertyType[]
3586                {
3587                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3588                    new PropertyType("objectType", ObjectTypeImpl.class),
3589                    new PropertyType("photoType", PhotoTypeImpl.class),
3590                    new PropertyType("department", DepartmentImpl.class)
3591                }
3592            )
3593        );
3594    }
3595
3596    private static final void initializeSortingMeasurement148()
3597    {
3598        embeddedValueNamesByType.put(
3599            SortingMeasurementImpl.class,
3600            null);
3601        embeddedValuesByType.put(
3602            SortingMeasurementImpl.class,
3603            null);
3604        navigableAssociationEndsByType.put(
3605            SortingMeasurementImpl.class,
3606            Arrays.asList(
3607                new PropertyType[]
3608                {
3609                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3610                    new PropertyType("sortingBatch", SortingBatchImpl.class),
3611                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3612                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3613                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3614                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3615                    new PropertyType("pmfm", PmfmImpl.class),
3616                    new PropertyType("department", DepartmentImpl.class),
3617                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class)
3618                }
3619            )
3620        );
3621    }
3622
3623    private static final void initializeMeasurementFile149()
3624    {
3625        embeddedValueNamesByType.put(
3626            MeasurementFileImpl.class,
3627            null);
3628        embeddedValuesByType.put(
3629            MeasurementFileImpl.class,
3630            null);
3631        navigableAssociationEndsByType.put(
3632            MeasurementFileImpl.class,
3633            Arrays.asList(
3634                new PropertyType[]
3635                {
3636                    new PropertyType("pmfm", PmfmImpl.class),
3637                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3638                    new PropertyType("department", DepartmentImpl.class),
3639                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3640                    new PropertyType("objectType", ObjectTypeImpl.class)
3641                }
3642            )
3643        );
3644    }
3645
3646    private static final void initializeLandingMeasurement150()
3647    {
3648        embeddedValueNamesByType.put(
3649            LandingMeasurementImpl.class,
3650            null);
3651        embeddedValuesByType.put(
3652            LandingMeasurementImpl.class,
3653            null);
3654        navigableAssociationEndsByType.put(
3655            LandingMeasurementImpl.class,
3656            Arrays.asList(
3657                new PropertyType[]
3658                {
3659                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3660                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3661                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3662                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3663                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3664                    new PropertyType("pmfm", PmfmImpl.class),
3665                    new PropertyType("department", DepartmentImpl.class),
3666                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3667                    new PropertyType("landing", LandingImpl.class)
3668                }
3669            )
3670        );
3671    }
3672
3673    private static final void initializeVesselPositionMeasurement151()
3674    {
3675        embeddedValueNamesByType.put(
3676            VesselPositionMeasurementImpl.class,
3677            null);
3678        embeddedValuesByType.put(
3679            VesselPositionMeasurementImpl.class,
3680            null);
3681        navigableAssociationEndsByType.put(
3682            VesselPositionMeasurementImpl.class,
3683            Arrays.asList(
3684                new PropertyType[]
3685                {
3686                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3687                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3688                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3689                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3690                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3691                    new PropertyType("pmfm", PmfmImpl.class),
3692                    new PropertyType("department", DepartmentImpl.class),
3693                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3694                    new PropertyType("vesselPositionVMS", VesselPositionVMSImpl.class)
3695                }
3696            )
3697        );
3698    }
3699
3700    private static final void initializeSaleMeasurement152()
3701    {
3702        embeddedValueNamesByType.put(
3703            SaleMeasurementImpl.class,
3704            null);
3705        embeddedValuesByType.put(
3706            SaleMeasurementImpl.class,
3707            null);
3708        navigableAssociationEndsByType.put(
3709            SaleMeasurementImpl.class,
3710            Arrays.asList(
3711                new PropertyType[]
3712                {
3713                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3714                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3715                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3716                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3717                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3718                    new PropertyType("pmfm", PmfmImpl.class),
3719                    new PropertyType("department", DepartmentImpl.class),
3720                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3721                    new PropertyType("sale", SaleImpl.class),
3722                    new PropertyType("expectedSale", ExpectedSaleImpl.class)
3723                }
3724            )
3725        );
3726    }
3727
3728    private static final void initializeGearPhysicalMeasurement153()
3729    {
3730        embeddedValueNamesByType.put(
3731            GearPhysicalMeasurementImpl.class,
3732            null);
3733        embeddedValuesByType.put(
3734            GearPhysicalMeasurementImpl.class,
3735            null);
3736        navigableAssociationEndsByType.put(
3737            GearPhysicalMeasurementImpl.class,
3738            Arrays.asList(
3739                new PropertyType[]
3740                {
3741                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3742                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3743                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3744                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3745                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3746                    new PropertyType("pmfm", PmfmImpl.class),
3747                    new PropertyType("department", DepartmentImpl.class),
3748                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3749                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class)
3750                }
3751            )
3752        );
3753    }
3754
3755    private static final void initializeVesselPersonMeasurement154()
3756    {
3757        embeddedValueNamesByType.put(
3758            VesselPersonMeasurementImpl.class,
3759            null);
3760        embeddedValuesByType.put(
3761            VesselPersonMeasurementImpl.class,
3762            null);
3763        navigableAssociationEndsByType.put(
3764            VesselPersonMeasurementImpl.class,
3765            Arrays.asList(
3766                new PropertyType[]
3767                {
3768                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3769                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3770                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3771                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3772                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3773                    new PropertyType("pmfm", PmfmImpl.class),
3774                    new PropertyType("department", DepartmentImpl.class),
3775                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3776                    new PropertyType("vesselPersonFeatures", VesselPersonFeaturesImpl.class)
3777                }
3778            )
3779        );
3780    }
3781
3782    private static final void initializeGearUseMeasurement155()
3783    {
3784        embeddedValueNamesByType.put(
3785            GearUseMeasurementImpl.class,
3786            null);
3787        embeddedValuesByType.put(
3788            GearUseMeasurementImpl.class,
3789            null);
3790        navigableAssociationEndsByType.put(
3791            GearUseMeasurementImpl.class,
3792            Arrays.asList(
3793                new PropertyType[]
3794                {
3795                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3796                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3797                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3798                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3799                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3800                    new PropertyType("pmfm", PmfmImpl.class),
3801                    new PropertyType("department", DepartmentImpl.class),
3802                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3803                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class)
3804                }
3805            )
3806        );
3807    }
3808
3809    private static final void initializeVesselPhysicalMeasurement156()
3810    {
3811        embeddedValueNamesByType.put(
3812            VesselPhysicalMeasurementImpl.class,
3813            null);
3814        embeddedValuesByType.put(
3815            VesselPhysicalMeasurementImpl.class,
3816            null);
3817        navigableAssociationEndsByType.put(
3818            VesselPhysicalMeasurementImpl.class,
3819            Arrays.asList(
3820                new PropertyType[]
3821                {
3822                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3823                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3824                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3825                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3826                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3827                    new PropertyType("pmfm", PmfmImpl.class),
3828                    new PropertyType("department", DepartmentImpl.class),
3829                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3830                    new PropertyType("vesselPhysicalFeatures", VesselPhysicalFeaturesImpl.class)
3831                }
3832            )
3833        );
3834    }
3835
3836    private static final void initializeProduceQuantificationMeasurement157()
3837    {
3838        embeddedValueNamesByType.put(
3839            ProduceQuantificationMeasurementImpl.class,
3840            null);
3841        embeddedValuesByType.put(
3842            ProduceQuantificationMeasurementImpl.class,
3843            null);
3844        navigableAssociationEndsByType.put(
3845            ProduceQuantificationMeasurementImpl.class,
3846            Arrays.asList(
3847                new PropertyType[]
3848                {
3849                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
3850                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
3851                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3852                    new PropertyType("precisionType", PrecisionTypeImpl.class),
3853                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
3854                    new PropertyType("pmfm", PmfmImpl.class),
3855                    new PropertyType("department", DepartmentImpl.class),
3856                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
3857                    new PropertyType("produce", ProduceImpl.class)
3858                }
3859            )
3860        );
3861    }
3862
3863    private static final void initializeProduce158()
3864    {
3865        embeddedValueNamesByType.put(
3866            ProduceImpl.class,
3867            null);
3868        embeddedValuesByType.put(
3869            ProduceImpl.class,
3870            null);
3871        navigableAssociationEndsByType.put(
3872            ProduceImpl.class,
3873            Arrays.asList(
3874                new PropertyType[]
3875                {
3876                    new PropertyType("otherTaxonGroup", TaxonGroupImpl.class),
3877                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
3878                    new PropertyType("saleType", SaleTypeImpl.class),
3879                    new PropertyType("otherGear", GearImpl.class),
3880                    new PropertyType("dressing", QualitativeValueImpl.class),
3881                    new PropertyType("preservation", QualitativeValueImpl.class),
3882                    new PropertyType("sizeCategory", QualitativeValueImpl.class),
3883                    new PropertyType("freshnessCategory", QualitativeValueImpl.class),
3884                    new PropertyType("weightMethod", MethodImpl.class),
3885                    new PropertyType("transaction", QualitativeValueImpl.class),
3886                    new PropertyType("fishingOperation", FishingOperationImpl.class),
3887                    new PropertyType("batch", BatchImpl.class),
3888                    new PropertyType("produceSortingMeasurements", ProduceSortingMeasurementImpl.class),
3889                    new PropertyType("produceQuantificationMeasurements", ProduceQuantificationMeasurementImpl.class),
3890                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3891                    new PropertyType("landing", LandingImpl.class),
3892                    new PropertyType("sale", SaleImpl.class),
3893                    new PropertyType("gear", GearImpl.class),
3894                    new PropertyType("takeOver", TakeOverImpl.class),
3895                    new PropertyType("buyer", BuyerImpl.class),
3896                    new PropertyType("fishingAreas", FishingAreaImpl.class),
3897                    new PropertyType("transshipment", TransshipmentImpl.class),
3898                    new PropertyType("expectedSale", ExpectedSaleImpl.class)
3899                }
3900            )
3901        );
3902    }
3903
3904    private static final void initializeVesselOwner159()
3905    {
3906        embeddedValueNamesByType.put(
3907            VesselOwnerImpl.class,
3908            null);
3909        embeddedValuesByType.put(
3910            VesselOwnerImpl.class,
3911            null);
3912        navigableAssociationEndsByType.put(
3913            VesselOwnerImpl.class,
3914            Arrays.asList(
3915                new PropertyType[]
3916                {
3917                    new PropertyType("program", ProgramImpl.class),
3918                    new PropertyType("countryLocation", LocationImpl.class),
3919                    new PropertyType("rightToProduces", RightToProduceImpl.class)
3920                }
3921            )
3922        );
3923    }
3924
3925    private static final void initializeVesselRegistrationPeriod160()
3926    {
3927        embeddedValueNamesByType.put(
3928            VesselRegistrationPeriodImpl.class,
3929            null);
3930        embeddedValuesByType.put(
3931            VesselRegistrationPeriodImpl.class,
3932            null);
3933        navigableAssociationEndsByType.put(
3934            VesselRegistrationPeriodImpl.class,
3935            Arrays.asList(
3936                new PropertyType[]
3937                {
3938                    new PropertyType("registrationLocation", LocationImpl.class),
3939                    new PropertyType("qualityFlag", QualityFlagImpl.class),
3940                    new PropertyType("vessel", VesselImpl.class)
3941                }
3942            )
3943        );
3944    }
3945
3946    private static final void initializeVessel161()
3947    {
3948        embeddedValueNamesByType.put(
3949            VesselImpl.class,
3950            null);
3951        embeddedValuesByType.put(
3952            VesselImpl.class,
3953            null);
3954        navigableAssociationEndsByType.put(
3955            VesselImpl.class,
3956            Arrays.asList(
3957                new PropertyType[]
3958                {
3959                    new PropertyType("vesselFleetEvents", VesselFleetEventImpl.class),
3960                    new PropertyType("status", StatusImpl.class),
3961                    new PropertyType("vesselRegistrationPeriods", VesselRegistrationPeriodImpl.class),
3962                    new PropertyType("vesselFeatures", VesselFeaturesImpl.class),
3963                    new PropertyType("rightToProduces", RightToProduceImpl.class),
3964                    new PropertyType("program", ProgramImpl.class),
3965                    new PropertyType("vesselOwnerPeriods", VesselOwnerPeriodImpl.class),
3966                    new PropertyType("vesselType", VesselTypeImpl.class),
3967                    new PropertyType("vesselCommissioningPeriods", VesselCommissioningPeriodImpl.class)
3968                }
3969            )
3970        );
3971    }
3972
3973    private static final void initializeVesselFleetEvent162()
3974    {
3975        embeddedValueNamesByType.put(
3976            VesselFleetEventImpl.class,
3977            null);
3978        embeddedValuesByType.put(
3979            VesselFleetEventImpl.class,
3980            null);
3981        navigableAssociationEndsByType.put(
3982            VesselFleetEventImpl.class,
3983            Arrays.asList(
3984                new PropertyType[]
3985                {
3986                    new PropertyType("vessel", VesselImpl.class),
3987                    new PropertyType("eventType", QualitativeValueImpl.class)
3988                }
3989            )
3990        );
3991    }
3992
3993    private static final void initializeVesselUseFeaturesOrigin163()
3994    {
3995        embeddedValueNamesByType.put(
3996            VesselUseFeaturesOriginImpl.class,
3997            null);
3998        embeddedValuesByType.put(
3999            VesselUseFeaturesOriginImpl.class,
4000            null);
4001        navigableAssociationEndsByType.put(
4002            VesselUseFeaturesOriginImpl.class,
4003            Arrays.asList(
4004                new PropertyType[]
4005                {
4006                    new PropertyType("acquisitionLevel", AcquisitionLevelImpl.class),
4007                    new PropertyType("program", ProgramImpl.class),
4008                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class)
4009                }
4010            )
4011        );
4012    }
4013
4014    private static final void initializeGearUseFeaturesOrigin164()
4015    {
4016        embeddedValueNamesByType.put(
4017            GearUseFeaturesOriginImpl.class,
4018            null);
4019        embeddedValuesByType.put(
4020            GearUseFeaturesOriginImpl.class,
4021            null);
4022        navigableAssociationEndsByType.put(
4023            GearUseFeaturesOriginImpl.class,
4024            Arrays.asList(
4025                new PropertyType[]
4026                {
4027                    new PropertyType("acquisitionLevel", AcquisitionLevelImpl.class),
4028                    new PropertyType("program", ProgramImpl.class),
4029                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class)
4030                }
4031            )
4032        );
4033    }
4034
4035    private static final void initializeGearUseFeatures165()
4036    {
4037        embeddedValueNamesByType.put(
4038            GearUseFeaturesImpl.class,
4039            null);
4040        embeddedValuesByType.put(
4041            GearUseFeaturesImpl.class,
4042            null);
4043        navigableAssociationEndsByType.put(
4044            GearUseFeaturesImpl.class,
4045            Arrays.asList(
4046                new PropertyType[]
4047                {
4048                    new PropertyType("program", ProgramImpl.class),
4049                    new PropertyType("otherGear", GearImpl.class),
4050                    new PropertyType("operation", OperationImpl.class),
4051                    new PropertyType("gearUseMeasurements", GearUseMeasurementImpl.class),
4052                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4053                    new PropertyType("metier", MetierImpl.class),
4054                    new PropertyType("gearUseFeaturesOrigins", GearUseFeaturesOriginImpl.class),
4055                    new PropertyType("gear", GearImpl.class),
4056                    new PropertyType("vessel", VesselImpl.class),
4057                    new PropertyType("activityCalendar", ActivityCalendarImpl.class),
4058                    new PropertyType("dailyActivityCalendar", DailyActivityCalendarImpl.class),
4059                    new PropertyType("economicalSurvey", EconomicalSurveyImpl.class),
4060                    new PropertyType("fishingEffortCalendar", FishingEffortCalendarImpl.class),
4061                    new PropertyType("fishingAreas", FishingAreaImpl.class)
4062                }
4063            )
4064        );
4065    }
4066
4067    private static final void initializeUseFeatures166()
4068    {
4069        embeddedValueNamesByType.put(
4070            UseFeaturesImpl.class,
4071            null);
4072        embeddedValuesByType.put(
4073            UseFeaturesImpl.class,
4074            null);
4075        navigableAssociationEndsByType.put(
4076            UseFeaturesImpl.class,
4077            Arrays.asList(
4078                new PropertyType[]
4079                {
4080                    new PropertyType("program", ProgramImpl.class),
4081                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4082                    new PropertyType("vessel", VesselImpl.class)
4083                }
4084            )
4085        );
4086    }
4087
4088    private static final void initializeVesselUseFeatures167()
4089    {
4090        embeddedValueNamesByType.put(
4091            VesselUseFeaturesImpl.class,
4092            null);
4093        embeddedValuesByType.put(
4094            VesselUseFeaturesImpl.class,
4095            null);
4096        navigableAssociationEndsByType.put(
4097            VesselUseFeaturesImpl.class,
4098            Arrays.asList(
4099                new PropertyType[]
4100                {
4101                    new PropertyType("program", ProgramImpl.class),
4102                    new PropertyType("basePortLocation", LocationImpl.class),
4103                    new PropertyType("operation", OperationImpl.class),
4104                    new PropertyType("vesselUseMeasurements", VesselUseMeasurementImpl.class),
4105                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4106                    new PropertyType("vesselUseFeaturesOrigins", VesselUseFeaturesOriginImpl.class),
4107                    new PropertyType("vessel", VesselImpl.class),
4108                    new PropertyType("activityCalendar", ActivityCalendarImpl.class),
4109                    new PropertyType("dailyActivityCalendar", DailyActivityCalendarImpl.class),
4110                    new PropertyType("economicalSurvey", EconomicalSurveyImpl.class),
4111                    new PropertyType("fishingEffortCalendar", FishingEffortCalendarImpl.class),
4112                    new PropertyType("fishingTrip", FishingTripImpl.class),
4113                    new PropertyType("fishingAreas", FishingAreaImpl.class)
4114                }
4115            )
4116        );
4117    }
4118
4119    private static final void initializeVesselPerson168()
4120    {
4121        embeddedValueNamesByType.put(
4122            VesselPersonImpl.class,
4123            null);
4124        embeddedValuesByType.put(
4125            VesselPersonImpl.class,
4126            null);
4127        navigableAssociationEndsByType.put(
4128            VesselPersonImpl.class,
4129            Arrays.asList(
4130                new PropertyType[]
4131                {
4132                    new PropertyType("program", ProgramImpl.class),
4133                    new PropertyType("countryLocation", LocationImpl.class),
4134                    new PropertyType("educationGrade", EducationGradeImpl.class)
4135                }
4136            )
4137        );
4138    }
4139
4140    private static final void initializeVesselPersonFeatures169()
4141    {
4142        embeddedValueNamesByType.put(
4143            VesselPersonFeaturesImpl.class,
4144            null);
4145        embeddedValuesByType.put(
4146            VesselPersonFeaturesImpl.class,
4147            null);
4148        navigableAssociationEndsByType.put(
4149            VesselPersonFeaturesImpl.class,
4150            Arrays.asList(
4151                new PropertyType[]
4152                {
4153                    new PropertyType("person", PersonImpl.class),
4154                    new PropertyType("operation", OperationImpl.class),
4155                    new PropertyType("vesselPersonMeasurements", VesselPersonMeasurementImpl.class),
4156                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4157                    new PropertyType("vessel", VesselImpl.class),
4158                    new PropertyType("program", ProgramImpl.class),
4159                    new PropertyType("vesselPersonRoles", VesselPersonRoleImpl.class),
4160                    new PropertyType("vesselPerson", VesselPersonImpl.class),
4161                    new PropertyType("economicalSurvey", EconomicalSurveyImpl.class),
4162                    new PropertyType("fishingTrip", FishingTripImpl.class)
4163                }
4164            )
4165        );
4166    }
4167
4168    private static final void initializeVesselFeatures170()
4169    {
4170        embeddedValueNamesByType.put(
4171            VesselFeaturesImpl.class,
4172            null);
4173        embeddedValuesByType.put(
4174            VesselFeaturesImpl.class,
4175            null);
4176        navigableAssociationEndsByType.put(
4177            VesselFeaturesImpl.class,
4178            Arrays.asList(
4179                new PropertyType[]
4180                {
4181                    new PropertyType("basePortLocation", LocationImpl.class),
4182                    new PropertyType("hullMaterial", QualitativeValueImpl.class),
4183                    new PropertyType("vessel", VesselImpl.class)
4184                }
4185            )
4186        );
4187    }
4188
4189    private static final void initializeGearPhysicalFeatures171()
4190    {
4191        embeddedValueNamesByType.put(
4192            GearPhysicalFeaturesImpl.class,
4193            null);
4194        embeddedValuesByType.put(
4195            GearPhysicalFeaturesImpl.class,
4196            null);
4197        navigableAssociationEndsByType.put(
4198            GearPhysicalFeaturesImpl.class,
4199            Arrays.asList(
4200                new PropertyType[]
4201                {
4202                    new PropertyType("program", ProgramImpl.class),
4203                    new PropertyType("otherGear", GearImpl.class),
4204                    new PropertyType("operations", OperationImpl.class),
4205                    new PropertyType("gearPhysicalMeasurements", GearPhysicalMeasurementImpl.class),
4206                    new PropertyType("gear", GearImpl.class),
4207                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4208                    new PropertyType("vessel", VesselImpl.class),
4209                    new PropertyType("gearPhysicalFeaturesOrigins", GearPhysicalFeaturesOriginImpl.class),
4210                    new PropertyType("physicalGearSurvey", PhysicalGearSurveyImpl.class),
4211                    new PropertyType("fishingTrip", FishingTripImpl.class)
4212                }
4213            )
4214        );
4215    }
4216
4217    private static final void initializeVesselPhysicalFeatures172()
4218    {
4219        embeddedValueNamesByType.put(
4220            VesselPhysicalFeaturesImpl.class,
4221            null);
4222        embeddedValuesByType.put(
4223            VesselPhysicalFeaturesImpl.class,
4224            null);
4225        navigableAssociationEndsByType.put(
4226            VesselPhysicalFeaturesImpl.class,
4227            Arrays.asList(
4228                new PropertyType[]
4229                {
4230                    new PropertyType("program", ProgramImpl.class),
4231                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4232                    new PropertyType("baseLandingLocation", LocationImpl.class),
4233                    new PropertyType("recorderPerson", PersonImpl.class),
4234                    new PropertyType("vesselPhysicalMeasurements", VesselPhysicalMeasurementImpl.class),
4235                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4236                    new PropertyType("vesselPhysicalFeaturesOrigins", VesselPhysicalFeaturesOriginImpl.class),
4237                    new PropertyType("vessel", VesselImpl.class),
4238                    new PropertyType("physicalGearSurvey", PhysicalGearSurveyImpl.class)
4239                }
4240            )
4241        );
4242    }
4243
4244    private static final void initializeVesselPhysicalFeaturesOrigin173()
4245    {
4246        embeddedValueNamesByType.put(
4247            VesselPhysicalFeaturesOriginImpl.class,
4248            null);
4249        embeddedValuesByType.put(
4250            VesselPhysicalFeaturesOriginImpl.class,
4251            null);
4252        navigableAssociationEndsByType.put(
4253            VesselPhysicalFeaturesOriginImpl.class,
4254            Arrays.asList(
4255                new PropertyType[]
4256                {
4257                    new PropertyType("acquisitionLevel", AcquisitionLevelImpl.class),
4258                    new PropertyType("program", ProgramImpl.class),
4259                    new PropertyType("vesselPhysicalFeatures", VesselPhysicalFeaturesImpl.class)
4260                }
4261            )
4262        );
4263    }
4264
4265    private static final void initializeGearPhysicalFeaturesOrigin174()
4266    {
4267        embeddedValueNamesByType.put(
4268            GearPhysicalFeaturesOriginImpl.class,
4269            null);
4270        embeddedValuesByType.put(
4271            GearPhysicalFeaturesOriginImpl.class,
4272            null);
4273        navigableAssociationEndsByType.put(
4274            GearPhysicalFeaturesOriginImpl.class,
4275            Arrays.asList(
4276                new PropertyType[]
4277                {
4278                    new PropertyType("acquisitionLevel", AcquisitionLevelImpl.class),
4279                    new PropertyType("program", ProgramImpl.class),
4280                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class)
4281                }
4282            )
4283        );
4284    }
4285
4286    private static final void initializePhysicalFeatures175()
4287    {
4288        embeddedValueNamesByType.put(
4289            PhysicalFeaturesImpl.class,
4290            null);
4291        embeddedValuesByType.put(
4292            PhysicalFeaturesImpl.class,
4293            null);
4294        navigableAssociationEndsByType.put(
4295            PhysicalFeaturesImpl.class,
4296            Arrays.asList(
4297                new PropertyType[]
4298                {
4299                    new PropertyType("program", ProgramImpl.class),
4300                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4301                    new PropertyType("vessel", VesselImpl.class)
4302                }
4303            )
4304        );
4305    }
4306
4307    private static final void initializeRightToProduce176()
4308    {
4309        embeddedValueNamesByType.put(
4310            RightToProduceImpl.class,
4311            null);
4312        embeddedValuesByType.put(
4313            RightToProduceImpl.class,
4314            null);
4315        navigableAssociationEndsByType.put(
4316            RightToProduceImpl.class,
4317            Arrays.asList(
4318                new PropertyType[]
4319                {
4320                    new PropertyType("program", ProgramImpl.class),
4321                    new PropertyType("corpus", CorpusImpl.class),
4322                    new PropertyType("vesselOwners", VesselOwnerImpl.class),
4323                    new PropertyType("vessels", VesselImpl.class),
4324                    new PropertyType("fisheries", FisheryImpl.class)
4325                }
4326            )
4327        );
4328    }
4329
4330    private static final void initializeVesselPositionVMS177()
4331    {
4332        embeddedValueNamesByType.put(
4333            VesselPositionVMSImpl.class,
4334            null);
4335        embeddedValuesByType.put(
4336            VesselPositionVMSImpl.class,
4337            null);
4338        navigableAssociationEndsByType.put(
4339            VesselPositionVMSImpl.class,
4340            Arrays.asList(
4341                new PropertyType[]
4342                {
4343                    new PropertyType("vesselPositionMeasurements", VesselPositionMeasurementImpl.class),
4344                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4345                    new PropertyType("operation", OperationImpl.class),
4346                    new PropertyType("vessel", VesselImpl.class),
4347                    new PropertyType("processingHistory", ProcessingHistoryImpl.class),
4348                    new PropertyType("program", ProgramImpl.class),
4349                    new PropertyType("qualityFlag", QualityFlagImpl.class)
4350                }
4351            )
4352        );
4353    }
4354
4355    private static final void initializeVesselPosition178()
4356    {
4357        embeddedValueNamesByType.put(
4358            VesselPositionImpl.class,
4359            null);
4360        embeddedValuesByType.put(
4361            VesselPositionImpl.class,
4362            null);
4363        navigableAssociationEndsByType.put(
4364            VesselPositionImpl.class,
4365            Arrays.asList(
4366                new PropertyType[]
4367                {
4368                    new PropertyType("program", ProgramImpl.class),
4369                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4370                    new PropertyType("operation", OperationImpl.class),
4371                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4372                    new PropertyType("processingHistory", ProcessingHistoryImpl.class),
4373                    new PropertyType("vessel", VesselImpl.class)
4374                }
4375            )
4376        );
4377    }
4378
4379    private static final void initializeVesselOwnerPeriod179()
4380    {
4381        embeddedValueNamesByType.put(
4382            VesselOwnerPeriodImpl.class,
4383            null);
4384        embeddedValuesByType.put(
4385            VesselOwnerPeriodImpl.class,
4386            null);
4387        navigableAssociationEndsByType.put(
4388            VesselOwnerPeriodImpl.class,
4389            Arrays.asList(
4390                new PropertyType[]
4391                {
4392                    new PropertyType("vessel", VesselImpl.class),
4393                    new PropertyType("vesselOwner", VesselOwnerImpl.class)
4394                }
4395            )
4396        );
4397    }
4398
4399    private static final void initializeVesselCommissioningPeriod180()
4400    {
4401        embeddedValueNamesByType.put(
4402            VesselCommissioningPeriodImpl.class,
4403            null);
4404        embeddedValuesByType.put(
4405            VesselCommissioningPeriodImpl.class,
4406            null);
4407        navigableAssociationEndsByType.put(
4408            VesselCommissioningPeriodImpl.class,
4409            Arrays.asList(
4410                new PropertyType[]
4411                {
4412                    new PropertyType("commissioningLocation", LocationImpl.class),
4413                    new PropertyType("vessel", VesselImpl.class)
4414                }
4415            )
4416        );
4417    }
4418
4419    private static final void initializeUpdatedItemHistory181()
4420    {
4421        embeddedValueNamesByType.put(
4422            UpdatedItemHistoryImpl.class,
4423            null);
4424        embeddedValuesByType.put(
4425            UpdatedItemHistoryImpl.class,
4426            null);
4427        navigableAssociationEndsByType.put(
4428            UpdatedItemHistoryImpl.class,
4429            Arrays.asList(
4430                new PropertyType[]
4431                {
4432                    new PropertyType("objectType", ObjectTypeImpl.class),
4433                    new PropertyType("recorderPerson", PersonImpl.class),
4434                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4435                    new PropertyType("pmfm", PmfmImpl.class),
4436                    new PropertyType("metier", MetierImpl.class),
4437                    new PropertyType("gear", GearImpl.class),
4438                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
4439                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4440                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
4441                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
4442                    new PropertyType("processingHistory", ProcessingHistoryImpl.class)
4443                }
4444            )
4445        );
4446    }
4447
4448    private static final void initializeDeletedItemHistory182()
4449    {
4450        embeddedValueNamesByType.put(
4451            DeletedItemHistoryImpl.class,
4452            null);
4453        embeddedValuesByType.put(
4454            DeletedItemHistoryImpl.class,
4455            null);
4456        navigableAssociationEndsByType.put(
4457            DeletedItemHistoryImpl.class,
4458            Arrays.asList(
4459                new PropertyType[]
4460                {
4461                    new PropertyType("processingHistory", ProcessingHistoryImpl.class),
4462                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4463                    new PropertyType("recorderPerson", PersonImpl.class),
4464                    new PropertyType("objectType", ObjectTypeImpl.class)
4465                }
4466            )
4467        );
4468    }
4469
4470    private static final void initializeProcessingHistory183()
4471    {
4472        embeddedValueNamesByType.put(
4473            ProcessingHistoryImpl.class,
4474            null);
4475        embeddedValuesByType.put(
4476            ProcessingHistoryImpl.class,
4477            null);
4478        navigableAssociationEndsByType.put(
4479            ProcessingHistoryImpl.class,
4480            Arrays.asList(
4481                new PropertyType[]
4482                {
4483                    new PropertyType("insertedItemHistories", InsertedItemHistoryImpl.class),
4484                    new PropertyType("processingType", ProcessingTypeImpl.class),
4485                    new PropertyType("processingStatus", ProcessingStatusImpl.class),
4486                    new PropertyType("updatedItemHistories", UpdatedItemHistoryImpl.class),
4487                    new PropertyType("deletedItemHistories", DeletedItemHistoryImpl.class)
4488                }
4489            )
4490        );
4491    }
4492
4493    private static final void initializeInsertedItemHistory184()
4494    {
4495        embeddedValueNamesByType.put(
4496            InsertedItemHistoryImpl.class,
4497            null);
4498        embeddedValuesByType.put(
4499            InsertedItemHistoryImpl.class,
4500            null);
4501        navigableAssociationEndsByType.put(
4502            InsertedItemHistoryImpl.class,
4503            Arrays.asList(
4504                new PropertyType[]
4505                {
4506                    new PropertyType("objectType", ObjectTypeImpl.class),
4507                    new PropertyType("processingHistory", ProcessingHistoryImpl.class)
4508                }
4509            )
4510        );
4511    }
4512
4513    private static final void initializeActivityCalendar185()
4514    {
4515        embeddedValueNamesByType.put(
4516            ActivityCalendarImpl.class,
4517            null);
4518        embeddedValuesByType.put(
4519            ActivityCalendarImpl.class,
4520            null);
4521        navigableAssociationEndsByType.put(
4522            ActivityCalendarImpl.class,
4523            Arrays.asList(
4524                new PropertyType[]
4525                {
4526                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4527                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
4528                    new PropertyType("recorderPerson", PersonImpl.class),
4529                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4530                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
4531                    new PropertyType("vessel", VesselImpl.class),
4532                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4533                    new PropertyType("program", ProgramImpl.class),
4534                    new PropertyType("fishingEffortCalendar", FishingEffortCalendarImpl.class)
4535                }
4536            )
4537        );
4538    }
4539
4540    private static final void initializeDailyActivityCalendar186()
4541    {
4542        embeddedValueNamesByType.put(
4543            DailyActivityCalendarImpl.class,
4544            null);
4545        embeddedValuesByType.put(
4546            DailyActivityCalendarImpl.class,
4547            null);
4548        navigableAssociationEndsByType.put(
4549            DailyActivityCalendarImpl.class,
4550            Arrays.asList(
4551                new PropertyType[]
4552                {
4553                    new PropertyType("observedLocation", ObservedLocationImpl.class),
4554                    new PropertyType("recorderPerson", PersonImpl.class),
4555                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4556                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4557                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
4558                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
4559                    new PropertyType("program", ProgramImpl.class),
4560                    new PropertyType("vessel", VesselImpl.class),
4561                    new PropertyType("qualityFlag", QualityFlagImpl.class)
4562                }
4563            )
4564        );
4565    }
4566
4567    private static final void initializeLandingOrigin187()
4568    {
4569        embeddedValueNamesByType.put(
4570            LandingOriginImpl.class,
4571            null);
4572        embeddedValuesByType.put(
4573            LandingOriginImpl.class,
4574            null);
4575        navigableAssociationEndsByType.put(
4576            LandingOriginImpl.class,
4577            Arrays.asList(
4578                new PropertyType[]
4579                {
4580                    new PropertyType("landing", LandingImpl.class),
4581                    new PropertyType("program", ProgramImpl.class)
4582                }
4583            )
4584        );
4585    }
4586
4587    private static final void initializeLanding188()
4588    {
4589        embeddedValueNamesByType.put(
4590            LandingImpl.class,
4591            null);
4592        embeddedValuesByType.put(
4593            LandingImpl.class,
4594            null);
4595        navigableAssociationEndsByType.put(
4596            LandingImpl.class,
4597            Arrays.asList(
4598                new PropertyType[]
4599                {
4600                    new PropertyType("landingLocation", LocationImpl.class),
4601                    new PropertyType("observedLocation", ObservedLocationImpl.class),
4602                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4603                    new PropertyType("recorderPerson", PersonImpl.class),
4604                    new PropertyType("catchBatch", CatchBatchImpl.class),
4605                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4606                    new PropertyType("landingMeasurements", LandingMeasurementImpl.class),
4607                    new PropertyType("produces", ProduceImpl.class),
4608                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4609                    new PropertyType("vessel", VesselImpl.class),
4610                    new PropertyType("landingOrigins", LandingOriginImpl.class),
4611                    new PropertyType("program", ProgramImpl.class),
4612                    new PropertyType("samplingStrata", SamplingStrataImpl.class),
4613                    new PropertyType("sales", SaleImpl.class),
4614                    new PropertyType("fishingTrip", FishingTripImpl.class)
4615                }
4616            )
4617        );
4618    }
4619
4620    private static final void initializeObservedLanding189()
4621    {
4622        embeddedValueNamesByType.put(
4623            ObservedLandingImpl.class,
4624            null);
4625        embeddedValuesByType.put(
4626            ObservedLandingImpl.class,
4627            null);
4628        navigableAssociationEndsByType.put(
4629            ObservedLandingImpl.class,
4630            Arrays.asList(
4631                new PropertyType[]
4632                {
4633                    new PropertyType("observedLocation", ObservedLocationImpl.class),
4634                    new PropertyType("observerPersons", PersonImpl.class),
4635                    new PropertyType("landingLocation", LocationImpl.class),
4636                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4637                    new PropertyType("recorderPerson", PersonImpl.class),
4638                    new PropertyType("catchBatch", CatchBatchImpl.class),
4639                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4640                    new PropertyType("landingMeasurements", LandingMeasurementImpl.class),
4641                    new PropertyType("produces", ProduceImpl.class),
4642                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4643                    new PropertyType("vessel", VesselImpl.class),
4644                    new PropertyType("landingOrigins", LandingOriginImpl.class),
4645                    new PropertyType("program", ProgramImpl.class),
4646                    new PropertyType("samplingStrata", SamplingStrataImpl.class),
4647                    new PropertyType("sales", SaleImpl.class),
4648                    new PropertyType("fishingTrip", FishingTripImpl.class),
4649                    new PropertyType("expectedSales", ExpectedSaleImpl.class)
4650                }
4651            )
4652        );
4653    }
4654
4655    private static final void initializeEconomicalSurvey190()
4656    {
4657        embeddedValueNamesByType.put(
4658            EconomicalSurveyImpl.class,
4659            null);
4660        embeddedValuesByType.put(
4661            EconomicalSurveyImpl.class,
4662            null);
4663        navigableAssociationEndsByType.put(
4664            EconomicalSurveyImpl.class,
4665            Arrays.asList(
4666                new PropertyType[]
4667                {
4668                    new PropertyType("vesselPersonFeatures", VesselPersonFeaturesImpl.class),
4669                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4670                    new PropertyType("recorderPerson", PersonImpl.class),
4671                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4672                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
4673                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
4674                    new PropertyType("program", ProgramImpl.class),
4675                    new PropertyType("vesselOwner", VesselOwnerImpl.class),
4676                    new PropertyType("vessel", VesselImpl.class),
4677                    new PropertyType("qualityFlag", QualityFlagImpl.class)
4678                }
4679            )
4680        );
4681    }
4682
4683    private static final void initializeDeclaredDocumentReference191()
4684    {
4685        embeddedValueNamesByType.put(
4686            DeclaredDocumentReferenceImpl.class,
4687            null);
4688        embeddedValuesByType.put(
4689            DeclaredDocumentReferenceImpl.class,
4690            null);
4691        navigableAssociationEndsByType.put(
4692            DeclaredDocumentReferenceImpl.class,
4693            Arrays.asList(
4694                new PropertyType[]
4695                {
4696                    new PropertyType("parentDeclaredDocumentReference", DeclaredDocumentReferenceImpl.class),
4697                    new PropertyType("childDeclaredDocumentReferences", DeclaredDocumentReferenceImpl.class),
4698                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4699                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4700                    new PropertyType("recorderPerson", PersonImpl.class),
4701                    new PropertyType("program", ProgramImpl.class),
4702                    new PropertyType("vessel", VesselImpl.class),
4703                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4704                    new PropertyType("sales", SaleImpl.class),
4705                    new PropertyType("fishingTrips", FishingTripImpl.class)
4706                }
4707            )
4708        );
4709    }
4710
4711    private static final void initializeObservedSale192()
4712    {
4713        embeddedValueNamesByType.put(
4714            ObservedSaleImpl.class,
4715            null);
4716        embeddedValuesByType.put(
4717            ObservedSaleImpl.class,
4718            null);
4719        navigableAssociationEndsByType.put(
4720            ObservedSaleImpl.class,
4721            Arrays.asList(
4722                new PropertyType[]
4723                {
4724                    new PropertyType("observerPersons", PersonImpl.class),
4725                    new PropertyType("saleType", SaleTypeImpl.class),
4726                    new PropertyType("saleLocation", LocationImpl.class),
4727                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4728                    new PropertyType("recorderPerson", PersonImpl.class),
4729                    new PropertyType("catchBatch", CatchBatchImpl.class),
4730                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4731                    new PropertyType("saleMeasurements", SaleMeasurementImpl.class),
4732                    new PropertyType("produces", ProduceImpl.class),
4733                    new PropertyType("landing", LandingImpl.class),
4734                    new PropertyType("declaredDocumentReference", DeclaredDocumentReferenceImpl.class),
4735                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4736                    new PropertyType("program", ProgramImpl.class),
4737                    new PropertyType("vessel", VesselImpl.class),
4738                    new PropertyType("seller", SellerImpl.class),
4739                    new PropertyType("saleOrigins", SaleOriginImpl.class),
4740                    new PropertyType("samplingStrata", SamplingStrataImpl.class),
4741                    new PropertyType("takeOver", TakeOverImpl.class),
4742                    new PropertyType("fishingTrip", FishingTripImpl.class),
4743                    new PropertyType("fishingAreas", FishingAreaImpl.class)
4744                }
4745            )
4746        );
4747    }
4748
4749    private static final void initializeSale193()
4750    {
4751        embeddedValueNamesByType.put(
4752            SaleImpl.class,
4753            null);
4754        embeddedValuesByType.put(
4755            SaleImpl.class,
4756            null);
4757        navigableAssociationEndsByType.put(
4758            SaleImpl.class,
4759            Arrays.asList(
4760                new PropertyType[]
4761                {
4762                    new PropertyType("saleLocation", LocationImpl.class),
4763                    new PropertyType("saleType", SaleTypeImpl.class),
4764                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4765                    new PropertyType("recorderPerson", PersonImpl.class),
4766                    new PropertyType("catchBatch", CatchBatchImpl.class),
4767                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4768                    new PropertyType("saleMeasurements", SaleMeasurementImpl.class),
4769                    new PropertyType("produces", ProduceImpl.class),
4770                    new PropertyType("landing", LandingImpl.class),
4771                    new PropertyType("declaredDocumentReference", DeclaredDocumentReferenceImpl.class),
4772                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4773                    new PropertyType("program", ProgramImpl.class),
4774                    new PropertyType("vessel", VesselImpl.class),
4775                    new PropertyType("seller", SellerImpl.class),
4776                    new PropertyType("saleOrigins", SaleOriginImpl.class),
4777                    new PropertyType("takeOver", TakeOverImpl.class),
4778                    new PropertyType("fishingTrip", FishingTripImpl.class),
4779                    new PropertyType("fishingAreas", FishingAreaImpl.class)
4780                }
4781            )
4782        );
4783    }
4784
4785    private static final void initializeSaleOrigin194()
4786    {
4787        embeddedValueNamesByType.put(
4788            SaleOriginImpl.class,
4789            null);
4790        embeddedValuesByType.put(
4791            SaleOriginImpl.class,
4792            null);
4793        navigableAssociationEndsByType.put(
4794            SaleOriginImpl.class,
4795            Arrays.asList(
4796                new PropertyType[]
4797                {
4798                    new PropertyType("sale", SaleImpl.class),
4799                    new PropertyType("program", ProgramImpl.class)
4800                }
4801            )
4802        );
4803    }
4804
4805    private static final void initializePhysicalGearSurvey195()
4806    {
4807        embeddedValueNamesByType.put(
4808            PhysicalGearSurveyImpl.class,
4809            null);
4810        embeddedValuesByType.put(
4811            PhysicalGearSurveyImpl.class,
4812            null);
4813        navigableAssociationEndsByType.put(
4814            PhysicalGearSurveyImpl.class,
4815            Arrays.asList(
4816                new PropertyType[]
4817                {
4818                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4819                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4820                    new PropertyType("recorderPerson", PersonImpl.class),
4821                    new PropertyType("vessel", VesselImpl.class),
4822                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class),
4823                    new PropertyType("vesselPhysicalFeatures", VesselPhysicalFeaturesImpl.class),
4824                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4825                    new PropertyType("program", ProgramImpl.class)
4826                }
4827            )
4828        );
4829    }
4830
4831    private static final void initializeFishingEffortCalendar196()
4832    {
4833        embeddedValueNamesByType.put(
4834            FishingEffortCalendarImpl.class,
4835            null);
4836        embeddedValuesByType.put(
4837            FishingEffortCalendarImpl.class,
4838            null);
4839        navigableAssociationEndsByType.put(
4840            FishingEffortCalendarImpl.class,
4841            Arrays.asList(
4842                new PropertyType[]
4843                {
4844                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4845                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4846                    new PropertyType("recorderPerson", PersonImpl.class),
4847                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
4848                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
4849                    new PropertyType("activityCalendar", ActivityCalendarImpl.class),
4850                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4851                    new PropertyType("vessel", VesselImpl.class),
4852                    new PropertyType("program", ProgramImpl.class)
4853                }
4854            )
4855        );
4856    }
4857
4858    private static final void initializeTakeOver197()
4859    {
4860        embeddedValueNamesByType.put(
4861            TakeOverImpl.class,
4862            null);
4863        embeddedValuesByType.put(
4864            TakeOverImpl.class,
4865            null);
4866        navigableAssociationEndsByType.put(
4867            TakeOverImpl.class,
4868            Arrays.asList(
4869                new PropertyType[]
4870                {
4871                    new PropertyType("takeOverMeasurements", TakeOverMeasurementImpl.class),
4872                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4873                    new PropertyType("recorderPerson", PersonImpl.class),
4874                    new PropertyType("takeOverLocation", LocationImpl.class),
4875                    new PropertyType("storageFacility", SellerImpl.class),
4876                    new PropertyType("produces", ProduceImpl.class),
4877                    new PropertyType("sales", SaleImpl.class),
4878                    new PropertyType("seller", SellerImpl.class),
4879                    new PropertyType("declaredDocumentReference", DeclaredDocumentReferenceImpl.class),
4880                    new PropertyType("fishingTrip", FishingTripImpl.class),
4881                    new PropertyType("program", ProgramImpl.class),
4882                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4883                    new PropertyType("landing", LandingImpl.class),
4884                    new PropertyType("vessel", VesselImpl.class)
4885                }
4886            )
4887        );
4888    }
4889
4890    private static final void initializeScientificCruise198()
4891    {
4892        embeddedValueNamesByType.put(
4893            ScientificCruiseImpl.class,
4894            null);
4895        embeddedValuesByType.put(
4896            ScientificCruiseImpl.class,
4897            null);
4898        navigableAssociationEndsByType.put(
4899            ScientificCruiseImpl.class,
4900            Arrays.asList(
4901                new PropertyType[]
4902                {
4903                    new PropertyType("managerPerson", PersonImpl.class),
4904                    new PropertyType("vessel", VesselImpl.class),
4905                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4906                    new PropertyType("recorderPerson", PersonImpl.class),
4907                    new PropertyType("program", ProgramImpl.class),
4908                    new PropertyType("fishingTrips", FishingTripImpl.class)
4909                }
4910            )
4911        );
4912    }
4913
4914    private static final void initializeFishingTrip199()
4915    {
4916        embeddedValueNamesByType.put(
4917            FishingTripImpl.class,
4918            null);
4919        embeddedValuesByType.put(
4920            FishingTripImpl.class,
4921            null);
4922        navigableAssociationEndsByType.put(
4923            FishingTripImpl.class,
4924            Arrays.asList(
4925                new PropertyType[]
4926                {
4927                    new PropertyType("returnLocation", LocationImpl.class),
4928                    new PropertyType("departureLocation", LocationImpl.class),
4929                    new PropertyType("vesselPersonFeatures", VesselPersonFeaturesImpl.class),
4930                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4931                    new PropertyType("recorderPerson", PersonImpl.class),
4932                    new PropertyType("operations", OperationImpl.class),
4933                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4934                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
4935                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class),
4936                    new PropertyType("landings", LandingImpl.class),
4937                    new PropertyType("declaredDocumentReference", DeclaredDocumentReferenceImpl.class),
4938                    new PropertyType("sales", SaleImpl.class),
4939                    new PropertyType("scientificCruise", ScientificCruiseImpl.class),
4940                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4941                    new PropertyType("vessel", VesselImpl.class),
4942                    new PropertyType("program", ProgramImpl.class),
4943                    new PropertyType("fishingTripOrigins", FishingTripOriginImpl.class),
4944                    new PropertyType("transshipments", TransshipmentImpl.class),
4945                    new PropertyType("playgroundFishingTripVesselMasters", PlaygroundFishingTripVesselMasterImpl.class),
4946                    new PropertyType("playgroundVesselOwners", PlaygroundVesselOwnerImpl.class),
4947                    new PropertyType("playgroundFishingEffortZones", PlaygroundFishingEffortZoneImpl.class)
4948                }
4949            )
4950        );
4951    }
4952
4953    private static final void initializeObservedFishingTrip200()
4954    {
4955        embeddedValueNamesByType.put(
4956            ObservedFishingTripImpl.class,
4957            null);
4958        embeddedValuesByType.put(
4959            ObservedFishingTripImpl.class,
4960            null);
4961        navigableAssociationEndsByType.put(
4962            ObservedFishingTripImpl.class,
4963            Arrays.asList(
4964                new PropertyType[]
4965                {
4966                    new PropertyType("observerPersons", PersonImpl.class),
4967                    new PropertyType("vesselPersonFeatures", VesselPersonFeaturesImpl.class),
4968                    new PropertyType("returnLocation", LocationImpl.class),
4969                    new PropertyType("departureLocation", LocationImpl.class),
4970                    new PropertyType("recorderDepartment", DepartmentImpl.class),
4971                    new PropertyType("recorderPerson", PersonImpl.class),
4972                    new PropertyType("operations", OperationImpl.class),
4973                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
4974                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
4975                    new PropertyType("gearPhysicalFeatures", GearPhysicalFeaturesImpl.class),
4976                    new PropertyType("landings", LandingImpl.class),
4977                    new PropertyType("declaredDocumentReference", DeclaredDocumentReferenceImpl.class),
4978                    new PropertyType("sales", SaleImpl.class),
4979                    new PropertyType("scientificCruise", ScientificCruiseImpl.class),
4980                    new PropertyType("qualityFlag", QualityFlagImpl.class),
4981                    new PropertyType("samplingStrata", SamplingStrataImpl.class),
4982                    new PropertyType("vessel", VesselImpl.class),
4983                    new PropertyType("program", ProgramImpl.class),
4984                    new PropertyType("fishingTripOrigins", FishingTripOriginImpl.class),
4985                    new PropertyType("transshipments", TransshipmentImpl.class),
4986                    new PropertyType("expectedSales", ExpectedSaleImpl.class),
4987                    new PropertyType("playgroundFishingTripVesselMasters", PlaygroundFishingTripVesselMasterImpl.class),
4988                    new PropertyType("playgroundVesselOwners", PlaygroundVesselOwnerImpl.class),
4989                    new PropertyType("playgroundFishingEffortZones", PlaygroundFishingEffortZoneImpl.class)
4990                }
4991            )
4992        );
4993    }
4994
4995    private static final void initializeFishingTripOrigin201()
4996    {
4997        embeddedValueNamesByType.put(
4998            FishingTripOriginImpl.class,
4999            null);
5000        embeddedValuesByType.put(
5001            FishingTripOriginImpl.class,
5002            null);
5003        navigableAssociationEndsByType.put(
5004            FishingTripOriginImpl.class,
5005            Arrays.asList(
5006                new PropertyType[]
5007                {
5008                    new PropertyType("program", ProgramImpl.class),
5009                    new PropertyType("originFishingTrip", FishingTripImpl.class),
5010                    new PropertyType("fishingTrip", FishingTripImpl.class)
5011                }
5012            )
5013        );
5014    }
5015
5016    private static final void initializeObservedLocation202()
5017    {
5018        embeddedValueNamesByType.put(
5019            ObservedLocationImpl.class,
5020            null);
5021        embeddedValuesByType.put(
5022            ObservedLocationImpl.class,
5023            null);
5024        navigableAssociationEndsByType.put(
5025            ObservedLocationImpl.class,
5026            Arrays.asList(
5027                new PropertyType[]
5028                {
5029                    new PropertyType("observers", PersonImpl.class),
5030                    new PropertyType("observedLocationFeatures", ObservedLocationFeaturesImpl.class),
5031                    new PropertyType("recorderPerson", PersonImpl.class),
5032                    new PropertyType("recorderDepartment", DepartmentImpl.class),
5033                    new PropertyType("dailyActivityCalendars", DailyActivityCalendarImpl.class),
5034                    new PropertyType("landings", LandingImpl.class),
5035                    new PropertyType("program", ProgramImpl.class),
5036                    new PropertyType("samplingStrata", SamplingStrataImpl.class),
5037                    new PropertyType("location", LocationImpl.class),
5038                    new PropertyType("qualityFlag", QualityFlagImpl.class)
5039                }
5040            )
5041        );
5042    }
5043
5044    private static final void initializeObservedLocationFeatures203()
5045    {
5046        embeddedValueNamesByType.put(
5047            ObservedLocationFeaturesImpl.class,
5048            null);
5049        embeddedValuesByType.put(
5050            ObservedLocationFeaturesImpl.class,
5051            null);
5052        navigableAssociationEndsByType.put(
5053            ObservedLocationFeaturesImpl.class,
5054            Arrays.asList(
5055                new PropertyType[]
5056                {
5057                    new PropertyType("observedLocationMeasurments", ObservedLocationMeasurmentImpl.class),
5058                    new PropertyType("observedLocation", ObservedLocationImpl.class),
5059                    new PropertyType("qualityFlag", QualityFlagImpl.class),
5060                    new PropertyType("program", ProgramImpl.class)
5061                }
5062            )
5063        );
5064    }
5065
5066    private static final void initializeObservedLocationMeasurment204()
5067    {
5068        embeddedValueNamesByType.put(
5069            ObservedLocationMeasurmentImpl.class,
5070            null);
5071        embeddedValuesByType.put(
5072            ObservedLocationMeasurmentImpl.class,
5073            null);
5074        navigableAssociationEndsByType.put(
5075            ObservedLocationMeasurmentImpl.class,
5076            Arrays.asList(
5077                new PropertyType[]
5078                {
5079                    new PropertyType("aggregationLevel", AggregationLevelImpl.class),
5080                    new PropertyType("qualitativeValue", QualitativeValueImpl.class),
5081                    new PropertyType("qualityFlag", QualityFlagImpl.class),
5082                    new PropertyType("precisionType", PrecisionTypeImpl.class),
5083                    new PropertyType("analysisInstrument", AnalysisInstrumentImpl.class),
5084                    new PropertyType("pmfm", PmfmImpl.class),
5085                    new PropertyType("department", DepartmentImpl.class),
5086                    new PropertyType("numericalPrecision", NumericalPrecisionImpl.class),
5087                    new PropertyType("observedLocationFeatures", ObservedLocationFeaturesImpl.class)
5088                }
5089            )
5090        );
5091    }
5092
5093    private static final void initializeFishingArea2RegulationLocation205()
5094    {
5095        embeddedValueNamesByType.put(
5096            FishingArea2RegulationLocationImpl.class,
5097            null);
5098        embeddedValuesByType.put(
5099            FishingArea2RegulationLocationImpl.class,
5100            null);
5101        navigableAssociationEndsByType.put(
5102            FishingArea2RegulationLocationImpl.class,
5103            Arrays.asList(
5104                new PropertyType[]
5105                {
5106                    new PropertyType("fishingArea", FishingAreaImpl.class),
5107                    new PropertyType("location", LocationImpl.class)
5108                }
5109            )
5110        );
5111    }
5112
5113    private static final void initializeFishingArea206()
5114    {
5115        embeddedValueNamesByType.put(
5116            FishingAreaImpl.class,
5117            null);
5118        embeddedValuesByType.put(
5119            FishingAreaImpl.class,
5120            null);
5121        navigableAssociationEndsByType.put(
5122            FishingAreaImpl.class,
5123            Arrays.asList(
5124                new PropertyType[]
5125                {
5126                    new PropertyType("fishingArea2ManagedLocations", FishingArea2ManagedLocationImpl.class),
5127                    new PropertyType("regulationLocations", FishingArea2RegulationLocationImpl.class),
5128                    new PropertyType("produce", ProduceImpl.class),
5129                    new PropertyType("gearUseFeatures", GearUseFeaturesImpl.class),
5130                    new PropertyType("vesselUseFeatures", VesselUseFeaturesImpl.class),
5131                    new PropertyType("nearbySpecificArea", NearbySpecificAreaImpl.class),
5132                    new PropertyType("depthGradient", DepthGradientImpl.class),
5133                    new PropertyType("distanceToCoastGradient", DistanceToCoastGradientImpl.class),
5134                    new PropertyType("location", LocationImpl.class),
5135                    new PropertyType("sale", SaleImpl.class),
5136                    new PropertyType("qualityFlag", QualityFlagImpl.class),
5137                    new PropertyType("sample", SampleImpl.class)
5138                }
5139            )
5140        );
5141    }
5142
5143    private static final void initializeFishingArea2ManagedLocation207()
5144    {
5145        embeddedValueNamesByType.put(
5146            FishingArea2ManagedLocationImpl.class,
5147            null);
5148        embeddedValuesByType.put(
5149            FishingArea2ManagedLocationImpl.class,
5150            null);
5151        navigableAssociationEndsByType.put(
5152            FishingArea2ManagedLocationImpl.class,
5153            Arrays.asList(
5154                new PropertyType[]
5155                {
5156                    new PropertyType("location", LocationImpl.class),
5157                    new PropertyType("fishingArea", FishingAreaImpl.class)
5158                }
5159            )
5160        );
5161    }
5162
5163    private static final void initializeTransshipment208()
5164    {
5165        embeddedValueNamesByType.put(
5166            TransshipmentImpl.class,
5167            null);
5168        embeddedValuesByType.put(
5169            TransshipmentImpl.class,
5170            null);
5171        navigableAssociationEndsByType.put(
5172            TransshipmentImpl.class,
5173            Arrays.asList(
5174                new PropertyType[]
5175                {
5176                    new PropertyType("toVessel", VesselImpl.class),
5177                    new PropertyType("transshipmentLocation", LocationImpl.class),
5178                    new PropertyType("qualityFlag", QualityFlagImpl.class),
5179                    new PropertyType("recorderDepartment", DepartmentImpl.class),
5180                    new PropertyType("fromVessel", VesselImpl.class),
5181                    new PropertyType("recorderPerson", PersonImpl.class),
5182                    new PropertyType("surveyMeasurements", SurveyMeasurementImpl.class),
5183                    new PropertyType("produces", ProduceImpl.class),
5184                    new PropertyType("fishingTrip", FishingTripImpl.class),
5185                    new PropertyType("program", ProgramImpl.class)
5186                }
5187            )
5188        );
5189    }
5190
5191    private static final void initializeLinkedItem209()
5192    {
5193        embeddedValueNamesByType.put(
5194            LinkedItemImpl.class,
5195            null);
5196        embeddedValuesByType.put(
5197            LinkedItemImpl.class,
5198            null);
5199        navigableAssociationEndsByType.put(
5200            LinkedItemImpl.class,
5201            Arrays.asList(
5202                new PropertyType[]
5203                {
5204                    new PropertyType("qualityFlag", QualityFlagImpl.class),
5205                    new PropertyType("linkedItemType", LinkedItemTypeImpl.class)
5206                }
5207            )
5208        );
5209    }
5210
5211    private static final void initializeSample210()
5212    {
5213        embeddedValueNamesByType.put(
5214            SampleImpl.class,
5215            null);
5216        embeddedValuesByType.put(
5217            SampleImpl.class,
5218            null);
5219        navigableAssociationEndsByType.put(
5220            SampleImpl.class,
5221            Arrays.asList(
5222                new PropertyType[]
5223                {
5224                    new PropertyType("fishingAreas", FishingAreaImpl.class),
5225                    new PropertyType("sizeUnit", UnitImpl.class),
5226                    new PropertyType("recorderDepartment", DepartmentImpl.class),
5227                    new PropertyType("childSamples", SampleImpl.class),
5228                    new PropertyType("parentSample", SampleImpl.class),
5229                    new PropertyType("recorderPerson", PersonImpl.class),
5230                    new PropertyType("fishingOperation", FishingOperationImpl.class),
5231                    new PropertyType("sampleMeasurements", SampleMeasurementImpl.class),
5232                    new PropertyType("taxonGroup", TaxonGroupImpl.class),
5233                    new PropertyType("matrix", MatrixImpl.class),
5234                    new PropertyType("qualityFlag", QualityFlagImpl.class),
5235                    new PropertyType("batch", BatchImpl.class),
5236                    new PropertyType("referenceTaxon", ReferenceTaxonImpl.class),
5237                    new PropertyType("program", ProgramImpl.class)
5238                }
5239            )
5240        );
5241    }
5242
5243    private static final void initializeExpectedSale211()
5244    {
5245        embeddedValueNamesByType.put(
5246            ExpectedSaleImpl.class,
5247            null);
5248        embeddedValuesByType.put(
5249            ExpectedSaleImpl.class,
5250            null);
5251        navigableAssociationEndsByType.put(
5252            ExpectedSaleImpl.class,
5253            Arrays.asList(
5254                new PropertyType[]
5255                {
5256                    new PropertyType("saleLocation", LocationImpl.class),
5257                    new PropertyType("saleType", SaleTypeImpl.class),
5258                    new PropertyType("saleMeasurements", SaleMeasurementImpl.class),
5259                    new PropertyType("produces", ProduceImpl.class),
5260                    new PropertyType("observedLanding", ObservedLandingImpl.class),
5261                    new PropertyType("observedFishingTrip", ObservedFishingTripImpl.class)
5262                }
5263            )
5264        );
5265    }
5266
5267    private static final void initializeSamplingStrata2Grouping212()
5268    {
5269        embeddedValueNamesByType.put(
5270            SamplingStrata2GroupingImpl.class,
5271            null);
5272        embeddedValuesByType.put(
5273            SamplingStrata2GroupingImpl.class,
5274            null);
5275        navigableAssociationEndsByType.put(
5276            SamplingStrata2GroupingImpl.class,
5277            Arrays.asList(
5278                new PropertyType[]
5279                {
5280                    new PropertyType("samplingStrata", SamplingStrataImpl.class),
5281                    new PropertyType("grouping", GroupingImpl.class)
5282                }
5283            )
5284        );
5285    }
5286
5287    private static final void initializeSamplingScheme213()
5288    {
5289        embeddedValueNamesByType.put(
5290            SamplingSchemeImpl.class,
5291            null);
5292        embeddedValuesByType.put(
5293            SamplingSchemeImpl.class,
5294            null);
5295        navigableAssociationEndsByType.put(
5296            SamplingSchemeImpl.class,
5297            Arrays.asList(
5298                new PropertyType[]
5299                {
5300                    new PropertyType("samplingStratas", SamplingStrataImpl.class),
5301                    new PropertyType("program", ProgramImpl.class)
5302                }
5303            )
5304        );
5305    }
5306
5307    private static final void initializeSamplingStrata2Fishery214()
5308    {
5309        embeddedValueNamesByType.put(
5310            SamplingStrata2FisheryImpl.class,
5311            null);
5312        embeddedValuesByType.put(
5313            SamplingStrata2FisheryImpl.class,
5314            null);
5315        navigableAssociationEndsByType.put(
5316            SamplingStrata2FisheryImpl.class,
5317            Arrays.asList(
5318                new PropertyType[]
5319                {
5320                    new PropertyType("fishery", FisheryImpl.class),
5321                    new PropertyType("samplingStrata", SamplingStrataImpl.class)
5322                }
5323            )
5324        );
5325    }
5326
5327    private static final void initializeDenormalizedSamplingStrata215()
5328    {
5329        embeddedValueNamesByType.put(
5330            DenormalizedSamplingStrataImpl.class,
5331            null);
5332        embeddedValuesByType.put(
5333            DenormalizedSamplingStrataImpl.class,
5334            null);
5335        navigableAssociationEndsByType.put(
5336            DenormalizedSamplingStrataImpl.class,
5337            Arrays.asList(
5338                new PropertyType[]
5339                {
5340                    new PropertyType("program", ProgramImpl.class),
5341                    new PropertyType("observationLocation", LocationImpl.class),
5342                    new PropertyType("person", PersonImpl.class),
5343                    new PropertyType("department", DepartmentImpl.class)
5344                }
5345            )
5346        );
5347    }
5348
5349    private static final void initializeSamplingStrata2Vessel216()
5350    {
5351        embeddedValueNamesByType.put(
5352            SamplingStrata2VesselImpl.class,
5353            null);
5354        embeddedValuesByType.put(
5355            SamplingStrata2VesselImpl.class,
5356            null);
5357        navigableAssociationEndsByType.put(
5358            SamplingStrata2VesselImpl.class,
5359            Arrays.asList(
5360                new PropertyType[]
5361                {
5362                    new PropertyType("vessel", VesselImpl.class),
5363                    new PropertyType("samplingStrata", SamplingStrataImpl.class)
5364                }
5365            )
5366        );
5367    }
5368
5369    private static final void initializeSamplingStrata217()
5370    {
5371        embeddedValueNamesByType.put(
5372            SamplingStrataImpl.class,
5373            null);
5374        embeddedValuesByType.put(
5375            SamplingStrataImpl.class,
5376            null);
5377        navigableAssociationEndsByType.put(
5378            SamplingStrataImpl.class,
5379            Arrays.asList(
5380                new PropertyType[]
5381                {
5382                    new PropertyType("samplingStrata2Fisheries", SamplingStrata2FisheryImpl.class),
5383                    new PropertyType("observationLocation", LocationImpl.class),
5384                    new PropertyType("samplingStrataMeasurements", SamplingStrataMeasurementImpl.class),
5385                    new PropertyType("department", DepartmentImpl.class),
5386                    new PropertyType("samplingStrata2Groupings", SamplingStrata2GroupingImpl.class),
5387                    new PropertyType("samplingScheme", SamplingSchemeImpl.class),
5388                    new PropertyType("person", PersonImpl.class),
5389                    new PropertyType("samplingStrata2Vessels", SamplingStrata2VesselImpl.class)
5390                }
5391            )
5392        );
5393    }
5394
5395    private static final void initializePlaygroundFishingTripVesselMaster218()
5396    {
5397        embeddedValueNamesByType.put(
5398            PlaygroundFishingTripVesselMasterImpl.class,
5399            null);
5400        embeddedValuesByType.put(
5401            PlaygroundFishingTripVesselMasterImpl.class,
5402            null);
5403        navigableAssociationEndsByType.put(
5404            PlaygroundFishingTripVesselMasterImpl.class,
5405            Arrays.asList(
5406                new PropertyType[]
5407                {
5408                    new PropertyType("fishingTrip", FishingTripImpl.class),
5409                    new PropertyType("playgroundVesselMaster", PlaygroundVesselMasterImpl.class)
5410                }
5411            )
5412        );
5413    }
5414
5415    private static final void initializePlaygroundTaxonGroupSampling219()
5416    {
5417        embeddedValueNamesByType.put(
5418            PlaygroundTaxonGroupSamplingImpl.class,
5419            null);
5420        embeddedValuesByType.put(
5421            PlaygroundTaxonGroupSamplingImpl.class,
5422            null);
5423        navigableAssociationEndsByType.put(
5424            PlaygroundTaxonGroupSamplingImpl.class,
5425            null);
5426    }
5427
5428    private static final void initializePlaygroundVesselOwner220()
5429    {
5430        embeddedValueNamesByType.put(
5431            PlaygroundVesselOwnerImpl.class,
5432            null);
5433        embeddedValuesByType.put(
5434            PlaygroundVesselOwnerImpl.class,
5435            null);
5436        navigableAssociationEndsByType.put(
5437            PlaygroundVesselOwnerImpl.class,
5438            Arrays.asList(
5439                new PropertyType[]
5440                {
5441                    new PropertyType("fishingTrip", FishingTripImpl.class)
5442                }
5443            )
5444        );
5445    }
5446
5447    private static final void initializePlaygroundRicTaxonGroup221()
5448    {
5449        embeddedValueNamesByType.put(
5450            PlaygroundRicTaxonGroupImpl.class,
5451            null);
5452        embeddedValuesByType.put(
5453            PlaygroundRicTaxonGroupImpl.class,
5454            null);
5455        navigableAssociationEndsByType.put(
5456            PlaygroundRicTaxonGroupImpl.class,
5457            null);
5458    }
5459
5460    private static final void initializePlaygroundFishingEffortZone222()
5461    {
5462        embeddedValueNamesByType.put(
5463            PlaygroundFishingEffortZoneImpl.class,
5464            null);
5465        embeddedValuesByType.put(
5466            PlaygroundFishingEffortZoneImpl.class,
5467            null);
5468        navigableAssociationEndsByType.put(
5469            PlaygroundFishingEffortZoneImpl.class,
5470            Arrays.asList(
5471                new PropertyType[]
5472                {
5473                    new PropertyType("gear", GearImpl.class),
5474                    new PropertyType("fishingTrip", FishingTripImpl.class)
5475                }
5476            )
5477        );
5478    }
5479
5480    private static final void initializePlaygroundVesselMaster223()
5481    {
5482        embeddedValueNamesByType.put(
5483            PlaygroundVesselMasterImpl.class,
5484            null);
5485        embeddedValuesByType.put(
5486            PlaygroundVesselMasterImpl.class,
5487            null);
5488        navigableAssociationEndsByType.put(
5489            PlaygroundVesselMasterImpl.class,
5490            null);
5491    }
5492
5493    /**
5494     * Attempts to get the embedded value list for the given type (or returns null
5495     * if one doesn't exist).
5496     *
5497     * @param type the type of which to retrieve the value.
5498     * @return the collection of embedded value names.
5499     */
5500    public static Collection getEmbeddedValues(final Class type)
5501    {
5502        return (Collection)embeddedValueNamesByType.get(type);
5503    }
5504
5505    /**
5506     * Gets the type of the navigable association end given the <code>ownerType</code>
5507     * and <code>name</code>
5508     *
5509     * @param ownerType the owner of the association.
5510     * @param name the name of the association end to find.
5511     * @return the type of the association end.
5512     */
5513    public static Class getNavigableAssociationEndType(final Class ownerType, final String name)
5514    {
5515        return getPropertyType(navigableAssociationEndsByType, ownerType, name);
5516    }
5517
5518    /**
5519     * Gets the type of the embedded value given the <code>ownerType</code>
5520     * and <code>name</code>
5521     *
5522     * @param ownerType the owner of the association.
5523     * @param name the name of the association end to find.
5524     * @return the type of the association end.
5525     */
5526    public static Class getEmbeddedValueType(final Class ownerType, final String name)
5527    {
5528        return getPropertyType(embeddedValuesByType, ownerType, name);
5529    }
5530
5531    /**
5532     * Gets the type of the embedded value given the <code>ownerType</code>
5533     * and <code>name</code>
5534     *
5535     * @param properties Map contains the Collection of properties given the ownerType Class
5536     * @param ownerType the owner of the association.
5537     * @param name the name of the association end to find.
5538     * @return the type of the association end.
5539     */
5540    public static Class getPropertyType(final Map properties, final Class ownerType, final String name)
5541    {
5542        final Collection ends = (Collection)properties.get(ownerType);
5543        final PropertyType type = (PropertyType)CollectionUtils.find(
5544            ends,
5545            new Predicate()
5546            {
5547                public boolean evaluate(final Object object)
5548                {
5549                    return ((PropertyType)object).name.equals(name);
5550                }
5551            });
5552        return type != null ? type.type : null;
5553    }
5554
5555    /**
5556     * Gets the type of the property given the <code>ownerType</code>
5557     * and <code>name</code>
5558     *
5559     * @param ownerType the owner of the association.
5560     * @param name the name of the association end to find.
5561     * @return the type of the association end.
5562     */
5563    public static Class getPropertyType(final Class ownerType, final String name)
5564    {
5565        Class type = getNavigableAssociationEndType(ownerType, name);
5566        if (type == null)
5567        {
5568            type = getEmbeddedValueType(ownerType, name);
5569        }
5570        return type;
5571    }
5572
5573    /**
5574     * A private class storing the name and type.
5575     */
5576    protected static final class PropertyType
5577    {
5578        /**
5579         * @param nameIn
5580         * @param typeIn
5581         */
5582        protected PropertyType(final String nameIn, final Class typeIn)
5583        {
5584            this.name = nameIn;
5585            this.type = typeIn;
5586        }
5587
5588        /** PropertyType name */
5589        protected String name;
5590        /** PropertyType type Class */
5591        protected Class type;
5592    }
5593}