Project

General

Profile

Download (20.3 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2017 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
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.
8
*/
9
package eu.etaxonomy.cdm.io.cdmLight;
10

    
11
/**
12
 * An enumeration with each instance representing a table type in the Output Model.
13
 *
14
 * @author a.mueller
15
 * @since 15.03.2017
16
 */
17
public enum CdmLightExportTable {
18
    METADATA("Metadata", metaDataColumns()),
19
    SCIENTIFIC_NAME("ScientificName", nameColumns()),
20
    NAME_RELATIONSHIP("NameRelationship",nameRelationColumns()),
21
    HOMOTYPIC_GROUP("HomotypicGroup", homotypicGroupColumns()),
22
    NOMENCLATURAL_AUTHOR("PersonOrTeam", nomenclaturalAuthorColumns()),
23
    NOMENCLATURAL_AUTHOR_TEAM_RELATION("PersonTeamRelation", nomenclaturalAuthorTeamRelColumns()),
24
    TYPE_DESIGNATION("SpecimenTypeDesignation", typeDesignationColumns()),
25
    SPECIMEN("Specimen", specimenColumns()),
26
    TAXON("Taxon", taxonColumns()),
27
    SYNONYM("Synonym", synonymColumns()),
28
    REFERENCE("Reference", referenceColumns()),
29
    SIMPLE_FACT("SimpleFact", simpleFactsColumns()),
30
    TAXON_INTERACTION_FACT("TaxonInteractionFact", taxonInteractionFactsColumns()),
31
    SPECIMEN_FACT("SpecimenFact", specimenFactsColumns()),
32
    GEOGRAPHIC_AREA_FACT("GeographicAreaFact", geographicAreaFactsColumns()),
33
    COMMON_NAME_FACT("CommonNameFact", commonNameFactsColumns()),
34
    FACT_SOURCES("FactSources", factSourcesColumns()),
35
    IDENTIFIER("Identifier", identifierColumns()),
36
    MEDIA("MediaFact", mediaColumns()),
37
//    CONDENSED_DISTRIBUTION_FACT("CondensedDistributionFact", compressedDistributionFactColumns()),
38
    NAME_FACT("NameFact", nameFactColumns()),
39
    TYPE_SPECIMEN_NAME("NameSpecimenTypeRelation", typeDesignationNameColumns())
40
    ;
41

    
42
    //Taxon/Synonym
43
    protected static final String NAME_FK = "Name_Fk";
44
    protected static final String TAXON_ID = "Taxon_ID";
45
    protected static final String TAXON_FK = "Taxon_Fk";
46
    protected static final String CLASSIFICATION_ID = "Classification_ID";
47
    protected static final String CLASSIFICATION_TITLE = "ClassificationName";
48
    protected static final String SYNONYM_ID = "Synonym_ID";
49
    protected static final String PARENT_FK = "Parent_Fk";
50
    protected static final String SEC_REFERENCE_FK = "SecReference_Fk";
51
    protected static final String SEC_REFERENCE = "SecReference";
52
    protected static final String SEC_SUBNAME_FK = "SecSubName_Fk";
53
    protected static final String SEC_SUBNAME = "SecSubName";
54
    protected static final String SEC_SUBNAME_AUTHORS = "SecSubNameAuthors";
55
    protected static final String SORT_INDEX = "SortIndex";
56
    protected static final String UNPLACED = "Unplaced";
57
    protected static final String EXCLUDED = "Excluded";
58
    protected static final String DOUBTFUL = "PlacementDoubtful";
59
    protected static final String PUBLISHED = "Published";
60
    protected static final String STATUS_NOTES = "StatusNotes";
61
    protected static final String PLACEMENT_REF_FK = "PlacementReference_Fk";
62
    protected static final String PLACEMENT_REFERENCE = "PlacementReference";
63

    
64

    
65
    //pro parte / misapplied
66
    protected static final String SYN_SEC_REFERENCE_FK = "SynSecReference_Fk";
67
    protected static final String SYN_SEC_REFERENCE = "SynSecReference";
68
    protected static final String IS_PRO_PARTE = "IsProParteSynonym";
69
    protected static final String IS_PARTIAL = "IsPartial";
70
    protected static final String IS_MISAPPLIED = "IsMisapplied";
71

    
72
    //Reference
73
    protected static final String REFERENCE_ID = "Reference_ID";
74
    protected static final String BIBLIO_SHORT_CITATION = "BibliographicShortCitation";
75
    protected static final String REF_TITLE = "Title";
76
    protected static final String ABBREV_REF_TITLE = "AbbrevTitle";
77
    protected static final String DATE_PUBLISHED = "DatePublished";
78
    protected static final String EDITION = "Edition";
79
    protected static final String EDITOR= "Editor";
80
    protected static final String ISBN = "ISBN";
81
    protected static final String ISSN = "ISSN";
82
    protected static final String ORGANISATION = "Organisation";
83
    protected static final String PAGES = "Pages";
84
    protected static final String PLACE_PUBLISHED = "PlacePublished";
85
    protected static final String PUBLISHER = "Publisher";
86
    protected static final String REF_ABSTRACT = "ReferenceAbstract";
87
    protected static final String SERIES_PART = "SeriesPart";
88
    protected static final String VOLUME = "Volume";
89
    protected static final String YEAR = "Year";
90
    protected static final String AUTHORSHIP_TITLE = "FullAuthor";
91

    
92

    
93
    protected static final String IN_REFERENCE = "InReference";
94
    protected static final String INSTITUTION = "Institution";
95
   // protected static final String LSID = "LSID";
96
    protected static final String SCHOOL = "School";
97
    protected static final String REF_TYPE = "ReferenceType";
98
    protected static final String URI = "URI";
99

    
100
    //Name
101
    protected static final String NAME_ID = "Name_ID";
102
//    protected static final String TROPICOS_ID = "Tropicos_ID";
103
//    protected static final String IPNI_ID = "IPNI_ID";
104
//    protected static final String WFO_ID = "WorldFloraOnline_ID";
105
    protected static final String LSID = "LSID";
106
    protected static final String RANK = "Rank";
107
    protected static final String RANK_SEQUENCE = "RankSequence";
108
    protected static final String FULL_NAME_WITH_AUTHORS = "FullNameWithAuthors";
109
    protected static final String FULL_NAME_WITH_REF = "FullNameWithRef";
110
    protected static final String FULL_NAME_NO_AUTHORS = "FullNameNoAuthors";
111
    protected static final String GENUS_UNINOMIAL = "GenusOrUninomial";
112
    protected static final String INFRAGENERIC_RANK = "InfragenericRank";
113
    protected static final String INFRAGENERIC_EPITHET = "InfraGenericEpithet";
114
    protected static final String SPECIFIC_EPITHET = "SpecificEpithet";
115
    protected static final String INFRASPECIFIC_RANK = "InfraspecificRank";
116
    protected static final String INFRASPECIFIC_EPITHET = "InfraSpecificEpithet ";
117
    protected static final String APPENDED_PHRASE = "AppendedPhrase";
118
    protected static final String BAS_EX_AUTHORTEAM_FK = "BasionymExAuthorTeam_Fk";
119
    protected static final String BAS_AUTHORTEAM_FK = "BasionymAuthorTeam_Fk";
120
    protected static final String COMB_EX_AUTHORTEAM_FK = "PublishingExAuthorTeam_Fk";
121
    protected static final String COMB_AUTHORTEAM_FK = "PublishingAuthorTeam_Fk";
122
    protected static final String AUTHOR_TEAM_STRING = "AuthorTeamString";
123
    protected static final String NAME_USED_IN_SOURCE_FK = "NameUsedInSource_Fk";
124
   // protected static final String REFERENCE_FK = "Reference_Fk"
125
    protected static final String PUBLICATION_TYPE = "PublicationType";
126
    protected static final String ABBREV_TITLE = "AbbreviatedTitle";
127
    protected static final String FULL_TITLE = "FullTitle";
128
    protected static final String ABBREV_REF_AUTHOR = "AbbreviatedInRefAuthor";
129
    protected static final String FULL_REF_AUTHOR = "FullInRefAuthor";
130
    protected static final String COLLATION = "Collation";
131
    protected static final String VOLUME_ISSUE = "VolumeIssue";
132
    protected static final String DETAIL = "Detail";
133
    protected static final String YEAR_PUBLISHED = "YearPublished";
134
    protected static final String VERBATIM_DATE = "VerbatimDate";
135
    protected static final String PROTOLOGUE_URI = "ProtologueURI";
136
    protected static final String NOM_STATUS = "NomenclaturalStatus";
137
    protected static final String NOM_STATUS_ABBREV = "NomenclaturalStatusAbbreviation";
138
    protected static final String HOMOTYPIC_GROUP_FK = "HomotypicGroup_Fk";
139
    protected static final String HOMOTYPIC_GROUP_SEQ = "HomotypicGroupSequenceNumber";
140
    protected static final String PROTOLOGUE_TYPE_STATEMENT = "ProtologueTypeStatement";
141
    protected static final String TYPE_SPECIMEN = "TypeSpecimens";
142
    protected static final String TYPE_STATEMENT = "TypeStatements";
143

    
144

    
145

    
146
    //Name Relationship
147
    protected static final String NAME1_FK = "Name1_Fk";
148
    protected static final String NAME2_FK = "Name2_Fk";
149
    protected static final String NAME_REL_TYPE = "NameRelationshipType";
150

    
151
    //CDM MetaData
152
    protected static final String INSTANCE_ID = "EditInstance_ID";
153
    protected static final String INSTANCE_NAME = "EditInstanceName";
154

    
155
    protected static final String DATASET_DESCRIPTION = "DatasetDescription";
156
    protected static final String DATASET_CREATOR = "DatasetCreator";
157
    protected static final String DATASET_CONTRIBUTOR = "DatasetContributor";
158
    protected static final String DATASET_TITLE = "DatasetTitle";
159
    protected static final String DATASET_LANGUAGE = "Language";
160
    protected static final String DATASET_LANDINGPAGE = "DataSetLandingPage";
161
    protected static final String DATASET_DOWNLOAD_LINK = "DatasetDownloadLink";
162
    protected static final String DATASET_BASE_URL = "DatasetBaseUrl";
163
    protected static final String DATASET_RECOMMENDED_CITATTION = "RecommendedCitation";
164
    protected static final String DATASET_LOCATION = "DatasetLocation";
165
    protected static final String DATASET_KEYWORDS = "DatasetKeywords";
166
    protected static final String DATASET_LICENCE = "Licence";
167

    
168

    
169
    //Homotypic Group
170
    protected static final String HOMOTYPIC_GROUP_ID = "HomotypicGroup_ID";
171
    protected static final String HOMOTYPIC_GROUP_STRING = "HomotypicGroupString";
172
    protected static final String HOMOTYPIC_GROUP_WITH_SEC_STRING = "HomotypicGroupStringWithSec";
173
    protected static final String HOMOTYPIC_GROUP_WITHOUT_ACCEPTED = "HomotypicGroupStringWithoutAccepted";
174
    protected static final String HOMOTYPIC_GROUP_WITHOUT_ACCEPTEDWITHSEC = "HomotypicGroupStringWithoutAcceptedWithSec";
175
    protected static final String HOMOTYPIC_GROUP_TYPE_STATEMENT_REFERENCE = "HomotypicGroupTypeStatementReference";
176

    
177
    protected static final String TYPE_STRING = "TypeSpecimenString";
178
    protected static final String TYPE_CACHE = "TypeStatementsString";
179
    protected static final String TYPE_STRING_WITH_REF = "TypeSpecimenStringWithRef";
180
    protected static final String TYPE_CACHE_WITH_REF = "TypeStatementsStringWithRef";
181

    
182
    //NomenclaturalAuthor
183
    protected static final String AUTHOR_ID = "PersonOrTeam_ID";
184
    protected static final String ABBREV_AUTHOR = "AbbrevNames";
185
    protected static final String AUTHOR_TITLE = "FullNames";
186
    protected static final String AUTHOR_GIVEN_NAME = "PersonOtherNames";
187
    protected static final String AUTHOR_FAMILY_NAME = "PersonFamiliyNames";
188
    protected static final String AUTHOR_PREFIX = "PersonPrefix";
189
    protected static final String AUTHOR_SUFFIX = "PersonSuffix";
190

    
191
  //Nomenclatural Author AuthorTeam Relations
192

    
193
    protected static final String AUTHOR_FK = "Author_Fk";
194
    protected static final String AUTHOR_TEAM_FK = "AuthorTeam_Fk";
195
    protected static final String AUTHOR_TEAM_SEQ_NUMBER = "SequenceNumber";
196

    
197
    //TypeDesignations
198
    protected static final String TYPE_ID="Type_ID";
199
    protected static final String SPECIMEN_FK = "Specimen_Fk";
200
    protected static final String TYPIFIED_NAME_FK = "TypifiedName_Fk";
201
    protected static final String TYPE_VERBATIM_CITATION = "TypeVerbatimCitation";
202
    protected static final String TYPE_STATUS = "TypeStatus";
203
    protected static final String TYPE_INFORMATION_REF_STRING = "TypeInformationSource";
204
    protected static final String TYPE_INFORMATION_REF_FK = "TypeInfoSourcePreferred_Fk";
205
    protected static final String TYPE_DESIGNATED_BY_REF_FK = "TypeDesignatedBy_Fk";
206

    
207
    //Type_Name_Rel
208
    protected static final String TYPE_FK="Type_Fk";
209

    
210

    
211
    //Specimen
212
    protected static final String SPECIMEN_ID = "Specimen_ID";
213
    protected static final String SPECIMEN_CITATION = "SpecimenCitation";
214
    protected static final String FIELDUNIT_CITATION = "FieldUnitCitation";
215
    protected static final String LOCALITY= "Locality";
216
    protected static final String COUNTRY = "Country";
217
    protected static final String AREA_CATEGORY1 = "AreaCategory1";
218
    protected static final String AREA_NAME1 = "AreaName1";
219
    protected static final String AREA_CATEGORY2 = "AreaCategory2";
220
    protected static final String AREA_NAME2 = "AreaName2";
221
    protected static final String AREA_CATEGORY3 = "AreaCategory3";
222
    protected static final String AREA_NAME3 = "AreaName3";
223
    protected static final String FURTHER_AREAS = "FurtherAreas";
224
    protected static final String COLLECTOR_STRING = "CollectorString";
225
    protected static final String COLLECTOR_NUMBER = "CollectorNumber";
226
    protected static final String COLLECTION_DATE = "CollectionDate";
227
    protected static final String SPECIMEN_IMAGE_URIS = "SpecimenImageURIs";
228
    protected static final String HERBARIUM_ABBREV = "HerbariumAbbrev";
229
    protected static final String MEDIA_SPECIMEN_URL = "MediaSpecimenURI";
230
    protected static final String PREFERREDSTABLE_ID = "PreferredStableId";
231
    protected static final String BARCODE = "Barcode";
232
    protected static final String ACCESSION_NUMBER = "AccessionNumber";
233
    protected static final String CATALOGUE_NUMBER = "CatalogueNumber ";
234
    //other specimen attributes
235

    
236
    //SimpleFacts
237
    protected static final String FACT_ID = "Fact_ID";
238
    protected static final String FACT_TEXT = "FactText";
239
    protected static final String LANGUAGE = "Language";
240
    protected static final String MEDIA_URI = "MediaURI";
241
    protected static final String FACT_CATEGORY = "FactCategory";
242

    
243
    // Specimen Facts
244
    protected static final String SPECIMEN_NOTES = "SpecimenNotes";
245
    protected static final String SPECIMEN_DESCRIPTION = "SpecimenDescription";
246

    
247
    // TaxonInteraction Facts
248
    protected static final String TAXON2_FK = "Taxon2_FK";
249
    protected static final String DESCRIPTION = "Description";
250

    
251
    //Geographic Area Facts
252
    protected static final String AREA_LABEL = "AreaLabel";
253
    protected static final String STATUS_LABEL = "StatusLabel";
254

    
255
    //FactSources
256
    protected static final String FACT_FK = "Fact_Fk";
257
    protected static final String REFERENCE_FK = "Reference_Fk";
258
    protected static final String NAME_IN_SOURCE_FK = "NameInSource_Fk";
259
    protected static final String FACT_TYPE = "FactType";
260

    
261
    //Annotations
262

    
263

    
264
    //Identifiers
265
    protected static final String EXTERNAL_NAME_IDENTIFIER = "ExternalIdentifier";
266
    protected static final String IDENTIFIER_TYPE = "IdentifierType";
267
    protected static final String FK = "ForeignKey";
268
    protected static final String REF_TABLE = "ReferencedTable";
269

    
270
    final static String[] homotypicGroupColumns(){
271
        return new String[]{HOMOTYPIC_GROUP_ID, HOMOTYPIC_GROUP_STRING, TYPE_STRING, TYPE_CACHE, HOMOTYPIC_GROUP_WITH_SEC_STRING, HOMOTYPIC_GROUP_WITHOUT_ACCEPTED, HOMOTYPIC_GROUP_WITHOUT_ACCEPTEDWITHSEC, SORT_INDEX, HOMOTYPIC_GROUP_TYPE_STATEMENT_REFERENCE};
272

    
273
    }
274

    
275
//    private static String[] compressedDistributionFactColumns() {
276
//        return new String[]{FACT_ID, TAXON_FK, FACT_TEXT};
277
//    }
278

    
279
    private Object usageFactColumns() {
280
        return new String[]{FACT_ID, TAXON_FK, FACT_TEXT, LANGUAGE, MEDIA_URI, FACT_CATEGORY};
281
    }
282

    
283
    final static String[] nameFactColumns() {
284
        return new String[]{FACT_ID, NAME_FK, FACT_TEXT, LANGUAGE, MEDIA_URI, FACT_CATEGORY};
285
    }
286
    final static String[] taxonInteractionFactsColumns(){
287
        return new String[]{FACT_ID, TAXON_FK, TAXON2_FK, DESCRIPTION};
288
    }
289

    
290
    final static String[] identifierColumns() {
291
        return new String[]{ FK, REF_TABLE, EXTERNAL_NAME_IDENTIFIER, IDENTIFIER_TYPE};
292
    }
293

    
294
    final static String[] mediaColumns() {
295
        return new String[]{ FACT_ID, TAXON_FK, NAME_FK, MEDIA_URI};
296
    }
297

    
298
    final static String[]  factSourcesColumns() {
299
        return new String[]{FACT_FK, REFERENCE_FK, NAME_IN_SOURCE_FK, FACT_TYPE};
300
    }
301

    
302
    final static String[] specimenFactsColumns() {
303
        return new String[]{FACT_ID, TAXON_FK, SPECIMEN_FK, SPECIMEN_DESCRIPTION, SPECIMEN_NOTES};
304
    }
305

    
306
    final static String[] commonNameFactsColumns() {
307
        return new String[]{FACT_ID, TAXON_FK, FACT_TEXT, LANGUAGE, AREA_LABEL};
308

    
309
    }
310
    final static String[] geographicAreaFactsColumns() {
311
        return new String[]{FACT_ID, TAXON_FK, AREA_LABEL, STATUS_LABEL};
312
    }
313

    
314
    final static String[] simpleFactsColumns() {
315
        return new String[]{FACT_ID, TAXON_FK, FACT_TEXT, LANGUAGE, MEDIA_URI, FACT_CATEGORY};
316
    }
317

    
318
    final static String[] nomenclaturalAuthorColumns() {
319
        return new String[]{AUTHOR_ID, ABBREV_AUTHOR, AUTHOR_TITLE, AUTHOR_GIVEN_NAME, AUTHOR_FAMILY_NAME, AUTHOR_PREFIX, AUTHOR_SUFFIX};
320
    }
321

    
322
    final static String[] nomenclaturalAuthorTeamRelColumns() {
323
        return new String[]{AUTHOR_TEAM_FK, AUTHOR_FK, AUTHOR_TEAM_SEQ_NUMBER};
324
    }
325

    
326
    final static String[] metaDataColumns(){
327
        return new String[]{INSTANCE_ID, INSTANCE_NAME, DATASET_TITLE, DATASET_CONTRIBUTOR, DATASET_CREATOR, DATASET_DESCRIPTION,
328
                DATASET_DOWNLOAD_LINK, DATASET_BASE_URL, DATASET_KEYWORDS, DATASET_LANDINGPAGE, DATASET_LANGUAGE, DATASET_LICENCE,
329
                DATASET_LOCATION, DATASET_RECOMMENDED_CITATTION};
330
    }
331

    
332
    final static String[] nameRelationColumns(){
333
        return new String[]{NAME1_FK, NAME2_FK, NAME_REL_TYPE};
334
    }
335

    
336
    final static String[] nameColumns(){
337
        return new String[]{NAME_ID, LSID, RANK, RANK_SEQUENCE,
338
                FULL_NAME_WITH_AUTHORS, FULL_NAME_NO_AUTHORS, GENUS_UNINOMIAL,
339
                INFRAGENERIC_RANK, INFRAGENERIC_EPITHET, SPECIFIC_EPITHET,
340
                INFRASPECIFIC_RANK, INFRASPECIFIC_EPITHET,
341
                BAS_EX_AUTHORTEAM_FK, BAS_AUTHORTEAM_FK, COMB_EX_AUTHORTEAM_FK, COMB_AUTHORTEAM_FK,
342
                AUTHOR_TEAM_STRING, REFERENCE_FK, PUBLICATION_TYPE, ABBREV_TITLE, FULL_TITLE,
343
                ABBREV_REF_AUTHOR, FULL_REF_AUTHOR, COLLATION, VOLUME_ISSUE,
344
                DETAIL, DATE_PUBLISHED, YEAR_PUBLISHED, VERBATIM_DATE, PROTOLOGUE_URI,
345
                NOM_STATUS, NOM_STATUS_ABBREV, HOMOTYPIC_GROUP_FK,
346
                HOMOTYPIC_GROUP_SEQ, PROTOLOGUE_TYPE_STATEMENT, TYPE_SPECIMEN, TYPE_STATEMENT, FULL_NAME_WITH_REF, NAME_USED_IN_SOURCE_FK, APPENDED_PHRASE
347
        };
348
    }
349

    
350
    final static String[] taxonColumns(){
351
        return new String[]{TAXON_ID, CLASSIFICATION_ID, CLASSIFICATION_TITLE, NAME_FK, PARENT_FK, SEC_REFERENCE_FK, SEC_REFERENCE, SEC_SUBNAME_FK, SEC_SUBNAME, SEC_SUBNAME_AUTHORS, APPENDED_PHRASE, SORT_INDEX, EXCLUDED, UNPLACED, DOUBTFUL, STATUS_NOTES, PLACEMENT_REF_FK, PLACEMENT_REFERENCE, PUBLISHED};
352
    }
353

    
354
    final static String[] synonymColumns(){
355
        return new String[]{SYNONYM_ID, TAXON_FK, NAME_FK, SYN_SEC_REFERENCE_FK, SYN_SEC_REFERENCE, SEC_REFERENCE_FK, SEC_REFERENCE,
356
                IS_PRO_PARTE, IS_PARTIAL, IS_MISAPPLIED, PUBLISHED, SORT_INDEX, APPENDED_PHRASE};
357
    }
358

    
359
    final static String[] referenceColumns(){
360
        return new String[]{REFERENCE_ID, BIBLIO_SHORT_CITATION, REF_TITLE,ABBREV_REF_TITLE, DATE_PUBLISHED, EDITION, EDITOR, ISBN,ISSN, ORGANISATION, PAGES, PLACE_PUBLISHED, PUBLISHER,
361
                REF_ABSTRACT, SERIES_PART, VOLUME, YEAR, AUTHORSHIP_TITLE, AUTHOR_FK, IN_REFERENCE, INSTITUTION, LSID, SCHOOL, REF_TYPE, URI};
362
    }
363

    
364
    final static String[] typeDesignationColumns(){
365
        return new String[]{TYPE_ID, TYPIFIED_NAME_FK, SPECIMEN_FK, //TYPE_VERBATIM_CITATION,
366
                TYPE_STATUS, TYPE_DESIGNATED_BY_REF_FK, TYPE_INFORMATION_REF_STRING, TYPE_INFORMATION_REF_FK};
367

    
368
    }
369

    
370
    final static String[] typeDesignationNameColumns(){
371
        return new String[]{TYPE_FK, NAME_FK};
372
    }
373

    
374

    
375
    final static String[] specimenColumns() {
376
        return new String[]{SPECIMEN_ID, SPECIMEN_CITATION, FIELDUNIT_CITATION, LOCALITY, COUNTRY, AREA_CATEGORY1, AREA_NAME1, AREA_CATEGORY2, AREA_NAME2, AREA_CATEGORY3, AREA_NAME3,
377
                FURTHER_AREAS, COLLECTOR_STRING, COLLECTOR_NUMBER, COLLECTION_DATE, SPECIMEN_IMAGE_URIS, HERBARIUM_ABBREV, MEDIA_SPECIMEN_URL, PREFERREDSTABLE_ID, BARCODE, CATALOGUE_NUMBER, ACCESSION_NUMBER};
378
    }
379

    
380
    private String tableName;
381
    private String[] columnNames;
382

    
383
// ************** CONSTRUCTOR *******************/
384

    
385
    private CdmLightExportTable(String tableName, String[] columnNames){
386
        this.tableName = tableName;
387
        this.columnNames = columnNames;
388
    }
389

    
390
// ****************** GETTER / SETTER *************/
391

    
392
    public String getTableName() {return tableName;}
393

    
394
    public int getSize(){ return columnNames.length;}
395

    
396
    public String[] getColumnNames(){return columnNames;}
397

    
398
    public int getIndex(String columnName) {
399
        int index= 0;
400
        for(String column : getColumnNames()){
401
            if (column.equals(columnName)){
402
                return index;
403
            }
404
            index++;
405
        }
406
        return -1;
407
    }
408
}
(5-5/6)