Project

General

Profile

1
SALVIAS,VegBIEN:/_setDefault:[source_id/source/shortname/_env:[name=source]]/path/_simplifyPath:[next=parent_id]/path,Comments
2
coll_number,"/_if[@name=""if specimen""]/cond/_exists/_alt/1",Brad: Map instead as for voucher_string
3
SourceVoucher,"/_if[@name=""if specimen""]/cond/_exists/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
4
Line,"/location/_if[@name=""if subplot""]/cond/_exists",
5
PlotCode,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/1",
6
PlotID,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/2/_if[@name=""if locationID""]/cond/_exists",
7
coll_number,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/cond/_exists/_alt/1",Brad: Map instead as for voucher_string
8
SourceVoucher,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/cond/_exists/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
9
coll_number,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/1/_if[@name=""if specimen""]/cond/_exists/_alt/1",Brad: Map instead as for voucher_string
10
SourceVoucher,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/1/_if[@name=""if specimen""]/cond/_exists/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
11
DetType,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/3/_if[@name=""if indirect voucher""]/cond/_eq:[right=indirect]/left","Brad: A SALVIAS value referring to the relationship between the voucher specimen and the observation. Affect how the identification of the specimen(latin name) is transferred to the observation. 'direct'=voucher specimen was collected from this same tree; they are one and the same individual. 'indirect'=voucher specimen was collected for a different individual, but the original data provider confirmed that this is the same species. 'default'=basically same as 'indirect'. 'uncollected'=no voucher specimen, data provider  asserted that this was the name but was unable to collect. The main different is that with 'direct', 'indirect', and 'default', the scientific name can be updated automatically based on the name attached to the specimen voucher (assuming you have a link to that data, presumably from a herbarium database. Whereas, if det_type='uncollected', the name can never change because there is no specimen."
12
coll_number,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/3/_if[@name=""if indirect voucher""]/else/_alt/1",Brad: Map instead as for voucher_string
13
SourceVoucher,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/3/_if[@name=""if indirect voucher""]/else/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
14
PlotID,"/location/_if[@name=""if subplot""]/else/sourceaccessioncode/_if[@name=""if geovalidation""]/else",
15
PlotCode,"/location/_if[@name=""if subplot""]/then/parent_id/location/authorlocationcode",
16
PlotID,"/location/_if[@name=""if subplot""]/then/parent_id/location/sourceaccessioncode",
17
Line,/location/authorlocationcode,
18
Ind,"/location/iscultivated/_or/1/_if[@name=""if TaxonOccurrence""]/cond/_exists","Brad: Code, if any, used by the data provider to indicate an individual tree. Scope is unknown, although typically this value is unique only within plot, or sometimes only within subplot."
19
PlotObsID,"/location/iscultivated/_or/1/_if[@name=""if TaxonOccurrence""]/cond/_exists","Brad: Neither is correct; this is just an internal ID for table plotObservations. However, it has the important property of uniquely identifying an ""observation"", which is an individual tree, in the case of an individual observation, or a records of a species with an associated count of individuals or measurement of percent cover, in the case of aggregate observations. Not sure where to store this. Main point is that it is not part of the original data, but an auto_increment added later."
20
Line,"/location/locationevent/_if[@name=""if subplot""]/cond/_exists",
21
census_date,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/cond/_exists","This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
22
-----
23
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
24
FROM ""SALVIAS"".organisms
25
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
26
GROUP BY ""PlotID"", ""Line""
27
HAVING count(DISTINCT census_date) > 1
28
-----"
29
Line,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/then/parent_id/locationevent/*_id/location/authorlocationcode/_if[@name=""if subplot""]/cond/_first/2",
30
PlotCode,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/then/parent_id/locationevent/*_id/location/authorlocationcode/_if[@name=""if subplot""]/then",
31
Line,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode/_if[@name=""if subplot""]/cond/_first/2",
32
PlotID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode/_if[@name=""if subplot""]/then",
33
census_date,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/then/parent_id/locationevent/obsenddate/_alt/2/_dateRangeEnd/value","This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
34
-----
35
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
36
FROM ""SALVIAS"".organisms
37
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
38
GROUP BY ""PlotID"", ""Line""
39
HAVING count(DISTINCT census_date) > 1
40
-----"
41
census_date,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if has event""]/then/parent_id/locationevent/obsstartdate/_alt/2/_dateRangeStart/value","This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
42
-----
43
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
44
FROM ""SALVIAS"".organisms
45
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
46
GROUP BY ""PlotID"", ""Line""
47
HAVING count(DISTINCT census_date) > 1
48
-----"
49
census_date,/location/locationevent/obsenddate/_alt/2/_dateRangeEnd/value,"This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
50
-----
51
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
52
FROM ""SALVIAS"".organisms
53
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
54
GROUP BY ""PlotID"", ""Line""
55
HAVING count(DISTINCT census_date) > 1
56
-----"
57
census_date,/location/locationevent/obsstartdate/_alt/2/_dateRangeStart/value,"This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
58
-----
59
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
60
FROM ""SALVIAS"".organisms
61
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
62
GROUP BY ""PlotID"", ""Line""
63
HAVING count(DISTINCT census_date) > 1
64
-----"
65
NoInd,/location/locationevent/taxonoccurrence/aggregateoccurrence/count,"Brad: This is a count of number of indiiduals for an *aggregate* observation. For VegBank, I'm not sure. Not exactly the same as stemCount. An individual tree could have 3 stems but would still only count as 1. We need to check with Bob on this."
66
cover_percent,/location/locationevent/taxonoccurrence/aggregateoccurrence/cover_fraction/_percent_to_fraction/value,
67
census_no,"/location/locationevent/taxonoccurrence/aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=censusNo]]:[@fkey=tablerecord_id]/definedvalue","Brad: Assigned by SALVIAS. 1 for first plot, then 2, 3, etc. I can't recall if we even have repeat censuses in SALVIAS. Probably not."
68
intercept_cm,/location/locationevent/taxonoccurrence/aggregateoccurrence/linecover_m/_cm_to_m/value,"Brad: This is an aggregate observation. Used in line-intercept methodology only, describes the point along centerline at which an individual intercepts the center line of the plot. Used to determin relative abundance."
69
Notes,/location/locationevent/taxonoccurrence/aggregateoccurrence/notes,
70
Ind,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/collectionnumber,"Brad: Code, if any, used by the data provider to indicate an individual tree. Scope is unknown, although typically this value is unique only within plot, or sometimes only within subplot."
71
PlotObsID,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/sourceaccessioncode,"Brad: Neither is correct; this is just an internal ID for table plotObservations. However, it has the important property of uniquely identifying an ""observation"", which is an individual tree, in the case of an individual observation, or a records of a species with an associated count of individuals or measurement of percent cover, in the case of aggregate observations. Not sure where to store this. Main point is that it is not part of the original data, but an auto_increment added later."
72
DetType,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/cond/_eq:[right=indirect]/left","Brad: A SALVIAS value referring to the relationship between the voucher specimen and the observation. Affect how the identification of the specimen(latin name) is transferred to the observation. 'direct'=voucher specimen was collected from this same tree; they are one and the same individual. 'indirect'=voucher specimen was collected for a different individual, but the original data provider confirmed that this is the same species. 'default'=basically same as 'indirect'. 'uncollected'=no voucher specimen, data provider  asserted that this was the name but was unable to collect. The main different is that with 'direct', 'indirect', and 'default', the scientific name can be updated automatically based on the name attached to the specimen voucher (assuming you have a link to that data, presumably from a herbarium database. Whereas, if det_type='uncollected', the name can never change because there is no specimen."
73
coll_number,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else/_alt/1",Brad: Map instead as for voucher_string
74
SourceVoucher,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
75
coll_number,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/sourcename/_if[@name=""if specimen""]/cond/_exists/_alt/1",Brad: Map instead as for voucher_string
76
SourceVoucher,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/sourcename/_if[@name=""if specimen""]/cond/_exists/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
77
canopy_form,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/definedvalue[*_id/userdefined[tablename=stemobservation,userdefinedname=canopyForm]]:[@fkey=tablerecord_id]/definedvalue",
78
canopy_position,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/definedvalue[*_id/userdefined[tablename=stemobservation,userdefinedname=canopyPosition]]:[@fkey=tablerecord_id]/definedvalue",
79
liana_infestation,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/definedvalue[*_id/userdefined[tablename=stemobservation,userdefinedname=lianaInfestation]]:[@fkey=tablerecord_id]/definedvalue",
80
temp_dbh,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/diameterbreastheight_m/_cm_to_m/value,"Assuming units based on the units for intercept_cm, which measures the same dimension"
81
height_m,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/height_m,"""Total height of individual, in meters"" (height_m definition at <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data>)"
82
ht_first_branch_m,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/heightfirstbranch_m,
83
tag2,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag/_alt/1,"The second tag supercedes the first. Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other."
84
tag1,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag/_alt/2,"The second tag supercedes the first. Brad: Another type of code, typically a number, used by the original data provider to indicate an individual tree. These are numbers on physical tags attached to the tree. Tag2 Is the same thing, only used if the first tag was lost. Obviously not a good system as it's possible a tree tag could be lost and changed more than once."
85
x_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,"""x coordinate in meters"" (x_position definition at <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data>). Brad: These are important, fundamental values of many tree plots"
86
y_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,"""y coordinate in meters"" (y_position definition at <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data>). Brad: See comment above for x_position"
87
PlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_if[@name=""if in plot""]/cond/_exists",
88
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_if[@name=""if in plot""]/cond/_exists",
89
Ind,"/location/locationevent/taxonoccurrence/authortaxoncode/_if[@name=""if in plot""]/then/_first/1/_first/1","Brad: Code, if any, used by the data provider to indicate an individual tree. Scope is unknown, although typically this value is unique only within plot, or sometimes only within subplot."
90
tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_if[@name=""if in plot""]/then/_first/1/_first/2/_alt/1","The second tag supercedes the first. Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other."
91
tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_if[@name=""if in plot""]/then/_first/1/_first/2/_alt/2","The second tag supercedes the first. Brad: Another type of code, typically a number, used by the original data provider to indicate an individual tree. These are numbers on physical tags attached to the tree. Tag2 Is the same thing, only used if the first tag was lost. Obviously not a good system as it's possible a tree tag could be lost and changed more than once."
92
coll_firstname,/location/locationevent/taxonoccurrence/collector_id/party/fullname/_join_words/1,Brad: See comment above
93
coll_lastname,/location/locationevent/taxonoccurrence/collector_id/party/fullname/_join_words/2,"Brad: This is the collector of a separate specimen which vouchers this tree or species. I worry that vouchers are not properly accommodated in VegX. Again, we need to check with Nick."
94
Habit,"/location/locationevent/taxonoccurrence/growthform/_map:[./{T,Arbol,palm}=tree,./{H,""Hemiepífito""}=hemiepiphyte,./{L,l,""L?"",Liana}=liana,E=epiphyte,S=shrub,Hb=herb,""vine-herbaceous""=vine,graminoid=grass,rosette=forb,*=*]/value","Brad: This is growth form (tree, shrub, herb, etc.). It is an observation of a trait."
95
Ind,"/location/locationevent/taxonoccurrence/iscultivated/_alt/1/_if[@name=""if TaxonOccurrence""]/cond/_exists","Brad: Code, if any, used by the data provider to indicate an individual tree. Scope is unknown, although typically this value is unique only within plot, or sometimes only within subplot."
96
PlotObsID,"/location/locationevent/taxonoccurrence/iscultivated/_alt/1/_if[@name=""if TaxonOccurrence""]/cond/_exists","Brad: Neither is correct; this is just an internal ID for table plotObservations. However, it has the important property of uniquely identifying an ""observation"", which is an individual tree, in the case of an individual observation, or a records of a species with an associated count of individuals or measurement of percent cover, in the case of aggregate observations. Not sure where to store this. Main point is that it is not part of the original data, but an auto_increment added later."
97
PlotObsID,"/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/2/_if[@name=""if organism in AggregateOccurrence""]/else","Brad: Neither is correct; this is just an internal ID for table plotObservations. However, it has the important property of uniquely identifying an ""observation"", which is an individual tree, in the case of an individual observation, or a records of a species with an associated count of individuals or measurement of percent cover, in the case of aggregate observations. Not sure where to store this. Main point is that it is not part of the original data, but an auto_increment added later."
98
det_by,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/fullname,
99
Family,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/1/_taxon_family_require_std/family/_nullIf/value",
100
Genus,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/2",
101
Species,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/3/_join_words/1",
102
infra_ep_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/1/_if[@name=""if has infraspecificEpithet""]/cond",
103
infra_rank_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/1/_if[@name=""if has infraspecificEpithet""]/then",
104
infra_ep_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/2",
105
auth,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/_if[@name=""if has verbatim name""]/else/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/2",Brad: This is the author of the scientificName.
106
infra_rank_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/_if[@name=""if has explicit parent""]/else/rank",
107
infra_rank_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/_if[@name=""if has explicit parent""]/else/taxonverbatim/verbatimrank",
108
Species,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=species]/taxonepithet",
109
Genus,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,species,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=genus]/_if[@name=""if is canonical name""]/then/matched_label_id/taxonlabel:[source_id/source/shortname=NCBI]/taxonomicname",
110
Genus,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,species,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=genus]/taxonepithet",
111
Family,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,species,genus,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=family]/_if[@name=""if is canonical name""]/then/matched_label_id/taxonlabel:[source_id/source/shortname=NCBI]/taxonomicname",
112
Family,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,species,genus,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=family]/taxonepithet",
113
infra_ep_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/taxonepithet,
114
infra_rank_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/rank,
115
infra_rank_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonepithet/_if[@name=""if taxonomic name is epithet""]/cond/_alt:[2=true]/1/_taxonomic_name_is_epithet/rank",
116
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/1/_taxon_family_require_std/family/_nullIf/value,
117
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/2,
118
Species,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/3/_join_words/1,
119
infra_ep_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/1/_if[@name=""if has infraspecificEpithet""]/cond",
120
infra_rank_1,"/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/1/_if[@name=""if has infraspecificEpithet""]/then",
121
infra_ep_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/2,
122
auth,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/2,Brad: This is the author of the scientificName.
123
auth,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/author,Brad: This is the author of the scientificName.
124
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/family,
125
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/genus,
126
Species,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/specific_epithet,
127
infra_rank_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonverbatim/verbatimrank,
128
cfaff,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/taxonfit,"Brad: Not sure where this goes. Indicator of identification uncertainty. 'cf.'=similar to the species listed, 'aff.'=related to the species list, but not the same. You'll need to check with Bob and with Nick where these go in VegX and VegBank."
129
OrigFamily,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/1/_taxon_family_require_std/family/_nullIf/value,Brad: OMIT
130
OrigGenus,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/2,
131
OrigSpecies,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/matched_label_id/taxonlabel:[source_id/source/shortname=TNRS]/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/3,Brad: OMIT
132
OrigSpecies,"/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=species]/taxonepithet",Brad: OMIT
133
OrigGenus,"/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,species,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=genus]/taxonepithet",
134
OrigFamily,"/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/parent_id/taxonlabel/parent_id/_forEach:[in:[cultivar,forma,variety,subspecies,species,genus,],do=""taxonlabel[rank=_val]/parent_id""]/taxonlabel[rank=family]/taxonepithet",Brad: OMIT
135
OrigFamily,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/1/_taxon_family_require_std/family/_nullIf/value,Brad: OMIT
136
OrigGenus,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/2,
137
OrigSpecies,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/*_id/taxonlabel/taxonomicname/_join_words/2/_alt/2/_join_words/1/_alt/2/_join_words/3,Brad: OMIT
138
OrigFamily,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/family,Brad: OMIT
139
OrigGenus,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/genus,
140
OrigSpecies,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonverbatim/specific_epithet,Brad: OMIT
141
DetType,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/cond/_eq:[right=indirect]/left","Brad: A SALVIAS value referring to the relationship between the voucher specimen and the observation. Affect how the identification of the specimen(latin name) is transferred to the observation. 'direct'=voucher specimen was collected from this same tree; they are one and the same individual. 'indirect'=voucher specimen was collected for a different individual, but the original data provider confirmed that this is the same species. 'default'=basically same as 'indirect'. 'uncollected'=no voucher specimen, data provider  asserted that this was the name but was unable to collect. The main different is that with 'direct', 'indirect', and 'default', the scientific name can be updated automatically based on the name attached to the specimen voucher (assuming you have a link to that data, presumably from a herbarium database. Whereas, if det_type='uncollected', the name can never change because there is no specimen."
142
coll_number,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/then/_alt/1",Brad: Map instead as for voucher_string
143
SourceVoucher,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/then/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
144
Line,"/location/sourceaccessioncode/_join/1/_if[@name=""if subplot and unique only within parent""]/cond/_exists",
145
PlotID,"/location/sourceaccessioncode/_join/1/_if[@name=""if subplot and unique only within parent""]/then/_first/1",
146
PlotCode,"/location/sourceaccessioncode/_join/1/_if[@name=""if subplot and unique only within parent""]/then/_first/2",
147
Line,/location/sourceaccessioncode/_join/2,
148
GenAuth,,** No join mapping for *GenAuth ** 
149
IsMorpho,,** No join mapping for *IsMorpho ** 
150
OrigAuth,,** No join mapping for *OrigAuth ** 
151
OrigRecordID,,** No join mapping for *OrigRecordID ** 
152
PlotID_index,,** No non-empty join mapping for OMIT ** Placeholder column created by MySQL to PostgreSQL translation
153
SpAuthStatus,,** No join mapping for *SpAuthStatus ** 
154
coll_inits,,** No join mapping for *coll_inits ** 
155
collector_code,,** No join mapping for *collector_code ** Brad: OMIT
156
common_name,,** No join mapping for *common_name ** 
157
dist,,** No join mapping for *dist ** 
158
fam_status,,** No non-empty join mapping for OMIT ** Brad: OMIT. This will be determined later by using TNRS.
159
gen_status,,** No non-empty join mapping for OMIT ** Brad: OMIT. This will be determined later by using TNRS.
160
height_class,,** No join mapping for *height_class ** 
161
height_m_commercial,,** No join mapping for *height_m_commercial ** 
162
ind_id,,** No join mapping for *ind_id ** Brad: OMIT
163
infra_auth_1,,** No join mapping for *infra_auth_1 ** 
164
morphocf,,** No join mapping for *morphocf ** 
165
morphoname,,"** No join mapping for *morphoname ** Not the morphospecies, which is stored in Species"
166
name_status,,"** No non-empty join mapping for OMIT ** Brad: OMIT. Except, note that if species_status=3, this indicate that name is a morphospecies and not a standard latin name. Not exactly sure how to use this in BIEN, but could be useful during the name-scrubbing process with TNRS."
167
other_annotations,,** No join mapping for *other_annotations ** 
168
perp_dist,,** No join mapping for *perp_dist ** 
169
phenology,,** No join mapping for *phenology ** 
170
species_code,,** No join mapping for *species_code ** 
171
temp_liandbh,,** No join mapping for *temp_liandbh ** 
172
tmp_PlotObsID,,** No join mapping for *tmp_PlotObsID ** 
173
tmp_PlotObsID_index,,** No non-empty join mapping for OMIT ** Placeholder column created by MySQL to PostgreSQL translation
174
tmp_del,,** No join mapping for *tmp_del ** 
175
tmp_del_index,,** No non-empty join mapping for OMIT ** Placeholder column created by MySQL to PostgreSQL translation
(2-2/7)