Project

General

Profile

1 4651 aaronmk
SALVIAS,VegBIEN:/_simplifyPath:[next=parent_id]/path,Comments
2 4987 aaronmk
Line,"/location/_if[@name=""if subplot""]/cond/_exists",
3 4336 aaronmk
PlotCode,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/1",
4
PlotID,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/2/_if[@name=""if locationID""]/cond/_exists",
5 4949 aaronmk
coll_number,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/cond/_exists/_alt/1",Brad: Map instead as for voucher_string
6
SourceVoucher,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/cond/_exists/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
7
DetType,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/3/_if[@name=""if indirect voucher""]/cond/_eq:[right=indirect]/left","Brad: A SALVIAS value referring to the relationship between the voucher specimen and the observation. Affect how the identification of the specimen(latin name) is transferred to the observation. 'direct'=voucher specimen was collected from this same tree; they are one and the same individual. 'indirect'=voucher specimen was collected for a different individual, but the original data provider confirmed that this is the same species. 'default'=basically same as 'indirect'. 'uncollected'=no voucher specimen, data provider  asserted that this was the name but was unable to collect. The main different is that with 'direct', 'indirect', and 'default', the scientific name can be updated automatically based on the name attached to the specimen voucher (assuming you have a link to that data, presumably from a herbarium database. Whereas, if det_type='uncollected', the name can never change because there is no specimen."
8
coll_number,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/3/_if[@name=""if indirect voucher""]/else/_alt/1",Brad: Map instead as for voucher_string
9
SourceVoucher,"/location/_if[@name=""if subplot""]/else/authorlocationcode/_first/3/_alt/2/_if[@name=""if catalogNumber""]/then/_join/3/_if[@name=""if indirect voucher""]/else/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
10 4324 aaronmk
PlotID,"/location/_if[@name=""if subplot""]/else/sourceaccessioncode",
11
PlotCode,"/location/_if[@name=""if subplot""]/then/parent_id/location/authorlocationcode",
12
PlotID,"/location/_if[@name=""if subplot""]/then/parent_id/location/sourceaccessioncode",
13 4333 aaronmk
Line,/location/authorlocationcode,
14 4987 aaronmk
Line,"/location/locationevent/_if[@name=""if subplot""]/cond/_exists",
15 4458 aaronmk
PlotCode,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/authorlocationcode",
16
PlotID,"/location/locationevent/_if[@name=""if subplot""]/then/_if[@name=""if event""]/then/parent_id/locationevent/*_id/location/sourceaccessioncode",
17 4563 aaronmk
census_date,/location/locationevent/obsenddate/_*/date/_alt/2/_dateRangeEnd/value,"This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
18 4176 aaronmk
-----
19
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
20
FROM ""SALVIAS"".organisms
21
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
22
GROUP BY ""PlotID"", ""Line""
23
HAVING count(DISTINCT census_date) > 1
24 4020 aaronmk
-----"
25 4563 aaronmk
census_date,/location/locationevent/obsstartdate/_*/date/_alt/2/_dateRangeStart/value,"This is for the subplot, not the organism, as all organisms in a subplot have the same value for it. The following query returns no rows:
26 4176 aaronmk
-----
27
SELECT ""PlotID"", ""Line"", count(DISTINCT census_date) AS census_date_count
28
FROM ""SALVIAS"".organisms
29
WHERE ""Line"" IS NOT NULL AND census_date IS NOT NULL
30
GROUP BY ""PlotID"", ""Line""
31
HAVING count(DISTINCT census_date) > 1
32 4020 aaronmk
-----"
33 4179 aaronmk
NoInd,/location/locationevent/taxonoccurrence/aggregateoccurrence/count,"Brad: This is a count of number of indiiduals for an *aggregate* observation. For VegBank, I'm not sure. Not exactly the same as stemCount. An individual tree could have 3 stems but would still only count as 1. We need to check with Bob on this."
34 4789 aaronmk
cover_percent,/location/locationevent/taxonoccurrence/aggregateoccurrence/cover_fraction/_percent_to_fraction/value,
35 3968 aaronmk
census_no,"/location/locationevent/taxonoccurrence/aggregateoccurrence/definedvalue[*_id/userdefined[tablename=aggregateoccurrence,userdefinedname=censusNo]]:[@fkey=tablerecord_id]/definedvalue","Brad: Assigned by SALVIAS. 1 for first plot, then 2, 3, etc. I can't recall if we even have repeat censuses in SALVIAS. Probably not."
36 4785 aaronmk
intercept_cm,/location/locationevent/taxonoccurrence/aggregateoccurrence/linecover_m/_cm_to_m/value,"Brad: This is an aggregate observation. Used in line-intercept methodology only, describes the point along centerline at which an individual intercepts the center line of the plot. Used to determin relative abundance."
37 3968 aaronmk
Notes,/location/locationevent/taxonoccurrence/aggregateoccurrence/notes,
38 4574 aaronmk
Ind,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/collectionnumber,"Brad: Code, if any, used by the data provider to indicate an individual tree. Scope is unknown, although typically this value is unique only within plot, or sometimes only within subplot."
39 3968 aaronmk
PlotObsID,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/sourceaccessioncode,"Brad: Neither is correct; this is just an internal ID for table plotObservations. However, it has the important property of uniquely identifying an ""observation"", which is an individual tree, in the case of an individual observation, or a records of a species with an associated count of individuals or measurement of percent cover, in the case of aggregate observations. Not sure where to store this. Main point is that it is not part of the original data, but an auto_increment added later."
40 4045 aaronmk
DetType,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/cond/_eq:[right=indirect]/left","Brad: A SALVIAS value referring to the relationship between the voucher specimen and the observation. Affect how the identification of the specimen(latin name) is transferred to the observation. 'direct'=voucher specimen was collected from this same tree; they are one and the same individual. 'indirect'=voucher specimen was collected for a different individual, but the original data provider confirmed that this is the same species. 'default'=basically same as 'indirect'. 'uncollected'=no voucher specimen, data provider  asserted that this was the name but was unable to collect. The main different is that with 'direct', 'indirect', and 'default', the scientific name can be updated automatically based on the name attached to the specimen voucher (assuming you have a link to that data, presumably from a herbarium database. Whereas, if det_type='uncollected', the name can never change because there is no specimen."
41 4179 aaronmk
coll_number,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else/_alt/1",Brad: Map instead as for voucher_string
42 4045 aaronmk
SourceVoucher,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/else/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
43 4179 aaronmk
canopy_form,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/definedvalue[*_id/userdefined[tablename=stemobservation,userdefinedname=canopyForm]]:[@fkey=tablerecord_id]/definedvalue",
44
canopy_position,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/definedvalue[*_id/userdefined[tablename=stemobservation,userdefinedname=canopyPosition]]:[@fkey=tablerecord_id]/definedvalue",
45
liana_infestation,"/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/definedvalue[*_id/userdefined[tablename=stemobservation,userdefinedname=lianaInfestation]]:[@fkey=tablerecord_id]/definedvalue",
46 4869 aaronmk
temp_dbh,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/diameterbreastheight_m/_cm_to_m/value,"Assuming units based on the units for intercept_cm, which measures the same dimension"
47 4753 aaronmk
height_m,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/height_m,
48
ht_first_branch_m,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/heightfirstbranch_m,
49 4828 aaronmk
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."
50
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."
51 4753 aaronmk
x_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/xposition_m,"Brad: These are important, fundamental values of many tree plots"
52
y_position,/location/locationevent/taxonoccurrence/aggregateoccurrence/plantobservation/stemobservation/yposition_m,Brad: See comment above for x_position
53 4833 aaronmk
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."
54
PlotCode,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
55
PlotID,"/location/locationevent/taxonoccurrence/authortaxoncode/_first/1/_first/2/_if[@name=""if is organism""]/cond/_exists",
56
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."
57
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."
58 4179 aaronmk
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>"
59 4976 aaronmk
PlotObsID,"/location/locationevent/taxonoccurrence/sourceaccessioncode/_first/2/_if[@name=""if organism in AggregateOccurrence""]/else","Brad: Neither is correct; this is just an internal ID for table plotObservations. However, it has the important property of uniquely identifying an ""observation"", which is an individual tree, in the case of an individual observation, or a records of a species with an associated count of individuals or measurement of percent cover, in the case of aggregate observations. Not sure where to store this. Main point is that it is not part of the original data, but an auto_increment added later."
60 4944 aaronmk
auth,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/author,Brad: This is the author of the scientificName.
61 4718 aaronmk
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/family,
62
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/genus,
63
Species,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/species,
64 5014 aaronmk
infra_rank_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/subspecies/_alt/2/_join_words/1,
65
infra_ep_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/subspecies/_alt/2/_join_words/2,
66 5072 aaronmk
Family,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/1,
67
Genus,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/2,
68
Species,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/3,
69
infra_rank_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/1,
70
infra_ep_1,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/5/_join_words/2,
71
auth,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/2,Brad: This is the author of the scientificName.
72 4205 aaronmk
cfaff,/location/locationevent/taxonoccurrence/taxondetermination[!isoriginal]/taxonfit,"Brad: Not sure where this goes. Indicator of identification uncertainty. 'cf.'=similar to the species listed, 'aff.'=related to the species list, but not the same. You'll need to check with Bob and with Nick where these go in VegX and VegBank."
73 4718 aaronmk
OrigFamily,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonpath/family,Brad: OMIT
74
OrigGenus,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonpath/genus,
75
OrigSpecies,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonpath/species,Brad: OMIT
76 5072 aaronmk
OrigFamily,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/1,Brad: OMIT
77
OrigGenus,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/2,
78
OrigSpecies,/location/locationevent/taxonoccurrence/taxondetermination[isoriginal=true]/*_id/taxonpath/taxonomicnamewithauthor/_alt/2/_join_words/1/_alt/2/_join_words/3,Brad: OMIT
79 5014 aaronmk
coll_firstname,/location/locationevent/taxonoccurrence/verbatimcollectorname/_join_words/1,Brad: See comment above
80
coll_lastname,/location/locationevent/taxonoccurrence/verbatimcollectorname/_join_words/2,"Brad: This is the collector of a separate specimen which vouchers this tree or species. I worry that vouchers are not properly accommodated in VegX. Again, we need to check with Nick."
81 4045 aaronmk
DetType,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/cond/_eq:[right=indirect]/left","Brad: A SALVIAS value referring to the relationship between the voucher specimen and the observation. Affect how the identification of the specimen(latin name) is transferred to the observation. 'direct'=voucher specimen was collected from this same tree; they are one and the same individual. 'indirect'=voucher specimen was collected for a different individual, but the original data provider confirmed that this is the same species. 'default'=basically same as 'indirect'. 'uncollected'=no voucher specimen, data provider  asserted that this was the name but was unable to collect. The main different is that with 'direct', 'indirect', and 'default', the scientific name can be updated automatically based on the name attached to the specimen voucher (assuming you have a link to that data, presumably from a herbarium database. Whereas, if det_type='uncollected', the name can never change because there is no specimen."
82 4179 aaronmk
coll_number,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/then/_alt/1",Brad: Map instead as for voucher_string
83 4045 aaronmk
SourceVoucher,"/location/locationevent/taxonoccurrence/voucher/*_id/specimenreplicate/catalognumber_dwc/_if[@name=""if indirect voucher""]/then/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below."
84 4979 aaronmk
GenAuth,,** No join mapping for *GenAuth **
85
IsMorpho,,** No join mapping for *IsMorpho **
86
OrigAuth,,** No join mapping for *OrigAuth **
87
OrigRecordID,,** No join mapping for *OrigRecordID **
88
PlotID_index,,** No join mapping for *PlotID_index **
89
SpAuthStatus,,** No join mapping for *SpAuthStatus **
90
coll_inits,,** No join mapping for *coll_inits **
91
collector_code,,** No join mapping for *collector_code ** Brad: OMIT
92
common_name,,** No join mapping for *common_name **
93
det_by,,** No join mapping for *det_by **
94
dist,,** No join mapping for *dist **
95
fam_status,,** No join mapping for *fam_status ** Brad: OMIT. This will be determined later by using TNRS.
96
gen_status,,** No join mapping for *gen_status ** Brad: OMIT. This will be determined later by using TNRS.
97
height_class,,** No join mapping for *height_class **
98
height_m_commercial,,** No join mapping for *height_m_commercial **
99
ind_id,,** No join mapping for *ind_id ** Brad: OMIT
100
infra_auth_1,,** No join mapping for *infra_auth_1 **
101
morphocf,,** No join mapping for *morphocf **
102
morphoname,,** No join mapping for *morphoname **
103
name_status,,"** No join mapping for *name_status ** Brad: OMIT. Except, note that if species_status=3, this indicate that name is a morphospecies and not a standard latin name. Not exactly sure how to use this in BIEN, but could be useful during the name-scrubbing process with TNRS."
104
other_annotations,,** No join mapping for *other_annotations **
105
perp_dist,,** No join mapping for *perp_dist **
106
phenology,,** No join mapping for *phenology **
107
species_code,,** No join mapping for *species_code **
108
temp_liandbh,,** No join mapping for *temp_liandbh **
109
tmp_del,,** No join mapping for *tmp_del **