2 * Copyright (C) 2009 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
10 package eu
.etaxonomy
.cdm
.io
.redlist
.bfnXml
.in
;
12 import java
.util
.UUID
;
14 import org
.apache
.commons
.lang
.StringUtils
;
15 import org
.apache
.log4j
.Logger
;
17 import eu
.etaxonomy
.cdm
.io
.redlist
.bfnXml
.BfnXmlConstants
;
18 import eu
.etaxonomy
.cdm
.model
.name
.Rank
;
19 import eu
.etaxonomy
.cdm
.model
.taxon
.TaxonRelationshipType
;
20 import eu
.etaxonomy
.cdm
.strategy
.exceptions
.UnknownCdmTypeException
;
21 /*import eu.etaxonomy.cdm.model.reference.Article;
22 import eu.etaxonomy.cdm.model.reference.Book;
23 import eu.etaxonomy.cdm.model.reference.BookSection;
24 import eu.etaxonomy.cdm.model.reference.Journal;
25 import eu.etaxonomy.cdm.model.reference.PersonalCommunication;
26 import eu.etaxonomy.cdm.model.reference.PrintSeries;*/
27 //import eu.etaxonomy.cdm.model.reference.WebPage;
29 public final class BfnXmlTransformer
{
30 @SuppressWarnings("unused")
31 private static final Logger logger
= Logger
.getLogger(BfnXmlTransformer
.class);
33 //redList state Vocabularies
34 public static final UUID vocStateRLKat
= UUID
.fromString("66bbb391-af8a-423b-9506-a235b61af922");
35 public static final UUID vocStateRlKatDiff
= UUID
.fromString("abe3702e-ddd4-420c-a985-08a0f8138215");
36 public static final UUID vocStateRlAkt
= UUID
.fromString("a0bb10de-35c1-47f5-b700-02ceb0a6b50c");
37 public static final UUID vocStateRLLang
= UUID
.fromString("c48d99db-50b6-469f-879d-8bb781842382");
38 public static final UUID vocStateRLKurz
= UUID
.fromString("46549c3b-d9d0-4d34-9135-4789d5ed6fff");
39 public static final UUID vocStateRLRisk
= UUID
.fromString("ec38db54-07dd-4e48-8976-bfa4813ffa44");
40 public static final UUID vocStateRLResp
= UUID
.fromString("c4763d33-75ea-4387-991f-b767650b4899");
41 public static final UUID vocStateRLKatOld
= UUID
.fromString("e9be0626-e14e-4556-a8af-9d49e6279669");
42 public static final UUID vocStateRLNeo
= UUID
.fromString("6c55ae1d-046d-4b67-89aa-b24c4888df6a");
43 public static final UUID vocStateRLKatId
= UUID
.fromString("c54481b3-bf07-43ce-b1cb-09759e4d2a70");
44 public static final UUID vocStateRLSpecialCases
= UUID
.fromString("ce2f4f8f-4222-429f-938b-77b794ecf704");
45 public static final UUID vocGermanFederalStates
= UUID
.fromString("a80dc3d4-0def-4c9b-97a1-12e8eb7ec87f");
46 public static final UUID vocGermanPresenceTerms
= UUID
.fromString("57d6bfa6-ac49-4c88-a9f0-b9c763d5b521");
47 public static final UUID vocGermanEstablishmentTerms
= UUID
.fromString("b5919067-ec28-404a-a22e-be914c810f22");
50 public static final UUID featureRLKat
= UUID
.fromString("744f8833-619a-4d83-b330-1997c3b2c2f9");
51 public static final UUID featureRlKatDiff
= UUID
.fromString("bf93361d-0c8c-4961-9f60-20bcb1d3dbaf");
52 public static final UUID featureRlAkt
= UUID
.fromString("39b6962b-05ba-4cd6-a1a9-337d5d156e2f");
53 public static final UUID featureRLLang
= UUID
.fromString("f6027318-b17d-49e6-b8eb-7464304044c8");
54 public static final UUID featureRLKurz
= UUID
.fromString("9ecc65b5-7760-4ce7-add0-950bdcc2c792");
55 public static final UUID featureRLRisk
= UUID
.fromString("2c8f8ffa-c604-4385-b428-4485f5650735");
56 public static final UUID featureRLResp
= UUID
.fromString("02d8010f-7d1b-46a3-8c01-b5e6760bfd14");
57 public static final UUID featureRLKatOld
= UUID
.fromString("bbdff68d-4fa0-438d-afb5-cff89791c93f");
58 public static final UUID featureRLNeo
= UUID
.fromString("153c7173-6d3d-4bee-b8f2-cf8e63e0bc25");
59 public static final UUID featureRLKatId
= UUID
.fromString("dc9f5dd2-302c-4a32-bd70-278bbd9abd16");
60 public static final UUID featureRLTaxComment
= UUID
.fromString("b7c05d78-16a4-4b6e-a03b-fa6bb2ed74ae");
61 public static final UUID featureRLHazardComment
= UUID
.fromString("5beb1ebf-8643-4d5f-9849-8087c35455bb");
62 public static final UUID featureRLSpecialCases
= UUID
.fromString("fb92068d-667a-448e-8019-ca4551891b3b");
63 public static final UUID featureRLLastOccurrence
= UUID
.fromString("218a32be-fb87-41c9-8d64-b21b43b47caa");
64 public static final UUID featureRLAdditionalComment
= UUID
.fromString("c610c98e-f242-4f3b-9edd-7b84a9435867");
68 public static final UUID stateTermRlKat0
= UUID
.fromString("05ff7c0f-2fb2-4c10-9527-a2e0c68d68af");
69 public static final UUID stateTermRlKat1
= UUID
.fromString("76a6defc-41d0-43bf-a15a-997caeefbbce");
70 public static final UUID stateTermRlKat2
= UUID
.fromString("ee6b79b6-8306-42d1-a80a-2963ded7c952");
71 public static final UUID stateTermRlKat3
= UUID
.fromString("309bf199-c0a3-4f01-829a-b10aafda4547");
72 public static final UUID stateTermRlKatG
= UUID
.fromString("fdf9c84e-1b76-4aa8-b676-a614591ad320");
73 public static final UUID stateTermRlKatR
= UUID
.fromString("a694e7bd-87a4-4d3c-8333-aed5092bcb0e");
74 public static final UUID stateTermRlKatV
= UUID
.fromString("b1a6695d-65f9-4c53-9765-fd7b54e1674c");
75 public static final UUID stateTermRlKatStar
= UUID
.fromString("1cda0ef4-cace-42e9-8061-4ada41d03974");
76 public static final UUID stateTermRlKatStar2
= UUID
.fromString("539cffb0-29b9-48fd-af6e-abf9c466199c");
77 public static final UUID stateTermRlKatD
= UUID
.fromString("4d61cadd-b27e-41da-9c91-f29e96adaf89");
78 public static final UUID stateTermRlKatDiamond
= UUID
.fromString("aedc4006-4097-41cd-bab9-f8607ff84519");
79 public static final UUID stateTermRlKatKN
= UUID
.fromString("49dc7656-4cef-4b0e-81dd-8422a3d0d06b");
81 //rl kat diff state list
82 public static final UUID stateTermRLKatDiffPlus
= UUID
.fromString("6bc7ddc2-6f25-4076-a392-2626cb7a4b35");
83 public static final UUID stateTermRLKatDiffMinus
= UUID
.fromString("8f6a8c16-195c-4084-a201-8d702f9636e7");
84 public static final UUID stateTermRLKatDiffEqual
= UUID
.fromString("5215fd8a-7e70-43a6-abde-4e14966a0e0e");
86 //rl kat neo state list
87 public static final UUID stateTermRLKatNeo
= UUID
.fromString("d9ae3dc2-99c9-40aa-b724-9810ed52ca15");
89 //rl kat akt state list
90 public static final UUID stateTermRLKatAktEx
= UUID
.fromString("a36d4251-0ca1-4818-bbf7-4089a9362a7e");
91 public static final UUID stateTermRLKatAktEs
= UUID
.fromString("9d2426a2-d845-47df-9607-01addc4e3253");
92 public static final UUID stateTermRLKatAktSs
= UUID
.fromString("bde09fdd-459a-4f8e-a83c-ee562e220f52");
93 public static final UUID stateTermRLKatAktS
= UUID
.fromString("3f44fbd3-6d02-4cef-a2c7-c29684b4eb20");
94 public static final UUID stateTermRLKatAktMh
= UUID
.fromString("88e3cfff-623a-43b0-a708-e4d7125a504c");
95 public static final UUID stateTermRLKatAktH
= UUID
.fromString("ec96d3f0-0f32-4121-9636-41c44079c9ea");
96 public static final UUID stateTermRLKatAktSh
= UUID
.fromString("1126e1ad-5c06-43b2-bfd5-8327257a41eb");
97 public static final UUID stateTermRLKatAktQuest
= UUID
.fromString("2ee9820e-c98d-4d5a-8621-5d7b73be66c2");
98 public static final UUID stateTermRLKatAktNb
= UUID
.fromString("5da81f91-0089-4360-b07c-b3b833f8fc8e");
99 public static final UUID stateTermRLKatAktKn
= UUID
.fromString("f10865f9-aa13-4cf0-9e6c-cc657103bd13");
101 //rl kat lang state list
102 public static final UUID stateTermRLKatLangLT3
= UUID
.fromString("6d23b5f9-ac18-4ecb-9be8-2c6e5e7db736");
103 public static final UUID stateTermRLKatLangLT2
= UUID
.fromString("1bd75728-79ed-427d-b96e-858ddca6103d");
104 public static final UUID stateTermRLKatLangLT1
= UUID
.fromString("b7c592a4-72cd-4914-87f0-05a6b324af43");
105 public static final UUID stateTermRLKatLangLT
= UUID
.fromString("5f202b93-6f20-4bae-ba3c-e2792b5451b4");
106 public static final UUID stateTermRLKatLangEqual
= UUID
.fromString("d66be068-4a0c-4f95-aa6e-9e5804ceb1f1");
107 public static final UUID stateTermRLKatLangGT
= UUID
.fromString("528185c6-3c12-41bd-a1e5-6ee3d729776c");
108 public static final UUID stateTermRLKatLangQuest
= UUID
.fromString("53076429-d4ac-427f-a9dc-2c8a15901999");
110 //rl kat kurz state list
111 public static final UUID stateTermRLKatKurzDown3
= UUID
.fromString("dd97697c-004a-4860-a553-67695d32a992");
112 public static final UUID stateTermRLKatKurzDown2
= UUID
.fromString("311a531b-8263-4c72-af79-662ffbc26fbe");
113 public static final UUID stateTermRLKatKurzDown1
= UUID
.fromString("d2a2a51f-5c8f-4cef-809a-58162beae5c2");
114 public static final UUID stateTermRLKatKurzEqual
= UUID
.fromString("0a8cf4c0-8b7c-49d5-9195-0999a0f202ad");
115 public static final UUID stateTermRLKatKurzUp
= UUID
.fromString("13e7c95c-3ca3-435d-b7b6-4889e594bf2a");
116 public static final UUID stateTermRLKatKurzQuest
= UUID
.fromString("4eb11517-a874-484d-8390-dbb8c6bda47c");
118 //rl kat risk state list
119 public static final UUID stateTermRLKatRiskMinus
= UUID
.fromString("4e96c671-e1f7-4273-83e7-6650207b57e0");
120 public static final UUID stateTermRLKatRiskEqual
= UUID
.fromString("d3f00d31-26a4-40c0-99d4-55ea3672ff5d");
122 //rl kat resp state list
123 public static final UUID stateTermRLKatRespBang2
= UUID
.fromString("d1e6b6cd-bb19-40a3-9d02-33099295e7f7");
124 public static final UUID stateTermRLKatRespBang1
= UUID
.fromString("01856904-aced-4889-b955-d16872bcd0e8");
125 public static final UUID stateTermRLKatRespBang
= UUID
.fromString("c432e39e-ec09-41b7-be9b-28e0d76a4cf9");
126 public static final UUID stateTermRLKatRespQuest
= UUID
.fromString("4116fbda-a392-417c-be1c-08f5e72f762b");
127 public static final UUID stateTermRLKatRespNb
= UUID
.fromString("800328ce-f618-4de1-9237-243f16fbe9f9");
129 //rl Kat old state list
130 public static final UUID stateTermRLKatOld0
= UUID
.fromString("1977b29c-8b63-407a-a11b-ada8726ac653");
131 public static final UUID stateTermRLKatOld1
= UUID
.fromString("4f3d3255-7e06-4a4e-83d1-5841beee85d4");
132 public static final UUID stateTermRLKatOld2
= UUID
.fromString("65163104-76db-4c20-a00f-5c7531f42b3b");
133 public static final UUID stateTermRLKatOld3
= UUID
.fromString("3c0fbb9e-b3fa-4bab-ada2-6efb9b6b9155");
134 public static final UUID stateTermRLKatOldG
= UUID
.fromString("a3d2daf2-a570-40d7-b08d-d105a30bb5e2");
135 public static final UUID stateTermRLKatOldR
= UUID
.fromString("d6e511cb-40aa-48ab-8a0d-2365c984d698");
136 public static final UUID stateTermRLKatOldV
= UUID
.fromString("92a6f1ec-6d61-4879-826a-255c34492507");
137 public static final UUID stateTermRLKatOldStar
= UUID
.fromString("196310bc-3b8b-43c9-b317-e2b02bff5c8a");
138 public static final UUID stateTermRLKatOldStar2
= UUID
.fromString("7fbc42ed-43b6-4198-a9dc-bb97bacb3b9b");
139 public static final UUID stateTermRLKatOldD
= UUID
.fromString("075a456c-2291-436c-9b9c-b06d95bf6fc6");
140 public static final UUID stateTermRLKatOldNb
= UUID
.fromString("72faec78-6db9-4471-9a65-c6d2337bd324");
141 public static final UUID stateTermRLKatOldKn
= UUID
.fromString("92276f3e-3c09-4761-ba5b-b49697c6d5ce");
142 public static final UUID stateTermEmpty
= UUID
.fromString("1d357340-5329-4f43-a454-7f99625a1d71");
143 public static final UUID stateTermRLSpecialS
= UUID
.fromString("71fda1f6-a7eb-44a0-aeb8-e7f676096916");
144 public static final UUID stateTermRLSpecialE
= UUID
.fromString("ef335a01-f4f1-4a02-95a2-2254aa457774");
145 public static final UUID stateTermRLSpecialD
= UUID
.fromString("6b267cc5-49b6-4ebd-87ec-aa574e9cbcc5");
148 public static TaxonRelationshipType
concept2TaxonRelation(String conceptStatus
) throws UnknownCdmTypeException
{
149 if(conceptStatus
== null) {
151 }else if(conceptStatus
.equalsIgnoreCase("!=")){
152 return TaxonRelationshipType
.CONGRUENT_TO();
153 }else if(conceptStatus
.equalsIgnoreCase("=!")){
154 return TaxonRelationshipType
.CONGRUENT_TO();
155 }else if(conceptStatus
.equalsIgnoreCase("!=,>")){
156 return TaxonRelationshipType
.CONGRUENT_OR_INCLUDES();
157 }else if(conceptStatus
.equalsIgnoreCase("!=,<")){
158 return TaxonRelationshipType
.CONGRUENT_OR_INCLUDED_OR_INCLUDES();
159 }else if(conceptStatus
.equalsIgnoreCase(">")){
160 return TaxonRelationshipType
.INCLUDES();
161 }else if(conceptStatus
.equalsIgnoreCase(">,><")){
162 return TaxonRelationshipType
.INCLUDES_OR_OVERLAPS();
163 // }else if(conceptStatus.equalsIgnoreCase("<")){//TODO: should be just Included In
164 // return TaxonRelationshipType.INCLUDED_OR_INCLUDES();
165 }else if(conceptStatus
.equalsIgnoreCase(">,><")){//TODO: should be Included In Or Overlaps
166 return TaxonRelationshipType
.INCLUDED_OR_INCLUDES_OR_OVERLAPS();
167 }else if(conceptStatus
.equalsIgnoreCase("><")){
168 return TaxonRelationshipType
.OVERLAPS();
169 }else if(conceptStatus
.equalsIgnoreCase("~")){//TODO Included in not here
170 return TaxonRelationshipType
.CONGRUENT_OR_INCLUDES_OR_OVERLAPS();
171 }else if(conceptStatus
.equalsIgnoreCase("?")){
172 return TaxonRelationshipType
.ALL_RELATIONSHIPS();
173 }else if(conceptStatus
.equalsIgnoreCase("/=")){
174 return TaxonRelationshipType
.EXCLUDES();
175 }else if(conceptStatus
.equalsIgnoreCase("\\")){
176 return TaxonRelationshipType
.EXCLUDES();
179 throw new UnknownCdmTypeException("Unknown concept relation status " + conceptStatus
);
184 /** Creates an cdm-Rank by the tcs rank
186 public static Rank
rankCode2Rank (String strRank
) throws UnknownCdmTypeException
{
187 if (strRank
== null){return null;
189 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRAGEN
)){return Rank
.INFRAGENUS();
190 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBGEN
)){return Rank
.SUBGENUS();
191 }else if (strRank
.equals(BfnXmlConstants
.RNK_GEN
)){return Rank
.GENUS();
194 }else if (strRank
.equals(BfnXmlConstants
.RNK_AGGR
)){return Rank
.SPECIESAGGREGATE();
195 }else if (strRank
.equals(BfnXmlConstants
.RNK_AGG
)){return Rank
.SPECIESAGGREGATE();
196 }else if (strRank
.equals(BfnXmlConstants
.RNK_TAXINFRAGEN
)){return Rank
.INFRAGENERICTAXON();
197 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSER
)){return Rank
.SUBSERIES();
198 }else if (strRank
.equals(BfnXmlConstants
.RNK_SER
)){return Rank
.SERIES();
199 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSECT
)){return Rank
.SUBSECTION_BOTANY();
200 }else if (strRank
.equals(BfnXmlConstants
.RNK_SECT
)){return Rank
.SECTION_BOTANY();
202 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSP_AGGR
)){return Rank
.SUBSPECIFICAGGREGATE();
203 }else if (strRank
.equals(BfnXmlConstants
.RNK_SSP
)){return Rank
.SUBSPECIES();
204 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSP
)){return Rank
.SUBSPECIES();
205 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSP_DOT
)){return Rank
.SUBSPECIES();
206 }else if (strRank
.equals(BfnXmlConstants
.RNK_SP
)){return Rank
.SPECIES();
207 }else if (strRank
.equals(BfnXmlConstants
.RNK_SPEZIES
)){return Rank
.SPECIES();
209 }else if (strRank
.equals(BfnXmlConstants
.RNK_CAND
)){return Rank
.CANDIDATE();
210 }else if (strRank
.equals(BfnXmlConstants
.RNK_TAXINFRASP
)){return Rank
.INFRASPECIFICTAXON();
211 }else if (strRank
.equals(BfnXmlConstants
.RNK_FSP
)){return Rank
.SPECIALFORM();
212 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSUBFM
)){return Rank
.SUBSUBFORM();
213 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBFM
)){return Rank
.SUBFORM();
214 }else if (strRank
.equals(BfnXmlConstants
.RNK_FM
)){return Rank
.FORM();
215 }else if (strRank
.equals(BfnXmlConstants
.RNK_F
)){return Rank
.FORM();
216 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBSUBVAR
)){return Rank
.SUBSUBVARIETY();
217 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBVAR
)){return Rank
.SUBVARIETY();
218 }else if (strRank
.equals(BfnXmlConstants
.RNK_VAR
)){return Rank
.VARIETY();
219 }else if (strRank
.equals(BfnXmlConstants
.RNK_VAR_DOT
)){return Rank
.VARIETY();
220 //TODO -> see documentation, Bacteria status
221 // }else if (strRank.equals("pv")){return Rank;
222 // }else if (strRank.equals("bv")){return Rank.;
223 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRASP
)){return Rank
.INFRASPECIES();
225 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRAORD
)){return Rank
.INFRAORDER();
226 }else if (strRank
.equals(BfnXmlConstants
.RNK_ORD
)){return Rank
.ORDER();
227 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUPERORD
)){return Rank
.SUPERORDER();
228 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRACL
)){return Rank
.INFRACLASS();
229 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBCL
)){return Rank
.SUBCLASS();
230 }else if (strRank
.equals(BfnXmlConstants
.RNK_CL
)){return Rank
.CLASS();
231 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUPERCL
)){return Rank
.SUPERCLASS();
232 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRAPHYL_DIV
)){return Rank
.INFRAPHYLUM();
233 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBPHYL_DIV
)){return Rank
.SUBPHYLUM();
234 }else if (strRank
.equals(BfnXmlConstants
.RNK_PHYL_DIV
)){return Rank
.PHYLUM();
235 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUPERPHYL_DIV
)){return Rank
.SUPERPHYLUM();
236 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRAREG
)){return Rank
.INFRAKINGDOM();
237 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBREG
)){return Rank
.SUBKINGDOM();
238 }else if (strRank
.equals(BfnXmlConstants
.RNK_REG
)){return Rank
.KINGDOM();
239 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUPERREG
)){return Rank
.SUPERKINGDOM();
240 }else if (strRank
.equals(BfnXmlConstants
.RNK_DOM
)){return Rank
.DOMAIN();
241 }else if (strRank
.equals(BfnXmlConstants
.RNK_TAXSUPRAGEN
)){return Rank
.SUPRAGENERICTAXON();
242 }else if (strRank
.equals(BfnXmlConstants
.RNK_AUSWERTUNGSGRUPPE
)){return Rank
.EMPIRE();
244 }else if (strRank
.equals(BfnXmlConstants
.RNK_INFRAFAM
)){return Rank
.FAMILY();
245 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBFAM
)){return Rank
.FAMILY();
246 }else if (strRank
.equals(BfnXmlConstants
.RNK_FAM
)){return Rank
.FAMILY();
247 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUPERFAM
)){return Rank
.FAMILY();
249 }else if (strRank
.equals(BfnXmlConstants
.RNK_INTRATRIB
)){return Rank
.FAMILY();
250 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUBTRIB
)){return Rank
.FAMILY();
251 }else if (strRank
.equals(BfnXmlConstants
.RNK_TRIB
)){return Rank
.FAMILY();
252 }else if (strRank
.equals(BfnXmlConstants
.RNK_SUPERTRIB
)){return Rank
.FAMILY();
255 throw new UnknownCdmTypeException("Unknown Rank " + strRank
);
259 public static String
redListString2RedListCode (String redListCode
) throws UnknownCdmTypeException
{
260 if (redListCode
== null){ return null;
261 }else if (redListCode
.equals("#dtpl_RLKat_NULL#")){return "0";
262 }else if (redListCode
.equals("#dtpl_RLKat_EINS#")){return "1";
263 }else if (redListCode
.equals("#dtpl_RLKat_ZWEI#")){return "2";
264 }else if (redListCode
.equals("#dtpl_RLKat_DREI#")){return "3";
265 }else if (redListCode
.equals("#dtpl_RLKat_VIER#")){return "4";
266 }else if (redListCode
.equals("#dtpl_RLKat_G#")){return "G";
267 }else if (redListCode
.equals("#dtpl_RLKat_R#")){return "R";
268 }else if (redListCode
.equals("#dtpl_RLKat_V#")){return "V";
269 }else if (redListCode
.equals("#dtpl_RLKat_STERN#")){return "*";
270 }else if (redListCode
.equals("#dtpl_RLKat_STERN##dtpl_RLKat_STERN#")){return "**";
271 }else if (redListCode
.equals("#dtpl_RLKat_D#")){return "D";
272 }else if (redListCode
.equals("#dtpl_RLKat_RAUTE#")){
274 return String
.valueOf(c
);
275 }else if (redListCode
.equals("kN")){return "kN";
276 }else if (redListCode
.equals("+")){return "+";
277 }else if (redListCode
.equals("-")){return "-";
278 }else if (redListCode
.equals("=")){return "=";
279 }else if (redListCode
.equals("N")){return "N";
280 }else if (redListCode
.equals("S")){return "S";
281 }else if (redListCode
.equals("E")){return "E";
282 }else if (redListCode
.equals("D")){return "D";
283 }else if (redListCode
.equals("#dtpl_KurzfBest_RUNTER##dtpl_KurzfBest_RUNTER##dtpl_KurzfBest_RUNTER#")){
285 return String
.valueOf(c
)+String
.valueOf(c
)+String
.valueOf(c
);
286 }else if (redListCode
.equals("#dtpl_KurzfBest_RUNTER##dtpl_KurzfBest_RUNTER#")){
288 return String
.valueOf(c
)+String
.valueOf(c
);
289 }else if (redListCode
.equals("(#dtpl_KurzfBest_RUNTER#)")){
291 return "("+String
.valueOf(c
)+")";
292 }else if (redListCode
.equals("#dtpl_KurzfBest_HOCH#")){
294 return String
.valueOf(c
);
295 }else if (redListCode
.equals("#dtpl_Risiko_MINUS#")){return "-";
296 }else if (redListCode
.equals("#dtpl_VERANTW_NB#")){return "nb";
297 }else if (redListCode
.equals("#dtpl_TaxBez_GLEICH#")){return "=";
298 }else if (redListCode
.equals("#dtpl_TaxBez_KLEINER#")){return "<";
299 }else if (redListCode
.equals("#dtpl_TaxBez_GROESSER#")){return ">";
300 }else if (redListCode
.equals("#dtpl_TaxBez_UNGLEICH#")){
302 return String
.valueOf(c
);
303 }else if (redListCode
.equals("#dtpl_AlteRLKat_STERN#")){return "*";
304 }else if (redListCode
.equals("#dtpl_AlteRLKat_ZWEISTERN#")){return "**";
305 }else if (redListCode
.equals("#dtpl_AlteRLKat_NB#")){return "nb";
306 }else if (redListCode
.equals("#dtpl_AlteRLKat_KN#")){return "kN";
307 }else if (redListCode
.equals("#dtpl_TaxBez_UNGLEICH#")){return "-";
308 }else if (StringUtils
.isBlank(redListCode
)){return "keine Angabe";
311 throw new UnknownCdmTypeException("Unknown Redlist Code " + redListCode
);
316 public static UUID
getRedlistVocabularyUUID(String redListVocabulary
) throws UnknownCdmTypeException
{
318 if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
319 return vocStateRLKat
;
320 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_KAT
)) {
321 return vocStateRlKatDiff
;
322 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
323 return vocStateRlAkt
;
324 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
325 return vocStateRLLang
;
326 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
327 return vocStateRLKurz
;
328 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_RISIKOFAKTOREN
)) {
329 return vocStateRLRisk
;
330 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
331 return vocStateRLResp
;
332 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
333 return vocStateRLKatOld
;
334 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_NEOBIOTA
)) {
335 return vocStateRLNeo
;
336 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_EINDEUTIGER_CODE
)) {
337 return vocStateRLKatId
;
338 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_SONDERFAELLE
)) {
339 return vocStateRLSpecialCases
;
340 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_VORKOMMENSSTATUS
)) {
341 return vocGermanPresenceTerms
;
342 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_ETABLIERUNGSSTATUS
)) {
343 return vocGermanEstablishmentTerms
;
344 }else if(redListVocabulary
.equalsIgnoreCase(BfnXmlConstants
.VOC_BUNDESLAENDER
)) {
345 return vocGermanFederalStates
;
347 throw new UnknownCdmTypeException("Unknown Vocabulary feature, could not match: " + redListVocabulary
);
353 public static UUID
getRedlistFeatureUUID(String redListFeature
) throws UnknownCdmTypeException
{
355 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
358 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KAT
)) {
359 return featureRlKatDiff
;
361 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
364 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
365 return featureRLLang
;
367 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
368 return featureRLKurz
;
370 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RISIKOFAKTOREN
)) {
371 return featureRLRisk
;
373 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
374 return featureRLResp
;
376 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
377 return featureRLKatOld
;
379 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_NEOBIOTA
)) {
382 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_EINDEUTIGER_CODE
)) {
383 return featureRLKatId
;
385 if(redListFeature
.equalsIgnoreCase("Kommentar zur Taxonomie")) {
386 return featureRLTaxComment
;
388 if(redListFeature
.equalsIgnoreCase("Kommentar zur Gefährdung")) {
389 return featureRLHazardComment
;
391 if(redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_SONDERFAELLE
)) {
392 return featureRLSpecialCases
;
394 if(redListFeature
.equalsIgnoreCase("Letzter Nachweis")) {
395 return featureRLLastOccurrence
;
397 if(redListFeature
.equalsIgnoreCase("Weitere Kommentare")) {
398 return featureRLAdditionalComment
;
400 throw new UnknownCdmTypeException("Unknown feature, could not match: " + redListFeature
);
405 public static UUID
getRedlistStateTermUUID(String redListStateTerm
, String redListFeature
) throws UnknownCdmTypeException
{
408 if(redListStateTerm
.equalsIgnoreCase("0") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
409 return stateTermRlKat0
;
411 if(redListStateTerm
.equalsIgnoreCase("1") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
412 return stateTermRlKat1
;
414 if(redListStateTerm
.equalsIgnoreCase("2") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
415 return stateTermRlKat2
;
417 if(redListStateTerm
.equalsIgnoreCase("3") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
418 return stateTermRlKat3
;
420 if(redListStateTerm
.equalsIgnoreCase("G") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
421 return stateTermRlKatG
;
423 if(redListStateTerm
.equalsIgnoreCase("R") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
424 return stateTermRlKatR
;
426 if(redListStateTerm
.equalsIgnoreCase("V") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
427 return stateTermRlKatV
;
429 if(redListStateTerm
.equalsIgnoreCase("*") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
430 return stateTermRlKatStar
;
432 if(redListStateTerm
.equalsIgnoreCase("**") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
433 return stateTermRlKatStar2
;
435 if(redListStateTerm
.equalsIgnoreCase("D") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
436 return stateTermRlKatD
;
438 if(redListStateTerm
.equalsIgnoreCase(String
.valueOf(a
)) && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
439 return stateTermRlKatDiamond
;
441 if(redListStateTerm
.equalsIgnoreCase("kN") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RL_KAT
)) {
442 return stateTermRlKatKN
;
446 if(redListStateTerm
.equalsIgnoreCase("+") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KAT
)) {
447 return stateTermRLKatDiffPlus
;
449 if(redListStateTerm
.equalsIgnoreCase("-") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KAT
)) {
450 return stateTermRLKatDiffMinus
;
452 if(redListStateTerm
.equalsIgnoreCase("=") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KAT
)) {
453 return stateTermRLKatDiffEqual
;
457 if(redListStateTerm
.equalsIgnoreCase("ex") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
458 return stateTermRLKatAktEx
;
460 if(redListStateTerm
.equalsIgnoreCase("es") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
461 return stateTermRLKatAktEs
;
463 if(redListStateTerm
.equalsIgnoreCase("ss") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
464 return stateTermRLKatAktSs
;
466 if(redListStateTerm
.equalsIgnoreCase("s") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
467 return stateTermRLKatAktS
;
469 if(redListStateTerm
.equalsIgnoreCase("mh") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
470 return stateTermRLKatAktMh
;
472 if(redListStateTerm
.equalsIgnoreCase("h") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
473 return stateTermRLKatAktH
;
475 if(redListStateTerm
.equalsIgnoreCase("sh") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
476 return stateTermRLKatAktSh
;
478 if(redListStateTerm
.equalsIgnoreCase("?") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
479 return stateTermRLKatAktQuest
;
481 if(redListStateTerm
.equalsIgnoreCase("nb") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
482 return stateTermRLKatAktNb
;
484 if(redListStateTerm
.equalsIgnoreCase("kN") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_AKTUELLE_BESTANDSSTITUATION
)) {
485 return stateTermRLKatAktKn
;
489 if(redListStateTerm
.equalsIgnoreCase("<<<") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
490 return stateTermRLKatLangLT3
;
492 if(redListStateTerm
.equalsIgnoreCase("<<") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
493 return stateTermRLKatLangLT2
;
495 if(redListStateTerm
.equalsIgnoreCase("<") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
496 return stateTermRLKatLangLT1
;
498 if(redListStateTerm
.equalsIgnoreCase("(<)") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
499 return stateTermRLKatLangLT
;
501 if(redListStateTerm
.equalsIgnoreCase("=") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
502 return stateTermRLKatLangEqual
;
504 if(redListStateTerm
.equalsIgnoreCase(">") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
505 return stateTermRLKatLangGT
;
507 if(redListStateTerm
.equalsIgnoreCase("?") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_LANGFRISTIGER_BESTANDSTREND
)) {
508 return stateTermRLKatLangQuest
;
514 if(redListStateTerm
.equalsIgnoreCase(String
.valueOf(c
)+String
.valueOf(c
)+String
.valueOf(c
)) && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
515 return stateTermRLKatKurzDown3
;
517 if(redListStateTerm
.equalsIgnoreCase(String
.valueOf(c
)+String
.valueOf(c
)) && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
518 return stateTermRLKatKurzDown2
;
520 if(redListStateTerm
.equalsIgnoreCase("("+String
.valueOf(c
)+")") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
521 return stateTermRLKatKurzDown1
;
523 if(redListStateTerm
.equalsIgnoreCase("=") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
524 return stateTermRLKatKurzEqual
;
526 if(redListStateTerm
.equalsIgnoreCase(String
.valueOf(b
)) && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
527 return stateTermRLKatKurzUp
;
529 if(redListStateTerm
.equalsIgnoreCase("?") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_KURZFRISTIGER_BESTANDSTREND
)) {
530 return stateTermRLKatKurzQuest
;
534 if(redListStateTerm
.equalsIgnoreCase("-") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RISIKOFAKTOREN
)) {
535 return stateTermRLKatRiskMinus
;
537 if(redListStateTerm
.equalsIgnoreCase("=") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_RISIKOFAKTOREN
)) {
538 return stateTermRLKatRiskEqual
;
542 if(redListStateTerm
.equalsIgnoreCase("!!") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
543 return stateTermRLKatRespBang2
;
545 if(redListStateTerm
.equalsIgnoreCase("!") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
546 return stateTermRLKatRespBang1
;
548 if(redListStateTerm
.equalsIgnoreCase("(!)") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
549 return stateTermRLKatRespBang
;
551 if(redListStateTerm
.equalsIgnoreCase("?") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
552 return stateTermRLKatRespQuest
;
554 if(redListStateTerm
.equalsIgnoreCase("nb") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_VERANTWORTLICHKEIT
)) {
555 return stateTermRLKatRespNb
;
559 if(redListStateTerm
.equalsIgnoreCase("0") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
560 return stateTermRLKatOld0
;
562 if(redListStateTerm
.equalsIgnoreCase("1") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
563 return stateTermRLKatOld1
;
565 if(redListStateTerm
.equalsIgnoreCase("2") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
566 return stateTermRLKatOld2
;
568 if(redListStateTerm
.equalsIgnoreCase("3") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
569 return stateTermRLKatOld3
;
571 if(redListStateTerm
.equalsIgnoreCase("G") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
572 return stateTermRLKatOldG
;
574 if(redListStateTerm
.equalsIgnoreCase("R") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
575 return stateTermRLKatOldR
;
577 if(redListStateTerm
.equalsIgnoreCase("V") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
578 return stateTermRLKatOldV
;
580 if(redListStateTerm
.equalsIgnoreCase("*") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
581 return stateTermRLKatOldStar
;
583 if(redListStateTerm
.equalsIgnoreCase("**") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
584 return stateTermRLKatOldStar2
;
586 if(redListStateTerm
.equalsIgnoreCase("D") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
587 return stateTermRLKatOldD
;
589 if(redListStateTerm
.equalsIgnoreCase("nb") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
590 return stateTermRLKatOldNb
;
592 if(redListStateTerm
.equalsIgnoreCase("kN") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_ALTE_RL_KAT
)) {
593 return stateTermRLKatOldKn
;
597 if(redListStateTerm
.equalsIgnoreCase("N") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_NEOBIOTA
)) {
598 return stateTermRLKatNeo
;
602 if(redListStateTerm
.equalsIgnoreCase("S") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_SONDERFAELLE
)) {
603 return stateTermRLSpecialS
;
605 if(redListStateTerm
.equalsIgnoreCase("E") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_SONDERFAELLE
)) {
606 return stateTermRLSpecialE
;
608 if(redListStateTerm
.equalsIgnoreCase("D") && redListFeature
.equalsIgnoreCase(BfnXmlConstants
.VOC_SONDERFAELLE
)) {
609 return stateTermRLSpecialD
;
615 if(StringUtils
.isBlank(redListStateTerm
) || redListStateTerm
.equalsIgnoreCase("keine Angabe")) {
616 return stateTermEmpty
;
618 throw new UnknownCdmTypeException("Unknown State, could not match: " + redListStateTerm
+"\n In Category: " + redListFeature
);
625 * retrieve german federal States
627 * @param strGermanState
629 * @throws UnknownCdmTypeException
631 public static UUID
getGermanStateUUID(String strGermanState
) throws UnknownCdmTypeException
{
633 if(strGermanState
.equalsIgnoreCase("Deutschland")) {
634 return UUID
.fromString("a7f3855e-d4fa-4313-8fcf-da792ef848e7");
635 }else if(strGermanState
.equalsIgnoreCase("Baden-Württemberg")) {
636 return UUID
.fromString("00e64948-9ce9-4ebf-961b-133c56517b1c");
637 }else if(strGermanState
.equalsIgnoreCase("BW")) {
638 return UUID
.fromString("00e64948-9ce9-4ebf-961b-133c56517b1c");
639 }else if(strGermanState
.equalsIgnoreCase("Bayern")) {
640 return UUID
.fromString("ba075265-368f-4ff0-8942-88546239c70a");
641 }else if(strGermanState
.equalsIgnoreCase("BY")) {
642 return UUID
.fromString("ba075265-368f-4ff0-8942-88546239c70a");
643 }else if(strGermanState
.equalsIgnoreCase("Berlin")) {
644 return UUID
.fromString("d9339e12-7efa-45df-a008-3c934b9386bc");
645 }else if(strGermanState
.equalsIgnoreCase("BE")) {
646 return UUID
.fromString("d9339e12-7efa-45df-a008-3c934b9386bc");
647 }else if(strGermanState
.equalsIgnoreCase("Bremen")) {
648 return UUID
.fromString("a6d2f97d-5dba-4b79-a073-25fb491b6320");
649 }else if(strGermanState
.equalsIgnoreCase("HB")) {
650 return UUID
.fromString("a6d2f97d-5dba-4b79-a073-25fb491b6320");
651 }else if(strGermanState
.equalsIgnoreCase("Brandenburg")) {
652 return UUID
.fromString("dda9d8b8-8090-4667-953e-d8b1f7243926");
653 }else if(strGermanState
.equalsIgnoreCase("BB")) {
654 return UUID
.fromString("dda9d8b8-8090-4667-953e-d8b1f7243926");
655 }else if(strGermanState
.equalsIgnoreCase("Hamburg")) {
656 return UUID
.fromString("f087a7d7-974f-4627-a414-df27c04f99dd");
657 }else if(strGermanState
.equalsIgnoreCase("HH")) {
658 return UUID
.fromString("f087a7d7-974f-4627-a414-df27c04f99dd");
659 }else if(strGermanState
.equalsIgnoreCase("Hessen")) {
660 return UUID
.fromString("59de29e6-bf32-4677-89c7-a6834fcb5085");
661 }else if(strGermanState
.equalsIgnoreCase("HE")) {
662 return UUID
.fromString("59de29e6-bf32-4677-89c7-a6834fcb5085");
663 }else if(strGermanState
.equalsIgnoreCase("Mecklenburg-Vorpommern")) {
664 return UUID
.fromString("06dccbd5-8d5a-4e4f-b56e-d1d74ab25c19");
665 }else if(strGermanState
.equalsIgnoreCase("MV")) {
666 return UUID
.fromString("06dccbd5-8d5a-4e4f-b56e-d1d74ab25c19");
667 }else if(strGermanState
.equalsIgnoreCase("Niedersachsen") || strGermanState
.equalsIgnoreCase("NI")) {
668 return UUID
.fromString("97f77fe8-07ab-4e14-8f8b-40e8caf7e653");
669 }else if(strGermanState
.equalsIgnoreCase("Nordrhein-Westfalen")||strGermanState
.equalsIgnoreCase("NW")) {
670 return UUID
.fromString("46bf702e-1438-470c-9c77-04202c34ebf2");
671 }else if(strGermanState
.equalsIgnoreCase("Rheinland-Pfalz")||strGermanState
.equalsIgnoreCase("RP")) {
672 return UUID
.fromString("dd3ddb29-b1ec-4937-99a9-4a94d383becf");
673 }else if(strGermanState
.equalsIgnoreCase("Saarland")||strGermanState
.equalsIgnoreCase("SL")) {
674 return UUID
.fromString("26d3e85f-ce90-43ae-8ac0-42a60302b7b7");
675 }else if(strGermanState
.equalsIgnoreCase("Sachsen")||strGermanState
.equalsIgnoreCase("SN")) {
676 return UUID
.fromString("ca3ef152-ee3a-45f2-8343-983cf0fdddbd");
677 }else if(strGermanState
.equalsIgnoreCase("Sachsen-Anhalt")|| strGermanState
.equalsIgnoreCase("ST")) {
678 return UUID
.fromString("bb95b9a4-87ee-49bd-a542-4c30289e8d1f");
679 }else if(strGermanState
.equalsIgnoreCase("Schleswig-Holstein")||strGermanState
.equalsIgnoreCase("SH")) {
680 return UUID
.fromString("863323a7-22fb-4070-ad94-ce317098a28a");
681 }else if(strGermanState
.equalsIgnoreCase("Thüringen")||strGermanState
.equalsIgnoreCase("TH")) {
682 return UUID
.fromString("72e18526-6bf7-4300-8329-53cab5da2b51");
684 throw new UnknownCdmTypeException("Unknown State, could not match: " + strGermanState
);
688 public static UUID
getGermanAbsenceTermUUID(String strGermanTerm
) throws UnknownCdmTypeException
{
689 if(strGermanTerm
.equalsIgnoreCase("abwesend")) {return UUID
.fromString("517c4c68-952e-4580-8379-66a4aa12c04b");}
690 else if(strGermanTerm
.equalsIgnoreCase("abwesend - ausgestorben")) {return UUID
.fromString("7a620705-7c0d-4c72-863f-f41d548a2cc5");}
691 else if(strGermanTerm
.equalsIgnoreCase("abwesend - frühere Fehleingabe")) {return UUID
.fromString("1009264c-197d-43d4-ba16-7a7f0a6fde0c");}
692 else if(strGermanTerm
.equalsIgnoreCase("vorkommend")) {return UUID
.fromString("b294e7db-919f-4da0-9ba4-c374e7876aff");}
693 else if(strGermanTerm
.equalsIgnoreCase("vorkommend - in Einbürgerung befindlich")) {return UUID
.fromString("ec2f4099-82f7-44de-8892-09651c76d255");}
694 else if(strGermanTerm
.equalsIgnoreCase("vorkommend - etabliert")) {return UUID
.fromString("c1954b3c-58b5-43f3-b122-c872b2708bba");}
695 else if(strGermanTerm
.equalsIgnoreCase("vorkommend - kultiviert, domestiziert")) {return UUID
.fromString("99ebdb24-fda0-4203-9455-30441cdee17b");}
696 else if(strGermanTerm
.equalsIgnoreCase("vorkommend - unbeständig")) {return UUID
.fromString("12566e82-cdc2-48e4-951d-2fb88f30c5fd");}
697 else if(strGermanTerm
.equalsIgnoreCase("vorkommend - Vorkommen unsicher")) {return UUID
.fromString("a84d2ddb-fe7b-483b-96ba-fc0884d77c81");}
698 else if(strGermanTerm
.equalsIgnoreCase("vorkommend - unsicher")) {return UUID
.fromString("0b144b76-dab6-40da-8511-898f8226a24a");
700 throw new UnknownCdmTypeException("Unknown State, could not match: " + strGermanTerm
);
703 public static UUID
getGermanEstablishmentTermUUID(String strGermanTerm
) throws UnknownCdmTypeException
{
704 if(strGermanTerm
.equalsIgnoreCase("Archaeophyt")) {return UUID
.fromString("2cd2bc48-9fcb-4ccd-b03d-bafc0d3dde8c");}
705 else if(strGermanTerm
.equalsIgnoreCase("Indigen")) {return UUID
.fromString("20a99907-406a-45f1-aa3e-4768697488e4");}
706 else if(strGermanTerm
.equalsIgnoreCase("Kulturpflanze / domestiziertes Tier")) {return UUID
.fromString("94aa6408-f950-4e2e-bded-e01a1be859f6");}
707 else if(strGermanTerm
.equalsIgnoreCase("Neophyt")) {return UUID
.fromString("fdf6f1b7-c6ad-4b49-bc6b-b06398f8b1b5");}
708 else if(strGermanTerm
.equalsIgnoreCase("Kultuflüchtling")) {return UUID
.fromString("411f9190-56b7-41dd-a31a-3f200619c5e0");
710 throw new UnknownCdmTypeException("Unknown State, could not match: " + strGermanTerm
);
716 * @param strDistributionValue
719 public static UUID
matchDistributionValue(String strDistributionValue
) throws UnknownCdmTypeException
{
721 if(strDistributionValue
.equalsIgnoreCase("*")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
722 else if(strDistributionValue
.equalsIgnoreCase("0")){return getGermanAbsenceTermUUID("abwesend - ausgestorben");}
723 else if(strDistributionValue
.equalsIgnoreCase("1")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
724 else if(strDistributionValue
.equalsIgnoreCase("2")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
725 else if(strDistributionValue
.equalsIgnoreCase("3")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
726 else if(strDistributionValue
.equalsIgnoreCase("G")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
727 else if(strDistributionValue
.equalsIgnoreCase("D")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
728 else if(strDistributionValue
.equalsIgnoreCase("R")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
729 else if(strDistributionValue
.equalsIgnoreCase("N")){return getGermanAbsenceTermUUID("vorkommend");}
730 else if(strDistributionValue
.equalsIgnoreCase("V")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
731 else if(strDistributionValue
.equalsIgnoreCase("nb")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
732 else if(strDistributionValue
.equalsIgnoreCase("*")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
733 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_STERN_DP#")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
734 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_STERN#")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
735 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_STERN##dtpl_SynopseBL_STERN#")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
736 else if(strDistributionValue
.equalsIgnoreCase("")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
737 else if(strDistributionValue
.equalsIgnoreCase(" ")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
738 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_NB#")){return getGermanAbsenceTermUUID("vorkommend - etabliert");}
739 else if(strDistributionValue
.equalsIgnoreCase("-")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
740 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_X_KLAMMER#")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
741 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_X#")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
742 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_STRICH#")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
743 else if(strDistributionValue
.equalsIgnoreCase("+")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
744 else if(strDistributionValue
.equalsIgnoreCase("°")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
745 else if(strDistributionValue
.equalsIgnoreCase("G/D")){return getGermanAbsenceTermUUID("vorkommend");}
746 else if(strDistributionValue
.equalsIgnoreCase("R/1")){return getGermanAbsenceTermUUID("vorkommend");}
747 else if(strDistributionValue
.equalsIgnoreCase("?")){return getGermanAbsenceTermUUID("vorkommend - Vorkommen unsicher");}
748 else if(strDistributionValue
.equalsIgnoreCase("#dtpl_SynopseBL_LEER#")){return getGermanAbsenceTermUUID("abwesend");}
750 throw new UnknownCdmTypeException("Unknown State, could not match: " + strDistributionValue
);