Project

General

Profile

« Previous | Next » 

Revision 4833

mappings/VegCore-VegBIEN.csv: taxonoccurrence.authortaxoncode alternatives: Use _first instead of _alt because when one of these fields is present, it can be used directly even if it's sometimes NULL, without needing to spend a lot of time _alting together fields that won't be used. Datasources where the authortaxoncode is sometimes NULL usually have a separate sourceaccessioncode for the taxonoccurrence. (In the rare case that they don't, they should map a non-NULL field to recordNumber or tag to ensure that taxonoccurrences can be uniquely identified.)

View differences:

inputs/SpeciesLink/Specimen/test.xml.ref
235 235
                        </aggregateoccurrence>
236 236
                        <authortaxoncode>
237 237
                            <_alt>
238
                                <1>
238
                                <1>$dwc_terms_recordNumber</1>
239
                                <2>
239 240
                                    <_alt>
240
                                        <1>$dwc_terms_recordNumber</1>
241
                                        <2>
242
                                            <_alt>
243
                                                <0>$conceptual_darwin_2003_1_0_FieldNumber</0>
244
                                                <1>$dwc_curatorial_FieldNumber</1>
245
                                                <2>$dwc_terms_fieldNumber</2>
246
                                            </_alt>
247
                                        </2>
248
                                        <3>
249
                                            <_alt>
250
                                                <0>$conceptual_darwin_2003_1_0_CollectorNumber</0>
251
                                                <1>$dwc_curatorial_CollectorNumber</1>
252
                                            </_alt>
253
                                        </3>
241
                                        <0>$conceptual_darwin_2003_1_0_FieldNumber</0>
242
                                        <1>$dwc_curatorial_FieldNumber</1>
243
                                        <2>$dwc_terms_fieldNumber</2>
254 244
                                    </_alt>
255
                                </1>
256
                                <2>
245
                                </2>
246
                                <3>
257 247
                                    <_alt>
258
                                        <0>$conceptual_darwin_2003_1_0_ScientificName</0>
259
                                        <1>$dwc_dwcore_ScientificName</1>
260
                                        <2>$dwc_terms_scientificName</2>
248
                                        <0>$conceptual_darwin_2003_1_0_CollectorNumber</0>
249
                                        <1>$dwc_curatorial_CollectorNumber</1>
261 250
                                    </_alt>
262
                                </2>
251
                                </3>
263 252
                            </_alt>
264 253
                        </authortaxoncode>
265 254
                        <taxondetermination>
inputs/VegBank/taxonobservation_/VegBIEN.csv
6 6
collectiondate,/location/locationevent/taxonoccurrence/aggregateoccurrence/collectiondate/_alt/1/_*/date,
7 7
notes,/location/locationevent/taxonoccurrence/aggregateoccurrence/notes,
8 8
museumaccessionnumber,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else",
9
authorplantname,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/1,
9
authorplantname,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/1,
10 10
taxonobservation_id,/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/1,
11 11
Class,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/class,
12 12
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
inputs/QMOR/Specimen/VegBIEN.csv
23 23
collectionID,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/2,
24 24
institutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
25 25
id,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
26
scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
26
scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
27 27
identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
28 28
identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
29 29
identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/SALVIAS/plotObservations/VegBIEN.csv
48 48
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."
49 49
x_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,"Brad: These are important, fundamental values of many tree plots"
50 50
y_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,Brad: See comment above for x_position
51
Ind,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/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."
52
PlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
53
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
54
tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_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."
55
tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_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."
51
Ind,/location/locationevent/taxonoccurrence/authortaxoncode/_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."
52
PlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
53
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
54
tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_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."
55
tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_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."
56 56
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.; According to <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data.habit>, <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/SALVIAS#Habit>"
57 57
PlotObsID,/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/2,"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."
58 58
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
inputs/U/Specimen/VegBIEN.csv
10 10
Number,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/collectionnumber,
11 11
Barcode,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else",
12 12
ID,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
13
Number,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,
13
Number,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
14 14
Detby,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
15 15
Detby,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
16 16
Detby,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/ARIZ/Specimen/test.xml.ref
126 126
                                </specimenreplicate>
127 127
                            </plantobservation>
128 128
                        </aggregateoccurrence>
129
                        <authortaxoncode>
130
                            <_alt>
131
                                <1>$CollectorNumber</1>
132
                                <2>
133
                                    <_alt>
134
                                        <1>$ScientificNameAuthor</1>
135
                                        <2>$ScientificName</2>
136
                                    </_alt>
137
                                </2>
138
                            </_alt>
139
                        </authortaxoncode>
129
                        <authortaxoncode>$CollectorNumber</authortaxoncode>
140 130
                        <taxondetermination>
141 131
                            <party_id>
142 132
                                <party>
inputs/GBIF/Specimen/test.xml.ref
67 67
                                </specimenreplicate>
68 68
                            </plantobservation>
69 69
                        </aggregateoccurrence>
70
                        <authortaxoncode>
71
                            <_alt>
72
                                <1>$ScientificNameOriginal</1>
73
                                <3>$ScientificName</3>
74
                            </_alt>
75
                        </authortaxoncode>
70
                        <authortaxoncode>$ScientificNameOriginal</authortaxoncode>
76 71
                        <taxondetermination>
77 72
                            <party_id>
78 73
                                <party>
inputs/SpeciesLink/Specimen/VegBIEN.csv
68 68
dwc_dwcore_InstitutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
69 69
dwc_terms_institutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
70 70
dwc_dwcore_GlobalUniqueIdentifier,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
71
dwc_terms_recordNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/1,
72
conceptual_darwin_2003_1_0_FieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2,"Usage inconsistent with DwC definition. This field is instead identical to recordNumber, as the following query returns zero: (takes 23 sec)
71
dwc_terms_recordNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1/_alt/1,
72
conceptual_darwin_2003_1_0_FieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1/_alt/2,"Usage inconsistent with DwC definition. This field is instead identical to recordNumber, as the following query returns zero: (takes 23 sec)
73 73
-----
74 74
SELECT count(*) FROM ""SpeciesLink"".specimens
75 75
WHERE COALESCE(""dwc_curatorial_FieldNumber"", ""dwc_terms_fieldNumber"", ""conceptual_darwin_2003_1_0_FieldNumber"") != ""dwc_terms_recordNumber""
76 76
-----"
77
dwc_curatorial_FieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2,"Usage inconsistent with DwC definition. This field is instead identical to recordNumber, as the following query returns zero: (takes 23 sec)
77
dwc_curatorial_FieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1/_alt/2,"Usage inconsistent with DwC definition. This field is instead identical to recordNumber, as the following query returns zero: (takes 23 sec)
78 78
-----
79 79
SELECT count(*) FROM ""SpeciesLink"".specimens
80 80
WHERE COALESCE(""dwc_curatorial_FieldNumber"", ""dwc_terms_fieldNumber"", ""conceptual_darwin_2003_1_0_FieldNumber"") != ""dwc_terms_recordNumber""
81 81
-----"
82
dwc_terms_fieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2,"Usage inconsistent with DwC definition. This field is instead identical to recordNumber, as the following query returns zero: (takes 23 sec)
82
dwc_terms_fieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1/_alt/2,"Usage inconsistent with DwC definition. This field is instead identical to recordNumber, as the following query returns zero: (takes 23 sec)
83 83
-----
84 84
SELECT count(*) FROM ""SpeciesLink"".specimens
85 85
WHERE COALESCE(""dwc_curatorial_FieldNumber"", ""dwc_terms_fieldNumber"", ""conceptual_darwin_2003_1_0_FieldNumber"") != ""dwc_terms_recordNumber""
86 86
-----"
87
conceptual_darwin_2003_1_0_CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/3,
88
dwc_curatorial_CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/3,
89
conceptual_darwin_2003_1_0_ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
90
dwc_dwcore_ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
91
dwc_terms_scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
87
conceptual_darwin_2003_1_0_CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1/_alt/3,
88
dwc_curatorial_CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1/_alt/3,
89
conceptual_darwin_2003_1_0_ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
90
dwc_dwcore_ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
91
dwc_terms_scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
92 92
conceptual_darwin_2003_1_0_IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
93 93
dwc_curatorial_IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
94 94
dwc_terms_identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
inputs/MO/Specimen/test.xml.ref
77 77
                                </specimenreplicate>
78 78
                            </plantobservation>
79 79
                        </aggregateoccurrence>
80
                        <authortaxoncode>
81
                            <_alt>
82
                                <1>$CollectorNumber</1>
83
                                <2>$ScientificName</2>
84
                            </_alt>
85
                        </authortaxoncode>
80
                        <authortaxoncode>$CollectorNumber</authortaxoncode>
86 81
                        <taxondetermination>
87 82
                            <party_id>
88 83
                                <party>
inputs/VegBank/plot_/VegBIEN.csv
13 13
longitude,"/location/locationcoords/longitude_deg/_alt/2/_nullIf:[null=0,type=float]/value",
14 14
authorplotcode,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/authorlocationcode",
15 15
plot_id,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode",
16
authorplotcode,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
17
plot_id,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
16
authorplotcode,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
17
plot_id,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
18 18
locationnarrative,/location/locationnarrative/_merge/1,
19 19
continent,/location/locationplace/*_id/placepath/continent,
20 20
area|country|territory,/location/locationplace/*_id/placepath/country,
inputs/XAL/Specimen/VegBIEN.csv
17 17
darwin:CatalogNumber,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else",
18 18
darwin:CollectionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/1,Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name
19 19
darwin:InstitutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
20
darwin:CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,
21
darwin:ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
20
darwin:CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
21
darwin:ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
22 22
darwin:IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
23 23
darwin:IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
24 24
darwin:IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/TEAM/VL/VegBIEN.csv
17 17
TreeNumber,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag,
18 18
X_1haPlot,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,
19 19
Y_1haPlot,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,
20
1haPlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
21
TreeNumber,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
20
1haPlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
21
TreeNumber,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
22 22
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
23 23
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
24 24
SpecificEpithet,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/species,
inputs/TEAM/VT/VegBIEN.csv
17 17
TreeNumber,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag,
18 18
X_1haPlot,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,
19 19
Y_1haPlot,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,
20
1haPlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
21
TreeNumber,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
20
1haPlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
21
TreeNumber,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
22 22
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
23 23
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
24 24
SpecificEpithet,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/species,
inputs/NY/Specimen/VegBIEN.csv
21 21
CollectionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/1,Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name
22 22
InstitutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
23 23
UniqueNYInternalRecordNumber,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
24
FieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,Usage inconsistent with DwC definition
25
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
24
FieldNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,Usage inconsistent with DwC definition
25
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
26 26
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
27 27
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
28 28
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/NY/Specimen/test.xml.ref
104 104
                                </specimenreplicate>
105 105
                            </plantobservation>
106 106
                        </aggregateoccurrence>
107
                        <authortaxoncode>
108
                            <_alt>
109
                                <1>$FieldNumber</1>
110
                                <2>$ScientificName</2>
111
                            </_alt>
112
                        </authortaxoncode>
107
                        <authortaxoncode>$FieldNumber</authortaxoncode>
113 108
                        <taxondetermination>
114 109
                            <party_id>
115 110
                                <party>
inputs/Madidi/Organism/VegBIEN.csv
21 21
Tag number,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag,
22 22
Subplot X,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,
23 23
Subplot Y,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,
24
Tree number,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/1,
25
Inventory code,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
26
Inventory name,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
27
Tag number,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
28
Specie+autor,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/2,
29
Species and morphotypes,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,"Contains less than ""Specie+autor"""
24
Tree number,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
25
Inventory code,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
26
Inventory name,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
27
Tag number,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
28
Specie+autor,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/2,
29
Species and morphotypes,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,"Contains less than ""Specie+autor"""
30 30
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","According to <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data.habit>, <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/SALVIAS#Habit>"
31 31
Determined by,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
32 32
Determined by,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
inputs/Madidi/Organism/test.xml.ref
38 38
                                </stemobservation>
39 39
                            </plantobservation>
40 40
                        </aggregateoccurrence>
41
                        <authortaxoncode>
42
                            <_alt>
43
                                <1>
44
                                    <_alt>
45
                                        <1>$Tree number</1>
46
                                        <2>$Tag number</2>
47
                                    </_alt>
48
                                </1>
49
                                <2>
50
                                    <_alt>
51
                                        <2>$Specie+autor</2>
52
                                        <3>$Species and morphotypes</3>
53
                                    </_alt>
54
                                </2>
55
                            </_alt>
56
                        </authortaxoncode>
41
                        <authortaxoncode>$Tree number</authortaxoncode>
57 42
                        <growthform>
58 43
                            <_map>
59 44
                                <T>tree</T>
inputs/Madidi/Plot/VegBIEN.csv
85 85
Limo (DIN 18 123–%–1),/location/locationevent/soilobs/silt_fraction,
86 86
"Sodio intercambiable (WSP S-5,10–cmolc/Kg–0.00083)",/location/locationevent/soilobs/sodium_fraction,
87 87
Textural class,/location/locationevent/soilobs/texture,
88
Inventory code,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
89
Inventory name,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
88
Inventory code,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
89
Inventory name,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
90 90
Locality,/location/locationnarrative/_merge/1,
91 91
Observaciones,/location/notespublic,
92 92
Direction,/location/slopeaspect_deg/_alt/1/_compass/value/_alt/1,Part files provide either this field or Orientación
inputs/UNCC/Specimen/VegBIEN.csv
14 14
collectno,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/collectionnumber,
15 15
herbarium,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
16 16
accession,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
17
collectno,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,
18
SciName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
17
collectno,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
18
SciName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
19 19
cultivated,/location/locationevent/taxonoccurrence/iscultivated/_alt/1,Ignore other values
20 20
family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
21 21
genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
inputs/UNCC/Specimen/test.xml.ref
72 72
                                </specimenreplicate>
73 73
                            </plantobservation>
74 74
                        </aggregateoccurrence>
75
                        <authortaxoncode>
76
                            <_alt>
77
                                <1>$collectno</1>
78
                                <2>$SciName</2>
79
                            </_alt>
80
                        </authortaxoncode>
75
                        <authortaxoncode>$collectno</authortaxoncode>
81 76
                        <iscultivated>$cultivated</iscultivated>
82 77
                        <taxondetermination>
83 78
                            <taxonpath_id>
inputs/ACAD/Specimen/VegBIEN.csv
15 15
collectionID,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/2,
16 16
institutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
17 17
id,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
18
recordNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,
19
scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
18
recordNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
19
scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
20 20
identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
21 21
identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
22 22
identifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/ACAD/Specimen/test.xml.ref
64 64
                                </specimenreplicate>
65 65
                            </plantobservation>
66 66
                        </aggregateoccurrence>
67
                        <authortaxoncode>
68
                            <_alt>
69
                                <1>$recordNumber</1>
70
                                <2>$scientificName</2>
71
                            </_alt>
72
                        </authortaxoncode>
67
                        <authortaxoncode>$recordNumber</authortaxoncode>
73 68
                        <taxondetermination>
74 69
                            <party_id>
75 70
                                <party>
inputs/SALVIAS-CSV/Organism/VegBIEN.csv
53 53
tag1,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag/_alt/2/_alt/2,"The second tag supercedes the first. The stem tag supercedes the tree tag. 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."
54 54
x_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,"Brad: These are important, fundamental values of many tree plots"
55 55
y_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,Brad: See comment above for x_position
56
individual_code,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/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."
57
PLOT_ID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
58
plot_code,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
59
stem_tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_alt/1/_alt/1",The second tag supercedes the first. The stem tag supercedes the tree tag. Brad: see above
60
stem_tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_alt/1/_alt/2","The second tag supercedes the first. The stem tag supercedes the tree tag. Brad: Same as tag1 & tag2, but applied to individual stems. I'm still not clear how to distinguish between methods which tag only individuals trees, and those which tag individual stems."
61
tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_alt/2/_alt/1","The second tag supercedes the first. The stem tag supercedes the tree tag. Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other."
62
tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_alt/2/_alt/2","The second tag supercedes the first. The stem tag supercedes the tree tag. 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."
56
individual_code,/location/locationevent/taxonoccurrence/authortaxoncode/_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."
57
PLOT_ID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
58
plot_code,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
59
stem_tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_alt/1/_alt/1",The second tag supercedes the first. The stem tag supercedes the tree tag. Brad: see above
60
stem_tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_alt/1/_alt/2","The second tag supercedes the first. The stem tag supercedes the tree tag. Brad: Same as tag1 & tag2, but applied to individual stems. I'm still not clear how to distinguish between methods which tag only individuals trees, and those which tag individual stems."
61
tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_alt/2/_alt/1","The second tag supercedes the first. The stem tag supercedes the tree tag. Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other."
62
tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_alt/2/_alt/2","The second tag supercedes the first. The stem tag supercedes the tree tag. 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."
63 63
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.; According to <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data.habit>, <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/SALVIAS#Habit>"
64 64
OBSERVATION_ID,/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/2,"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."
65 65
family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
inputs/SALVIAS-CSV/Organism/test.xml.ref
121 121
                                </stemobservation>
122 122
                            </plantobservation>
123 123
                        </aggregateoccurrence>
124
                        <authortaxoncode>
125
                            <_alt>
126
                                <1>$individual_code</1>
127
                                <2>
128
                                    <_alt>
129
                                        <1>
130
                                            <_alt>
131
                                                <1>$stem_tag2</1>
132
                                                <2>$stem_tag1</2>
133
                                            </_alt>
134
                                        </1>
135
                                        <2>
136
                                            <_alt>
137
                                                <1>$tag2</1>
138
                                                <2>$tag1</2>
139
                                            </_alt>
140
                                        </2>
141
                                    </_alt>
142
                                </2>
143
                            </_alt>
144
                        </authortaxoncode>
124
                        <authortaxoncode>$individual_code</authortaxoncode>
145 125
                        <growthform>
146 126
                            <_map>
147 127
                                <T>tree</T>
inputs/SALVIAS-CSV/Plot/VegBIEN.csv
36 36
silt_percent,"/location/locationevent/soilobs/silt_fraction/_units:[default=""%"",to=]/value",
37 37
soil_Na,"/location/locationevent/soilobs/sodium_fraction/_units:[default=""%"",to=]/value",
38 38
soil_texture,/location/locationevent/soilobs/texture,
39
PLOT_ID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists","Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata."
40
plot_code,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project)
39
PLOT_ID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists","Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata."
40
plot_code,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project)
41 41
temp_c,/location/locationevent/temperature_c,
42 42
locality_description,/location/locationnarrative/_merge/1,"Brad: No; this is free text description of locality where plot was situated, same as for DwC. Not a description of vegetation. Most likely='namedPlace.placeDescription' in VB; not sure about VX, again need to ask Nick where locality descriptions live in VX"
43 43
major_geo,/location/locationplace/*_id/placepath/continent,
inputs/CVS/Organism/VegBIEN.csv
8 8
authorObsCode,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/authorlocationcode",
9 9
obsStartDate,/location/locationevent/obsstartdate/_*/date/_alt/1,
10 10
%cover,/location/locationevent/taxonoccurrence/aggregateoccurrence/cover_fraction/_percent_to_fraction/value,
11
currentTaxonName sec Weakley 2006,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
11
currentTaxonName sec Weakley 2006,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
12 12
currentTaxonName sec Weakley 2006,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/scientificname,
13 13
county,/location/locationplace/*_id/placepath/county,
14 14
state,/location/locationplace/*_id/placepath/stateprovince,
inputs/CTFS/StemObservation/VegBIEN.csv
16 16
Tag,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag,
17 17
x,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,
18 18
y,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,
19
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
20
StemTag,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
21
Tag,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
19
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
20
StemTag,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
21
Tag,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
22 22
MeasureID,/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/2,
23 23
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
24 24
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
inputs/CTFS/Subplot/VegBIEN.csv
6 6
QuadratID,/location/authorlocationcode,Not globally unique; unique only within Site
7 7
QuadratID,"/location/locationevent/_if[@name=""if subplot""]/cond/_exists/_first/2",Not globally unique; unique only within Site
8 8
PlotID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode",
9
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
9
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
10 10
StartX,/location/sublocationxposition_m,
11 11
StartY,/location/sublocationyposition_m,
12 12
DimX,,** No join mapping for DimX ** 
inputs/CTFS/PlotObservation/VegBIEN.csv
12 12
CensusID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/sourceaccessioncode",
13 13
EndDate,/location/locationevent/obsenddate/_*/date/_alt/1,
14 14
StartDate,/location/locationevent/obsstartdate/_*/date/_alt/1,
15
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
15
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
16 16
Description,,** No join mapping for Description ** 
inputs/CTFS/TaxonOccurrence/VegBIEN.csv
6 6
CensusID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/cond/_exists/_first/1",
7 7
PlotID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode",
8 8
CensusID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/sourceaccessioncode",
9
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
9
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
10 10
SpeciesInvID,/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/1,
11 11
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
12 12
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
inputs/CTFS/SubplotObservation/VegBIEN.csv
9 9
CensusID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/cond/_exists/_first/1",
10 10
PlotID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode",
11 11
CensusID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/sourceaccessioncode",
12
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
12
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
inputs/CTFS/Plot/VegBIEN.csv
19 19
Longitude,"/location/locationcoords/longitude_deg/_alt/2/_nullIf:[null=0,type=float]/value",
20 20
PlotName,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/authorlocationcode",
21 21
PlotID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode",
22
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
23
PlotName,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
22
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
23
PlotName,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
24 24
DescriptionOfSite,/location/locationnarrative/_merge/1,
25 25
LocationName,/location/locationnarrative/_merge/1,
26 26
CountryName,/location/locationplace/*_id/placepath/country,
inputs/FIA/Organism/VegBIEN.csv
12 12
DBH,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/diameterbreastheight_m,
13 13
Height,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/height_m,
14 14
TreeTag,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag,
15
PlotCD,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
16
TreeTag,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
15
PlotCD,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
16
TreeTag,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
17 17
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
18 18
SpecificEpithet,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/species,
19 19
County,/location/locationplace/*_id/placepath/county,
inputs/SALVIAS/plotMetadata/VegBIEN.csv
36 36
silt_percent,"/location/locationevent/soilobs/silt_fraction/_units:[default=""%"",to=]/value",
37 37
soil_Na,"/location/locationevent/soilobs/sodium_fraction/_units:[default=""%"",to=]/value",
38 38
soil_texture,"/location/locationevent/soilobs/texture/_units:[default=""%"",to=]/value",
39
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists","Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata."
40
SiteCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project)
39
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists","Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata."
40
SiteCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project)
41 41
Temp,/location/locationevent/temperature_c,
42 42
Locality_Description,/location/locationnarrative/_merge/1,"Brad: No; this is free text description of locality where plot was situated, same as for DwC. Not a description of vegetation. Most likely='namedPlace.placeDescription' in VB; not sure about VX, again need to ask Nick where locality descriptions live in VX"
43 43
Habitat,"/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?"
inputs/SALVIAS/stems/VegBIEN.csv
13 13
stem_id,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/sourceaccessioncode,
14 14
stem_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."
15 15
stem_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."
16
stem_tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_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."
17
stem_tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then/_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."
16
stem_tag2,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_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."
17
stem_tag1,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then/_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."
18 18
PlotObsID,/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/2,
19 19
origrecord_id_stems,,** No join mapping for origrecord_id_stems ** 
20 20
plotobs_id_index,,** No join mapping for plotobs_id_index ** 
inputs/SALVIAS/plotObservations/test.xml.ref
92 92
                                </stemobservation>
93 93
                            </plantobservation>
94 94
                        </aggregateoccurrence>
95
                        <authortaxoncode>
96
                            <_alt>
97
                                <1>$Ind</1>
98
                                <2>
99
                                    <_alt>
100
                                        <1>$tag2</1>
101
                                        <2>$tag1</2>
102
                                    </_alt>
103
                                </2>
104
                            </_alt>
105
                        </authortaxoncode>
95
                        <authortaxoncode>$Ind</authortaxoncode>
106 96
                        <growthform>
107 97
                            <_map>
108 98
                                <T>tree</T>
inputs/ARIZ/Specimen/VegBIEN.csv
25 25
CollectionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/1,Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name
26 26
InstitutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
27 27
GlobalUniqueIdentifier,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
28
CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,
29
ScientificNameAuthor,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3/_alt/1,Contains the binomial in addition to the authority
30
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3/_alt/2,
28
CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
29
ScientificNameAuthor,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3/_alt/1,Contains the binomial in addition to the authority
30
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3/_alt/2,
31 31
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
32 32
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
33 33
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/GBIF/Specimen/VegBIEN.csv
12 12
CatalogNO,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else",
13 13
CollectionCD,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/1,Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name
14 14
InstitutionCD,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
15
ScientificNameOriginal,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/1,
16
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
15
ScientificNameOriginal,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/1,
16
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
17 17
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
18 18
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
19 19
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/NCU-NCSC/Specimen/VegBIEN.csv
10 10
Barcode,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else",
11 11
SeriesName,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/1,Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name
12 12
Accession Number,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/sourceaccessioncode,
13
Full Taxon Name,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
13
Full Taxon Name,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
14 14
Cultivated?,/location/locationevent/taxonoccurrence/iscultivated/_alt/1,
15 15
Full Taxon Name,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/scientificname,
16 16
Barcode,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/then",
inputs/MO/Specimen/VegBIEN.csv
16 16
CatalogNumber,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else",
17 17
CollectionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/collectioncode_dwc/_join/1,Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name
18 18
InstitutionCode,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/institution_id/party/organizationname,
19
CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1,
20
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
19
CollectorNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
20
ScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
21 21
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/givenname/_namePart/first,
22 22
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/middlename/_namePart/middle,
23 23
IdentifiedBy,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/party/surname/_namePart/last,
inputs/VegBank/observation_/VegBIEN.csv
22 22
soilsand,/location/locationevent/soilobs/sand_fraction,
23 23
soilsilt,/location/locationevent/soilobs/silt_fraction,
24 24
soiltexture,/location/locationevent/soilobs/texture,
25
plot_id,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
25
plot_id,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
26 26
accessioncode,,** No join mapping for accessioncode ** 
27 27
autotaxoncover,,** No join mapping for autotaxoncover ** 
28 28
basalarea,,** No join mapping for basalarea ** 
mappings/VegCore-VegBIEN.csv
103 103
tag,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/tag,
104 104
organismX,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,
105 105
organismY,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,
106
recordNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/1,
107
locationID,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
108
plotName,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/cond/_exists",
109
tag,"/location/locationevent/taxonoccurrence/authortaxoncode/_alt/1/_alt/2/_if[@name=""if is organism""]/then",
110
verbatimScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/1,
111
scientificNameWithAuthorship,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/2,
112
scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_alt/2/_alt/3,
106
recordNumber,/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/1,
107
locationID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
108
plotName,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
109
tag,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/then",
110
verbatimScientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/1,
111
scientificNameWithAuthorship,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/2,
112
scientificName,/location/locationevent/taxonoccurrence/authortaxoncode/_first/2/_first/3,
113 113
growthForm,/location/locationevent/taxonoccurrence/growthform,
114 114
verbatimGrowthForm,"/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","According to <http://salvias.net/Documents/salvias_data_dictionary.html#Plot+data.habit>, <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/SALVIAS#Habit>"
115 115
cultivated,/location/locationevent/taxonoccurrence/iscultivated/_alt/1,

Also available in: Unified diff