Revision 517
Added by Aaron Marcuse-Kubitza about 13 years ago
test/accepted_output/SALVIAS.plots.VegBIEN.xml | ||
---|---|---|
33 | 33 |
<reallatitude>-3.95</reallatitude> |
34 | 34 |
<reallongitude>-73.4333</reallongitude> |
35 | 35 |
<confidentialitystatus>0</confidentialitystatus> |
36 |
<authorcode>ALP-11</authorcode>
|
|
36 |
<sourceid>ALP-11</sourceid>
|
|
37 | 37 |
</plot> |
38 | 38 |
</plot_id> |
39 | 39 |
<project_id> |
... | ... | |
43 | 43 |
</project_id> |
44 | 44 |
<methodnarrative>1 ha, stems >= 10 cm dbh</methodnarrative> |
45 | 45 |
<obsstartdate>1990-11-16</obsstartdate> |
46 |
<authorcode>ALP-11</authorcode>
|
|
46 |
<sourceid>ALP-11</sourceid>
|
|
47 | 47 |
</plotevent> |
48 | 48 |
<plotevent id="1"> |
49 | 49 |
<plot_id> |
... | ... | |
78 | 78 |
<reallatitude>-3.95</reallatitude> |
79 | 79 |
<reallongitude>-73.4333</reallongitude> |
80 | 80 |
<confidentialitystatus>0</confidentialitystatus> |
81 |
<authorcode>ALP-12</authorcode>
|
|
81 |
<sourceid>ALP-12</sourceid>
|
|
82 | 82 |
</plot> |
83 | 83 |
</plot_id> |
84 | 84 |
<project_id> |
... | ... | |
88 | 88 |
</project_id> |
89 | 89 |
<methodnarrative>1 ha, stems >= 10 cm dbh</methodnarrative> |
90 | 90 |
<obsstartdate>1990-11-16</obsstartdate> |
91 |
<authorcode>ALP-12</authorcode>
|
|
91 |
<sourceid>ALP-12</sourceid>
|
|
92 | 92 |
</plotevent> |
93 | 93 |
</VegBIEN> |
test/accepted_output/SALVIAS.organisms.VegBIEN.xml | ||
---|---|---|
8 | 8 |
<parent_id> |
9 | 9 |
<plot> |
10 | 10 |
<confidentialitystatus>0</confidentialitystatus> |
11 |
<authorcode>ALP-11</authorcode>
|
|
11 |
<sourceid>ALP-11</sourceid>
|
|
12 | 12 |
</plot> |
13 | 13 |
</parent_id> |
14 | 14 |
<confidentialitystatus>0</confidentialitystatus> |
15 |
<authorcode>1</authorcode>
|
|
15 |
<sourceid>1</sourceid>
|
|
16 | 16 |
</plot> |
17 | 17 |
</plot_id> |
18 | 18 |
<obsstartdate>2001-01-01</obsstartdate> |
19 |
<authorcode>1</authorcode>
|
|
19 |
<sourceid>1</sourceid>
|
|
20 | 20 |
</plotevent> |
21 | 21 |
</plotevent_id> |
22 | 22 |
<aggregateoccurrence> |
... | ... | |
35 | 35 |
</collector_id> |
36 | 36 |
</specimen> |
37 | 37 |
<stem> |
38 |
<authorcode>8</authorcode>
|
|
38 |
<sourceid>8</sourceid>
|
|
39 | 39 |
</stem> |
40 | 40 |
</individualplant> |
41 | 41 |
</aggregateoccurrence> |
... | ... | |
293 | 293 |
<parent_id> |
294 | 294 |
<plot> |
295 | 295 |
<confidentialitystatus>0</confidentialitystatus> |
296 |
<authorcode>ALP-11</authorcode>
|
|
296 |
<sourceid>ALP-11</sourceid>
|
|
297 | 297 |
</plot> |
298 | 298 |
</parent_id> |
299 | 299 |
<confidentialitystatus>0</confidentialitystatus> |
300 |
<authorcode>4</authorcode>
|
|
300 |
<sourceid>4</sourceid>
|
|
301 | 301 |
</plot> |
302 | 302 |
</plot_id> |
303 | 303 |
<obsstartdate>2001-01-01</obsstartdate> |
304 |
<authorcode>4</authorcode>
|
|
304 |
<sourceid>4</sourceid>
|
|
305 | 305 |
</plotevent> |
306 | 306 |
</plotevent_id> |
307 | 307 |
<aggregateoccurrence> |
... | ... | |
320 | 320 |
</collector_id> |
321 | 321 |
</specimen> |
322 | 322 |
<stem> |
323 |
<authorcode>91</authorcode>
|
|
323 |
<sourceid>91</sourceid>
|
|
324 | 324 |
</stem> |
325 | 325 |
</individualplant> |
326 | 326 |
</aggregateoccurrence> |
test/accepted_output/SALVIAS_db.plots.VegBIEN.xml | ||
---|---|---|
24 | 24 |
<reallatitude>-3.45</reallatitude> |
25 | 25 |
<reallongitude>-78.3667</reallongitude> |
26 | 26 |
<confidentialitystatus>0</confidentialitystatus> |
27 |
<authorcode>ACHUPALL</authorcode>
|
|
27 |
<sourceid>ACHUPALL</sourceid>
|
|
28 | 28 |
</plot> |
29 | 29 |
</plot_id> |
30 | 30 |
<project_id> |
... | ... | |
32 | 32 |
<projectname>1</projectname> |
33 | 33 |
</project> |
34 | 34 |
</project_id> |
35 |
<authorcode>1</authorcode> |
|
36 | 35 |
<commclass> |
37 | 36 |
<commdetermination> |
38 | 37 |
<commconcept_id> |
... | ... | |
58 | 57 |
<definedvalue>2500.0</definedvalue> |
59 | 58 |
</definedvalue> |
60 | 59 |
<methodnarrative>0.1 ha transect, stems >= 2.5 cm dbh</methodnarrative> |
60 |
<sourceid>1</sourceid> |
|
61 | 61 |
</plotevent> |
62 | 62 |
<plotevent id="1"> |
63 | 63 |
<plot_id> |
... | ... | |
83 | 83 |
<reallatitude>48.0667</reallatitude> |
84 | 84 |
<reallongitude>11.5</reallongitude> |
85 | 85 |
<confidentialitystatus>0</confidentialitystatus> |
86 |
<authorcode>ALLACHER</authorcode>
|
|
86 |
<sourceid>ALLACHER</sourceid>
|
|
87 | 87 |
</plot> |
88 | 88 |
</plot_id> |
89 | 89 |
<project_id> |
... | ... | |
91 | 91 |
<projectname>1</projectname> |
92 | 92 |
</project> |
93 | 93 |
</project_id> |
94 |
<authorcode>2</authorcode> |
|
95 | 94 |
<commclass> |
96 | 95 |
<commdetermination> |
97 | 96 |
<commconcept_id> |
... | ... | |
127 | 126 |
<definedvalue>7.4</definedvalue> |
128 | 127 |
</definedvalue> |
129 | 128 |
<methodnarrative>0.1 ha transect, stems >= 2.5 cm dbh</methodnarrative> |
129 |
<sourceid>2</sourceid> |
|
130 | 130 |
</plotevent> |
131 | 131 |
</VegBIEN> |
test/accepted_output/SALVIAS_db.organisms.VegBIEN.xml | ||
---|---|---|
3 | 3 |
<taxonoccurrence id="0"> |
4 | 4 |
<plotevent_id> |
5 | 5 |
<plotevent> |
6 |
<authorcode>295</authorcode>
|
|
6 |
<sourceid>295</sourceid>
|
|
7 | 7 |
<plot_id> |
8 | 8 |
<plot> |
9 | 9 |
<confidentialitystatus>0</confidentialitystatus> |
10 |
<authorcode>1</authorcode>
|
|
10 |
<sourceid>1</sourceid>
|
|
11 | 11 |
</plot> |
12 | 12 |
</plot_id> |
13 | 13 |
</plotevent> |
... | ... | |
279 | 279 |
<taxonoccurrence id="1"> |
280 | 280 |
<plotevent_id> |
281 | 281 |
<plotevent> |
282 |
<authorcode>295</authorcode>
|
|
282 |
<sourceid>295</sourceid>
|
|
283 | 283 |
<plot_id> |
284 | 284 |
<plot> |
285 | 285 |
<confidentialitystatus>0</confidentialitystatus> |
286 |
<authorcode>2</authorcode>
|
|
286 |
<sourceid>2</sourceid>
|
|
287 | 287 |
</plot> |
288 | 288 |
</plot_id> |
289 | 289 |
</plotevent> |
test/accepted_output/NYBG.organisms.VegBIEN.xml | ||
---|---|---|
35 | 35 |
<elevation>350.0</elevation> |
36 | 36 |
<elevationrange>0.0</elevationrange> |
37 | 37 |
<confidentialitystatus>0</confidentialitystatus> |
38 |
<authorcode>816590</authorcode>
|
|
38 |
<sourceid>816590</sourceid>
|
|
39 | 39 |
</plot> |
40 | 40 |
</plot_id> |
41 | 41 |
<obsstartdate>1984-08-20</obsstartdate> |
42 |
<authorcode>816590</authorcode>
|
|
42 |
<sourceid>816590</sourceid>
|
|
43 | 43 |
</plotevent> |
44 | 44 |
</plotevent_id> |
45 | 45 |
<aggregateoccurrence> |
... | ... | |
359 | 359 |
<elevation>15.0</elevation> |
360 | 360 |
<elevationrange>0.0</elevationrange> |
361 | 361 |
<confidentialitystatus>0</confidentialitystatus> |
362 |
<authorcode>220541</authorcode>
|
|
362 |
<sourceid>220541</sourceid>
|
|
363 | 363 |
</plot> |
364 | 364 |
</plot_id> |
365 | 365 |
<obsstartdate>1994-01-17</obsstartdate> |
366 |
<authorcode>220541</authorcode>
|
|
366 |
<sourceid>220541</sourceid>
|
|
367 | 367 |
</plotevent> |
368 | 368 |
</plotevent_id> |
369 | 369 |
<aggregateoccurrence> |
inputs/SALVIAS/maps/VegBIEN.stems.csv | ||
---|---|---|
1 | 1 |
SALVIAS:stems,VegBIEN:/stem,Comments |
2 |
PlotObsID,/*_id/individualplant/authorcode, |
|
3 |
stem_tag2,/authorcode/_alt/1, |
|
4 |
stem_tag1,/authorcode/_alt/2, |
|
2 |
PlotObsID,/*_id/individualplant/sourceid, |
|
5 | 3 |
basal_diam,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
6 | 4 |
NoInd,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=count]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
7 | 5 |
gentry_dbh,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=gentryDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
... | ... | |
12 | 10 |
stem_liana_infestation,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=stemLianaInfestation]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
13 | 11 |
stem_dbh,/diameter, |
14 | 12 |
stem_height_m,/height, |
13 |
stem_tag2,/sourceid/_alt/1, |
|
14 |
stem_tag1,/sourceid/_alt/2, |
inputs/SALVIAS/maps/VegBIEN.plots.csv | ||
---|---|---|
13 | 13 |
elev_max_m,"/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}", |
14 | 14 |
elev_min_m,"/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}", |
15 | 15 |
project_id,/*_id/project/projectname, |
16 |
PlotID,/authorcode/_alt/1,"Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata." |
|
17 | 16 |
life_zone_code,/commclass/commdetermination/*_id/commconcept/*_id/*/commname, |
18 | 17 |
life_zone,/commclass/commdetermination/*_id/commconcept/commdescription, |
19 | 18 |
Precip,"/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
... | ... | |
38 | 37 |
sand_percent,/soilobs:[soilhorizon=unknown]/soilsand, |
39 | 38 |
silt_percent,/soilobs:[soilhorizon=unknown]/soilsilt, |
40 | 39 |
soil_texture,/soilobs:[soilhorizon=unknown]/soiltexture, |
41 |
SiteCode,"/{*_id/plot:[confidentialitystatus=0]/authorcode/_alt/2,authorcode/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
|
40 |
PlotID,/sourceid/_alt/1,"Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata." |
|
41 |
SiteCode,"/{*_id/plot:[confidentialitystatus=0]/sourceid/_alt/2,sourceid/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
inputs/SALVIAS/maps/VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
SALVIAS:plotObservations,VegBIEN:/taxonoccurrence,Comments |
2 |
PlotID,/*_id/plotevent/authorcode/_alt/1,"Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
2 |
PlotID,/*_id/plotevent/sourceid/_alt/1,"Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
3 | 3 |
NoInd,/aggregateoccurrence/count/_alt/1,"Brad: Incorrect for VegX. 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." |
4 | 4 |
cover_percent,/aggregateoccurrence/cover, |
5 | 5 |
intercept_cm,"/aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue","Brad: Incorrect for VegBank 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." |
... | ... | |
9 | 9 |
census_date,/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collectiondate/_date/date, |
10 | 10 |
coll_firstname,"/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}",Brad: See comment above |
11 | 11 |
coll_lastname,/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{surname},"Brad: Correct for VegBank. 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." |
12 |
tag2,/aggregateoccurrence/individualplant/stem/authorcode/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
13 |
tag1,/aggregateoccurrence/individualplant/stem/authorcode/_alt/2,"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." |
|
14 | 12 |
ht_first_branch_m,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue",Brad: Incorrect for VegBank. This is a measurement applied to a single tree. Check with Bob |
13 |
tag2,/aggregateoccurrence/individualplant/stem/sourceid/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
14 |
tag1,/aggregateoccurrence/individualplant/stem/sourceid/_alt/2,"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." |
|
15 | 15 |
x_position,/aggregateoccurrence/individualplant/stem/xposition,"Brad: Correct for VegBank. I'm not so sure for VegX. Let's ask Nick about this. These are important, fundamental values of many tree plots, and should be accommodated within VegX." |
16 | 16 |
y_position,/aggregateoccurrence/individualplant/stem/yposition,Brad: See comment above for x_position |
17 | 17 |
census_no,"/taxondetermination[role_id/aux_role/rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]:[userdefinedtype=varchar]]:[@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." |
... | ... | |
28 | 28 |
infra_ep_1,"/taxondetermination[role_id/aux_role/rolecode=computer,*_id/plantconcept/plantstatus/plantlevel=Subspecies]:[determinationtype=""Computer (automated)"",originaldetermination=false,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname/_name/last,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname/_name/last}", |
29 | 29 |
OrigFamily,"/taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Family]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}",Brad: OMIT |
30 | 30 |
OrigSpecies,"/{taxondetermination[role_id/aux_role/rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Species]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}}",Brad: OMIT |
31 |
PlotObsID,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/authorcode/_alt/3}","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." |
|
31 |
PlotObsID,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/sourceid/_alt/3}","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." |
schemas/vegbien.sql | ||
---|---|---|
1060 | 1060 |
heightaccuracy double precision, |
1061 | 1061 |
taxonarea double precision, |
1062 | 1062 |
emb_individualplant integer, |
1063 |
authorcode character varying(20)
|
|
1063 |
sourceid character varying(20)
|
|
1064 | 1064 |
); |
1065 | 1065 |
|
1066 | 1066 |
|
... | ... | |
1563 | 1563 |
|
1564 | 1564 |
CREATE TABLE plot ( |
1565 | 1565 |
plot_id integer NOT NULL, |
1566 |
authorcode character varying(30),
|
|
1566 |
sourceid character varying(30),
|
|
1567 | 1567 |
reference_id integer, |
1568 | 1568 |
parent_id integer, |
1569 | 1569 |
reallatitude double precision, |
... | ... | |
1646 | 1646 |
previous_id integer, |
1647 | 1647 |
plot_id integer NOT NULL, |
1648 | 1648 |
project_id integer, |
1649 |
authorcode character varying(30),
|
|
1649 |
sourceid character varying(30),
|
|
1650 | 1650 |
dateaccuracy character varying(30), |
1651 | 1651 |
covermethod_id integer, |
1652 | 1652 |
coverdispersion character varying(30), |
... | ... | |
2301 | 2301 |
CREATE TABLE stem ( |
2302 | 2302 |
stem_id integer NOT NULL, |
2303 | 2303 |
individualplant_id integer NOT NULL, |
2304 |
authorcode character varying(20),
|
|
2304 |
sourceid character varying(20),
|
|
2305 | 2305 |
xposition double precision, |
2306 | 2306 |
yposition double precision, |
2307 | 2307 |
health character varying(50), |
... | ... | |
3991 | 3991 |
-- |
3992 | 3992 |
|
3993 | 3993 |
ALTER TABLE ONLY individualplant |
3994 |
ADD CONSTRAINT individualplant_keys UNIQUE (aggregateoccurrence_id, authorcode);
|
|
3994 |
ADD CONSTRAINT individualplant_keys UNIQUE (aggregateoccurrence_id, sourceid);
|
|
3995 | 3995 |
|
3996 | 3996 |
|
3997 | 3997 |
-- |
... | ... | |
4135 | 4135 |
-- |
4136 | 4136 |
|
4137 | 4137 |
ALTER TABLE ONLY plot |
4138 |
ADD CONSTRAINT plot_keys UNIQUE (reference_id, parent_id, authorcode);
|
|
4138 |
ADD CONSTRAINT plot_keys UNIQUE (reference_id, parent_id, sourceid);
|
|
4139 | 4139 |
|
4140 | 4140 |
|
4141 | 4141 |
-- |
... | ... | |
4151 | 4151 |
-- |
4152 | 4152 |
|
4153 | 4153 |
ALTER TABLE ONLY plotevent |
4154 |
ADD CONSTRAINT plotevent_keys UNIQUE (plot_id, project_id, authorcode);
|
|
4154 |
ADD CONSTRAINT plotevent_keys UNIQUE (plot_id, project_id, sourceid);
|
|
4155 | 4155 |
|
4156 | 4156 |
|
4157 | 4157 |
-- |
... | ... | |
4303 | 4303 |
-- |
4304 | 4304 |
|
4305 | 4305 |
ALTER TABLE ONLY stem |
4306 |
ADD CONSTRAINT stem_keys UNIQUE (individualplant_id, authorcode);
|
|
4306 |
ADD CONSTRAINT stem_keys UNIQUE (individualplant_id, sourceid);
|
|
4307 | 4307 |
|
4308 | 4308 |
|
4309 | 4309 |
-- |
mappings/SALVIAS_db-VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
SALVIAS:plotObservations,VegBIEN:/taxonoccurrence,Comments |
2 |
PlotID,/*_id/plotevent/authorcode/_alt/1,"Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
2 |
PlotID,/*_id/plotevent/sourceid/_alt/1,"Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
3 | 3 |
NoInd,/aggregateoccurrence/count/_alt/1,"Brad: Incorrect for VegX. 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." |
4 | 4 |
cover_percent,/aggregateoccurrence/cover, |
5 | 5 |
intercept_cm,"/aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue","Brad: Incorrect for VegBank 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." |
... | ... | |
9 | 9 |
census_date,/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collectiondate/_date/date, |
10 | 10 |
coll_firstname,"/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}",Brad: See comment above |
11 | 11 |
coll_lastname,/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{surname},"Brad: Correct for VegBank. 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." |
12 |
tag2,/aggregateoccurrence/individualplant/stem/authorcode/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
13 |
tag1,/aggregateoccurrence/individualplant/stem/authorcode/_alt/2,"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." |
|
14 | 12 |
ht_first_branch_m,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue",Brad: Incorrect for VegBank. This is a measurement applied to a single tree. Check with Bob |
13 |
tag2,/aggregateoccurrence/individualplant/stem/sourceid/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
14 |
tag1,/aggregateoccurrence/individualplant/stem/sourceid/_alt/2,"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." |
|
15 | 15 |
x_position,/aggregateoccurrence/individualplant/stem/xposition,"Brad: Correct for VegBank. I'm not so sure for VegX. Let's ask Nick about this. These are important, fundamental values of many tree plots, and should be accommodated within VegX." |
16 | 16 |
y_position,/aggregateoccurrence/individualplant/stem/yposition,Brad: See comment above for x_position |
17 | 17 |
census_no,"/taxondetermination[role_id/aux_role/rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]:[userdefinedtype=varchar]]:[@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." |
... | ... | |
28 | 28 |
infra_ep_1,"/taxondetermination[role_id/aux_role/rolecode=computer,*_id/plantconcept/plantstatus/plantlevel=Subspecies]:[determinationtype=""Computer (automated)"",originaldetermination=false,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname/_name/last,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname/_name/last}", |
29 | 29 |
OrigFamily,"/taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Family]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}",Brad: OMIT |
30 | 30 |
OrigSpecies,"/{taxondetermination[role_id/aux_role/rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Species]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}}",Brad: OMIT |
31 |
PlotObsID,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/authorcode/_alt/3}","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." |
|
31 |
PlotObsID,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/sourceid/_alt/3}","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." |
mappings/VegX-VegBIEN.plots.csv | ||
---|---|---|
3 | 3 |
/*UniqueIdentifierID->/*s/plot/geospatial/FootprintWKT,/*_id/plot/dsgpoly |
4 | 4 |
/*UniqueIdentifierID->/*s/plot/geospatial/verbatimElevation,/*_id/plot/elevation/_alt/1 |
5 | 5 |
/*UniqueIdentifierID->/*s/plot/geospatial/CoordinateUncertaintyInMeters,/*_id/plot/locationaccuracy |
6 |
/*UniqueIdentifierID->/*s/plot/relatedSpatialItem/relatedItem[relationshipType=parentPlot]/relatedItemID->/*s/plot/plotUniqueIdentifier,/*_id/plot/parent_id/plot:[confidentialitystatus=0]/authorcode/_alt/1
|
|
6 |
/*UniqueIdentifierID->/*s/plot/relatedSpatialItem/relatedItem[relationshipType=parentPlot]/relatedItemID->/*s/plot/plotUniqueIdentifier,/*_id/plot/parent_id/plot:[confidentialitystatus=0]/sourceid/_alt/1
|
|
7 | 7 |
/*UniqueIdentifierID->/*s/plot/country,"/*_id/plot/place(/*_id/namedplace[placesystem=""area|country|territory""])/placename" |
8 | 8 |
/*UniqueIdentifierID->/*s/plot/state,"/*_id/plot/place(/*_id/namedplace[placesystem=""region|state|province""])/placename" |
9 | 9 |
/*UniqueIdentifierID->/*s/plot/simpleUserdefined[name=majorGeo]/value,/*_id/plot/place(/*_id/namedplace[placesystem=continent])/placename |
... | ... | |
17 | 17 |
/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}" |
18 | 18 |
/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters,"/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}" |
19 | 19 |
/*ID->/*s/project/title,/*_id/project/projectname |
20 |
/simpleUserdefined[name=authorCode]/value,/authorcode/_alt/1 |
|
21 | 20 |
->/*s/communityDetermination[*ID]/communityConcepts/communityConcept/commonName,/commclass/commdetermination/*_id/commconcept/*_id/*/commname |
22 | 21 |
->/*s/communityDetermination[*ID]/communityConcepts/communityConcept/name,/commclass/commdetermination/*_id/commconcept/commdescription |
23 | 22 |
/simpleUserdefined[name=precipMm]/value,"/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
... | ... | |
47 | 46 |
->/*s/abioticObservation[*ID]/simpleUserdefined[name=sandPercent]/value,/soilobs:[soilhorizon=unknown]/soilsand |
48 | 47 |
->/*s/abioticObservation[*ID]/simpleUserdefined[name=siltPercent]/value,/soilobs:[soilhorizon=unknown]/soilsilt |
49 | 48 |
->/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value,/soilobs:[soilhorizon=unknown]/soiltexture |
49 |
/simpleUserdefined[name=authorCode]/value,/sourceid/_alt/1 |
|
50 | 50 |
/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters,/waterdepth/max |
51 | 51 |
/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters,/waterdepth/min |
52 |
/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier,"/{*_id/plot:[confidentialitystatus=0]/authorcode/_alt/2,authorcode/_alt/2}" |
|
52 |
/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier,"/{*_id/plot:[confidentialitystatus=0]/sourceid/_alt/2,sourceid/_alt/2}" |
mappings/VegX-VegBIEN.organisms.csv | ||
---|---|---|
3 | 3 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/FootprintWKT,/*_id/plotevent/*_id/plot/dsgpoly |
4 | 4 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/verbatimElevation,/*_id/plotevent/*_id/plot/elevation/_alt/1 |
5 | 5 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/CoordinateUncertaintyInMeters,/*_id/plotevent/*_id/plot/locationaccuracy |
6 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/relatedSpatialItem/relatedItem[relationshipType=parentPlot]/relatedItemID->/*s/plot/plotUniqueIdentifier,/*_id/plotevent/*_id/plot/parent_id/plot:[confidentialitystatus=0]/authorcode/_alt/1
|
|
6 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/relatedSpatialItem/relatedItem[relationshipType=parentPlot]/relatedItemID->/*s/plot/plotUniqueIdentifier,/*_id/plotevent/*_id/plot/parent_id/plot:[confidentialitystatus=0]/sourceid/_alt/1
|
|
7 | 7 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/country,"/*_id/plotevent/*_id/plot/place(/*_id/namedplace[placesystem=""area|country|territory""])/placename" |
8 | 8 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/state,"/*_id/plotevent/*_id/plot/place(/*_id/namedplace[placesystem=""region|state|province""])/placename" |
9 | 9 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/simpleUserdefined[name=majorGeo]/value,/*_id/plotevent/*_id/plot/place(/*_id/namedplace[placesystem=continent])/placename |
... | ... | |
17 | 17 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/*_id/plotevent/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}" |
18 | 18 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters,"/*_id/plotevent/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}" |
19 | 19 |
/*ID->/*s/plotObservation/*ID->/*s/project/title,/*_id/plotevent/*_id/project/projectname |
20 |
/*ID->/*s/plotObservation/simpleUserdefined[name=authorCode]/value,/*_id/plotevent/authorcode/_alt/1 |
|
21 | 20 |
/*ID->/*s/plotObservation->/*s/communityDetermination[*ID]/communityConcepts/communityConcept/commonName,/*_id/plotevent/commclass/commdetermination/*_id/commconcept/*_id/*/commname |
22 | 21 |
/*ID->/*s/plotObservation->/*s/communityDetermination[*ID]/communityConcepts/communityConcept/name,/*_id/plotevent/commclass/commdetermination/*_id/commconcept/commdescription |
23 | 22 |
/*ID->/*s/plotObservation/simpleUserdefined[name=precipMm]/value,"/*_id/plotevent/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
... | ... | |
47 | 46 |
/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=sandPercent]/value,/*_id/plotevent/soilobs:[soilhorizon=unknown]/soilsand |
48 | 47 |
/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=siltPercent]/value,/*_id/plotevent/soilobs:[soilhorizon=unknown]/soilsilt |
49 | 48 |
/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value,/*_id/plotevent/soilobs:[soilhorizon=unknown]/soiltexture |
49 |
/*ID->/*s/plotObservation/simpleUserdefined[name=authorCode]/value,/*_id/plotevent/sourceid/_alt/1 |
|
50 | 50 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters,/*_id/plotevent/waterdepth/max |
51 | 51 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters,/*_id/plotevent/waterdepth/min |
52 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier,"/*_id/plotevent/{*_id/plot:[confidentialitystatus=0]/authorcode/_alt/2,authorcode/_alt/2}"
|
|
52 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier,"/*_id/plotevent/{*_id/plot:[confidentialitystatus=0]/sourceid/_alt/2,sourceid/_alt/2}"
|
|
53 | 53 |
/simpleUserdefined[name=count]/value,/aggregateoccurrence/count/_alt/1 |
54 | 54 |
/simpleUserdefined[name=coverPercent]/value,/aggregateoccurrence/cover |
55 | 55 |
/simpleUserdefined[name=interceptCm]/value,"/aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
... | ... | |
62 | 62 |
"/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/givenName","/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}" |
63 | 63 |
"/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/{givenName/_namePart/{first,middle},surName/_namePart/last}","/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{givenname/_namePart/first,middlename/_namePart/middle,surname/_namePart/last}" |
64 | 64 |
"/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/surName",/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{surname} |
65 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/relatedItem[relationshipType=stemParent]/relatedItemID->/*s/individualOrganismObservation/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/voucher,/aggregateoccurrence/individualplant/stem/*_id/individualplant/authorcode |
|
66 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/*ID->/*s/individualOrganism/identificationLabel,/aggregateoccurrence/individualplant/stem/authorcode |
|
67 |
/*ID->/*s/individualOrganism/identificationLabel,/aggregateoccurrence/individualplant/stem/authorcode |
|
68 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/*ID->/*s/individualOrganism/identificationLabel/_alt/1,/aggregateoccurrence/individualplant/stem/authorcode/_alt/1 |
|
69 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/1,/aggregateoccurrence/individualplant/stem/authorcode/_alt/1 |
|
70 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/*ID->/*s/individualOrganism/identificationLabel/_alt/2,/aggregateoccurrence/individualplant/stem/authorcode/_alt/2 |
|
71 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/2,/aggregateoccurrence/individualplant/stem/authorcode/_alt/2 |
|
65 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/relatedItem[relationshipType=stemParent]/relatedItemID->/*s/individualOrganismObservation/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/voucher,/aggregateoccurrence/individualplant/stem/*_id/individualplant/sourceid |
|
72 | 66 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/diameterBaseDistance[baseDistance/value=0]/diameter,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
73 | 67 |
/diameterBaseDistance[baseDistance/value=0]/diameter,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
74 | 68 |
/simpleUserdefined[name=stemCanopyForm]/value,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=canopyForm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
... | ... | |
89 | 83 |
/simpleUserdefined[name=vegetation]/value,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=vegetation]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
90 | 84 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/diameterBaseDistance[baseDistance[!complexUserDefined/method]/value=1.37]/diameter,/aggregateoccurrence/individualplant/stem/diameter |
91 | 85 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/simpleUserdefined[name=stemHeightM]/value,/aggregateoccurrence/individualplant/stem/height |
86 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/*ID->/*s/individualOrganism/identificationLabel,/aggregateoccurrence/individualplant/stem/sourceid |
|
87 |
/*ID->/*s/individualOrganism/identificationLabel,/aggregateoccurrence/individualplant/stem/sourceid |
|
88 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/*ID->/*s/individualOrganism/identificationLabel/_alt/1,/aggregateoccurrence/individualplant/stem/sourceid/_alt/1 |
|
89 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/1,/aggregateoccurrence/individualplant/stem/sourceid/_alt/1 |
|
90 |
->/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/*ID->/*s/individualOrganism/identificationLabel/_alt/2,/aggregateoccurrence/individualplant/stem/sourceid/_alt/2 |
|
91 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/2,/aggregateoccurrence/individualplant/stem/sourceid/_alt/2 |
|
92 | 92 |
/simpleUserdefined[name=xPosition]/value,/aggregateoccurrence/individualplant/stem/xposition |
93 | 93 |
/simpleUserdefined[name=yPosition]/value,/aggregateoccurrence/individualplant/stem/yposition |
94 | 94 |
/simpleUserdefined[name=censusNo]/value,"/taxondetermination[role_id/aux_role/rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
... | ... | |
121 | 121 |
/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/partyWithRole/*ID->/parties/party/organizationName,"/{taxondetermination[role_id/aux_role/rolecode=collector]/museum_id/party/organizationname,aggregateoccurrence/individualplant/specimen:[*_id/reference]/collectioncode_dwc/_namePart/last}" |
122 | 122 |
/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/partyWithRole/*ID->/parties/party/organizationName/_name/first,/{taxondetermination[role_id/aux_role/rolecode=collector]/museum_id/party/organizationname/_name/first} |
123 | 123 |
/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/partyWithRole/*ID->/parties/party/organizationName/_name/last,"/{taxondetermination[role_id/aux_role/rolecode=collector]/museum_id/party/organizationname/_name/last,aggregateoccurrence/individualplant/specimen:[*_id/reference]/collectioncode_dwc}" |
124 |
/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/voucher,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/authorcode/_alt/3}" |
|
124 |
/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/voucher,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/sourceid/_alt/3}" |
mappings/NYBG-VegBIEN.organisms.csv | ||
---|---|---|
38 | 38 |
Species,"/{taxondetermination[role_id/aux_role/rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Species]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}}", |
39 | 39 |
InstitutionCode,/{taxondetermination[role_id/aux_role/rolecode=collector]/museum_id/party/organizationname/_name/first}, |
40 | 40 |
CollectionCode,"/{taxondetermination[role_id/aux_role/rolecode=collector]/museum_id/party/organizationname/_name/last,aggregateoccurrence/individualplant/specimen:[*_id/reference]/collectioncode_dwc}",Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name |
41 |
UniqueNYInternalRecordNumber,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/authorcode/_alt/3}","Brad: OMIT; Aaron: We need this field because it is the only ID column with an entry in every row; Brad: OK, use this as primary key" |
|
41 |
UniqueNYInternalRecordNumber,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/sourceid/_alt/3}","Brad: OMIT; Aaron: We need this field because it is the only ID column with an entry in every row; Brad: OK, use this as primary key" |
mappings/for_review/SALVIAS_db-VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
SALVIAS:plotObservations,VegBIEN:/taxonoccurrence,Comments |
2 |
PlotID,//plotevent/authorcode/_alt/1,"Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
2 |
PlotID,//plotevent/sourceid/_alt/1,"Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
3 | 3 |
NoInd,//aggregateoccurrence/count/_alt/1,"Brad: Incorrect for VegX. 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." |
4 | 4 |
cover_percent,//aggregateoccurrence/cover, |
5 | 5 |
intercept_cm,"//aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]]/definedvalue","Brad: Incorrect for VegBank 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." |
... | ... | |
9 | 9 |
census_date,//specimen/collectiondate/_date/date, |
10 | 10 |
coll_firstname,"/aggregateoccurrence/individualplant/specimen/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}",Brad: See comment above |
11 | 11 |
coll_lastname,/aggregateoccurrence/individualplant/specimen/collector_id/party/{surname},"Brad: Correct for VegBank. 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." |
12 |
tag2,//stem/authorcode/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
13 |
tag1,//stem/authorcode/_alt/2,"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." |
|
14 | 12 |
ht_first_branch_m,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]]/definedvalue",Brad: Incorrect for VegBank. This is a measurement applied to a single tree. Check with Bob |
13 |
tag2,//stem/sourceid/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
14 |
tag1,//stem/sourceid/_alt/2,"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." |
|
15 | 15 |
x_position,//stem/xposition,"Brad: Correct for VegBank. I'm not so sure for VegX. Let's ask Nick about this. These are important, fundamental values of many tree plots, and should be accommodated within VegX." |
16 | 16 |
y_position,//stem/yposition,Brad: See comment above for x_position |
17 | 17 |
census_no,"/taxondetermination[rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]]/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." |
... | ... | |
28 | 28 |
infra_ep_1,"/taxondetermination[rolecode=computer,plantlevel=Subspecies]/{*_id/*/plantname/_name/last,*_id/plantconcept/*_id/*/plantname/_name/last}", |
29 | 29 |
OrigFamily,"/taxondetermination[rolecode=identifier,plantlevel=Family]/{*_id/*/plantname,*_id/plantconcept/*_id/*/plantname}",Brad: OMIT |
30 | 30 |
OrigSpecies,"/{taxondetermination[rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[rolecode=identifier,plantlevel=Species]/{*_id/*/plantname,*_id/plantconcept/*_id/*/plantname}}",Brad: OMIT |
31 |
PlotObsID,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot/authorcode/_alt/3}","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." |
|
31 |
PlotObsID,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot/sourceid/_alt/3}","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." |
mappings/for_review/VegX-VegBIEN.plots.csv | ||
---|---|---|
3 | 3 |
//geospatial/FootprintWKT,//plot/dsgpoly |
4 | 4 |
//geospatial/verbatimElevation,//plot/elevation/_alt/1 |
5 | 5 |
//geospatial/CoordinateUncertaintyInMeters,//plot/locationaccuracy |
6 |
//plot/plotUniqueIdentifier,//plot/authorcode/_alt/1
|
|
6 |
//plot/plotUniqueIdentifier,//plot/sourceid/_alt/1
|
|
7 | 7 |
//plot/country,"//*_id/namedplace[placesystem=""area|country|territory""]/placename" |
8 | 8 |
//plot/state,"//*_id/namedplace[placesystem=""region|state|province""]/placename" |
9 | 9 |
//plot/simpleUserdefined[name=majorGeo]/value,//*_id/namedplace[placesystem=continent]/placename |
... | ... | |
17 | 17 |
//geospatial/maximumElevationInMeters,"/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}" |
18 | 18 |
//geospatial/minimumElevationInMeters,"/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}" |
19 | 19 |
//project/title,//project/projectname |
20 |
/simpleUserdefined[name=authorCode]/value,/authorcode/_alt/1 |
|
21 | 20 |
//*s/communityDetermination/communityConcepts/communityConcept/commonName,//*/commname |
22 | 21 |
//*s/communityDetermination/communityConcepts/communityConcept/name,//commconcept/commdescription |
23 | 22 |
/simpleUserdefined[name=precipMm]/value,"/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]]/definedvalue" |
... | ... | |
47 | 46 |
//*s/abioticObservation/simpleUserdefined[name=sandPercent]/value,//soilobs/soilsand |
48 | 47 |
//*s/abioticObservation/simpleUserdefined[name=siltPercent]/value,//soilobs/soilsilt |
49 | 48 |
//*s/abioticObservation/simpleUserdefined[name=texture]/value,//soilobs/soiltexture |
49 |
/simpleUserdefined[name=authorCode]/value,/sourceid/_alt/1 |
|
50 | 50 |
//geospatial/maximumDepthInMeters,//waterdepth/max |
51 | 51 |
//geospatial/minimumDepthInMeters,//waterdepth/min |
52 |
//plot/plotUniqueIdentifier,"/{*_id/plot/authorcode/_alt/2,authorcode/_alt/2}" |
|
52 |
//plot/plotUniqueIdentifier,"/{*_id/plot/sourceid/_alt/2,sourceid/_alt/2}" |
mappings/for_review/VegX-VegBIEN.organisms.csv | ||
---|---|---|
3 | 3 |
//geospatial/FootprintWKT,//plot/dsgpoly |
4 | 4 |
//geospatial/verbatimElevation,//plot/elevation/_alt/1 |
5 | 5 |
//geospatial/CoordinateUncertaintyInMeters,//plot/locationaccuracy |
6 |
//plot/plotUniqueIdentifier,//plot/authorcode/_alt/1
|
|
6 |
//plot/plotUniqueIdentifier,//plot/sourceid/_alt/1
|
|
7 | 7 |
//plot/country,"//*_id/namedplace[placesystem=""area|country|territory""]/placename" |
8 | 8 |
//plot/state,"//*_id/namedplace[placesystem=""region|state|province""]/placename" |
9 | 9 |
//plot/simpleUserdefined[name=majorGeo]/value,//*_id/namedplace[placesystem=continent]/placename |
... | ... | |
17 | 17 |
//geospatial/maximumElevationInMeters,"/*_id/plotevent/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}" |
18 | 18 |
//geospatial/minimumElevationInMeters,"/*_id/plotevent/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}" |
19 | 19 |
//project/title,//project/projectname |
20 |
//plotObservation/simpleUserdefined[name=authorCode]/value,//plotevent/authorcode/_alt/1 |
|
21 | 20 |
//*s/communityDetermination/communityConcepts/communityConcept/commonName,//*/commname |
22 | 21 |
//*s/communityDetermination/communityConcepts/communityConcept/name,//commconcept/commdescription |
23 | 22 |
//plotObservation/simpleUserdefined[name=precipMm]/value,"//plotevent/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]]/definedvalue" |
... | ... | |
47 | 46 |
//*s/abioticObservation/simpleUserdefined[name=sandPercent]/value,//soilobs/soilsand |
48 | 47 |
//*s/abioticObservation/simpleUserdefined[name=siltPercent]/value,//soilobs/soilsilt |
49 | 48 |
//*s/abioticObservation/simpleUserdefined[name=texture]/value,//soilobs/soiltexture |
49 |
//plotObservation/simpleUserdefined[name=authorCode]/value,//plotevent/sourceid/_alt/1 |
|
50 | 50 |
//geospatial/maximumDepthInMeters,//waterdepth/max |
51 | 51 |
//geospatial/minimumDepthInMeters,//waterdepth/min |
52 |
//plot/plotUniqueIdentifier,"/*_id/plotevent/{*_id/plot/authorcode/_alt/2,authorcode/_alt/2}"
|
|
52 |
//plot/plotUniqueIdentifier,"/*_id/plotevent/{*_id/plot/sourceid/_alt/2,sourceid/_alt/2}"
|
|
53 | 53 |
/simpleUserdefined[name=count]/value,//aggregateoccurrence/count/_alt/1 |
54 | 54 |
/simpleUserdefined[name=coverPercent]/value,//aggregateoccurrence/cover |
55 | 55 |
/simpleUserdefined[name=interceptCm]/value,"//aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]]/definedvalue" |
... | ... | |
62 | 62 |
//individualName/givenName,"/aggregateoccurrence/individualplant/specimen/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}" |
63 | 63 |
"//parties/party/individualName/{givenName/_namePart/{first,middle},surName/_namePart/last}","/aggregateoccurrence/individualplant/specimen/collector_id/party/{givenname/_namePart/first,middlename/_namePart/middle,surname/_namePart/last}" |
64 | 64 |
//individualName/surName,/aggregateoccurrence/individualplant/specimen/collector_id/party/{surname} |
65 |
//taxonNameUsageConcept/voucher,//individualplant/authorcode |
|
66 |
//individualOrganism/identificationLabel,//stem/authorcode |
|
67 |
//individualOrganism/identificationLabel,//stem/authorcode |
|
68 |
//individualOrganism/identificationLabel/_alt/1,//stem/authorcode/_alt/1 |
|
69 |
//individualOrganism/identificationLabel/_alt/1,//stem/authorcode/_alt/1 |
|
70 |
//individualOrganism/identificationLabel/_alt/2,//stem/authorcode/_alt/2 |
|
71 |
//individualOrganism/identificationLabel/_alt/2,//stem/authorcode/_alt/2 |
|
65 |
//taxonNameUsageConcept/voucher,//individualplant/sourceid |
|
72 | 66 |
//*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/diameterBaseDistance[value=0]/diameter,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]]/definedvalue" |
73 | 67 |
/diameterBaseDistance[value=0]/diameter,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]]/definedvalue" |
74 | 68 |
/simpleUserdefined[name=stemCanopyForm]/value,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=canopyForm]]/definedvalue" |
... | ... | |
89 | 83 |
/simpleUserdefined[name=vegetation]/value,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=vegetation]]/definedvalue" |
90 | 84 |
//*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/diameterBaseDistance[baseDistance[]/value=1.37]/diameter,//stem/diameter |
91 | 85 |
//*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID]/simpleUserdefined[name=stemHeightM]/value,//stem/height |
86 |
//individualOrganism/identificationLabel,//stem/sourceid |
|
87 |
//individualOrganism/identificationLabel,//stem/sourceid |
|
88 |
//individualOrganism/identificationLabel/_alt/1,//stem/sourceid/_alt/1 |
|
89 |
//individualOrganism/identificationLabel/_alt/1,//stem/sourceid/_alt/1 |
|
90 |
//individualOrganism/identificationLabel/_alt/2,//stem/sourceid/_alt/2 |
|
91 |
//individualOrganism/identificationLabel/_alt/2,//stem/sourceid/_alt/2 |
|
92 | 92 |
/simpleUserdefined[name=xPosition]/value,//stem/xposition |
93 | 93 |
/simpleUserdefined[name=yPosition]/value,//stem/yposition |
94 | 94 |
/simpleUserdefined[name=censusNo]/value,"/taxondetermination[rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]]/definedvalue" |
... | ... | |
121 | 121 |
//party/organizationName,"/{taxondetermination[rolecode=collector]/museum_id/party/organizationname,aggregateoccurrence/individualplant/specimen/collectioncode_dwc/_namePart/last}" |
122 | 122 |
//party/organizationName/_name/first,/{taxondetermination[rolecode=collector]/museum_id/party/organizationname/_name/first} |
123 | 123 |
//party/organizationName/_name/last,"/{taxondetermination[rolecode=collector]/museum_id/party/organizationname/_name/last,aggregateoccurrence/individualplant/specimen/collectioncode_dwc}" |
124 |
//taxonNameUsageConcept/voucher,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot/authorcode/_alt/3}" |
|
124 |
//taxonNameUsageConcept/voucher,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot/sourceid/_alt/3}" |
mappings/for_review/NYBG-VegBIEN.organisms.csv | ||
---|---|---|
38 | 38 |
Species,"/{taxondetermination[rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[rolecode=identifier,plantlevel=Species]/{*_id/*/plantname,*_id/plantconcept/*_id/*/plantname}}", |
39 | 39 |
InstitutionCode,/{taxondetermination[rolecode=collector]/museum_id/party/organizationname/_name/first}, |
40 | 40 |
CollectionCode,"/{taxondetermination[rolecode=collector]/museum_id/party/organizationname/_name/last,aggregateoccurrence/individualplant/specimen/collectioncode_dwc}",Brad: Not sure if mapping correct. DwC element; code for entire collection; often same as InstitutionCode; Aaron: Combining with InstitutionCode to create collection name |
41 |
UniqueNYInternalRecordNumber,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot/authorcode/_alt/3}","Brad: OMIT; Aaron: We need this field because it is the only ID column with an entry in every row; Brad: OK, use this as primary key" |
|
41 |
UniqueNYInternalRecordNumber,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot/sourceid/_alt/3}","Brad: OMIT; Aaron: We need this field because it is the only ID column with an entry in every row; Brad: OK, use this as primary key" |
mappings/for_review/SALVIAS-VegBIEN.plots.csv | ||
---|---|---|
37 | 37 |
sand_percent,//soilobs/soilsand, |
38 | 38 |
silt_percent,//soilobs/soilsilt, |
39 | 39 |
soil_texture,//soilobs/soiltexture, |
40 |
plot_code,"/{*_id/plot/authorcode/_alt/2,authorcode/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
|
40 |
plot_code,"/{*_id/plot/sourceid/_alt/2,sourceid/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
mappings/for_review/SALVIAS-VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
SALVIAS,VegBIEN:/taxonoccurrence,Comments |
2 |
plot_code,//plot/authorcode/_alt/1,"Brad: Same as plotCode, above"
|
|
2 |
plot_code,//plot/sourceid/_alt/1,"Brad: Same as plotCode, above"
|
|
3 | 3 |
census_date,//plotevent/obsstartdate/_date/year, |
4 |
subplot,"/*_id/plotevent/{*_id/plot/authorcode/_alt/2,authorcode/_alt/2}",
|
|
4 |
subplot,"/*_id/plotevent/{*_id/plot/sourceid/_alt/2,sourceid/_alt/2}",
|
|
5 | 5 |
no_of_individuals,//aggregateoccurrence/count/_alt/1,"Brad: Incorrect for VegX. 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." |
6 | 6 |
cover_percent,//aggregateoccurrence/cover, |
7 | 7 |
intercept_cm,"//aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]]/definedvalue","Brad: Incorrect for VegBank 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." |
... | ... | |
11 | 11 |
coll_number,//specimen/catalognumber_dwc,Brad: Incorrect. Map instead as for voucher_string |
12 | 12 |
coll_firstname,"/aggregateoccurrence/individualplant/specimen/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}",Brad: See comment above |
13 | 13 |
coll_lastname,/aggregateoccurrence/individualplant/specimen/collector_id/party/{surname},"Brad: Correct for VegBank. 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." |
14 |
stem_tag1,//stem/authorcode,"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." |
|
15 |
stem_tag2,//stem/authorcode,Brad: see above |
|
16 |
tag2,//stem/authorcode/_alt/1,"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 |
tag1,//stem/authorcode/_alt/2,"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 | 14 |
basal_diam,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]]/definedvalue", |
19 | 15 |
stem_canopy_form,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=canopyForm]]/definedvalue",Brad: Should also be userDefined for VegBank. |
20 | 16 |
stem_canopy_position,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=canopyPosition]]/definedvalue",Brad: Should also be userDefined for VegBank. |
21 | 17 |
ht_first_branch_m,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]]/definedvalue",Brad: Incorrect for VegBank. This is a measurement applied to a single tree. Check with Bob |
22 | 18 |
stem_height_first_branch_m,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]]/definedvalue","Brad: Should also be userDefined for VegBank. Same as for ht_first_branch_m, but applies to individuals stems, not trees. Rare." |
23 | 19 |
stem_liana_infestation,"//stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=lianaInfestation]]/definedvalue",Brad: Should also be userDefined for VegBank. |
20 |
stem_tag1,//stem/sourceid,"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." |
|
21 |
stem_tag2,//stem/sourceid,Brad: see above |
|
22 |
tag2,//stem/sourceid/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
23 |
tag1,//stem/sourceid/_alt/2,"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." |
|
24 | 24 |
x_position,//stem/xposition,"Brad: Correct for VegBank. I'm not so sure for VegX. Let's ask Nick about this. These are important, fundamental values of many tree plots, and should be accommodated within VegX." |
25 | 25 |
y_position,//stem/yposition,Brad: See comment above for x_position |
26 | 26 |
census_no,"/taxondetermination[rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]]/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." |
... | ... | |
37 | 37 |
infra_ep_1,"/taxondetermination[rolecode=computer,plantlevel=Subspecies]/{*_id/*/plantname/_name/last,*_id/plantconcept/*_id/*/plantname/_name/last}", |
38 | 38 |
orig_family,"/taxondetermination[rolecode=identifier,plantlevel=Family]/{*_id/*/plantname,*_id/plantconcept/*_id/*/plantname}",Brad: OMIT |
39 | 39 |
orig_species,"/{taxondetermination[rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[rolecode=identifier,plantlevel=Species]/{*_id/*/plantname,*_id/plantconcept/*_id/*/plantname}}",Brad: OMIT |
40 |
OBSERVATION_ID,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot/authorcode/_alt/3}","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." |
|
40 |
OBSERVATION_ID,"/{taxondetermination[rolecode=collector]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot/sourceid/_alt/3}","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." |
mappings/for_review/SALVIAS_db-VegBIEN.plots.csv | ||
---|---|---|
13 | 13 |
elev_max_m,"/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}", |
14 | 14 |
elev_min_m,"/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}", |
15 | 15 |
project_id,//project/projectname, |
16 |
PlotID,/authorcode/_alt/1,"Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata." |
|
17 | 16 |
life_zone_code,//*/commname, |
18 | 17 |
life_zone,//commconcept/commdescription, |
19 | 18 |
Precip,"/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]]/definedvalue", |
... | ... | |
38 | 37 |
sand_percent,//soilobs/soilsand, |
39 | 38 |
silt_percent,//soilobs/soilsilt, |
40 | 39 |
soil_texture,//soilobs/soiltexture, |
41 |
SiteCode,"/{*_id/plot/authorcode/_alt/2,authorcode/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
|
40 |
PlotID,/sourceid/_alt/1,"Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata." |
|
41 |
SiteCode,"/{*_id/plot/sourceid/_alt/2,sourceid/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
mappings/SALVIAS-VegBIEN.plots.csv | ||
---|---|---|
37 | 37 |
sand_percent,/soilobs:[soilhorizon=unknown]/soilsand, |
38 | 38 |
silt_percent,/soilobs:[soilhorizon=unknown]/soilsilt, |
39 | 39 |
soil_texture,/soilobs:[soilhorizon=unknown]/soiltexture, |
40 |
plot_code,"/{*_id/plot:[confidentialitystatus=0]/authorcode/_alt/2,authorcode/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
|
40 |
plot_code,"/{*_id/plot:[confidentialitystatus=0]/sourceid/_alt/2,sourceid/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
mappings/SALVIAS-VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
SALVIAS,VegBIEN:/taxonoccurrence,Comments |
2 |
plot_code,/*_id/plotevent/*_id/plot/parent_id/plot:[confidentialitystatus=0]/authorcode/_alt/1,"Brad: Same as plotCode, above"
|
|
2 |
plot_code,/*_id/plotevent/*_id/plot/parent_id/plot:[confidentialitystatus=0]/sourceid/_alt/1,"Brad: Same as plotCode, above"
|
|
3 | 3 |
census_date,/*_id/plotevent/obsstartdate/_date/year, |
4 |
subplot,"/*_id/plotevent/{*_id/plot:[confidentialitystatus=0]/authorcode/_alt/2,authorcode/_alt/2}",
|
|
4 |
subplot,"/*_id/plotevent/{*_id/plot:[confidentialitystatus=0]/sourceid/_alt/2,sourceid/_alt/2}",
|
|
5 | 5 |
no_of_individuals,/aggregateoccurrence/count/_alt/1,"Brad: Incorrect for VegX. 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." |
6 | 6 |
cover_percent,/aggregateoccurrence/cover, |
7 | 7 |
intercept_cm,"/aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=interceptCm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue","Brad: Incorrect for VegBank 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." |
... | ... | |
11 | 11 |
coll_number,/aggregateoccurrence/individualplant/specimen:[*_id/reference]/catalognumber_dwc,Brad: Incorrect. Map instead as for voucher_string |
12 | 12 |
coll_firstname,"/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{givenname/_namePart/first,middlename/_namePart/last}",Brad: See comment above |
13 | 13 |
coll_lastname,/aggregateoccurrence/individualplant/specimen:[*_id/reference]/collector_id/party/{surname},"Brad: Correct for VegBank. 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." |
14 |
stem_tag1,/aggregateoccurrence/individualplant/stem/authorcode,"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." |
|
15 |
stem_tag2,/aggregateoccurrence/individualplant/stem/authorcode,Brad: see above |
|
16 |
tag2,/aggregateoccurrence/individualplant/stem/authorcode/_alt/1,"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 |
tag1,/aggregateoccurrence/individualplant/stem/authorcode/_alt/2,"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 | 14 |
basal_diam,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
19 | 15 |
stem_canopy_form,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=canopyForm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue",Brad: Should also be userDefined for VegBank. |
20 | 16 |
stem_canopy_position,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=canopyPosition]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue",Brad: Should also be userDefined for VegBank. |
21 | 17 |
ht_first_branch_m,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue",Brad: Incorrect for VegBank. This is a measurement applied to a single tree. Check with Bob |
22 | 18 |
stem_height_first_branch_m,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=heightFirstBranchM]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue","Brad: Should also be userDefined for VegBank. Same as for ht_first_branch_m, but applies to individuals stems, not trees. Rare." |
23 | 19 |
stem_liana_infestation,"/aggregateoccurrence/individualplant/stem/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=lianaInfestation]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue",Brad: Should also be userDefined for VegBank. |
20 |
stem_tag1,/aggregateoccurrence/individualplant/stem/sourceid,"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." |
|
21 |
stem_tag2,/aggregateoccurrence/individualplant/stem/sourceid,Brad: see above |
|
22 |
tag2,/aggregateoccurrence/individualplant/stem/sourceid/_alt/1,"Brad: See commend for tag1. Your mapping for tag2 looks correct. Probably both values would go here, only nested, with one superceding the other." |
|
23 |
tag1,/aggregateoccurrence/individualplant/stem/sourceid/_alt/2,"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." |
|
24 | 24 |
x_position,/aggregateoccurrence/individualplant/stem/xposition,"Brad: Correct for VegBank. I'm not so sure for VegX. Let's ask Nick about this. These are important, fundamental values of many tree plots, and should be accommodated within VegX." |
25 | 25 |
y_position,/aggregateoccurrence/individualplant/stem/yposition,Brad: See comment above for x_position |
26 | 26 |
census_no,"/taxondetermination[role_id/aux_role/rolecode=collector]/definedvalue[*_id/userdefined[tablename=taxondetermination,userdefinedname=censusNo]:[userdefinedtype=varchar]]:[@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." |
... | ... | |
37 | 37 |
infra_ep_1,"/taxondetermination[role_id/aux_role/rolecode=computer,*_id/plantconcept/plantstatus/plantlevel=Subspecies]:[determinationtype=""Computer (automated)"",originaldetermination=false,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname/_name/last,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname/_name/last}", |
38 | 38 |
orig_family,"/taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Family]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}",Brad: OMIT |
39 | 39 |
orig_species,"/{taxondetermination[role_id/aux_role/rolecode=collector]/*_id/*/plantname/_alt/2,taxondetermination[role_id/aux_role/rolecode=identifier,*_id/plantconcept/plantstatus/plantlevel=Species]:[determinationtype=Author,originaldetermination=true,currentdetermination=true,determinationdate=epoch,*_id/party]/{*_id/*/plantname,*_id/plantconcept:[plantstatus:[plantconceptstatus=accepted,startdate=epoch,*_id/party],*_id/reference]/*_id/*/plantname}}",Brad: OMIT |
40 |
OBSERVATION_ID,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/authorcode/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/authorcode/_alt/3}","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." |
|
40 |
OBSERVATION_ID,":[aggregateoccurrence/count/_alt/2=1]/{taxondetermination[role_id/aux_role/rolecode=collector]:[determinationtype=Author,originaldetermination=true,currentdetermination=false,determinationdate=epoch,*_id/party]/museumaccessionnumber,*_id/plotevent/sourceid/_alt/2,*_id/plotevent/*_id/plot:[confidentialitystatus=0]/sourceid/_alt/3}","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." |
mappings/VegX-VegBIEN.stems.csv | ||
---|---|---|
1 | 1 |
VegX:/*s/individualOrganismObservation[relatedItem[relationshipType=stemParent]/relatedItemID],VegBIEN:/stem |
2 |
/relatedItem[relationshipType=stemParent]/relatedItemID->/*s/individualOrganismObservation/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/voucher,/*_id/individualplant/authorcode |
|
3 |
/*ID->/*s/individualOrganism/identificationLabel,/authorcode |
|
4 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/1,/authorcode/_alt/1 |
|
5 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/2,/authorcode/_alt/2 |
|
2 |
/relatedItem[relationshipType=stemParent]/relatedItemID->/*s/individualOrganismObservation/*ID->/*s/individualOrganism/*sID->/*s/taxonNameUsageConcept/voucher,/*_id/individualplant/sourceid |
|
6 | 3 |
/diameterBaseDistance[baseDistance/value=0]/diameter,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=basalDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
7 | 4 |
/simpleUserdefined[name=count]/value,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=count]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
8 | 5 |
/diameterBaseDistance[baseDistance[complexUserDefined/method=Gentry]/value=1.37]/diameter,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=gentryDiameter]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
... | ... | |
13 | 10 |
/simpleUserdefined[name=stemLianaInfestation]/value,"/definedvalue[*_id/userdefined[tablename=stem,userdefinedname=stemLianaInfestation]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue" |
14 | 11 |
/diameterBaseDistance[baseDistance[!complexUserDefined/method]/value=1.37]/diameter,/diameter |
15 | 12 |
/simpleUserdefined[name=stemHeightM]/value,/height |
13 |
/*ID->/*s/individualOrganism/identificationLabel,/sourceid |
|
14 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/1,/sourceid/_alt/1 |
|
15 |
/*ID->/*s/individualOrganism/identificationLabel/_alt/2,/sourceid/_alt/2 |
mappings/SALVIAS_db-VegBIEN.plots.csv | ||
---|---|---|
13 | 13 |
elev_max_m,"/*_id/plot/{elevation/_alt/2/_avg/max,elevationrange/_range/to}", |
14 | 14 |
elev_min_m,"/*_id/plot/{elevation/_alt/2/_avg/min,elevationrange/_range/from}", |
15 | 15 |
project_id,/*_id/project/projectname, |
16 |
PlotID,/authorcode/_alt/1,"Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata." |
|
17 | 16 |
life_zone_code,/commclass/commdetermination/*_id/commconcept/*_id/*/commname, |
18 | 17 |
life_zone,/commclass/commdetermination/*_id/commconcept/commdescription, |
19 | 18 |
Precip,"/definedvalue[*_id/userdefined[tablename=plotevent,userdefinedname=precipitationMm]:[userdefinedtype=varchar]]:[@fkey=tableRecord_ID]/definedvalue", |
... | ... | |
38 | 37 |
sand_percent,/soilobs:[soilhorizon=unknown]/soilsand, |
39 | 38 |
silt_percent,/soilobs:[soilhorizon=unknown]/soilsilt, |
40 | 39 |
soil_texture,/soilobs:[soilhorizon=unknown]/soiltexture, |
41 |
SiteCode,"/{*_id/plot:[confidentialitystatus=0]/authorcode/_alt/2,authorcode/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
|
40 |
PlotID,/sourceid/_alt/1,"Brad: This is artificial internal database ID; a unique identifier within SALVIAS DB to each plot, within the table plotMetadata." |
|
41 |
SiteCode,"/{*_id/plot:[confidentialitystatus=0]/sourceid/_alt/2,sourceid/_alt/2}",Brad: plotCode is as-assigned by data provider; guranteed to be unique only within dataset (=project) |
Also available in: Unified diff
VegBIEN: Renamed authorcode to sourceid