Project

General

Profile

« Previous | Next » 

Revision 8d5e5e53

Added by Andreas Müller over 4 years ago

cleanup

View differences:

cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/ErmsImportActivator.java
120 120
			ICdmRepository app = ermsImport.getCdmAppController();
121 121
			ISourceable<?> obj = app.getCommonService().getSourcedObjectByIdInSource(TaxonName.class, "1000027", null);
122 122
			logger.info(obj);
123

  
124
//			//make feature tree
125
//			FeatureTree tree = TreeCreator.flatTree(featureTreeUuid, ermsImportConfigurator.getFeatureMap(), featureKeyList);
126
//			app = ermsImport.getCdmAppController();
127
//			app.getFeatureTreeService().saveOrUpdate(tree);
128 123
		}
129 124
		System.out.println("End import from ("+ source.getDatabase() + ") to " + destination.getDatabase() + "...");
130 125
	}
......
139 134
			ermsExport.doTaxa = doTaxa;
140 135
			ermsExport.doTreeIndex = doTaxa;
141 136
			ermsExport.doRelTaxa = doRelTaxa;
142
//            ermsExport.doInferredSynonyms = doRelTaxa;
143 137
            ermsExport.doDescriptions = doImages;
144 138

  
145 139
			ermsExport.doExport(cdmDB, pesiDestination);
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiExportActivatorEM.java
33 33
	static final ICdmDataSource cdmSource = CdmDestinations.cdm_test_local_mysql_euromed();
34 34

  
35 35
	//database validation status (create, update, validate ...)
36
	static final Source pesiDestination = PesiDestinations.pesi_test_local_CDM_EM2PESI();
37
//	static final Source pesiDestination = PesiDestinations.pesi_test_local_CDM_EM2PESI_2();
36
//	static final Source pesiDestination = PesiDestinations.pesi_test_local_CDM_EM2PESI();
37
	static final Source pesiDestination = PesiDestinations.pesi_test_local_CDM_EM2PESI_2();
38 38

  
39 39
// ****************** ALL *****************************************
40 40

  
41
	boolean deleteAll = false;
42
	DO_REFERENCES doReferences =  DO_REFERENCES.NONE;
41
	boolean deleteAll = true;
42
	DO_REFERENCES doReferences =  DO_REFERENCES.ALL;
43 43
	boolean doTaxa = true;
44
	boolean doPureNames = true;
45
	boolean doTreeIndex = true;
46
	boolean doParentAndBiota = true;
47
	boolean doInferredSynonyms = false;   //no inferred synonyms in E+M
48 44
	boolean doRelTaxa = true;
49
	boolean doAdditionalTaxonSource = false;  //do not exist in E+M
50
    boolean doDescriptions = true;
51
	boolean doEcologyAndLink = true;
45
	boolean doDescriptions = true;
46

  
47
	boolean doPureNames = doTaxa;
48
	boolean doTreeIndex = doTaxa;
49
	boolean doParentAndBiota = doTaxa;
50
    boolean doAdditionalTaxonSource = false;  //do not exist in E+M
51
    boolean doInferredSynonyms = false;   //no inferred synonyms in E+M
52
	boolean doEcologyAndLink = false;   //do not exist in E+M
52 53

  
53 54
// ************************ NONE **************************************** //
54 55

  
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/out/PesiDescriptionExport.java
25 25
import eu.etaxonomy.cdm.io.berlinModel.BerlinModelTransformer;
26 26
import eu.etaxonomy.cdm.io.common.DbExportStateBase;
27 27
import eu.etaxonomy.cdm.io.common.Source;
28
import eu.etaxonomy.cdm.io.common.TdwgAreaProvider;
29 28
import eu.etaxonomy.cdm.io.common.mapping.UndefinedTransformerMethodException;
30 29
import eu.etaxonomy.cdm.io.common.mapping.out.CollectionExportMapping;
31 30
import eu.etaxonomy.cdm.io.common.mapping.out.DbAnnotationMapper;
......
42 41
import eu.etaxonomy.cdm.io.common.mapping.out.DbTextDataMapper;
43 42
import eu.etaxonomy.cdm.io.common.mapping.out.IdMapper;
44 43
import eu.etaxonomy.cdm.io.common.mapping.out.MethodMapper;
45
import eu.etaxonomy.cdm.io.pesi.erms.ErmsTransformer;
46 44
import eu.etaxonomy.cdm.model.common.CdmBase;
47 45
import eu.etaxonomy.cdm.model.common.Extension;
48 46
import eu.etaxonomy.cdm.model.common.ExtensionType;
......
104 102
	private static int countAdditionalSources;
105 103
	private static int countImages;
106 104
	private static int countNotes;
107
	private static int countSourceOfSynonymy;
108 105

  
109 106
	private static int countCommonName;
110 107
	private static int countOccurrence;
......
238 235
		logger.info("AddSrc: " + countAdditionalSources);
239 236
		logger.info("Images: " + countImages);
240 237
		logger.info("Notes: " + countNotes);
241
	    logger.info("Source of Synonymy: " + countSourceOfSynonymy);
242 238
		logger.info("Others: " + countOthers);
243 239

  
244 240
		// Commit transaction
......
315 311
		logger.info("AddSrc: " + countAdditionalSources);
316 312
		logger.info("Images: " + countImages);
317 313
		logger.info("Notes: " + countNotes);
318
		logger.info("Source of Synonymy: " + countSourceOfSynonymy);
319 314
        logger.info("Others: " + countOthers);
320 315

  
321 316
		// Commit transaction
......
371 366
				Distribution distribution = CdmBase.deproxy(element, Distribution.class);
372 367
				MarkerType markerType = getUuidMarkerType(PesiTransformer.uuidMarkerTypeHasNoLastAction, state);
373 368
				distribution.addMarker(Marker.NewInstance(markerType, true));
374
				if (isPesiDistribution(state, distribution)){
369
				if (!isPesiDistribution(state, distribution)){
370
				    logger.debug("Distribution is not PESI distribution: " + distribution.toString());
371
				}else{
375 372
					countDistribution++;
376 373
					try{
377 374
					    success &=occurrenceMapping.invoke(distribution);
......
379 376
					    System.err.println(distribution.getInDescription().getTitleCache());
380 377
					    e.printStackTrace();
381 378
					}
382
				}else{
383
				    logger.warn("Distribution is not PESI distribution");
384 379
				}
385 380
			}else if (isAdditionalTaxonSource(element)){
386 381
				countAdditionalSources++;
......
393 388
			}else if (isPesiNote(element)){
394 389
				countNotes++;
395 390
				success &= notesMapping.invoke(element);
396

  
397
			}else if (isSourceOfSynonymy(element)){
398
                countSourceOfSynonymy++;
399
                if(countSourceOfSynonymy < 2){
400
                    logger.warn("Source of synonymy not yet implemented!");
401
                }
402 391
            }else{
403 392
				countOthers++;
404 393
				String featureTitle = element.getFeature() == null ? "no feature" :element.getFeature().getTitleCache();
......
412 401
		}
413 402
	}
414 403

  
415
    private boolean isSourceOfSynonymy(DescriptionElementBase element) {
416
        if (element.getFeature() == null){
417
            return false;
418
        }else {
419
            return element.getFeature().getUuid().equals(ErmsTransformer.uuidSourceOfSynonymy);
420
        }
421
    }
422

  
423 404
    private boolean isExcludedNote(DescriptionElementBase element) {
424 405
		Integer categoryFk = PesiTransformer.feature2NoteCategoryFk(element.getFeature());
425 406
		//TODO decide where to handle them best (configurator, transformer, single method, ...)
......
433 414
		}
434 415

  
435 416
		//...this may change in future so we keep the following code
436
		Integer key;
437 417
		//area filter
438 418
		NamedArea area = distribution.getArea();
439 419
		if (area == null){
......
442 422
		}else if (area.getUuid().equals(BerlinModelTransformer.euroMedUuid)){
443 423
			//E+M area only holds endemic status information and therefore is not exported to PESI
444 424
			return false;
445
		}else if (area.equals(TdwgAreaProvider.getAreaByTdwgAbbreviation("1"))){
446
			//Europe area never holds status information (may probably be deleted in E+M)
447
			return false;
425
//		}else if (area.equals(TdwgAreaProvider.getAreaByTdwgAbbreviation("1"))){
426
//			//Europe area never holds status information (may probably be deleted in E+M)
427
//			return false;
448 428
//		}else if (area.equals(TdwgArea.getAreaByTdwgAbbreviation("21"))){
449 429
//			//Macaronesia records should not be exported to PESI
450 430
//			return false;
451
//		//TODO exclude Russion areas Rs*, and maybe ohters
431
//		//TODO exclude Russion areas Rs*, and maybe others
452 432

  
453 433
		} else {
454 434
            try {
455 435
				if (state.getTransformer().getKeyByNamedArea(area) == null){
456
					String warning = "Area (%s,%s) not available in PESI transformer for taxon %S: ";
436
					String warning = "Area (%s,%s) not available in PESI transformer for taxon %s: ";
457 437
					TaxonBase<?> taxon =  state.getCurrentTaxon();
458 438
					warning = String.format(warning, area.getTitleCache(), area.getRepresentation(Language.ENGLISH()).getAbbreviatedLabel(),taxon ==null? "-" : taxon.getTitleCache());
459 439
					logger.warn(warning);
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/out/PesiTaxonExport.java
283 283
    				if (nvn.getRank().equals(Rank.KINGDOM())){
284 284
    				    if(taxon.isInstanceOf(Taxon.class)){
285 285
    				        String treeIndex = ((Taxon)taxon).getTaxonNodes().iterator().next().treeIndex();
286
    				        Integer kingdomId = PesiTransformer.pesiKingdomMap.get(nvn.getGenusOrUninomial());
286
    				        Integer kingdomId = PesiTransformer.pesiKingdomId(nvn.getGenusOrUninomial());
287 287
    				        state.getTreeIndexKingdomMap().put(treeIndex, kingdomId);
288 288
    				    }else{
289 289
    				        logger.warn("Kingdom taxon is not of class Taxon but " + taxon.getClass().getSimpleName() + ": " + nvn.getGenusOrUninomial());
......
541 541
        Taxon valuelessTaxon = (Taxon)getTaxonService().find(PesiTransformer.uuidTaxonValuelessEuroMed);
542 542
        if (valuelessTaxon != null){
543 543
            String treeIndex = valuelessTaxon.getTaxonNodes().iterator().next().treeIndex();
544
            Integer kingdomId = PesiTransformer.pesiKingdomMap.get("Plantae");
544
            Integer kingdomId = PesiTransformer.pesiKingdomId("Plantae");
545 545
            state.getTreeIndexKingdomMap().put(treeIndex, kingdomId);
546 546
        }
547 547
        commitTransaction(txStatus);
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/out/PesiTransformer.java
57 57
 * @since 16.02.2010
58 58
 */
59 59
public final class PesiTransformer extends ExportTransformerBase{
60
	private static final Logger logger = Logger.getLogger(PesiTransformer.class);
61 60

  
62
	public static final String AUCT_STRING = "auct.";
61
    private static final Logger logger = Logger.getLogger(PesiTransformer.class);
63 62

  
64
	//source identifiers
65
	public static final int SOURCE_EM = 1;
66
	public static final int SOURCE_FE = 2;
67
	public static final int SOURCE_IF = 3;
68
	public static final int SOURCE_ERMS = 4;
63
	public static final String AUCT_STRING = "auct.";
69 64

  
70 65
	//sourceRefUUIDs
71 66
	public static final UUID uuidSourceRefEuroMed = UUID.fromString("51b3900c-91e0-4cc5-94f3-577a352ca9c4");
......
82 77
	public static final String SOURCE_STR_ERMS = "ERMS";
83 78

  
84 79
	// status keys
85
	public static int QUALITY_STATUS_CHECKED_EDITOR_ERMS_1_1 = 0;
86
	public static int QUALITY_STATUS_ADD_BY_DBMT= 2;
87
	public static int QUALITY_STATUS_CHECKED_EDITOR = 3;
88
	public static int QUALITY_STATUS_EDITED_BY_DBMT = 4;
80
	private static int QUALITY_STATUS_CHECKED_EDITOR_ERMS_1_1 = 0;
81
	private static int QUALITY_STATUS_ADD_BY_DBMT= 2;
82
	private static int QUALITY_STATUS_CHECKED_EDITOR = 3;
83
	private static int QUALITY_STATUS_EDITED_BY_DBMT = 4;
89 84

  
90 85
	// marker type
91 86
	public static final UUID uuidMarkerGuidIsMissing = UUID.fromString("24e70843-05e2-44db-954b-84df0d23ea20");
......
106 101
	public static final UUID uuidExtFauExtraCodes = UUID.fromString("b8c7e77d-9869-4787-bed6-b4b302dbc5f5");
107 102

  
108 103
	// References
109
	public static int REF_ARTICLE_IN_PERIODICAL = 1;
110
	public static int REF_PART_OF_OTHER = 2;
111
	public static int REF_BOOK = 3;
112
	public static int REF_DATABASE = 4;
113
	public static int REF_INFORMAL = 5;
114
	public static int REF_NOT_APPLICABLE = 6;
115
	public static int REF_WEBSITE = 7;
116
	public static int REF_PUBLISHED = 8;
117
	public static int REF_JOURNAL = 9;
104
	private static int REF_ARTICLE_IN_PERIODICAL = 1;
105
	private static int REF_PART_OF_OTHER = 2;
106
	private static int REF_BOOK = 3;
107
	private static int REF_DATABASE = 4;
108
	private static int REF_INFORMAL = 5;
109
	private static int REF_NOT_APPLICABLE = 6;
110
	private static int REF_WEBSITE = 7;
111
	private static int REF_PUBLISHED = 8;
112
	private static int REF_JOURNAL = 9;
118 113
	public static int REF_UNRESOLVED = 10;
119
	public static int REF_PUBLICATION = 11;
114
	private static int REF_PUBLICATION = 11;
120 115
	public static String REF_STR_UNRESOLVED = "unresolved";
121 116

  
122 117

  
123 118
	// NameStatus
124 119
    public static UUID uuidNomStatusTemporaryName = UUID.fromString("aa6ada5a-ca21-4fef-b76f-9ae237e9c4ae");
125 120

  
126
	public static int NAME_ST_NOM_INVAL = 1;
127
	public static int NAME_ST_NOM_ILLEG = 2;
128
	public static int NAME_ST_NOM_NUD = 3;
129
	public static int NAME_ST_NOM_REJ = 4;
130
	public static int NAME_ST_NOM_REJ_PROP = 5;
131
	public static int NAME_ST_NOM_UTIQUE_REJ = 6;
132
	public static int NAME_ST_NOM_UTIQUE_REJ_PROP = 7;
133
	public static int NAME_ST_NOM_CONS = 8;
134
	public static int NAME_ST_NOM_CONS_PROP = 9;
135
	public static int NAME_ST_ORTH_CONS = 10;
136
	public static int NAME_ST_ORTH_CONS_PROP = 11;
137
	public static int NAME_ST_NOM_SUPERFL = 12;
138
	public static int NAME_ST_NOM_AMBIG = 13;
139
	public static int NAME_ST_NOM_PROVIS = 14;
140
	public static int NAME_ST_NOM_DUB = 15;
141
	public static int NAME_ST_NOM_NOV = 16;
142
	public static int NAME_ST_NOM_CONFUS = 17;
143
	public static int NAME_ST_NOM_ALTERN = 18;
144
	public static int NAME_ST_COMB_INVAL = 19;
145
	public static int NAME_ST_LEGITIMATE = 20; // PESI specific from here
146
	public static int NAME_ST_COMB_INED = 21;
147
	public static int NAME_ST_COMB_AND_STAT_INED = 22;
148
	public static int NAME_ST_NOM_AND_ORTH_CONS = 23;
149
	public static int NAME_ST_NOM_NOV_INED = 24;
150
	public static int NAME_ST_SP_NOV_INED = 25;
151
	public static int NAME_ST_ALTERNATE_REPRESENTATION = 26;
152
	public static int NAME_ST_TEMPORARY_NAME = 27;
153
	public static int NAME_ST_SPECIES_INQUIRENDA = 28;
121
	private static int NAME_ST_NOM_INVAL = 1;
122
	private static int NAME_ST_NOM_ILLEG = 2;
123
	private static int NAME_ST_NOM_NUD = 3;
124
	private static int NAME_ST_NOM_REJ = 4;
125
	private static int NAME_ST_NOM_REJ_PROP = 5;
126
	private static int NAME_ST_NOM_UTIQUE_REJ = 6;
127
	private static int NAME_ST_NOM_UTIQUE_REJ_PROP = 7;
128
	private static int NAME_ST_NOM_CONS = 8;
129
	private static int NAME_ST_NOM_CONS_PROP = 9;
130
	private static int NAME_ST_ORTH_CONS = 10;
131
	private static int NAME_ST_ORTH_CONS_PROP = 11;
132
	private static int NAME_ST_NOM_SUPERFL = 12;
133
	private static int NAME_ST_NOM_AMBIG = 13;
134
	private static int NAME_ST_NOM_PROVIS = 14;
135
	private static int NAME_ST_NOM_DUB = 15;
136
	private static int NAME_ST_NOM_NOV = 16;
137
	private static int NAME_ST_NOM_CONFUS = 17;
138
	private static int NAME_ST_NOM_ALTERN = 18;
139
	private static int NAME_ST_COMB_INVAL = 19;
140
	private static int NAME_ST_LEGITIMATE = 20; // PESI specific from here
141
	private static int NAME_ST_COMB_INED = 21;
142
	private static int NAME_ST_COMB_AND_STAT_INED = 22;
143
	private static int NAME_ST_NOM_AND_ORTH_CONS = 23;
144
	private static int NAME_ST_NOM_NOV_INED = 24;
145
	private static int NAME_ST_SP_NOV_INED = 25;
146
	private static int NAME_ST_ALTERNATE_REPRESENTATION = 26;
147
	private static int NAME_ST_TEMPORARY_NAME = 27;
148
	private static int NAME_ST_SPECIES_INQUIRENDA = 28;
154 149

  
155 150
	// TaxonStatus
156
	public static int T_STATUS_ACCEPTED = 1;
157
	public static int T_STATUS_SYNONYM = 2;
158
	public static int T_STATUS_PARTIAL_SYN = 3;
159
	public static int T_STATUS_PRO_PARTE_SYN = 4;
160
	public static int T_STATUS_UNRESOLVED = 5;
161
	public static int T_STATUS_ORPHANED = 6;
151
	private static int T_STATUS_ACCEPTED = 1;
152
	private static int T_STATUS_SYNONYM = 2;
153
	private static int T_STATUS_PARTIAL_SYN = 3;
154
	private static int T_STATUS_PRO_PARTE_SYN = 4;
155
	private static int T_STATUS_UNRESOLVED = 5;
156
	private static int T_STATUS_ORPHANED = 6;
162 157
	public static int T_STATUS_UNACCEPTED = 7;
163
	public static int T_STATUS_NOT_ACCEPTED = 8;
158
	private static int T_STATUS_NOT_ACCEPTED = 8;
164 159

  
165 160
	// TypeDesginationStatus //	 -> not a table anymore
166
	public static int TYPE_BY_ORIGINAL_DESIGNATION = 1;
167
	public static int TYPE_BY_SUBSEQUENT_DESIGNATION = 2;
168
	public static int TYPE_BY_MONOTYPY = 3;
169
	public static String TYPE_STR_BY_ORIGINAL_DESIGNATION = "Type by original designation";
170
	public static String TYPE_STR_BY_SUBSEQUENT_DESIGNATION = "Type by subsequent designation";
171
	public static String TYPE_STR_BY_MONOTYPY = "Type by monotypy";
161
	private static int TYPE_BY_ORIGINAL_DESIGNATION = 1;
162
	private static int TYPE_BY_SUBSEQUENT_DESIGNATION = 2;
163
	private static int TYPE_BY_MONOTYPY = 3;
164
	private static String TYPE_STR_BY_ORIGINAL_DESIGNATION = "Type by original designation";
165
	private static String TYPE_STR_BY_SUBSEQUENT_DESIGNATION = "Type by subsequent designation";
166
	private static String TYPE_STR_BY_MONOTYPY = "Type by monotypy";
172 167

  
173 168
	// RelTaxonQualifier
174
	public static int IS_BASIONYM_FOR = 1;
175
	public static int IS_LATER_HOMONYM_OF = 2;
176
	public static int IS_REPLACED_SYNONYM_FOR = 3;
177
	public static int IS_VALIDATION_OF = 4;
178
	public static int IS_LATER_VALIDATION_OF = 5;
179
	public static int IS_TYPE_OF = 6;
180
	public static int IS_CONSERVED_TYPE_OF = 7;
181
	public static int IS_REJECTED_TYPE_OF = 8;
182
	public static int IS_FIRST_PARENT_OF = 9;
183
	public static int IS_SECOND_PARENT_OF = 10;
184
	public static int IS_FEMALE_PARENT_OF = 11;
185
	public static int IS_MALE_PARENT_OF = 12;
186
	public static int IS_CONSERVED_AGAINST = 13;
187
	public static int IS_REJECTED_IN_FAVOUR_OF = 14;
188
	public static int IS_TREATED_AS_LATER_HOMONYM_OF = 15;
189
	public static int IS_ORTHOGRAPHIC_VARIANT_OF = 16;
190
	public static int IS_ALTERNATIVE_NAME_FOR = 17;
191
	public static int HAS_SAME_TYPE_AS = 18;
192
	public static int IS_LECTOTYPE_OF = 61;
193
	public static int TYPE_NOT_DESIGNATED = 62;
194
	public static int IS_TAXONOMICALLY_INCLUDED_IN = 101;
169
	private static int IS_BASIONYM_FOR = 1;
170
	private static int IS_LATER_HOMONYM_OF = 2;
171
	private static int IS_REPLACED_SYNONYM_FOR = 3;
172
	private static int IS_VALIDATION_OF = 4;
173
	private static int IS_LATER_VALIDATION_OF = 5;
174
	private static int IS_TYPE_OF = 6;
175
	private static int IS_CONSERVED_TYPE_OF = 7;
176
	private static int IS_REJECTED_TYPE_OF = 8;
177
	private static int IS_FIRST_PARENT_OF = 9;
178
	private static int IS_SECOND_PARENT_OF = 10;
179
	private static int IS_FEMALE_PARENT_OF = 11;
180
	private static int IS_MALE_PARENT_OF = 12;
181
	private static int IS_CONSERVED_AGAINST = 13;
182
	private static int IS_REJECTED_IN_FAVOUR_OF = 14;
183
	private static int IS_TREATED_AS_LATER_HOMONYM_OF = 15;
184
	private static int IS_ORTHOGRAPHIC_VARIANT_OF = 16;
185
	private static int IS_ALTERNATIVE_NAME_FOR = 17;
186
	private static int HAS_SAME_TYPE_AS = 18;
187
	private static int IS_ORIGINAL_SPELLING_FOR = 19;
188
	private static int IS_BLOCKING_NAME_FOR = 20;
189
	private static int IS_LECTOTYPE_OF = 61;
190
	private static int TYPE_NOT_DESIGNATED = 62;
191
	private static int IS_TAXONOMICALLY_INCLUDED_IN = 101;
195 192
	public static int IS_SYNONYM_OF = 102;
196
	public static int IS_MISAPPLIED_NAME_FOR = 103;
197
	public static int IS_PRO_PARTE_SYNONYM_OF = 104;
198
	public static int IS_PARTIAL_SYNONYM_OF = 105;
199
	public static int IS_HETEROTYPIC_SYNONYM_OF = 106;
200
	public static int IS_HOMOTYPIC_SYNONYM_OF = 107;
201
	public static int IS_PRO_PARTE_AND_HOMOTYPIC_SYNONYM_OF = 201;
202
	public static int IS_PRO_PARTE_AND_HETEROTYPIC_SYNONYM_OF = 202;
203
	public static int IS_PARTIAL_AND_HOMOTYPIC_SYNONYM_OF = 203;
204
	public static int IS_PARTIAL_AND_HETEROTYPIC_SYNONYM_OF = 204;
205
	public static int IS_INFERRED_EPITHET_FOR = 301;
206
	public static int IS_INFERRED_GENUS_FOR = 302;
207
	public static int IS_POTENTIAL_COMBINATION_FOR = 303;
193
	private static int IS_MISAPPLIED_NAME_FOR = 103;
194
	private static int IS_PRO_PARTE_SYNONYM_OF = 104;
195
	private static int IS_PARTIAL_SYNONYM_OF = 105;
196
	private static int IS_HETEROTYPIC_SYNONYM_OF = 106;
197
	private static int IS_HOMOTYPIC_SYNONYM_OF = 107;
198
	private static int IS_PRO_PARTE_MISAPPLIED_NAME_FOR = 108;
199
	private static int IS_PRO_PARTE_AND_HOMOTYPIC_SYNONYM_OF = 201;
200
	private static int IS_PRO_PARTE_AND_HETEROTYPIC_SYNONYM_OF = 202;
201
	private static int IS_PARTIAL_AND_HOMOTYPIC_SYNONYM_OF = 203;
202
	private static int IS_PARTIAL_AND_HETEROTYPIC_SYNONYM_OF = 204;
203
	private static int IS_INFERRED_EPITHET_FOR = 301;
204
	private static int IS_INFERRED_GENUS_FOR = 302;
205
	private static int IS_POTENTIAL_COMBINATION_FOR = 303;
208 206

  
209 207
	//namespaces
210 208
	public static String STR_NAMESPACE_NOMINAL_TAXON = "Nominal taxon from TAX_ID:";
......
213 211
	public static String STR_NAMESPACE_POTENTIAL_COMBINATION = "Potential combination from TAX_ID:";
214 212

  
215 213
	// Kingdoms
216
	public static final int KINGDOM_NULL = 0;
217
	public static final int KINGDOM_ANIMALIA = 2;
218
	public static final int KINGDOM_PLANTAE = 3;
219
	public static final int KINGDOM_FUNGI = 4;
220
	public static final int KINGDOM_PROTOZOA = 5;
221
	public static final int KINGDOM_BACTERIA = 6;
222
	public static final int KINGDOM_CHROMISTA = 7;
214
	private static final int KINGDOM_NULL = 0;
215
	private static final int KINGDOM_ANIMALIA = 2;
216
	private static final int KINGDOM_PLANTAE = 3;
217
	private static final int KINGDOM_FUNGI = 4;
218
	private static final int KINGDOM_PROTOZOA = 5;
219
	private static final int KINGDOM_BACTERIA = 6;
220
	private static final int KINGDOM_CHROMISTA = 7;
223 221

  
224 222
	// Kingdoms
225
	public static Map<String, Integer> pesiKingdomMap = new HashMap<>();
223
	private static Map<String, Integer> pesiKingdomMap = new HashMap<>();
226 224

  
227 225
	//Kingdom title
228
    public static String KINGDOM_PLANTAE_STRING = "Plantae";
229
    public static String KINGDOM_FUNGI_STRING = "Fungi";
230
    public static String KINGDOM_PROTOZOA_STRING = "Protozoa";
231
    public static String kINGDOM_BACTERIA_STRING = "Bacteria";
232
    public static String KINGDOM_CHROMISTA_STRING = "Chromista";
226
    private static String KINGDOM_PLANTAE_STRING = "Plantae";
227
    private static String KINGDOM_FUNGI_STRING = "Fungi";
228
    private static String KINGDOM_PROTOZOA_STRING = "Protozoa";
229
    private static String kINGDOM_BACTERIA_STRING = "Bacteria";
230
    private static String KINGDOM_CHROMISTA_STRING = "Chromista";
233 231

  
234 232
	//ranks of all kingdoms
235
    public static int Kingdom = 10;
236
    public static int Subkingdom = 20;
237
    public static int Phylum = 30;  //Phylum and Division is same (#8541) according to ICNAFP
238
    public static int Division = 30;
239
    public static int Subphylum = 40;  //See above comment
240
    public static int Subdivision = 40;
241
    public static int Class = 60;
242
    public static int Subclass = 70;
243
    public static int Order = 100;
244
    public static int Suborder = 110;
245
    public static int Family = 140;
246
    public static int Subfamily = 150;
247
    public static int Tribe = 160;
248
    public static int Subtribe = 170;
249
    public static int Genus = 180;
250
    public static int Subgenus = 190;
251
    public static int Species =220;
252
    public static int Subspecies = 230;
253
    public static int Variety = 240;
254
    public static int Forma = 260;
233
    private static int Kingdom = 10;
234
    private static int Subkingdom = 20;
235
    private static int Phylum = 30;  //Phylum and Division is same (#8541) according to ICNAFP
236
    private static int Division = 30;
237
    private static int Subphylum = 40;  //See above comment
238
    private static int Subdivision = 40;
239
    private static int Class = 60;
240
    private static int Subclass = 70;
241
    private static int Order = 100;
242
    private static int Suborder = 110;
243
    private static int Family = 140;
244
    private static int Subfamily = 150;
245
    private static int Tribe = 160;
246
    private static int Subtribe = 170;
247
    private static int Genus = 180;
248
    private static int Subgenus = 190;
249
    private static int Species =220;
250
    private static int Subspecies = 230;
251
    private static int Variety = 240;
252
    private static int Forma = 260;
255 253

  
256 254
    //ranks of some kingdoms
257
    public static int Infrakingdom = 25; //2,3,5,7
258
    public static int Infraphylum = 45;  //2,7
259
    public static int Superclass = 50;   //2,5,6,7
260
    public static int Infraclass = 80;   //2,5,6,7
261
    public static int Superorder = 90;   //2,3,5,6,7
262
    public static int Infraorder = 120;  //2,5,6,7
263
    public static int Superfamily = 130; //2,5,6,7
264
    public static int Bot_Section = 200;    //3,4,7
265
    public static int Bot_Subsection = 210; //3,4,7
266
    public static int Subvariety = 250;     //2,3,4,7
267
    public static int Subform = 270;        //2,3,4
268
    public static int Forma_spec = 275;     //3,4,5,7
255
    private static int Infrakingdom = 25; //2,3,5,7
256
    private static int Infraphylum = 45;  //2,7
257
    private static int Superclass = 50;   //2,5,6,7
258
    private static int Infraclass = 80;   //2,5,6,7
259
    private static int Superorder = 90;   //2,3,5,6,7
260
    private static int Infraorder = 120;  //2,5,6,7
261
    private static int Superfamily = 130; //2,5,6,7
262
    private static int Bot_Section = 200;    //3,4,7
263
    private static int Bot_Subsection = 210; //3,4,7
264
    private static int Subvariety = 250;     //2,3,4,7
265
    private static int Subform = 270;        //2,3,4
266
    private static int Forma_spec = 275;     //3,4,5,7
269 267

  
270 268
    // Animalia Ranks
271
	public static int Superphylum = 28;
272
	public static int Subterclass = 85;
273
	public static int Parvorder = 122;
274
	public static int Animalia_Section = 125;
275
	public static int Animalia_Subsection = 127;
276
	public static int Natio = 235;
269
	private static int Superphylum = 28;
270
	private static int Subterclass = 85;
271
	private static int Parvorder = 122;
272
	private static int Animalia_Section = 125;
273
	private static int Animalia_Subsection = 127;
274
	private static int Natio = 235;
277 275

  
278 276
	// Plantae Ranks
279
	public static int Series = 212;
280
	public static int Subseries	= 214;
281
	public static int Aggregate	= 216;
282
	public static int Coll_Species = 218;
283
	public static int Grex = 225;
284
	public static int Proles = 232;
285
	public static int Race = 234;
286
	public static int Convarietas = 236;
287
	public static int Taxa_infragen = 280;
288
	public static int Taxa_infraspec = 285;
277
	private static int Series = 212;
278
	private static int Subseries	= 214;
279
	private static int Aggregate	= 216;
280
	private static int Coll_Species = 218;
281
	private static int Grex = 225;
282
	private static int Proles = 232;
283
	private static int Race = 234;
284
	private static int Convarietas = 236;
285
	private static int Taxa_infragen = 280;
286
	private static int Taxa_infraspec = 285;
289 287

  
290 288

  
291 289
	//NoteCategory
292
	public static int NoteCategory_description = 1;
290
	private static int NoteCategory_description = 1;
293 291
	public static int NoteCategory_ecology = 4;
294
	public static int NoteCategory_phenology	= 5;
295
	public static int NoteCategory_general_distribution_euromed = 10;
296
	public static int NoteCategory_general_distribution_world = 11;
297
	public static int NoteCategory_Common_names = 12;
298
	public static int NoteCategory_Occurrence = 13;
299
	public static int NoteCategory_Maps =14;
300
	public static int NoteCategory_Link_to_maps = 20;
301
	public static int NoteCategory_Link_to_images = 21;
292
	private static int NoteCategory_phenology	= 5;
293
	private static int NoteCategory_general_distribution_euromed = 10;
294
	private static int NoteCategory_general_distribution_world = 11;
295
	private static int NoteCategory_Common_names = 12;
296
	private static int NoteCategory_Occurrence = 13;
297
	private static int NoteCategory_Maps =14;
298
	private static int NoteCategory_Link_to_maps = 20;
299
	private static int NoteCategory_Link_to_images = 21;
302 300
	public static int NoteCategory_Link_to_taxonomy = 22;
303 301
	public static int NoteCategory_Link_to_general_information = 23;
304 302
	public static int NoteCategory_undefined_link = 24;
305
	public static int NoteCategory_Editor_Braces = 249;
306
	public static int NoteCategory_Editor_Brackets = 250;
307
	public static int NoteCategory_Editor_Parenthesis = 251;
308
	public static int NoteCategory_Inedited = 252;
309
	public static int NoteCategory_Comments_on_editing_process = 253;
310
	public static int NoteCategory_Publication_date = 254;
311
	public static int NoteCategory_Morphology = 255;
312
	public static int NoteCategory_Acknowledgments = 257;
313
	public static int NoteCategory_Original_publication = 258;
314
	public static int NoteCategory_Type_locality	= 259;
315
	public static int NoteCategory_Environment = 260;
316
	public static int NoteCategory_Spelling = 261;
317
	public static int NoteCategory_Systematics = 262;
318
	public static int NoteCategory_Remark = 263;
319
	public static int NoteCategory_Additional_information = 266;
320
	public static int NoteCategory_Status = 267;
321
	public static int NoteCategory_Nomenclature = 268;
322
	public static int NoteCategory_Homonymy = 269;
323
	public static int NoteCategory_Taxonomy = 270;
324
	public static int NoteCategory_Taxonomic_status = 272;
325
	public static int NoteCategory_Authority	= 273;
326
	public static int NoteCategory_Identification = 274;
327
	public static int NoteCategory_Validity = 275;
328
	public static int NoteCategory_Classification = 276;
329
	public static int NoteCategory_Distribution = 278;
330
	public static int NoteCategory_Synonymy = 279;
331
	public static int NoteCategory_Habitat = 280;
332
	public static int NoteCategory_Biology = 281;
333
	public static int NoteCategory_Diagnosis	= 282;
334
	public static int NoteCategory_Host = 283;
335
	public static int NoteCategory_Note = 284;
336
	public static int NoteCategory_Rank = 285;
337
	public static int NoteCategory_Taxonomic_Remark = 286;
338
	public static int NoteCategory_Taxonomic_Remarks = 287;
339
	public static int NoteCategory_Etymology = 288;
340
    public static int NoteCategory_Type_species = 289;
341
	public static int NoteCategory_Depth_Range = 290;
342
	public static int NoteCategory_Grammatical_Gender = 291;
343
	public static int NoteCategory_Introduced_Species_Remark = 292;
344
	public static int NoteCategory_Alien_Species = 293;
345
	public static int NoteCategory_Dimensions = 294;
346
    public static int NoteCategory_New_Combination = 295;
347
    public static int NoteCategory_Original_Combination = 296;
348

  
349
	public static int NoteCategory_Conservation_Status= 301;
350
	public static int NoteCategory_Use = 302;
351
	public static int NoteCategory_Comments = 303;
352
    public static int NoteCategory_Diet = 304;
353
    public static int NoteCategory_Fossil_Range = 305;
354
    public static int NoteCategory_Original_Description = 306;
355
    public static int NoteCategory_Reproduction = 307;
356
    public static int NoteCategory_Specimen = 308;
357
    public static int NoteCategory_Type_Specimen = 309;
358
    public static int NoteCategory_Type_Material = 310;
359
    public static int NoteCategory_Editors_Comment = 311;
360
    public static int NoteCategory_Syntype = 312;
303
	private static int NoteCategory_Editor_Braces = 249;
304
	private static int NoteCategory_Editor_Brackets = 250;
305
	private static int NoteCategory_Editor_Parenthesis = 251;
306
	private static int NoteCategory_Inedited = 252;
307
	private static int NoteCategory_Comments_on_editing_process = 253;
308
	private static int NoteCategory_Publication_date = 254;
309
	private static int NoteCategory_Morphology = 255;
310
	private static int NoteCategory_Acknowledgments = 257;
311
	private static int NoteCategory_Original_publication = 258;
312
	private static int NoteCategory_Type_locality	= 259;
313
	private static int NoteCategory_Environment = 260;
314
	private static int NoteCategory_Spelling = 261;
315
	private static int NoteCategory_Systematics = 262;
316
	private static int NoteCategory_Remark = 263;
317
	private static int NoteCategory_Additional_information = 266;
318
	private static int NoteCategory_Status = 267;
319
	private static int NoteCategory_Nomenclature = 268;
320
	private static int NoteCategory_Homonymy = 269;
321
	private static int NoteCategory_Taxonomy = 270;
322
	private static int NoteCategory_Taxonomic_status = 272;
323
	private static int NoteCategory_Authority	= 273;
324
	private static int NoteCategory_Identification = 274;
325
	private static int NoteCategory_Validity = 275;
326
	private static int NoteCategory_Classification = 276;
327
	private static int NoteCategory_Distribution = 278;
328
	private static int NoteCategory_Synonymy = 279;
329
	private static int NoteCategory_Habitat = 280;
330
	private static int NoteCategory_Biology = 281;
331
	private static int NoteCategory_Diagnosis	= 282;
332
	private static int NoteCategory_Host = 283;
333
	private static int NoteCategory_Note = 284;
334
	private static int NoteCategory_Rank = 285;
335
	private static int NoteCategory_Taxonomic_Remark = 286;
336
	private static int NoteCategory_Taxonomic_Remarks = 287;
337
	private static int NoteCategory_Etymology = 288;
338
    private static int NoteCategory_Type_species = 289;
339
	private static int NoteCategory_Depth_Range = 290;
340
	private static int NoteCategory_Grammatical_Gender = 291;
341
	private static int NoteCategory_Introduced_Species_Remark = 292;
342
	private static int NoteCategory_Alien_Species = 293;
343
	private static int NoteCategory_Dimensions = 294;
344
    private static int NoteCategory_New_Combination = 295;
345
    private static int NoteCategory_Original_Combination = 296;
346

  
347
	private static int NoteCategory_Conservation_Status= 301;
348
	private static int NoteCategory_Use = 302;
349
	private static int NoteCategory_Comments = 303;
350
    private static int NoteCategory_Diet = 304;
351
    private static int NoteCategory_Fossil_Range = 305;
352
    private static int NoteCategory_Original_Description = 306;
353
    private static int NoteCategory_Reproduction = 307;
354
    private static int NoteCategory_Specimen = 308;
355
    private static int NoteCategory_Type_Specimen = 309;
356
    private static int NoteCategory_Type_Material = 310;
357
    private static int NoteCategory_Editors_Comment = 311;
358
    private static int NoteCategory_Syntype = 312;
361 359

  
362 360
	// FossilStatus
363
	public static int FOSSILSTATUS_RECENT_ONLY = 1;
364
	public static int FOSSILSTATUS_FOSSIL_ONLY = 2;
365
	public static int FOSSILSTATUS_RECENT_FOSSIL = 3;
361
	private static int FOSSILSTATUS_RECENT_ONLY = 1;
362
	private static int FOSSILSTATUS_FOSSIL_ONLY = 2;
363
	private static int FOSSILSTATUS_RECENT_FOSSIL = 3;
366 364
	public static String STR_FOSSIL_ONLY = "fossil only";  //still used for Index Fungorum
367 365

  
368 366
	// SourceUse
369
	public static int ORIGINAL_DESCRIPTION = 1;
370
	public static int BASIS_OF_RECORD = 2;
371
	public static int ADDITIONAL_SOURCE = 3;
372
	public static int SOURCE_OF_SYNONYMY = 4;
373
	public static int REDESCRIPTION = 5;
374
	public static int NEW_COMBINATION_REFERENCE = 6;
375
	public static int STATUS_SOURCE = 7;
367
	private static int ORIGINAL_DESCRIPTION = 1;
368
	private static int BASIS_OF_RECORD = 2;
369
	private static int ADDITIONAL_SOURCE = 3;
370
	private static int SOURCE_OF_SYNONYMY = 4;
371
	private static int REDESCRIPTION = 5;
372
	private static int NEW_COMBINATION_REFERENCE = 6;
373
	private static int STATUS_SOURCE = 7;
376 374
	public static int NOMENCLATURAL_REFERENCE = 8;
377 375
	public static String STR_NOMENCLATURAL_REFERENCE = "nomenclatural reference";
378 376

  
379 377
	// Area
380
	public static int AREA_EAST_AEGEAN_ISLANDS = 1;
381
	public static int AREA_GREEK_EAST_AEGEAN_ISLANDS = 2;
382
	public static int AREA_TURKISH_EAST_AEGEAN_ISLANDS = 3;
383
	public static int AREA_ALBANIA = 4;
384
	public static int AREA_AUSTRIA_WITH_LIECHTENSTEIN = 5;
385
	public static int AREA_AUSTRIA = 6;
386
	public static int AREA_LIECHTENSTEIN = 7;
387
	public static int AREA_AZORES = 8;
388
	public static int AREA_CORVO = 9;
389
	public static int AREA_FAIAL = 10;
390
	public static int AREA_GRACIOSA = 11;
391
	public static int AREA_SAO_JORGE = 12;
392
	public static int AREA_FLORES = 13;
393
	public static int AREA_SAO_MIGUEL = 14;
394
	public static int AREA_PICO = 15;
395
	public static int AREA_SANTA_MARIA = 16;
396
	public static int AREA_TERCEIRA = 17;
397
	public static int AREA_BELGIUM_WITH_LUXEMBOURG = 18;
398
	public static int AREA_BELGIUM = 19;
399
	public static int AREA_LUXEMBOURG = 20;
400
	public static int AREA_BOSNIA_HERZEGOVINA = 21;
401
	public static int AREA_BALEARES = 22;
402
	public static int AREA_IBIZA_WITH_FORMENTERA = 23;
403
	public static int AREA_MALLORCA = 24;
404
	public static int AREA_MENORCA = 25;
405
	public static int AREA_GREAT_BRITAIN = 26;
406
	public static int AREA_BALTIC_STATES_ESTONIA_LATVIA_LITHUANIA_AND_KALININGRAD_REGION = 27;
407
	public static int AREA_BULGARIA = 28;
408
	public static int AREA_BELARUS = 29;
409
	public static int AREA_CANARY_ISLANDS = 30;
410
	public static int AREA_GRAN_CANARIA = 31;
411
	public static int AREA_FUERTEVENTURA_WITH_LOBOS = 32;
412
	public static int AREA_GOMERA = 33;
413
	public static int AREA_HIERRO = 34;
414
	public static int AREA_LANZAROTE_WITH_GRACIOSA = 35;
415
	public static int AREA_LA_PALMA = 36;
416
	public static int AREA_TENERIFE = 37;
417
	public static int AREA_MONTENEGRO = 38;
418
	public static int AREA_CORSE = 39;
419
	public static int AREA_CRETE_WITH_KARPATHOS_KASOS_AND_GAVDHOS = 40;
420
	public static int AREA_CZECH_REPUBLIC = 41;
421
	public static int AREA_CROATIA = 42;
422
	public static int AREA_CYPRUS = 43;
423
	public static int AREA_FORMER_CZECHOSLOVAKIA = 44;
424
	public static int AREA_DENMARK_WITH_BORNHOLM = 45;
425
	public static int AREA_ESTONIA = 46;
426
	public static int AREA_FAROE_ISLANDS = 47;
427
	public static int AREA_FINLAND_WITH_AHVENANMAA = 48;
428
	public static int AREA_FRANCE = 49;
429
	public static int AREA_CHANNEL_ISLANDS = 50;
430
	public static int AREA_FRENCH_MAINLAND = 51;
431
	public static int AREA_MONACO = 52;
432
	public static int AREA_GERMANY = 53;
433
	public static int AREA_GREECE_WITH_CYCLADES_AND_MORE_ISLANDS = 54;
434
	public static int AREA_IRELAND = 55;
435
	public static int AREA_REPUBLIC_OF_IRELAND = 56;
436
	public static int AREA_NORTHERN_IRELAND = 57;
437
	public static int AREA_SWITZERLAND = 58;
438
	public static int AREA_NETHERLANDS = 59;
439
	public static int AREA_SPAIN = 60;
440
	public static int AREA_ANDORRA = 61;
441
	public static int AREA_GIBRALTAR = 62;
442
	public static int AREA_KINGDOM_OF_SPAIN = 63;
443
	public static int AREA_HUNGARY = 64;
444
	public static int AREA_ICELAND = 65;
445
	public static int AREA_ITALY = 66;
446
	public static int AREA_ITALIAN_MAINLAND = 67;
447
	public static int AREA_SAN_MARINO = 68;
448
	public static int AREA_FORMER_JUGOSLAVIA = 69;
449
	public static int AREA_LATVIA = 70;
450
	public static int AREA_LITHUANIA = 71;
451
	public static int AREA_PORTUGUESE_MAINLAND = 72;
452
	public static int AREA_MADEIRA_ARCHIPELAGO = 73;
453
	public static int AREA_DESERTAS = 74;
454
	public static int AREA_MADEIRA = 75;
455
	public static int AREA_PORTO_SANTO = 76;
456
	public static int AREA_THE_FORMER_JUGOSLAV_REPUBLIC_OF_MAKEDONIJA = 77;
457
	public static int AREA_MOLDOVA = 78;
458
	public static int AREA_NORWEGIAN_MAINLAND = 79;
459
	public static int AREA_POLAND = 80;
460
	public static int AREA_THE_RUSSIAN_FEDERATION = 81;
461
	public static int AREA_NOVAYA_ZEMLYA_AND_FRANZ_JOSEPH_LAND = 82;
462
	public static int AREA_CENTRAL_EUROPEAN_RUSSIA = 83;
463
	public static int AREA_EASTERN_EUROPEAN_RUSSIA = 84;
464
	public static int AREA_KALININGRAD = 85;
465
	public static int AREA_NORTHERN_EUROPEAN_RUSSIA = 86;
466
	public static int AREA_NORTHWEST_EUROPEAN_RUSSIA = 87;
467
	public static int AREA_SOUTH_EUROPEAN_RUSSIA = 88;
468
	public static int AREA_ROMANIA = 89;
469
	public static int AREA_FORMER_USSR = 90;
470
	public static int AREA_RUSSIA_BALTIC = 91;
471
	public static int AREA_RUSSIA_CENTRAL = 92;
472
	public static int AREA_RUSSIA_SOUTHEAST = 93;
473
	public static int AREA_RUSSIA_NORTHERN = 94;
474
	public static int AREA_RUSSIA_SOUTHWEST = 95;
475
	public static int AREA_SARDEGNA = 96;
476
	public static int AREA_SVALBARD_WITH_BJORNOYA_AND_JAN_MAYEN = 97;
477
	public static int AREA_SELVAGENS_ISLANDS = 98;
478
	public static int AREA_SICILY_WITH_MALTA = 99;
479
	public static int AREA_MALTA = 100;
480
	public static int AREA_SICILY = 101;
481
	public static int AREA_SLOVAKIA = 102;
482
	public static int AREA_SLOVENIA = 103;
483
	public static int AREA_SERBIA_WITH_MONTENEGRO = 104;
484
	public static int AREA_SERBIA_INCLUDING_VOJVODINA_AND_WITH_KOSOVO = 105;
485
	public static int AREA_SWEDEN = 106;
486
	public static int AREA_EUROPEAN_TURKEY = 107;
487
	public static int AREA_UKRAINE_INCLUDING_CRIMEA = 108;
488
	public static int AREA_CRIMEA = 109;
489
	public static int AREA_UKRAINE = 110;
490
	public static int AREA_GREEK_MAINLAND = 111;
491
	public static int AREA_CRETE = 112;
492
	public static int AREA_DODECANESE_ISLANDS = 113;
493
	public static int AREA_CYCLADES_ISLANDS = 114;
494
	public static int AREA_NORTH_AEGEAN_ISLANDS = 115;
495
	public static int AREA_VATICAN_CITY = 116;
496
	public static int AREA_FRANZ_JOSEF_LAND = 117;
497
	public static int AREA_NOVAYA_ZEMLYA = 118;
498
	public static int AREA_AZERBAIJAN_INCLUDING_NAKHICHEVAN = 119;
499
	public static int AREA_AZERBAIJAN = 120;
500
	public static int AREA_NAKHICHEVAN = 121;
501
	public static int AREA_ALGERIA = 122;
502
	public static int AREA_ARMENIA = 123;
503
	public static int AREA_CAUCASUS_REGION = 124;
504
	public static int AREA_EGYPT = 125;
505
	public static int AREA_GEORGIA = 126;
506
	public static int AREA_ISRAEL_JORDAN = 127;
507
	public static int AREA_ISRAEL = 128;
508
	public static int AREA_JORDAN = 129;
509
	public static int AREA_LEBANON = 130;
510
	public static int AREA_LIBYA = 131;
511
	public static int AREA_LEBANON_SYRIA = 132;
512
	public static int AREA_MOROCCO = 133;
513
	public static int AREA_NORTH_CAUCASUS = 134;
514
	public static int AREA_SINAI = 135;
515
	public static int AREA_SYRIA = 136;
516
	public static int AREA_TUNISIA = 137;
517
	public static int AREA_ASIATIC_TURKEY = 138;
518
	public static int AREA_TURKEY = 139;
519
	public static int AREA_NORTHERN_AFRICA = 140;
520
	public static int AREA_AFRO_TROPICAL_REGION = 141;
521
	public static int AREA_AUSTRALIAN_REGION = 142;
522
	public static int AREA_EAST_PALAEARCTIC = 143;
523
	public static int AREA_NEARCTIC_REGION = 144;
524
	public static int AREA_NEOTROPICAL_REGION = 145;
525
	public static int AREA_NEAR_EAST = 146;
526
	public static int AREA_ORIENTAL_REGION = 147;
527
	public static int AREA_EUROPEAN_MARINE_WATERS = 148;
528
	public static int AREA_MEDITERRANEAN_SEA = 149;
529
	public static int AREA_WHITE_SEA = 150;
530
	public static int AREA_NORTH_SEA = 151;
531
	public static int AREA_BALTIC_SEA = 152;
532
	public static int AREA_BLACK_SEA = 153;
533
	public static int AREA_BARENTS_SEA = 154;
534
	public static int AREA_CASPIAN_SEA = 155;
535
	public static int AREA_PORTUGUESE_EXCLUSIVE_ECONOMIC_ZONE = 156;
536
	public static int AREA_BELGIAN_EXCLUSIVE_ECONOMIC_ZONE = 157;
537
	public static int AREA_FRENCH_EXCLUSIVE_ECONOMIC_ZONE = 158;
538
	public static int AREA_ENGLISH_CHANNEL = 159;
539
	public static int AREA_ADRIATIC_SEA = 160;
540
	public static int AREA_BISCAY_BAY = 161;
541
	public static int AREA_DUTCH_EXCLUSIVE_ECONOMIC_ZONE = 162;
542
	public static int AREA_UNITED_KINGDOM_EXCLUSIVE_ECONOMIC_ZONE = 163;
543
	public static int AREA_SPANISH_EXCLUSIVE_ECONOMIC_ZONE = 164;
544
	public static int AREA_EGYPTIAN_EXCLUSIVE_ECONOMIC_ZONE = 165;
545
	public static int AREA_GREEK_EXCLUSIVE_ECONOMIC_ZONE = 166;
546
	public static int AREA_TIRRENO_SEA = 167;
547
	public static int AREA_ICELANDIC_EXCLUSIVE_ECONOMIC_ZONE = 168;
548
	public static int AREA_IRISH_EXCLUSIVE_ECONOMIC_ZONE = 169;
549
	public static int AREA_IRISH_SEA = 170;
550
	public static int AREA_ITALIAN_EXCLUSIVE_ECONOMIC_ZONE = 171;
551
	public static int AREA_NORWEGIAN_SEA = 172;
552
	public static int AREA_MOROCCAN_EXCLUSIVE_ECONOMIC_ZONE = 173;
553
	public static int AREA_NORWEGIAN_EXCLUSIVE_ECONOMIC_ZONE = 174;
554
	public static int AREA_SKAGERRAK = 175;
555
	public static int AREA_TUNISIAN_EXCLUSIVE_ECONOMIC_ZONE = 176;
556
	public static int AREA_WADDEN_SEA = 177;
557
	public static int AREA_BELT_SEA = 178;
558
	public static int AREA_MARMARA_SEA = 179;
559
	public static int AREA_SEA_OF_AZOV = 180;
560
	public static int AREA_AEGEAN_SEA = 181;
561
	public static int AREA_BULGARIAN_EXCLUSIVE_ECONOMIC_ZONE = 182;
562
	public static int AREA_SOUTH_BALTIC_PROPER = 183;
563
	public static int AREA_BALTIC_PROPER = 184;
564
	public static int AREA_NORTH_BALTIC_PROPER = 185;
565
	public static int AREA_ARCHIPELAGO_SEA = 186;
566
	public static int AREA_BOTHNIAN_SEA = 187;
567
	public static int AREA_GERMAN_EXCLUSIVE_ECONOMIC_ZONE = 188;
568
	public static int AREA_SWEDISH_EXCLUSIVE_ECONOMIC_ZONE = 189;
569
	public static int AREA_UKRAINIAN_EXCLUSIVE_ECONOMIC_ZONE = 190;
570
	public static int AREA_MADEIRAN_EXCLUSIVE_ECONOMIC_ZONE = 191;
571
	public static int AREA_LEBANESE_EXCLUSIVE_ECONOMIC_ZONE = 192;
572
	public static int AREA_SPANISH_EXCLUSIVE_ECONOMIC_ZONE_MEDITERRANEAN_PART = 193;
573
	public static int AREA_ESTONIAN_EXCLUSIVE_ECONOMIC_ZONE = 194;
574
	public static int AREA_CROATIAN_EXCLUSIVE_ECONOMIC_ZONE = 195;
575
	public static int AREA_BALEAR_SEA = 196;
576
	public static int AREA_TURKISH_EXCLUSIVE_ECONOMIC_ZONE = 197;
577
	public static int AREA_DANISH_EXCLUSIVE_ECONOMIC_ZONE = 198;
578
	public static int AREA_TRANSCAUCASUS = 199;
579

  
580
	public static int AREA_GEORGIA_G = 200;
581
	public static int AREA_ABKHAZIA = 201;
582
	public static int AREA_ADZARIA = 202;
583

  
584
	public static int AREA_UNITED_KINGDOM = 203;
585
	public static int AREA_DENMARK_COUNTRY = 204;
586
	public static int AREA_TURKEY_COUNTRY = 205;
587
	public static int AREA_SPAIN_COUNTRY = 206;
588
	public static int AREA_GREECE_COUNTRY = 207;
589
	public static int AREA_PORTUGAL_COUNTRY = 208;
378
	private static int AREA_EAST_AEGEAN_ISLANDS = 1;
379
	private static int AREA_GREEK_EAST_AEGEAN_ISLANDS = 2;
380
	private static int AREA_TURKISH_EAST_AEGEAN_ISLANDS = 3;
381
	private static int AREA_ALBANIA = 4;
382
	private static int AREA_AUSTRIA_WITH_LIECHTENSTEIN = 5;
383
	private static int AREA_AUSTRIA = 6;
384
	private static int AREA_LIECHTENSTEIN = 7;
385
	private static int AREA_AZORES = 8;
386
	private static int AREA_CORVO = 9;
387
	private static int AREA_FAIAL = 10;
388
	private static int AREA_GRACIOSA = 11;
389
	private static int AREA_SAO_JORGE = 12;
390
	private static int AREA_FLORES = 13;
391
	private static int AREA_SAO_MIGUEL = 14;
392
	private static int AREA_PICO = 15;
393
	private static int AREA_SANTA_MARIA = 16;
394
	private static int AREA_TERCEIRA = 17;
395
	private static int AREA_BELGIUM_WITH_LUXEMBOURG = 18;
396
	private static int AREA_BELGIUM = 19;
397
	private static int AREA_LUXEMBOURG = 20;
398
	private static int AREA_BOSNIA_HERZEGOVINA = 21;
399
	private static int AREA_BALEARES = 22;
400
	private static int AREA_IBIZA_WITH_FORMENTERA = 23;
401
	private static int AREA_MALLORCA = 24;
402
	private static int AREA_MENORCA = 25;
403
	private static int AREA_GREAT_BRITAIN = 26;
404
	private static int AREA_BALTIC_STATES_ESTONIA_LATVIA_LITHUANIA_AND_KALININGRAD_REGION = 27;
405
	private static int AREA_BULGARIA = 28;
406
	private static int AREA_BELARUS = 29;
407
	private static int AREA_CANARY_ISLANDS = 30;
408
	private static int AREA_GRAN_CANARIA = 31;
409
	private static int AREA_FUERTEVENTURA_WITH_LOBOS = 32;
410
	private static int AREA_GOMERA = 33;
411
	private static int AREA_HIERRO = 34;
412
	private static int AREA_LANZAROTE_WITH_GRACIOSA = 35;
413
	private static int AREA_LA_PALMA = 36;
414
	private static int AREA_TENERIFE = 37;
415
	private static int AREA_MONTENEGRO = 38;
416
	private static int AREA_CORSE = 39;
417
	private static int AREA_CRETE_WITH_KARPATHOS_KASOS_AND_GAVDHOS = 40;
418
	private static int AREA_CZECH_REPUBLIC = 41;
419
	private static int AREA_CROATIA = 42;
420
	private static int AREA_CYPRUS = 43;
421
	private static int AREA_FORMER_CZECHOSLOVAKIA = 44;
422
	private static int AREA_DENMARK_WITH_BORNHOLM = 45;
423
	private static int AREA_ESTONIA = 46;
424
	private static int AREA_FAROE_ISLANDS = 47;
425
	private static int AREA_FINLAND_WITH_AHVENANMAA = 48;
426
	private static int AREA_FRANCE = 49;
427
	private static int AREA_CHANNEL_ISLANDS = 50;
428
	private static int AREA_FRENCH_MAINLAND = 51;
429
	private static int AREA_MONACO = 52;
430
	private static int AREA_GERMANY = 53;
431
	private static int AREA_GREECE_WITH_CYCLADES_AND_MORE_ISLANDS = 54;
432
	private static int AREA_IRELAND = 55;
433
	private static int AREA_REPUBLIC_OF_IRELAND = 56;
434
	private static int AREA_NORTHERN_IRELAND = 57;
435
	private static int AREA_SWITZERLAND = 58;
436
	private static int AREA_NETHERLANDS = 59;
437
	private static int AREA_SPAIN = 60;
438
	private static int AREA_ANDORRA = 61;
439
	private static int AREA_GIBRALTAR = 62;
440
	private static int AREA_KINGDOM_OF_SPAIN = 63;
441
	private static int AREA_HUNGARY = 64;
442
	private static int AREA_ICELAND = 65;
443
	private static int AREA_ITALY = 66;
444
	private static int AREA_ITALIAN_MAINLAND = 67;
445
	private static int AREA_SAN_MARINO = 68;
446
	private static int AREA_FORMER_JUGOSLAVIA = 69;
447
	private static int AREA_LATVIA = 70;
448
	private static int AREA_LITHUANIA = 71;
449
	private static int AREA_PORTUGUESE_MAINLAND = 72;
450
	private static int AREA_MADEIRA_ARCHIPELAGO = 73;
451
	private static int AREA_DESERTAS = 74;
452
	private static int AREA_MADEIRA = 75;
453
	private static int AREA_PORTO_SANTO = 76;
454
	private static int AREA_THE_FORMER_JUGOSLAV_REPUBLIC_OF_MAKEDONIJA = 77;
455
	private static int AREA_MOLDOVA = 78;
456
	private static int AREA_NORWEGIAN_MAINLAND = 79;
457
	private static int AREA_POLAND = 80;
458
	private static int AREA_THE_RUSSIAN_FEDERATION = 81;
459
	private static int AREA_NOVAYA_ZEMLYA_AND_FRANZ_JOSEPH_LAND = 82;
460
	private static int AREA_CENTRAL_EUROPEAN_RUSSIA = 83;
461
	private static int AREA_EASTERN_EUROPEAN_RUSSIA = 84;
462
	private static int AREA_KALININGRAD = 85;
463
	private static int AREA_NORTHERN_EUROPEAN_RUSSIA = 86;
464
	private static int AREA_NORTHWEST_EUROPEAN_RUSSIA = 87;
465
	private static int AREA_SOUTH_EUROPEAN_RUSSIA = 88;
466
	private static int AREA_ROMANIA = 89;
467
	private static int AREA_FORMER_USSR = 90;
468
	private static int AREA_RUSSIA_BALTIC = 91;
469
	private static int AREA_RUSSIA_CENTRAL = 92;
470
	private static int AREA_RUSSIA_SOUTHEAST = 93;
471
	private static int AREA_RUSSIA_NORTHERN = 94;
472
	private static int AREA_RUSSIA_SOUTHWEST = 95;
473
	private static int AREA_SARDEGNA = 96;
474
	private static int AREA_SVALBARD_WITH_BJORNOYA_AND_JAN_MAYEN = 97;
475
	private static int AREA_SELVAGENS_ISLANDS = 98;
476
	private static int AREA_SICILY_WITH_MALTA = 99;
477
	private static int AREA_MALTA = 100;
478
	private static int AREA_SICILY = 101;
479
	private static int AREA_SLOVAKIA = 102;
480
	private static int AREA_SLOVENIA = 103;
481
	private static int AREA_SERBIA_WITH_MONTENEGRO = 104;
482
	private static int AREA_SERBIA_INCLUDING_VOJVODINA_AND_WITH_KOSOVO = 105;
483
	private static int AREA_SWEDEN = 106;
484
	private static int AREA_EUROPEAN_TURKEY = 107;
485
	private static int AREA_UKRAINE_INCLUDING_CRIMEA = 108;
486
	private static int AREA_CRIMEA = 109;
487
	private static int AREA_UKRAINE = 110;
488
	private static int AREA_GREEK_MAINLAND = 111;
489
	private static int AREA_CRETE = 112;
490
	private static int AREA_DODECANESE_ISLANDS = 113;
491
	private static int AREA_CYCLADES_ISLANDS = 114;
492
	private static int AREA_NORTH_AEGEAN_ISLANDS = 115;
493
	private static int AREA_VATICAN_CITY = 116;
494
	private static int AREA_FRANZ_JOSEF_LAND = 117;
495
	private static int AREA_NOVAYA_ZEMLYA = 118;
496
	private static int AREA_AZERBAIJAN_INCLUDING_NAKHICHEVAN = 119;
497
	private static int AREA_AZERBAIJAN = 120;
498
	private static int AREA_NAKHICHEVAN = 121;
499
	private static int AREA_ALGERIA = 122;
500
	private static int AREA_ARMENIA = 123;
501
	private static int AREA_CAUCASUS_REGION = 124;
502
	private static int AREA_EGYPT = 125;
503
	private static int AREA_GEORGIA = 126;
504
	private static int AREA_ISRAEL_JORDAN = 127;
505
	private static int AREA_ISRAEL = 128;
506
	private static int AREA_JORDAN = 129;
507
	private static int AREA_LEBANON = 130;
508
	private static int AREA_LIBYA = 131;
509
	private static int AREA_LEBANON_SYRIA = 132;
510
	private static int AREA_MOROCCO = 133;
511
	private static int AREA_NORTH_CAUCASUS = 134;
512
	private static int AREA_SINAI = 135;
513
	private static int AREA_SYRIA = 136;
514
	private static int AREA_TUNISIA = 137;
515
	private static int AREA_ASIATIC_TURKEY = 138;
516
	private static int AREA_TURKEY = 139;
517
	private static int AREA_NORTHERN_AFRICA = 140;
518
	private static int AREA_AFRO_TROPICAL_REGION = 141;
519
	private static int AREA_AUSTRALIAN_REGION = 142;
520
	private static int AREA_EAST_PALAEARCTIC = 143;
521
	private static int AREA_NEARCTIC_REGION = 144;
522
	private static int AREA_NEOTROPICAL_REGION = 145;
523
	private static int AREA_NEAR_EAST = 146;
524
	private static int AREA_ORIENTAL_REGION = 147;
525
	private static int AREA_EUROPEAN_MARINE_WATERS = 148;
526
	private static int AREA_MEDITERRANEAN_SEA = 149;
527
	private static int AREA_WHITE_SEA = 150;
528
	private static int AREA_NORTH_SEA = 151;
529
	private static int AREA_BALTIC_SEA = 152;
530
	private static int AREA_BLACK_SEA = 153;
531
	private static int AREA_BARENTS_SEA = 154;
532
	private static int AREA_CASPIAN_SEA = 155;
533
	private static int AREA_PORTUGUESE_EXCLUSIVE_ECONOMIC_ZONE = 156;
534
	private static int AREA_BELGIAN_EXCLUSIVE_ECONOMIC_ZONE = 157;
535
	private static int AREA_FRENCH_EXCLUSIVE_ECONOMIC_ZONE = 158;
536
	private static int AREA_ENGLISH_CHANNEL = 159;
537
	private static int AREA_ADRIATIC_SEA = 160;
538
	private static int AREA_BISCAY_BAY = 161;
539
	private static int AREA_DUTCH_EXCLUSIVE_ECONOMIC_ZONE = 162;
540
	private static int AREA_UNITED_KINGDOM_EXCLUSIVE_ECONOMIC_ZONE = 163;
541
	private static int AREA_SPANISH_EXCLUSIVE_ECONOMIC_ZONE = 164;
542
	private static int AREA_EGYPTIAN_EXCLUSIVE_ECONOMIC_ZONE = 165;
543
	private static int AREA_GREEK_EXCLUSIVE_ECONOMIC_ZONE = 166;
544
	private static int AREA_TIRRENO_SEA = 167;
545
	private static int AREA_ICELANDIC_EXCLUSIVE_ECONOMIC_ZONE = 168;
546
	private static int AREA_IRISH_EXCLUSIVE_ECONOMIC_ZONE = 169;
547
	private static int AREA_IRISH_SEA = 170;
548
	private static int AREA_ITALIAN_EXCLUSIVE_ECONOMIC_ZONE = 171;
549
	private static int AREA_NORWEGIAN_SEA = 172;
550
	private static int AREA_MOROCCAN_EXCLUSIVE_ECONOMIC_ZONE = 173;
551
	private static int AREA_NORWEGIAN_EXCLUSIVE_ECONOMIC_ZONE = 174;
552
	private static int AREA_SKAGERRAK = 175;
553
	private static int AREA_TUNISIAN_EXCLUSIVE_ECONOMIC_ZONE = 176;
554
	private static int AREA_WADDEN_SEA = 177;
555
	private static int AREA_BELT_SEA = 178;
556
	private static int AREA_MARMARA_SEA = 179;
557
	private static int AREA_SEA_OF_AZOV = 180;
558
	private static int AREA_AEGEAN_SEA = 181;
559
	private static int AREA_BULGARIAN_EXCLUSIVE_ECONOMIC_ZONE = 182;
560
	private static int AREA_SOUTH_BALTIC_PROPER = 183;
561
	private static int AREA_BALTIC_PROPER = 184;
562
	private static int AREA_NORTH_BALTIC_PROPER = 185;
563
	private static int AREA_ARCHIPELAGO_SEA = 186;
564
	private static int AREA_BOTHNIAN_SEA = 187;
565
	private static int AREA_GERMAN_EXCLUSIVE_ECONOMIC_ZONE = 188;
566
	private static int AREA_SWEDISH_EXCLUSIVE_ECONOMIC_ZONE = 189;
567
	private static int AREA_UKRAINIAN_EXCLUSIVE_ECONOMIC_ZONE = 190;
568
	private static int AREA_MADEIRAN_EXCLUSIVE_ECONOMIC_ZONE = 191;
569
	private static int AREA_LEBANESE_EXCLUSIVE_ECONOMIC_ZONE = 192;
570
	private static int AREA_SPANISH_EXCLUSIVE_ECONOMIC_ZONE_MEDITERRANEAN_PART = 193;
571
	private static int AREA_ESTONIAN_EXCLUSIVE_ECONOMIC_ZONE = 194;
572
	private static int AREA_CROATIAN_EXCLUSIVE_ECONOMIC_ZONE = 195;
573
	private static int AREA_BALEAR_SEA = 196;
574
	private static int AREA_TURKISH_EXCLUSIVE_ECONOMIC_ZONE = 197;
575
	private static int AREA_DANISH_EXCLUSIVE_ECONOMIC_ZONE = 198;
576
	private static int AREA_TRANSCAUCASUS = 199;
577

  
578
	private static int AREA_GEORGIA_G = 200;
579
	private static int AREA_ABKHAZIA = 201;
580
	private static int AREA_ADZARIA = 202;
581

  
582
	private static int AREA_UNITED_KINGDOM = 203;
583
	private static int AREA_DENMARK_COUNTRY = 204;
584
	private static int AREA_TURKEY_COUNTRY = 205;
585
	private static int AREA_SPAIN_COUNTRY = 206;
586
	private static int AREA_GREECE_COUNTRY = 207;
587
	private static int AREA_PORTUGAL_COUNTRY = 208;
590 588
	//continued ERMS areas without variables
591 589
	//...
592
	public static int AREA_WALES = 293;
590
	private static int AREA_WALES = 293;
593 591

  
594 592
	// OccurrenceStatus
595
	public static int STATUS_PRESENT = 1;
596
	public static int STATUS_ABSENT = 2;
597
	public static int STATUS_NATIVE = 3;
598
	public static int STATUS_INTRODUCED = 4;
599
	public static int STATUS_NATURALISED = 5;
600
	public static int STATUS_INVASIVE = 6;
601
	public static int STATUS_MANAGED = 7;
602
	public static int STATUS_DOUBTFUL = 8;
593
	private static int STATUS_PRESENT = 1;
594
	private static int STATUS_ABSENT = 2;
595
	private static int STATUS_NATIVE = 3;
596
	private static int STATUS_INTRODUCED = 4;
597
	private static int STATUS_NATURALISED = 5;
598
	private static int STATUS_INVASIVE = 6;
599
	private static int STATUS_MANAGED = 7;
600
	private static int STATUS_DOUBTFUL = 8;
603 601

  
604 602
	private final Map<String, Integer> tdwgKeyMap = new HashMap<>();
605 603
	private final Map<Integer, String> areaCacheMap = new HashMap<>();
......
679 677
			}
680 678

  
681 679
			//languageCache
682
			fillSingleMap(languageCacheMap,"Language");
680
			fillSingleMap(languageCacheMap, "Language");
683 681

  
684 682
			//feature / note category
685
			fillSingleMap(featureCacheMap,"NoteCategory");
683
			fillSingleMap(featureCacheMap, "NoteCategory");
686 684

  
687 685
			//nameStatusCache
688 686
			fillSingleMap(nameStatusCacheMap,"NameStatus", "NomStatus");
689 687

  
690 688
			//qualityStatusCache
691
			fillSingleMap(qualityStatusCacheMap,"QualityStatus");
689
			fillSingleMap(qualityStatusCacheMap, "QualityStatus");
692 690

  
693 691
			//taxonStatusCache
694 692
			fillSingleMap(taxonStatusCacheMap,"TaxonStatus", "Status");
695 693

  
696 694
			//sourceUse
697
			fillSingleMap(sourceUseCacheMap,"SourceUse");
695
			fillSingleMap(sourceUseCacheMap, "SourceUse");
698 696

  
699 697
			//fossil status
700
			fillSingleMap(fossilStatusCacheMap,"FossilStatus");
698
			fillSingleMap(fossilStatusCacheMap, "FossilStatus");
701 699

  
702 700
			//fossil status
703
			fillSingleMap(typeDesigStatusCacheMap,"FossilStatus");
701
			fillSingleMap(typeDesigStatusCacheMap, "FossilStatus");
704 702

  
705 703
			//fossil status
706
			fillSingleMap(occurrenceStatusCacheMap,"OccurrenceStatus");
704
			fillSingleMap(occurrenceStatusCacheMap, "OccurrenceStatus");
707 705

  
708 706
			//source category
709
			fillSingleMap(sourceCategoryCacheMap,"SourceCategory", "Category", "SourceCategoryId");
707
			fillSingleMap(sourceCategoryCacheMap, "SourceCategory", "Category", "SourceCategoryId");
710 708

  
711 709
			//RelTaxonQualifier
712 710
			sql = " SELECT QualifierId, Qualifier, ZoologQualifier FROM RelTaxonQualifier ";
......
2233 2231
		return result;
2234 2232
	}
2235 2233

  
2236
    public static Integer pesiKingdomId(String titleCache) {
2237
        return pesiKingdomMap.get(titleCache);
2234
    public static Integer pesiKingdomId(String str) {
2235
        return pesiKingdomMap.get(str);
2238 2236
    }
2239 2237
}

Also available in: Unified diff