Issue 12557

Update & document FieldName enum

12557
Reporter: mdoering
Type: Improvement
Summary: Update & document FieldName enum
Priority: Major
Status: Open
Created: 2012-12-20 10:25:10.177
Updated: 2016-02-15 13:45:36.308
        
Description: The FieldName enum is internal to primarily refer to HBase columns without knowing their actual names.
We use the enum also to map download hive queries.

Discuss and refactor the following changes:

1) rename enum to OccurrenceField or OccStoreField so its clear in other contexts what this refers to
2) Rename SUBSPECIES to INFRASPECIFIC_EPITHET as its not the subspecies but also used for the variety or form epithet depending on the rank.
3) More generally rename all entries in the enum to use the actual dwc names in proper ENUM_CASE, i.e. use the "user facing" terms which the download exposes.
4) Maintain the map between the enum and the hive and user facing name (mainly a case change to the enum name). Both for hive and download headers the same names should be used, so we only need to maintain one map

At least all non dwc terms in the enum should contain a documentation to what they represent.]]>
    


Author: mdoering@gbif.org
Created: 2012-12-20 10:28:33.796
Updated: 2012-12-20 10:28:33.796
        
for fields which dont exist in dwc we should use the same user facing names as we use for properties in our model classes. For example the following is exposed in json in our occurrence api already:

  private Integer kingdomKey;
  private Integer phylumKey;
  private Integer classKey;
  private Integer orderKey;
  private Integer familyKey;
  private Integer genusKey;
  private Integer subgenusKey;
  private Integer speciesKey;

    


Author: mdoering@gbif.org
Comment: HiveFieldUtil in occurrence-download-ws has a combined mapping of hive and user facing names, but it needs to handle some few special cases to avoid reserved hive names like "order"
Created: 2013-01-09 15:57:53.016
Updated: 2013-01-09 15:57:53.016