Revision 3722
Added by Aaron Marcuse-Kubitza over 12 years ago
inputs/CVS/test/import.organisms.xml.ref | ||
---|---|---|
1 | 1 |
Put template: |
2 | 2 |
<VegBIEN> |
3 | 3 |
<plantobservation id="-1"> |
4 |
<aggregateoccurrence> |
|
5 |
<taxonoccurrence_id> |
|
6 |
<taxonoccurrence> |
|
7 |
<locationevent_id> |
|
8 |
<locationevent> |
|
9 |
<location_id> |
|
10 |
<location> |
|
11 |
<locationdetermination> |
|
12 |
<coordsaccuracy>$locationAccuracy-m</coordsaccuracy> |
|
13 |
<namedplace_id> |
|
14 |
<_simplifyPath> |
|
15 |
<next>parent_id/namedplace</next> |
|
16 |
<require>placename</require> |
|
17 |
<path> |
|
18 |
<namedplace> |
|
19 |
<rank>county</rank> |
|
20 |
<placename>$county</placename> |
|
21 |
<parent_id> |
|
22 |
<namedplace> |
|
23 |
<rank>stateProvince</rank> |
|
24 |
<placename>$state</placename> |
|
25 |
</namedplace> |
|
26 |
</parent_id> |
|
27 |
</namedplace> |
|
28 |
</path> |
|
29 |
</_simplifyPath> |
|
30 |
</namedplace_id> |
|
31 |
<latitude> |
|
4 |
<aggregateoccurrence_id> |
|
5 |
<aggregateoccurrence> |
|
6 |
<taxonoccurrence_id> |
|
7 |
<taxonoccurrence> |
|
8 |
<locationevent_id> |
|
9 |
<locationevent> |
|
10 |
<location_id> |
|
11 |
<location> |
|
12 |
<locationdetermination> |
|
13 |
<coordsaccuracy>$locationAccuracy-m</coordsaccuracy> |
|
14 |
<namedplace_id> |
|
15 |
<_simplifyPath> |
|
16 |
<next>parent_id/namedplace</next> |
|
17 |
<require>placename</require> |
|
18 |
<path> |
|
19 |
<namedplace> |
|
20 |
<rank>county</rank> |
|
21 |
<placename>$county</placename> |
|
22 |
<parent_id> |
|
23 |
<namedplace> |
|
24 |
<rank>stateProvince</rank> |
|
25 |
<placename>$state</placename> |
|
26 |
</namedplace> |
|
27 |
</parent_id> |
|
28 |
</namedplace> |
|
29 |
</path> |
|
30 |
</_simplifyPath> |
|
31 |
</namedplace_id> |
|
32 |
<latitude> |
|
33 |
<_alt> |
|
34 |
<1>$realLatitude</1> |
|
35 |
<2>$publicLatitude</2> |
|
36 |
</_alt> |
|
37 |
</latitude> |
|
38 |
<longitude> |
|
39 |
<_alt> |
|
40 |
<1>$realLongitude</1> |
|
41 |
<2>$publicLongitude</2> |
|
42 |
</_alt> |
|
43 |
</longitude> |
|
44 |
</locationdetermination> |
|
45 |
<centerlatitude> |
|
32 | 46 |
<_alt> |
33 | 47 |
<1>$realLatitude</1> |
34 | 48 |
<2>$publicLatitude</2> |
35 | 49 |
</_alt> |
36 |
</latitude> |
|
37 |
<longitude> |
|
50 |
</centerlatitude>
|
|
51 |
<centerlongitude>
|
|
38 | 52 |
<_alt> |
39 | 53 |
<1>$realLongitude</1> |
40 | 54 |
<2>$publicLongitude</2> |
41 | 55 |
</_alt> |
42 |
</longitude> |
|
43 |
</locationdetermination> |
|
44 |
<centerlatitude> |
|
45 |
<_alt> |
|
46 |
<1>$realLatitude</1> |
|
47 |
<2>$publicLatitude</2> |
|
48 |
</_alt> |
|
49 |
</centerlatitude> |
|
50 |
<centerlongitude> |
|
51 |
<_alt> |
|
52 |
<1>$realLongitude</1> |
|
53 |
<2>$publicLongitude</2> |
|
54 |
</_alt> |
|
55 |
</centerlongitude> |
|
56 |
<sourceaccessioncode><_merge><2><_alt><2>$authorObsCode</2></_alt></2></_merge></sourceaccessioncode> |
|
57 |
</location> |
|
58 |
</location_id> |
|
59 |
<obsstartdate><_date><date>$obsStartDate</date></_date></obsstartdate> |
|
60 |
<authorlocationcode>$authorObsCode</authorlocationcode> |
|
61 |
</locationevent> |
|
62 |
</locationevent_id> |
|
63 |
<taxondetermination> |
|
64 |
<isoriginal>true</isoriginal> |
|
65 |
<iscurrent>true</iscurrent> |
|
66 |
<role>identifier</role> |
|
67 |
<plantconcept_id> |
|
68 |
<plantconcept> |
|
69 |
<plantname_id> |
|
70 |
<_simplifyPath> |
|
71 |
<next>parent_id/plantname</next> |
|
72 |
<require>plantname</require> |
|
73 |
<path> |
|
74 |
<plantname> |
|
75 |
<rank>binomial</rank> |
|
76 |
<plantname><_name><first>$currentTaxonName sec Weakley 2006</first></_name></plantname> |
|
77 |
</plantname> |
|
78 |
</path> |
|
79 |
</_simplifyPath> |
|
80 |
</plantname_id> |
|
81 |
</plantconcept> |
|
82 |
</plantconcept_id> |
|
83 |
</taxondetermination> |
|
84 |
<sourceaccessioncode><_alt><3>$currentTaxonName sec Weakley 2006</3></_alt></sourceaccessioncode> |
|
85 |
</taxonoccurrence> |
|
86 |
</taxonoccurrence_id> |
|
87 |
<cover>$%cover</cover> |
|
88 |
</aggregateoccurrence> |
|
56 |
</centerlongitude> |
|
57 |
<sourceaccessioncode><_merge><2><_alt><2>$authorObsCode</2></_alt></2></_merge></sourceaccessioncode> |
|
58 |
</location> |
|
59 |
</location_id> |
|
60 |
<obsstartdate><_date><date>$obsStartDate</date></_date></obsstartdate> |
|
61 |
<authorlocationcode>$authorObsCode</authorlocationcode> |
|
62 |
</locationevent> |
|
63 |
</locationevent_id> |
|
64 |
<taxondetermination> |
|
65 |
<isoriginal>true</isoriginal> |
|
66 |
<iscurrent>true</iscurrent> |
|
67 |
<role>identifier</role> |
|
68 |
<plantconcept_id> |
|
69 |
<plantconcept> |
|
70 |
<plantname_id> |
|
71 |
<_simplifyPath> |
|
72 |
<next>parent_id/plantname</next> |
|
73 |
<require>plantname</require> |
|
74 |
<path> |
|
75 |
<plantname> |
|
76 |
<rank>binomial</rank> |
|
77 |
<plantname><_name><first>$currentTaxonName sec Weakley 2006</first></_name></plantname> |
|
78 |
</plantname> |
|
79 |
</path> |
|
80 |
</_simplifyPath> |
|
81 |
</plantname_id> |
|
82 |
</plantconcept> |
|
83 |
</plantconcept_id> |
|
84 |
</taxondetermination> |
|
85 |
<sourceaccessioncode><_alt><3>$currentTaxonName sec Weakley 2006</3></_alt></sourceaccessioncode> |
|
86 |
</taxonoccurrence> |
|
87 |
</taxonoccurrence_id> |
|
88 |
<cover>$%cover</cover> |
|
89 |
</aggregateoccurrence> |
|
90 |
</aggregateoccurrence_id> |
|
89 | 91 |
</plantobservation> |
90 | 92 |
</VegBIEN> |
91 | 93 |
Inserted 18 new rows into database |
inputs/CVS/maps/VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
CVS,VegBIEN:/plantobservation,Comments |
2 |
locationAccuracy-m,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/coordsaccuracy, |
|
3 |
county,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=county]/placename", |
|
4 |
state,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[county,],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=stateProvince]/placename", |
|
5 |
realLatitude,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1", |
|
6 |
publicLatitude,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2", |
|
7 |
realLongitude,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/1", |
|
8 |
publicLongitude,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2", |
|
9 |
obsStartDate,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/obsstartdate/_*/date, |
|
10 |
authorObsCode,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{authorlocationcode,*_id/location/sourceaccessioncode/_merge/2/_alt/2}", |
|
11 |
currentTaxonName sec Weakley 2006,"/aggregateoccurrence/*_id/taxonoccurrence/{taxondetermination[role=identifier]:[isoriginal=true,iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[],do=""plantname[rank=_val]/parent_id""]/plantname[rank=binomial]/plantname/_name/first,sourceaccessioncode/_alt/3}", |
|
12 |
%cover,/aggregateoccurrence/cover, |
|
2 |
locationAccuracy-m,/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/coordsaccuracy,
|
|
3 |
county,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=county]/placename",
|
|
4 |
state,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[county,],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=stateProvince]/placename",
|
|
5 |
realLatitude,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1",
|
|
6 |
publicLatitude,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2",
|
|
7 |
realLongitude,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/1",
|
|
8 |
publicLongitude,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2",
|
|
9 |
obsStartDate,/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/obsstartdate/_*/date,
|
|
10 |
authorObsCode,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{authorlocationcode,*_id/location/sourceaccessioncode/_merge/2/_alt/2}",
|
|
11 |
currentTaxonName sec Weakley 2006,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/{taxondetermination[role=identifier]:[isoriginal=true,iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[],do=""plantname[rank=_val]/parent_id""]/plantname[rank=binomial]/plantname/_name/first,sourceaccessioncode/_alt/3}",
|
|
12 |
%cover,/*_id/aggregateoccurrence/cover,
|
|
13 | 13 |
confidentialityStatus,,** No input mapping for confidentialityStatus ** |
inputs/SALVIAS-CSV/test/import.organisms.xml.ref | ||
---|---|---|
1 | 1 |
Put template: |
2 | 2 |
<VegBIEN> |
3 | 3 |
<plantobservation id="-1"> |
4 |
<aggregateoccurrence merge="1"> |
|
5 |
<taxonoccurrence_id merge="1"> |
|
6 |
<taxonoccurrence> |
|
7 |
<locationevent_id> |
|
8 |
<locationevent> |
|
9 |
<obsstartdate><_date><year>$census_date</year></_date></obsstartdate> |
|
10 |
<authorlocationcode>$subplot</authorlocationcode> |
|
11 |
<location_id> |
|
12 |
<location> |
|
13 |
<sourceaccessioncode> |
|
14 |
<_merge> |
|
15 |
<2><_alt><2>$subplot</2></_alt></2> |
|
16 |
<1> |
|
17 |
<_alt> |
|
18 |
<2>$plot_code</2> |
|
19 |
<1>$PLOT_ID</1> |
|
20 |
</_alt> |
|
21 |
</1> |
|
22 |
</_merge> |
|
23 |
</sourceaccessioncode> |
|
24 |
</location> |
|
25 |
</location_id> |
|
26 |
<parent_id> |
|
27 |
<locationevent> |
|
28 |
<authorlocationcode>$plot_code</authorlocationcode> |
|
29 |
<location_id> |
|
30 |
<location> |
|
31 |
<sourceaccessioncode> |
|
32 |
<_alt> |
|
33 |
<2>$plot_code</2> |
|
34 |
<1>$PLOT_ID</1> |
|
35 |
</_alt> |
|
36 |
</sourceaccessioncode> |
|
37 |
</location> |
|
38 |
</location_id> |
|
39 |
<sourceaccessioncode>$PLOT_ID</sourceaccessioncode> |
|
40 |
</locationevent> |
|
41 |
</parent_id> |
|
42 |
</locationevent> |
|
43 |
</locationevent_id> |
|
44 |
<growthform> |
|
45 |
<_map> |
|
46 |
<T>tree</T> |
|
47 |
<Arbol>tree</Arbol> |
|
48 |
<palm>tree</palm> |
|
49 |
<H>hemiepiphyte</H> |
|
50 |
<Hemiepífito>hemiepiphyte</Hemiepífito> |
|
51 |
<L>liana</L> |
|
52 |
<l>liana</l> |
|
53 |
<L?>liana</L?> |
|
54 |
<Liana>liana</Liana> |
|
55 |
<E>epiphyte</E> |
|
56 |
<S>shrub</S> |
|
57 |
<Hb>herb</Hb> |
|
58 |
<vine-herbaceous>vine</vine-herbaceous> |
|
59 |
<graminoid>grass</graminoid> |
|
60 |
<rosette>forb</rosette> |
|
61 |
<*></*> |
|
62 |
<value>$habit</value> |
|
63 |
</_map> |
|
64 |
</growthform> |
|
65 |
<taxondetermination> |
|
66 |
<role>computer</role> |
|
67 |
<plantconcept_id> |
|
68 |
<plantconcept> |
|
69 |
<plantname_id> |
|
70 |
<_simplifyPath> |
|
71 |
<next>parent_id/plantname</next> |
|
72 |
<require>plantname</require> |
|
73 |
<path> |
|
74 |
<plantname> |
|
75 |
<rank>binomial</rank> |
|
76 |
<parent_id> |
|
77 |
<plantname> |
|
78 |
<rank>authority</rank> |
|
79 |
<parent_id> |
|
80 |
<plantname> |
|
81 |
<rank>subspecies</rank> |
|
4 |
<aggregateoccurrence_id merge="1"> |
|
5 |
<aggregateoccurrence merge="1"> |
|
6 |
<taxonoccurrence_id merge="1"> |
|
7 |
<taxonoccurrence> |
|
8 |
<locationevent_id> |
|
9 |
<locationevent> |
|
10 |
<obsstartdate><_date><year>$census_date</year></_date></obsstartdate> |
|
11 |
<authorlocationcode>$subplot</authorlocationcode> |
|
12 |
<location_id> |
|
13 |
<location> |
|
14 |
<sourceaccessioncode> |
|
15 |
<_merge> |
|
16 |
<2><_alt><2>$subplot</2></_alt></2> |
|
17 |
<1> |
|
18 |
<_alt> |
|
19 |
<2>$plot_code</2> |
|
20 |
<1>$PLOT_ID</1> |
|
21 |
</_alt> |
|
22 |
</1> |
|
23 |
</_merge> |
|
24 |
</sourceaccessioncode> |
|
25 |
</location> |
|
26 |
</location_id> |
|
27 |
<parent_id> |
|
28 |
<locationevent> |
|
29 |
<authorlocationcode>$plot_code</authorlocationcode> |
|
30 |
<location_id> |
|
31 |
<location> |
|
32 |
<sourceaccessioncode> |
|
33 |
<_alt> |
|
34 |
<2>$plot_code</2> |
|
35 |
<1>$PLOT_ID</1> |
|
36 |
</_alt> |
|
37 |
</sourceaccessioncode> |
|
38 |
</location> |
|
39 |
</location_id> |
|
40 |
<sourceaccessioncode>$PLOT_ID</sourceaccessioncode> |
|
41 |
</locationevent> |
|
42 |
</parent_id> |
|
43 |
</locationevent> |
|
44 |
</locationevent_id> |
|
45 |
<growthform> |
|
46 |
<_map> |
|
47 |
<T>tree</T> |
|
48 |
<Arbol>tree</Arbol> |
|
49 |
<palm>tree</palm> |
|
50 |
<H>hemiepiphyte</H> |
|
51 |
<Hemiepífito>hemiepiphyte</Hemiepífito> |
|
52 |
<L>liana</L> |
|
53 |
<l>liana</l> |
|
54 |
<L?>liana</L?> |
|
55 |
<Liana>liana</Liana> |
|
56 |
<E>epiphyte</E> |
|
57 |
<S>shrub</S> |
|
58 |
<Hb>herb</Hb> |
|
59 |
<vine-herbaceous>vine</vine-herbaceous> |
|
60 |
<graminoid>grass</graminoid> |
|
61 |
<rosette>forb</rosette> |
|
62 |
<*></*> |
|
63 |
<value>$habit</value> |
|
64 |
</_map> |
|
65 |
</growthform> |
|
66 |
<taxondetermination> |
|
67 |
<role>computer</role> |
|
68 |
<plantconcept_id> |
|
69 |
<plantconcept> |
|
70 |
<plantname_id> |
|
71 |
<_simplifyPath> |
|
72 |
<next>parent_id/plantname</next> |
|
73 |
<require>plantname</require> |
|
74 |
<path> |
|
75 |
<plantname> |
|
76 |
<rank>binomial</rank> |
|
77 |
<parent_id> |
|
78 |
<plantname> |
|
79 |
<rank>authority</rank> |
|
80 |
<parent_id> |
|
82 | 81 |
<plantname> |
83 |
<_name> |
|
84 |
<first>$infra_rank_1</first> |
|
85 |
<last>$infra_ep_1</last> |
|
86 |
</_name> |
|
87 |
</plantname> |
|
88 |
<parent_id> |
|
82 |
<rank>subspecies</rank> |
|
89 | 83 |
<plantname> |
90 |
<rank>species</rank> |
|
91 |
<plantname>$specific_epithet</plantname> |
|
92 |
<parent_id> |
|
93 |
<plantname> |
|
94 |
<rank>genus</rank> |
|
95 |
<plantname>$genus</plantname> |
|
96 |
<parent_id> |
|
97 |
<plantname> |
|
98 |
<rank>family</rank> |
|
99 |
<plantname>$family</plantname> |
|
100 |
</plantname> |
|
101 |
</parent_id> |
|
102 |
</plantname> |
|
103 |
</parent_id> |
|
84 |
<_name> |
|
85 |
<first>$infra_rank_1</first> |
|
86 |
<last>$infra_ep_1</last> |
|
87 |
</_name> |
|
104 | 88 |
</plantname> |
105 |
</parent_id> |
|
106 |
</plantname> |
|
107 |
</parent_id> |
|
108 |
<plantname>$specific_authority</plantname> |
|
109 |
</plantname> |
|
110 |
</parent_id> |
|
111 |
</plantname> |
|
112 |
</path> |
|
113 |
</_simplifyPath> |
|
114 |
</plantname_id> |
|
115 |
</plantconcept> |
|
116 |
</plantconcept_id> |
|
117 |
<iscurrent>true</iscurrent> |
|
118 |
</taxondetermination> |
|
119 |
<taxondetermination> |
|
120 |
<role>identifier</role> |
|
121 |
<taxonfit><_alt><2>$cf_aff</2></_alt></taxonfit> |
|
122 |
<plantconcept_id> |
|
123 |
<plantconcept> |
|
124 |
<plantname_id> |
|
125 |
<_simplifyPath> |
|
126 |
<next>parent_id/plantname</next> |
|
127 |
<require>plantname</require> |
|
128 |
<path> |
|
129 |
<plantname> |
|
130 |
<rank>binomial</rank> |
|
89 |
<parent_id> |
|
90 |
<plantname> |
|
91 |
<rank>species</rank> |
|
92 |
<plantname>$specific_epithet</plantname> |
|
93 |
<parent_id> |
|
94 |
<plantname> |
|
95 |
<rank>genus</rank> |
|
96 |
<plantname>$genus</plantname> |
|
97 |
<parent_id> |
|
98 |
<plantname> |
|
99 |
<rank>family</rank> |
|
100 |
<plantname>$family</plantname> |
|
101 |
</plantname> |
|
102 |
</parent_id> |
|
103 |
</plantname> |
|
104 |
</parent_id> |
|
105 |
</plantname> |
|
106 |
</parent_id> |
|
107 |
</plantname> |
|
108 |
</parent_id> |
|
109 |
<plantname>$specific_authority</plantname> |
|
110 |
</plantname> |
|
111 |
</parent_id> |
|
112 |
</plantname> |
|
113 |
</path> |
|
114 |
</_simplifyPath> |
|
115 |
</plantname_id> |
|
116 |
</plantconcept> |
|
117 |
</plantconcept_id> |
|
118 |
<iscurrent>true</iscurrent> |
|
119 |
</taxondetermination> |
|
120 |
<taxondetermination> |
|
121 |
<role>identifier</role> |
|
122 |
<taxonfit><_alt><2>$cf_aff</2></_alt></taxonfit> |
|
123 |
<plantconcept_id> |
|
124 |
<plantconcept> |
|
125 |
<plantname_id> |
|
126 |
<_simplifyPath> |
|
127 |
<next>parent_id/plantname</next> |
|
128 |
<require>plantname</require> |
|
129 |
<path> |
|
131 | 130 |
<plantname> |
132 |
<_name> |
|
133 |
<last>$cf_aff</last> |
|
134 |
<first><_name><last>$orig_species</last></_name></first> |
|
135 |
</_name> |
|
136 |
</plantname> |
|
137 |
<parent_id> |
|
131 |
<rank>binomial</rank> |
|
138 | 132 |
<plantname> |
139 |
<rank>authority</rank> |
|
140 |
<parent_id> |
|
141 |
<plantname> |
|
142 |
<rank>subspecies</rank> |
|
143 |
<parent_id> |
|
144 |
<plantname> |
|
145 |
<rank>species</rank> |
|
146 |
<parent_id> |
|
147 |
<plantname> |
|
148 |
<rank>genus</rank> |
|
149 |
<parent_id> |
|
150 |
<plantname> |
|
151 |
<rank>family</rank> |
|
152 |
<plantname>$orig_family</plantname> |
|
153 |
</plantname> |
|
154 |
</parent_id> |
|
155 |
</plantname> |
|
156 |
</parent_id> |
|
157 |
</plantname> |
|
158 |
</parent_id> |
|
159 |
</plantname> |
|
160 |
</parent_id> |
|
133 |
<_name> |
|
134 |
<last>$cf_aff</last> |
|
135 |
<first><_name><last>$orig_species</last></_name></first> |
|
136 |
</_name> |
|
161 | 137 |
</plantname> |
162 |
</parent_id> |
|
163 |
</plantname> |
|
164 |
</path> |
|
165 |
</_simplifyPath> |
|
166 |
</plantname_id> |
|
167 |
</plantconcept> |
|
168 |
</plantconcept_id> |
|
169 |
<isoriginal>true</isoriginal> |
|
170 |
<iscurrent>true</iscurrent> |
|
171 |
</taxondetermination> |
|
172 |
<verbatimcollectorname> |
|
173 |
<_name> |
|
174 |
<first>$coll_firstname</first> |
|
175 |
<last>$coll_lastname</last> |
|
176 |
</_name> |
|
177 |
</verbatimcollectorname> |
|
178 |
<sourceaccessioncode> |
|
179 |
<_alt> |
|
180 |
<3><_name><last>$orig_species</last></_name></3> |
|
181 |
<2>$individual_code</2> |
|
182 |
<1>$OBSERVATION_ID</1> |
|
183 |
</_alt> |
|
184 |
</sourceaccessioncode> |
|
185 |
</taxonoccurrence> |
|
186 |
</taxonoccurrence_id> |
|
187 |
<count>$no_of_individuals</count> |
|
188 |
<cover>$cover_percent</cover> |
|
189 |
<definedvalue fkey="tablerecord_id"> |
|
190 |
<userdefined_id> |
|
191 |
<userdefined> |
|
192 |
<tablename>aggregateoccurrence</tablename> |
|
193 |
<userdefinedname>censusNo</userdefinedname> |
|
194 |
</userdefined> |
|
195 |
</userdefined_id> |
|
196 |
<definedvalue>$census_no</definedvalue> |
|
197 |
</definedvalue> |
|
198 |
<linecover>$intercept_cm</linecover> |
|
199 |
</aggregateoccurrence> |
|
138 |
<parent_id> |
|
139 |
<plantname> |
|
140 |
<rank>authority</rank> |
|
141 |
<parent_id> |
|
142 |
<plantname> |
|
143 |
<rank>subspecies</rank> |
|
144 |
<parent_id> |
|
145 |
<plantname> |
|
146 |
<rank>species</rank> |
|
147 |
<parent_id> |
|
148 |
<plantname> |
|
149 |
<rank>genus</rank> |
|
150 |
<parent_id> |
|
151 |
<plantname> |
|
152 |
<rank>family</rank> |
|
153 |
<plantname>$orig_family</plantname> |
|
154 |
</plantname> |
|
155 |
</parent_id> |
|
156 |
</plantname> |
|
157 |
</parent_id> |
|
158 |
</plantname> |
|
159 |
</parent_id> |
|
160 |
</plantname> |
|
161 |
</parent_id> |
|
162 |
</plantname> |
|
163 |
</parent_id> |
|
164 |
</plantname> |
|
165 |
</path> |
|
166 |
</_simplifyPath> |
|
167 |
</plantname_id> |
|
168 |
</plantconcept> |
|
169 |
</plantconcept_id> |
|
170 |
<isoriginal>true</isoriginal> |
|
171 |
<iscurrent>true</iscurrent> |
|
172 |
</taxondetermination> |
|
173 |
<verbatimcollectorname> |
|
174 |
<_name> |
|
175 |
<first>$coll_firstname</first> |
|
176 |
<last>$coll_lastname</last> |
|
177 |
</_name> |
|
178 |
</verbatimcollectorname> |
|
179 |
<sourceaccessioncode> |
|
180 |
<_alt> |
|
181 |
<3><_name><last>$orig_species</last></_name></3> |
|
182 |
<2>$individual_code</2> |
|
183 |
<1>$OBSERVATION_ID</1> |
|
184 |
</_alt> |
|
185 |
</sourceaccessioncode> |
|
186 |
</taxonoccurrence> |
|
187 |
</taxonoccurrence_id> |
|
188 |
<count>$no_of_individuals</count> |
|
189 |
<cover>$cover_percent</cover> |
|
190 |
<definedvalue fkey="tablerecord_id"> |
|
191 |
<userdefined_id> |
|
192 |
<userdefined> |
|
193 |
<tablename>aggregateoccurrence</tablename> |
|
194 |
<userdefinedname>censusNo</userdefinedname> |
|
195 |
</userdefined> |
|
196 |
</userdefined_id> |
|
197 |
<definedvalue>$census_no</definedvalue> |
|
198 |
</definedvalue> |
|
199 |
<linecover>$intercept_cm</linecover> |
|
200 |
</aggregateoccurrence> |
|
201 |
</aggregateoccurrence_id> |
|
200 | 202 |
<overallheight> |
201 | 203 |
<_alt> |
202 | 204 |
<0>$height_m</0> |
... | ... | |
248 | 250 |
</specimenreplicate> |
249 | 251 |
</then> |
250 | 252 |
<else> |
251 |
<aggregateoccurrence merge="1"> |
|
252 |
<taxonoccurrence_id> |
|
253 |
<taxonoccurrence> |
|
254 |
<voucher> |
|
255 |
<specimenreplicate_id> |
|
256 |
<specimenreplicate> |
|
257 |
<catalognumber_dwc> |
|
258 |
<_alt> |
|
259 |
<1>$coll_number</1> |
|
260 |
<2>$voucher_string</2> |
|
261 |
</_alt> |
|
262 |
</catalognumber_dwc> |
|
263 |
</specimenreplicate> |
|
264 |
</specimenreplicate_id> |
|
265 |
</voucher> |
|
266 |
</taxonoccurrence> |
|
267 |
</taxonoccurrence_id> |
|
268 |
</aggregateoccurrence> |
|
253 |
<aggregateoccurrence_id merge="1"> |
|
254 |
<aggregateoccurrence merge="1"> |
|
255 |
<taxonoccurrence_id> |
|
256 |
<taxonoccurrence> |
|
257 |
<voucher> |
|
258 |
<specimenreplicate_id> |
|
259 |
<specimenreplicate> |
|
260 |
<catalognumber_dwc> |
|
261 |
<_alt> |
|
262 |
<1>$coll_number</1> |
|
263 |
<2>$voucher_string</2> |
|
264 |
</_alt> |
|
265 |
</catalognumber_dwc> |
|
266 |
</specimenreplicate> |
|
267 |
</specimenreplicate_id> |
|
268 |
</voucher> |
|
269 |
</taxonoccurrence> |
|
270 |
</taxonoccurrence_id> |
|
271 |
</aggregateoccurrence> |
|
272 |
</aggregateoccurrence_id> |
|
269 | 273 |
</else> |
270 | 274 |
</_if> |
271 | 275 |
<_ignore><voucherType>$det_type</voucherType></_ignore> |
inputs/SALVIAS-CSV/maps/VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
SALVIAS-CSV,VegBIEN:/plantobservation,Comments |
2 |
census_date,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/obsstartdate/_date/year, |
|
3 |
subplot,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{authorlocationcode,*_id/location/sourceaccessioncode/_merge/2/_alt/2}", |
|
4 |
plot_code,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{parent_id/locationevent/{authorlocationcode,*_id/location/sourceaccessioncode/_alt/2},*_id/location/sourceaccessioncode/_merge/1/_alt/2}","Brad: Same as plotCode, above" |
|
5 |
PLOT_ID,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{parent_id/locationevent/{sourceaccessioncode,*_id/location/sourceaccessioncode/_alt/1},*_id/location/sourceaccessioncode/_merge/1/_alt/1}","Brad: Not sure why this is repeated? This field and plotCode, as the same as above." |
|
6 |
habit,"/aggregateoccurrence/*_id/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: Incorrect for VegBank, correct for VegX. This is growth form (tree, shrub, herb, etc.). It is an observation of a trait." |
|
7 |
infra_rank_1,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=subspecies]/plantname/_name/first", |
|
8 |
specific_authority,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=authority]/plantname",Brad: Incorrect. This is the author of the scientificName. The should be a place for this in the taxonomic name elements of VegB and VegX. Let's discuss. |
|
9 |
infra_ep_1,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=subspecies]/plantname/_name/last", |
|
10 |
specific_epithet,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=species]/plantname", |
|
11 |
genus,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,species,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=genus]/plantname", |
|
12 |
family,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,species,genus,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=family]/plantname", |
|
13 |
cf_aff,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=identifier]/{taxonfit/_alt/2,*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[],do=""plantname[rank=_val]/parent_id""]/plantname[rank=binomial]/plantname/_name/last}","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." |
|
14 |
orig_family,"/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=identifier]:[isoriginal=true,iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,species,genus,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=family]/plantname",Brad: OMIT |
|
15 |
coll_firstname,/aggregateoccurrence/*_id/taxonoccurrence/verbatimcollectorname/_name/first,Brad: See comment above |
|
16 |
coll_lastname,/aggregateoccurrence/*_id/taxonoccurrence/verbatimcollectorname/_name/last,"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." |
|
17 |
orig_species,"/aggregateoccurrence/*_id/taxonoccurrence/{taxondetermination[role=identifier]:[isoriginal=true,iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[],do=""plantname[rank=_val]/parent_id""]/plantname[rank=binomial]/plantname/_name/first,sourceaccessioncode/_alt/3}/_name/last",Brad: OMIT |
|
18 |
no_of_individuals,/aggregateoccurrence/count,"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." |
|
19 |
cover_percent,/aggregateoccurrence/cover, |
|
20 |
census_no,"/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." |
|
21 |
intercept_cm,/aggregateoccurrence/linecover,"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." |
|
2 |
census_date,/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/obsstartdate/_date/year,
|
|
3 |
subplot,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{authorlocationcode,*_id/location/sourceaccessioncode/_merge/2/_alt/2}",
|
|
4 |
plot_code,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{parent_id/locationevent/{authorlocationcode,*_id/location/sourceaccessioncode/_alt/2},*_id/location/sourceaccessioncode/_merge/1/_alt/2}","Brad: Same as plotCode, above"
|
|
5 |
PLOT_ID,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/{parent_id/locationevent/{sourceaccessioncode,*_id/location/sourceaccessioncode/_alt/1},*_id/location/sourceaccessioncode/_merge/1/_alt/1}","Brad: Not sure why this is repeated? This field and plotCode, as the same as above."
|
|
6 |
habit,"/*_id/aggregateoccurrence/*_id/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: Incorrect for VegBank, correct for VegX. This is growth form (tree, shrub, herb, etc.). It is an observation of a trait."
|
|
7 |
infra_rank_1,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=subspecies]/plantname/_name/first",
|
|
8 |
specific_authority,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=authority]/plantname",Brad: Incorrect. This is the author of the scientificName. The should be a place for this in the taxonomic name elements of VegB and VegX. Let's discuss.
|
|
9 |
infra_ep_1,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=subspecies]/plantname/_name/last",
|
|
10 |
specific_epithet,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=species]/plantname",
|
|
11 |
genus,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,species,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=genus]/plantname",
|
|
12 |
family,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=computer]:[iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,species,genus,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=family]/plantname",
|
|
13 |
cf_aff,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=identifier]/{taxonfit/_alt/2,*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[],do=""plantname[rank=_val]/parent_id""]/plantname[rank=binomial]/plantname/_name/last}","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."
|
|
14 |
orig_family,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/taxondetermination[role=identifier]:[isoriginal=true,iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[binomial,authority,subspecies,species,genus,],do=""plantname[rank=_val]/parent_id""]/plantname[rank=family]/plantname",Brad: OMIT
|
|
15 |
coll_firstname,/*_id/aggregateoccurrence/*_id/taxonoccurrence/verbatimcollectorname/_name/first,Brad: See comment above
|
|
16 |
coll_lastname,/*_id/aggregateoccurrence/*_id/taxonoccurrence/verbatimcollectorname/_name/last,"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."
|
|
17 |
orig_species,"/*_id/aggregateoccurrence/*_id/taxonoccurrence/{taxondetermination[role=identifier]:[isoriginal=true,iscurrent=true]/*_id/plantconcept/plantname_id/_simplifyPath:[next=""parent_id/plantname"",require=plantname]/path/_forEach:[in:[],do=""plantname[rank=_val]/parent_id""]/plantname[rank=binomial]/plantname/_name/first,sourceaccessioncode/_alt/3}/_name/last",Brad: OMIT
|
|
18 |
no_of_individuals,/*_id/aggregateoccurrence/count,"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."
|
|
19 |
cover_percent,/*_id/aggregateoccurrence/cover,
|
|
20 |
census_no,"/*_id/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."
|
|
21 |
intercept_cm,/*_id/aggregateoccurrence/linecover,"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."
|
|
22 | 22 |
height_m,/overallheight,Brad: Incorrect for VegBank. This is a measurement applied to a single tree. Check with Bob |
23 | 23 |
stem_height_m,/overallheight,"Brad: Same as for height, but applies to individuals stems, not trees. Rare." |
24 | 24 |
tag1,"/stemobservation/stemtag[""""/iscurrent/_alt/2=true]/tag/_alt/1","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.; Quotes sort it before tag2" |
... | ... | |
27 | 27 |
stem_tag2,/stemobservation/stemtag[iscurrent=true]:[../stemtag?[iscurrent/_alt/2=true]/iscurrent/_alt/1=false]/tag/_alt/2,Brad: see above |
28 | 28 |
x_position,/stemobservation/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." |
29 | 29 |
y_position,/stemobservation/yposition,Brad: See comment above for x_position |
30 |
coll_number,"/{.}/_if:[cond/_eq:[left/_ref[addr=""../../../../_ignore/voucherType""],right=direct]]/{then/specimenreplicate,else/aggregateoccurrence:[@merge=1]/*_id/taxonoccurrence/voucher/*_id/specimenreplicate}/catalognumber_dwc/_alt/1","Brad: Incorrect. Map instead as for voucher_string; ""{.}"" sorts it with other _ifs" |
|
31 |
voucher_string,"/{.}/_if:[cond/_eq:[left/_ref[addr=""../../../../_ignore/voucherType""],right=direct]]/{then/specimenreplicate,else/aggregateoccurrence:[@merge=1]/*_id/taxonoccurrence/voucher/*_id/specimenreplicate}/catalognumber_dwc/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below.; ""{.}"" sorts it with other _ifs" |
|
30 |
coll_number,"/{.}/_if:[cond/_eq:[left/_ref[addr=""../../../../_ignore/voucherType""],right=direct]]/{then/specimenreplicate,else/*_id:[@merge=1]/aggregateoccurrence:[@merge=1]/*_id/taxonoccurrence/voucher/*_id/specimenreplicate}/catalognumber_dwc/_alt/1","Brad: Incorrect. Map instead as for voucher_string; ""{.}"" sorts it with other _ifs"
|
|
31 |
voucher_string,"/{.}/_if:[cond/_eq:[left/_ref[addr=""../../../../_ignore/voucherType""],right=direct]]/{then/specimenreplicate,else/*_id:[@merge=1]/aggregateoccurrence:[@merge=1]/*_id/taxonoccurrence/voucher/*_id/specimenreplicate}/catalognumber_dwc/_alt/2","Brad: OMIT. This is the verbatim text, which includes both collectors name and collection number. I would use coll_number, below.; ""{.}"" sorts it with other _ifs"
|
|
32 | 32 |
det_type,/{.}/_ignore/voucherType,"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.; ""{"" sorts it after what uses it, so the _ignore is executed after the _refs" |
33 |
individual_code,"/{authorplantcode,aggregateoccurrence:[@merge=1]/*_id:[@merge=1]/taxonoccurrence/sourceaccessioncode/_alt/2}","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.; ""{"" sorts it with other _ifs" |
|
34 |
OBSERVATION_ID,"/{sourceaccessioncode,aggregateoccurrence:[@merge=1]/*_id:[@merge=1]/taxonoccurrence/sourceaccessioncode/_alt/1}","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.; ""{"" sorts it with other _ifs" |
|
33 |
individual_code,"/{authorplantcode,*_id:[@merge=1]/aggregateoccurrence:[@merge=1]/*_id:[@merge=1]/taxonoccurrence/sourceaccessioncode/_alt/2}","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.; ""{"" sorts it with other _ifs"
|
|
34 |
OBSERVATION_ID,"/{sourceaccessioncode,*_id:[@merge=1]/aggregateoccurrence:[@merge=1]/*_id:[@merge=1]/taxonoccurrence/sourceaccessioncode/_alt/1}","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.; ""{"" sorts it with other _ifs"
|
|
35 | 35 |
basal_diam,,** No join mapping for /diameterBaseDistance[baseDistance/value=0]/diameter ** |
36 | 36 |
collector_code,,Brad: OMIT |
37 | 37 |
comments,,Brad: OMIT |
inputs/CTFS/test/import.organisms.xml.ref | ||
---|---|---|
1 | 1 |
Put template: |
2 | 2 |
<VegBIEN> |
3 | 3 |
<plantobservation id="-1"> |
4 |
<aggregateoccurrence merge="1"> |
|
5 |
<taxonoccurrence_id merge="1"> |
|
6 |
<taxonoccurrence> |
|
7 |
<locationevent_id> |
|
8 |
<locationevent> |
|
9 |
<location_id> |
|
10 |
<location> |
|
11 |
<area>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/area</area> |
|
12 |
<elevation> |
|
13 |
<_alt> |
|
14 |
<1>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/verbatimElevation</1> |
|
15 |
<2> |
|
16 |
<_avg> |
|
17 |
<max> |
|
18 |
<_units> |
|
19 |
<default>m</default> |
|
20 |
<to>m</to> |
|
21 |
<to></to> |
|
22 |
<value><_rangeEnd><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters</value></_rangeEnd></value> |
|
23 |
</_units> |
|
24 |
</max> |
|
25 |
<min> |
|
26 |
<_units> |
|
27 |
<default>m</default> |
|
28 |
<to>m</to> |
|
29 |
<to></to> |
|
30 |
<value><_rangeStart><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value> |
|
31 |
</_units> |
|
32 |
</min> |
|
33 |
</_avg> |
|
34 |
</2> |
|
35 |
</_alt> |
|
36 |
</elevation> |
|
37 |
<landform>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/landform</landform> |
|
38 |
<locationdetermination> |
|
39 |
<coordsaccuracy>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/CoordinateUncertaintyInMeters</coordsaccuracy> |
|
40 |
<footprintgeometry_dwc>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/FootprintWKT</footprintgeometry_dwc> |
|
41 |
<namedplace_id> |
|
42 |
<_simplifyPath> |
|
43 |
<next>parent_id/namedplace</next> |
|
44 |
<require>placename</require> |
|
45 |
<path> |
|
46 |
<namedplace> |
|
47 |
<rank>county</rank> |
|
48 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=county]/placeName</placename> |
|
49 |
<parent_id> |
|
50 |
<namedplace> |
|
51 |
<rank>stateProvince</rank> |
|
52 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=state]/placeName</placename> |
|
53 |
<parent_id> |
|
54 |
<namedplace> |
|
55 |
<rank>country</rank> |
|
56 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=country]/placeName</placename> |
|
57 |
<parent_id> |
|
58 |
<namedplace> |
|
59 |
<rank>continent</rank> |
|
60 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=continent]/placeName</placename> |
|
61 |
</namedplace> |
|
62 |
</parent_id> |
|
63 |
</namedplace> |
|
64 |
</parent_id> |
|
65 |
</namedplace> |
|
66 |
</parent_id> |
|
67 |
</namedplace> |
|
68 |
</path> |
|
69 |
</_simplifyPath> |
|
70 |
</namedplace_id> |
|
71 |
<latitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLatitude</latitude> |
|
72 |
<longitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLongitude</longitude> |
|
73 |
</locationdetermination> |
|
74 |
<locationnarrative>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/locationNarrative</locationnarrative> |
|
75 |
<notespublic>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/note</notespublic> |
|
76 |
<slopeaspect><_compass><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeAspect</value></_compass></slopeaspect> |
|
77 |
<slopegradient>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeGradient</slopegradient> |
|
78 |
<elevationrange> |
|
79 |
<_range> |
|
80 |
<to> |
|
81 |
<_units> |
|
82 |
<default>m</default> |
|
83 |
<to>m</to> |
|
84 |
<to></to> |
|
85 |
<value><_rangeEnd><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters</value></_rangeEnd></value> |
|
86 |
</_units> |
|
87 |
</to> |
|
88 |
<from> |
|
89 |
<_units> |
|
90 |
<default>m</default> |
|
91 |
<to>m</to> |
|
92 |
<to></to> |
|
93 |
<value><_rangeStart><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value> |
|
94 |
</_units> |
|
95 |
</from> |
|
96 |
</_range> |
|
97 |
</elevationrange> |
|
98 |
<centerlatitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLatitude</centerlatitude> |
|
99 |
<centerlongitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLongitude</centerlongitude> |
|
100 |
<sourceaccessioncode> |
|
101 |
<_merge> |
|
102 |
<2> |
|
103 |
<_alt> |
|
104 |
<2>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotName</2> |
|
105 |
<1>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotUniqueIdentifier</1> |
|
106 |
</_alt> |
|
107 |
</2> |
|
108 |
<1> |
|
109 |
<_alt> |
|
110 |
<2>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotName</2> |
|
111 |
<1>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier</1> |
|
112 |
</_alt> |
|
113 |
</1> |
|
114 |
</_merge> |
|
115 |
</sourceaccessioncode> |
|
116 |
</location> |
|
117 |
</location_id> |
|
118 |
<method_id><method><name>$/*ID->/*s/plotObservation/simpleUserdefined[name=method]/*ID/method/name</name></method></method_id> |
|
119 |
<project_id> |
|
120 |
<project> |
|
121 |
<projectname>$/*ID->/*s/plotObservation/*ID->/*s/project/title[@id=name]</projectname> |
|
122 |
<sourceaccessioncode>$/*ID->/*s/plotObservation/*ID->/*s/project/title[@id=sourceAccessionCode]</sourceaccessioncode> |
|
123 |
</project> |
|
124 |
</project_id> |
|
125 |
<commclass> |
|
126 |
<commdetermination> |
|
127 |
<commconcept_id> |
|
128 |
<commconcept> |
|
129 |
<commname_id><commname><commname>$/*ID->/*s/plotObservation->/*s/communityDetermination[*ID]/*s/communityConcept/commonName</commname></commname></commname_id> |
|
130 |
<commdescription>$/*ID->/*s/plotObservation->/*s/communityDetermination[*ID]/*s/communityConcept/name</commdescription> |
|
131 |
</commconcept> |
|
132 |
</commconcept_id> |
|
133 |
</commdetermination> |
|
134 |
</commclass> |
|
135 |
<obsenddate>$/*ID->/*s/plotObservation/obsEndDate</obsenddate> |
|
136 |
<obsstartdate>$/*ID->/*s/plotObservation/obsStartDate</obsstartdate> |
|
137 |
<precipitation>$/*ID->/*s/plotObservation/simpleUserdefined[name=precipitation]/value</precipitation> |
|
138 |
<soilobs> |
|
139 |
<acidity>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=acidity]/value</acidity> |
|
140 |
<basesaturation>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=base]/value</basesaturation> |
|
141 |
<calcium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=calcium]/value</calcium> |
|
142 |
<carbon>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=carbon]/value</carbon> |
|
143 |
<cationexchangecapacity>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=cationExchangeCapacity]/value</cationexchangecapacity> |
|
144 |
<clay>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=clay]/value</clay> |
|
145 |
<conductivity>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=conductivity]/value</conductivity> |
|
146 |
<magnesium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/magnesium</magnesium> |
|
147 |
<nitrogen>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/nitrogen</nitrogen> |
|
148 |
<organic>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=organic]/value</organic> |
|
149 |
<ph>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/ph</ph> |
|
150 |
<phosphorus>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/phosphorus</phosphorus> |
|
151 |
<potassium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/potassium</potassium> |
|
152 |
<sand>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=sand]/value</sand> |
|
153 |
<silt>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=silt]/value</silt> |
|
154 |
<sodium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=sodium]/value</sodium> |
|
155 |
<texture>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value</texture> |
|
156 |
</soilobs> |
|
157 |
<temperature>$/*ID->/*s/plotObservation/temperature</temperature> |
|
158 |
<waterdepth> |
|
159 |
<_avg> |
|
160 |
<max> |
|
161 |
<_units> |
|
162 |
<default>m</default> |
|
163 |
<to>m</to> |
|
164 |
<to></to> |
|
165 |
<value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters</value> |
|
166 |
</_units> |
|
167 |
</max> |
|
168 |
<min> |
|
169 |
<_units> |
|
170 |
<default>m</default> |
|
171 |
<to>m</to> |
|
172 |
<to></to> |
|
173 |
<value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters</value> |
|
174 |
</_units> |
|
175 |
</min> |
|
176 |
</_avg> |
|
177 |
</waterdepth> |
|
178 |
<authorlocationcode>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotName</authorlocationcode> |
|
179 |
<parent_id> |
|
180 |
<locationevent> |
|
181 |
<authorlocationcode>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotName</authorlocationcode> |
|
182 |
<location_id> |
|
183 |
<location> |
|
184 |
<sourceaccessioncode> |
|
185 |
<_alt> |
|
186 |
<2>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotName</2> |
|
187 |
<1>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier</1> |
|
188 |
</_alt> |
|
189 |
</sourceaccessioncode> |
|
190 |
</location> |
|
191 |
</location_id> |
|
192 |
<sourceaccessioncode>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier</sourceaccessioncode> |
|
193 |
</locationevent> |
|
194 |
</parent_id> |
|
195 |
<sourceaccessioncode>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotUniqueIdentifier</sourceaccessioncode> |
|
196 |
</locationevent> |
|
197 |
</locationevent_id> |
|
198 |
<growthform>$/simpleUserdefined[name=growthForm]/value</growthform> |
|
199 |
<taxondetermination> |
|
200 |
<role>computer</role> |
|
201 |
<plantconcept_id> |
|
202 |
<plantconcept> |
|
203 |
<plantname_id> |
|
204 |
<_simplifyPath> |
|
205 |
<next>parent_id/plantname</next> |
|
206 |
<require>plantname</require> |
|
207 |
<path> |
|
208 |
<plantname> |
|
209 |
<rank>binomial</rank> |
|
210 |
<parent_id> |
|
211 |
<plantname> |
|
212 |
<rank>authority</rank> |
|
213 |
<parent_id> |
|
214 |
<plantname> |
|
215 |
<rank>subspecies</rank> |
|
4 |
<aggregateoccurrence_id merge="1"> |
|
5 |
<aggregateoccurrence merge="1"> |
|
6 |
<taxonoccurrence_id merge="1"> |
|
7 |
<taxonoccurrence> |
|
8 |
<locationevent_id> |
|
9 |
<locationevent> |
|
10 |
<location_id> |
|
11 |
<location> |
|
12 |
<area>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/area</area> |
|
13 |
<elevation> |
|
14 |
<_alt> |
|
15 |
<1>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/verbatimElevation</1> |
|
16 |
<2> |
|
17 |
<_avg> |
|
18 |
<max> |
|
19 |
<_units> |
|
20 |
<default>m</default> |
|
21 |
<to>m</to> |
|
22 |
<to></to> |
|
23 |
<value><_rangeEnd><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters</value></_rangeEnd></value> |
|
24 |
</_units> |
|
25 |
</max> |
|
26 |
<min> |
|
27 |
<_units> |
|
28 |
<default>m</default> |
|
29 |
<to>m</to> |
|
30 |
<to></to> |
|
31 |
<value><_rangeStart><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value> |
|
32 |
</_units> |
|
33 |
</min> |
|
34 |
</_avg> |
|
35 |
</2> |
|
36 |
</_alt> |
|
37 |
</elevation> |
|
38 |
<landform>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/landform</landform> |
|
39 |
<locationdetermination> |
|
40 |
<coordsaccuracy>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/CoordinateUncertaintyInMeters</coordsaccuracy> |
|
41 |
<footprintgeometry_dwc>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/FootprintWKT</footprintgeometry_dwc> |
|
42 |
<namedplace_id> |
|
43 |
<_simplifyPath> |
|
44 |
<next>parent_id/namedplace</next> |
|
45 |
<require>placename</require> |
|
46 |
<path> |
|
47 |
<namedplace> |
|
48 |
<rank>county</rank> |
|
49 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=county]/placeName</placename> |
|
50 |
<parent_id> |
|
51 |
<namedplace> |
|
52 |
<rank>stateProvince</rank> |
|
53 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=state]/placeName</placename> |
|
54 |
<parent_id> |
|
55 |
<namedplace> |
|
56 |
<rank>country</rank> |
|
57 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=country]/placeName</placename> |
|
58 |
<parent_id> |
|
59 |
<namedplace> |
|
60 |
<rank>continent</rank> |
|
61 |
<placename>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=continent]/placeName</placename> |
|
62 |
</namedplace> |
|
63 |
</parent_id> |
|
64 |
</namedplace> |
|
65 |
</parent_id> |
|
66 |
</namedplace> |
|
67 |
</parent_id> |
|
68 |
</namedplace> |
|
69 |
</path> |
|
70 |
</_simplifyPath> |
|
71 |
</namedplace_id> |
|
72 |
<latitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLatitude</latitude> |
|
73 |
<longitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLongitude</longitude> |
|
74 |
</locationdetermination> |
|
75 |
<locationnarrative>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/locationNarrative</locationnarrative> |
|
76 |
<notespublic>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/note</notespublic> |
|
77 |
<slopeaspect><_compass><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeAspect</value></_compass></slopeaspect> |
|
78 |
<slopegradient>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeGradient</slopegradient> |
|
79 |
<elevationrange> |
|
80 |
<_range> |
|
81 |
<to> |
|
82 |
<_units> |
|
83 |
<default>m</default> |
|
84 |
<to>m</to> |
|
85 |
<to></to> |
|
86 |
<value><_rangeEnd><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters</value></_rangeEnd></value> |
|
87 |
</_units> |
|
88 |
</to> |
|
89 |
<from> |
|
90 |
<_units> |
|
91 |
<default>m</default> |
|
92 |
<to>m</to> |
|
93 |
<to></to> |
|
94 |
<value><_rangeStart><value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value> |
|
95 |
</_units> |
|
96 |
</from> |
|
97 |
</_range> |
|
98 |
</elevationrange> |
|
99 |
<centerlatitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLatitude</centerlatitude> |
|
100 |
<centerlongitude>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLongitude</centerlongitude> |
|
101 |
<sourceaccessioncode> |
|
102 |
<_merge> |
|
103 |
<2> |
|
104 |
<_alt> |
|
105 |
<2>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotName</2> |
|
106 |
<1>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotUniqueIdentifier</1> |
|
107 |
</_alt> |
|
108 |
</2> |
|
109 |
<1> |
|
110 |
<_alt> |
|
111 |
<2>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotName</2> |
|
112 |
<1>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier</1> |
|
113 |
</_alt> |
|
114 |
</1> |
|
115 |
</_merge> |
|
116 |
</sourceaccessioncode> |
|
117 |
</location> |
|
118 |
</location_id> |
|
119 |
<method_id><method><name>$/*ID->/*s/plotObservation/simpleUserdefined[name=method]/*ID/method/name</name></method></method_id> |
|
120 |
<project_id> |
|
121 |
<project> |
|
122 |
<projectname>$/*ID->/*s/plotObservation/*ID->/*s/project/title[@id=name]</projectname> |
|
123 |
<sourceaccessioncode>$/*ID->/*s/plotObservation/*ID->/*s/project/title[@id=sourceAccessionCode]</sourceaccessioncode> |
|
124 |
</project> |
|
125 |
</project_id> |
|
126 |
<commclass> |
|
127 |
<commdetermination> |
|
128 |
<commconcept_id> |
|
129 |
<commconcept> |
|
130 |
<commname_id><commname><commname>$/*ID->/*s/plotObservation->/*s/communityDetermination[*ID]/*s/communityConcept/commonName</commname></commname></commname_id> |
|
131 |
<commdescription>$/*ID->/*s/plotObservation->/*s/communityDetermination[*ID]/*s/communityConcept/name</commdescription> |
|
132 |
</commconcept> |
|
133 |
</commconcept_id> |
|
134 |
</commdetermination> |
|
135 |
</commclass> |
|
136 |
<obsenddate>$/*ID->/*s/plotObservation/obsEndDate</obsenddate> |
|
137 |
<obsstartdate>$/*ID->/*s/plotObservation/obsStartDate</obsstartdate> |
|
138 |
<precipitation>$/*ID->/*s/plotObservation/simpleUserdefined[name=precipitation]/value</precipitation> |
|
139 |
<soilobs> |
|
140 |
<acidity>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=acidity]/value</acidity> |
|
141 |
<basesaturation>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=base]/value</basesaturation> |
|
142 |
<calcium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=calcium]/value</calcium> |
|
143 |
<carbon>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=carbon]/value</carbon> |
|
144 |
<cationexchangecapacity>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=cationExchangeCapacity]/value</cationexchangecapacity> |
|
145 |
<clay>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=clay]/value</clay> |
|
146 |
<conductivity>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=conductivity]/value</conductivity> |
|
147 |
<magnesium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/magnesium</magnesium> |
|
148 |
<nitrogen>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/nitrogen</nitrogen> |
|
149 |
<organic>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=organic]/value</organic> |
|
150 |
<ph>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/ph</ph> |
|
151 |
<phosphorus>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/phosphorus</phosphorus> |
|
152 |
<potassium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/potassium</potassium> |
|
153 |
<sand>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=sand]/value</sand> |
|
154 |
<silt>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=silt]/value</silt> |
|
155 |
<sodium>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=sodium]/value</sodium> |
|
156 |
<texture>$/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value</texture> |
|
157 |
</soilobs> |
|
158 |
<temperature>$/*ID->/*s/plotObservation/temperature</temperature> |
|
159 |
<waterdepth> |
|
160 |
<_avg> |
|
161 |
<max> |
|
162 |
<_units> |
|
163 |
<default>m</default> |
|
164 |
<to>m</to> |
|
165 |
<to></to> |
|
166 |
<value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters</value> |
|
167 |
</_units> |
|
168 |
</max> |
|
169 |
<min> |
|
170 |
<_units> |
|
171 |
<default>m</default> |
|
172 |
<to>m</to> |
|
173 |
<to></to> |
|
174 |
<value>$/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters</value> |
|
175 |
</_units> |
|
176 |
</min> |
|
177 |
</_avg> |
|
178 |
</waterdepth> |
|
179 |
<authorlocationcode>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotName</authorlocationcode> |
|
180 |
<parent_id> |
|
181 |
<locationevent> |
|
182 |
<authorlocationcode>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotName</authorlocationcode> |
|
183 |
<location_id> |
|
184 |
<location> |
|
185 |
<sourceaccessioncode> |
|
186 |
<_alt> |
|
187 |
<2>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotName</2> |
|
188 |
<1>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier</1> |
|
189 |
</_alt> |
|
190 |
</sourceaccessioncode> |
|
191 |
</location> |
|
192 |
</location_id> |
|
193 |
<sourceaccessioncode>$/*ID->/*s/plotObservation/simpleUserdefined[name=parent]/value->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier</sourceaccessioncode> |
|
194 |
</locationevent> |
|
195 |
</parent_id> |
|
196 |
<sourceaccessioncode>$/*ID->/*s/plotObservation/plotUniqueIdentifierID->/*s/plot[plotUniqueIdentifier]/plotUniqueIdentifier</sourceaccessioncode> |
|
197 |
</locationevent> |
|
198 |
</locationevent_id> |
|
199 |
<growthform>$/simpleUserdefined[name=growthForm]/value</growthform> |
|
200 |
<taxondetermination> |
|
201 |
<role>computer</role> |
|
202 |
<plantconcept_id> |
|
203 |
<plantconcept> |
|
204 |
<plantname_id> |
|
205 |
<_simplifyPath> |
|
206 |
<next>parent_id/plantname</next> |
|
207 |
<require>plantname</require> |
|
208 |
<path> |
|
209 |
<plantname> |
|
210 |
<rank>binomial</rank> |
|
211 |
<parent_id> |
|
212 |
<plantname> |
|
213 |
<rank>authority</rank> |
|
214 |
<parent_id> |
|
216 | 215 |
<plantname> |
217 |
<_name> |
|
218 |
<first>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=TaxonomicRankBelowSubspeciesEnum])/tcs:Rank</first> |
|
219 |
<last>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=TaxonomicRankBelowSubspeciesEnum])/tcs:Name</last> |
|
220 |
</_name> |
|
221 |
</plantname> |
|
222 |
<parent_id> |
|
216 |
<rank>subspecies</rank> |
|
223 | 217 |
<plantname> |
224 |
<rank>species</rank> |
|
225 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=sp])/tcs:Name</plantname> |
|
226 |
<parent_id> |
|
227 |
<plantname> |
|
228 |
<rank>genus</rank> |
|
229 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=gen])/tcs:Name</plantname> |
|
230 |
<parent_id> |
|
231 |
<plantname> |
|
232 |
<rank>family</rank> |
|
233 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=fam])/tcs:Name</plantname> |
|
234 |
</plantname> |
|
235 |
</parent_id> |
|
236 |
</plantname> |
|
237 |
</parent_id> |
|
218 |
<_name> |
|
219 |
<first>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=TaxonomicRankBelowSubspeciesEnum])/tcs:Rank</first> |
|
220 |
<last>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=TaxonomicRankBelowSubspeciesEnum])/tcs:Name</last> |
|
221 |
</_name> |
|
238 | 222 |
</plantname> |
239 |
</parent_id> |
|
240 |
</plantname> |
|
241 |
</parent_id> |
|
242 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=auth])/tcs:Name</plantname> |
|
243 |
</plantname> |
|
244 |
</parent_id> |
|
245 |
</plantname> |
|
246 |
</path> |
|
247 |
</_simplifyPath> |
|
248 |
</plantname_id> |
|
249 |
</plantconcept> |
|
250 |
</plantconcept_id> |
|
251 |
<iscurrent>true</iscurrent> |
|
252 |
</taxondetermination> |
|
253 |
<taxondetermination> |
|
254 |
<role>identifier</role> |
|
255 |
<plantconcept_id> |
|
256 |
<plantconcept> |
|
257 |
<plantname_id> |
|
258 |
<_simplifyPath> |
|
259 |
<next>parent_id/plantname</next> |
|
260 |
<require>plantname</require> |
|
261 |
<path> |
|
262 |
<plantname> |
|
263 |
<rank>binomial</rank> |
|
264 |
<parent_id> |
|
223 |
<parent_id> |
|
224 |
<plantname> |
|
225 |
<rank>species</rank> |
|
226 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=sp])/tcs:Name</plantname> |
|
227 |
<parent_id> |
|
228 |
<plantname> |
|
229 |
<rank>genus</rank> |
|
230 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=gen])/tcs:Name</plantname> |
|
231 |
<parent_id> |
|
232 |
<plantname> |
|
233 |
<rank>family</rank> |
|
234 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=fam])/tcs:Name</plantname> |
|
235 |
</plantname> |
|
236 |
</parent_id> |
|
237 |
</plantname> |
|
238 |
</parent_id> |
|
239 |
</plantname> |
|
240 |
</parent_id> |
|
241 |
</plantname> |
|
242 |
</parent_id> |
|
243 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=auth])/tcs:Name</plantname> |
|
244 |
</plantname> |
|
245 |
</parent_id> |
|
246 |
</plantname> |
|
247 |
</path> |
|
248 |
</_simplifyPath> |
|
249 |
</plantname_id> |
|
250 |
</plantconcept> |
|
251 |
</plantconcept_id> |
|
252 |
<iscurrent>true</iscurrent> |
|
253 |
</taxondetermination> |
|
254 |
<taxondetermination> |
|
255 |
<role>identifier</role> |
|
256 |
<plantconcept_id> |
|
257 |
<plantconcept> |
|
258 |
<plantname_id> |
|
259 |
<_simplifyPath> |
|
260 |
<next>parent_id/plantname</next> |
|
261 |
<require>plantname</require> |
|
262 |
<path> |
|
263 |
<plantname> |
|
264 |
<rank>binomial</rank> |
|
265 |
<parent_id> |
|
266 |
<plantname> |
|
267 |
<rank>authority</rank> |
|
268 |
<parent_id> |
|
269 |
<plantname> |
|
270 |
<rank>subspecies</rank> |
|
271 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=ssp])/tcs:Name</plantname> |
|
272 |
<parent_id> |
|
273 |
<plantname> |
|
274 |
<rank>species</rank> |
|
275 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank=Species])/tcs:Name</plantname> |
|
276 |
<parent_id> |
|
277 |
<plantname> |
|
278 |
<rank>genus</rank> |
|
279 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank=Genus])/tcs:Name</plantname> |
|
280 |
<parent_id> |
|
281 |
<plantname> |
|
282 |
<rank>family</rank> |
|
283 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank=Family])/tcs:Name</plantname> |
|
284 |
<parent_id> |
|
285 |
<plantname> |
|
286 |
<rank>order</rank> |
|
287 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=ord])/tcs:Name</plantname> |
|
288 |
<parent_id> |
|
289 |
<plantname> |
|
290 |
<rank>class</rank> |
|
291 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=cl])/tcs:Name</plantname> |
|
292 |
<parent_id> |
|
293 |
<plantname> |
|
294 |
<rank>subkingdom</rank> |
|
295 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=phyl_div])/tcs:Name</plantname> |
|
296 |
<parent_id> |
|
297 |
<plantname> |
|
298 |
<rank>kingdom</rank> |
|
299 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=reg])/tcs:Name</plantname> |
|
300 |
</plantname> |
|
301 |
</parent_id> |
|
302 |
</plantname> |
|
303 |
</parent_id> |
|
304 |
</plantname> |
|
305 |
</parent_id> |
|
306 |
</plantname> |
|
307 |
</parent_id> |
|
308 |
</plantname> |
|
309 |
</parent_id> |
|
310 |
</plantname> |
|
311 |
</parent_id> |
|
312 |
</plantname> |
|
313 |
</parent_id> |
|
314 |
</plantname> |
|
315 |
</parent_id> |
|
316 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=auth])/tcs:Name</plantname> |
|
317 |
</plantname> |
|
318 |
</parent_id> |
|
265 | 319 |
<plantname> |
266 |
<rank>authority</rank> |
|
267 |
<parent_id> |
|
268 |
<plantname> |
|
269 |
<rank>subspecies</rank> |
|
270 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=ssp])/tcs:Name</plantname> |
|
271 |
<parent_id> |
|
272 |
<plantname> |
|
273 |
<rank>species</rank> |
|
274 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank=Species])/tcs:Name</plantname> |
|
275 |
<parent_id> |
|
276 |
<plantname> |
|
277 |
<rank>genus</rank> |
|
278 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank=Genus])/tcs:Name</plantname> |
|
279 |
<parent_id> |
|
280 |
<plantname> |
|
281 |
<rank>family</rank> |
|
282 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank=Family])/tcs:Name</plantname> |
|
283 |
<parent_id> |
|
284 |
<plantname> |
|
285 |
<rank>order</rank> |
|
286 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=ord])/tcs:Name</plantname> |
|
287 |
<parent_id> |
|
288 |
<plantname> |
|
289 |
<rank>class</rank> |
|
290 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=cl])/tcs:Name</plantname> |
|
291 |
<parent_id> |
|
292 |
<plantname> |
|
293 |
<rank>subkingdom</rank> |
|
294 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=phyl_div])/tcs:Name</plantname> |
|
295 |
<parent_id> |
|
296 |
<plantname> |
|
297 |
<rank>kingdom</rank> |
|
298 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=reg])/tcs:Name</plantname> |
|
299 |
</plantname> |
|
300 |
</parent_id> |
|
301 |
</plantname> |
|
302 |
</parent_id> |
|
303 |
</plantname> |
|
304 |
</parent_id> |
|
305 |
</plantname> |
|
306 |
</parent_id> |
|
307 |
</plantname> |
|
308 |
</parent_id> |
|
309 |
</plantname> |
|
310 |
</parent_id> |
|
311 |
</plantname> |
|
312 |
</parent_id> |
|
313 |
</plantname> |
|
314 |
</parent_id> |
|
315 |
<plantname>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=auth])/tcs:Name</plantname> |
|
320 |
<_name> |
|
321 |
<last>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</last> |
|
322 |
<first>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/tcs:Name</first> |
|
323 |
</_name> |
|
316 | 324 |
</plantname> |
317 |
</parent_id> |
|
318 |
<plantname> |
|
319 |
<_name> |
|
320 |
<last>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</last> |
|
321 |
<first>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/tcs:Name</first> |
|
322 |
</_name> |
|
323 | 325 |
</plantname> |
324 |
</plantname> |
|
325 |
</path> |
|
326 |
</_simplifyPath> |
|
327 |
</plantname_id> |
|
328 |
</plantconcept> |
|
329 |
</plantconcept_id> |
|
330 |
<taxonfit> |
|
326 |
</path> |
|
327 |
</_simplifyPath> |
|
328 |
</plantname_id> |
|
329 |
</plantconcept> |
|
330 |
</plantconcept_id> |
|
331 |
<taxonfit> |
|
332 |
<_alt> |
|
333 |
<1>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/fit</1> |
|
334 |
<2>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</2> |
|
335 |
</_alt> |
|
336 |
</taxonfit> |
|
337 |
<isoriginal>true</isoriginal> |
|
338 |
<iscurrent>true</iscurrent> |
|
339 |
</taxondetermination> |
|
340 |
<verbatimcollectorname> |
|
341 |
<_name> |
|
342 |
<first>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/givenName</first> |
|
343 |
<last>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/surName</last> |
|
344 |
</_name> |
|
345 |
</verbatimcollectorname> |
|
346 |
<sourceaccessioncode> |
|
331 | 347 |
<_alt> |
332 |
<1>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/fit</1> |
|
333 |
<2>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</2> |
|
348 |
<3>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/tcs:Name</3> |
|
349 |
<2>$/simpleUserdefined[name=authorPlantCode]/value</2> |
|
350 |
<1>$/@id</1> |
|
334 | 351 |
</_alt> |
335 |
</taxonfit> |
|
336 |
<isoriginal>true</isoriginal> |
|
337 |
<iscurrent>true</iscurrent> |
|
338 |
</taxondetermination> |
|
339 |
<verbatimcollectorname> |
|
340 |
<_name> |
|
341 |
<first>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/givenName</first> |
|
342 |
<last>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID->/parties/party/individualName/surName</last> |
|
343 |
</_name> |
|
344 |
</verbatimcollectorname> |
|
345 |
<sourceaccessioncode> |
|
346 |
<_alt> |
|
347 |
<3>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID->/*s/taxonConcept[tcs:Rank/@code=binom])/tcs:Name</3> |
|
348 |
<2>$/simpleUserdefined[name=authorPlantCode]/value</2> |
|
349 |
<1>$/@id</1> |
|
350 |
</_alt> |
|
351 |
</sourceaccessioncode> |
|
352 |
</taxonoccurrence> |
|
353 |
</taxonoccurrence_id> |
|
354 |
<count>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/aggregateOrganismObservation[*ID]/*/aggregateValue/value</count> |
|
355 |
<cover>$/volumeCanopy/*ID->/*s/attribute/ordinal/coverPercent</cover> |
|
356 |
<definedvalue fkey="tablerecord_id"> |
|
357 |
<userdefined_id> |
|
358 |
<userdefined> |
|
359 |
<tablename>aggregateoccurrence</tablename> |
|
360 |
<userdefinedname>censusNo</userdefinedname> |
|
361 |
</userdefined> |
|
362 |
</userdefined_id> |
|
363 |
<definedvalue>$/*ID->/*s/plotObservation/simpleUserdefined[name=CensusNumber]/value</definedvalue> |
|
364 |
</definedvalue> |
|
365 |
<linecover>$/volumeCanopy/value</linecover> |
|
366 |
</aggregateoccurrence> |
|
352 |
</sourceaccessioncode> |
|
353 |
</taxonoccurrence> |
|
354 |
</taxonoccurrence_id> |
|
355 |
<count>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/aggregateOrganismObservation[*ID]/*/aggregateValue/value</count> |
|
356 |
<cover>$/volumeCanopy/*ID->/*s/attribute/ordinal/coverPercent</cover> |
|
357 |
<definedvalue fkey="tablerecord_id"> |
|
358 |
<userdefined_id> |
|
359 |
<userdefined> |
|
360 |
<tablename>aggregateoccurrence</tablename> |
|
361 |
<userdefinedname>censusNo</userdefinedname> |
|
362 |
</userdefined> |
|
363 |
</userdefined_id> |
|
364 |
<definedvalue>$/*ID->/*s/plotObservation/simpleUserdefined[name=CensusNumber]/value</definedvalue> |
|
365 |
</definedvalue> |
|
366 |
<linecover>$/volumeCanopy/value</linecover> |
|
367 |
</aggregateoccurrence> |
|
368 |
</aggregateoccurrence_id> |
|
367 | 369 |
<overallheight> |
368 | 370 |
<_alt> |
369 | 371 |
<0>$/height</0> |
... | ... | |
401 | 403 |
</specimenreplicate> |
402 | 404 |
</then> |
403 | 405 |
<else> |
404 |
<aggregateoccurrence merge="1"> |
|
405 |
<taxonoccurrence_id> |
|
406 |
<taxonoccurrence> |
|
407 |
<voucher> |
|
408 |
<specimenreplicate_id> |
|
409 |
<specimenreplicate> |
|
410 |
<catalognumber_dwc>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept/voucher</catalognumber_dwc> |
|
411 |
<collectiondate>$/simpleUserdefined[name=collectionDate]/value</collectiondate> |
|
412 |
</specimenreplicate> |
|
413 |
</specimenreplicate_id> |
|
414 |
</voucher> |
|
415 |
</taxonoccurrence> |
|
416 |
</taxonoccurrence_id> |
|
417 |
</aggregateoccurrence> |
|
406 |
<aggregateoccurrence_id merge="1"> |
|
407 |
<aggregateoccurrence merge="1"> |
|
408 |
<taxonoccurrence_id> |
|
409 |
<taxonoccurrence> |
|
410 |
<voucher> |
|
411 |
<specimenreplicate_id> |
|
412 |
<specimenreplicate> |
|
413 |
<catalognumber_dwc>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept/voucher</catalognumber_dwc> |
|
414 |
<collectiondate>$/simpleUserdefined[name=collectionDate]/value</collectiondate> |
|
415 |
</specimenreplicate> |
|
416 |
</specimenreplicate_id> |
|
417 |
</voucher> |
|
418 |
</taxonoccurrence> |
|
419 |
</taxonoccurrence_id> |
|
420 |
</aggregateoccurrence> |
|
421 |
</aggregateoccurrence_id> |
|
418 | 422 |
</else> |
419 | 423 |
</_if> |
420 | 424 |
<_ignore><voucherType>$/*ID->/*s/individualOrganism/*ID->/*s/taxonNameUsageConcept->/*s/taxonDetermination[*ID,partyWithRole/role=collector]/groupType</voucherType></_ignore> |
inputs/CTFS/maps/VegBIEN.organisms.csv | ||
---|---|---|
1 | 1 |
CTFS[VegX]:/*s/individualOrganismObservation,VegBIEN:/plantobservation,Comments |
2 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/area,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/area, |
|
3 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/verbatimElevation,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/elevation/_alt/1, |
|
4 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/landform,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/landform, |
|
5 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/CoordinateUncertaintyInMeters,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/coordsaccuracy, |
|
6 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/FootprintWKT,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/footprintgeometry_dwc, |
|
7 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=county]/placeName,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=county]/placename", |
|
8 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=state]/placeName,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[county,],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=stateProvince]/placename", |
|
9 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=country]/placeName,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[county,stateProvince,],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=country]/placename", |
|
10 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/location[placeType=continent]/placeName,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationdetermination/namedplace_id/_simplifyPath:[next=""parent_id/namedplace"",require=placename]/path/_forEach:[in:[county,stateProvince,country,],do=""namedplace[rank=_val]/parent_id""]/namedplace[rank=continent]/placename", |
|
11 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/locationNarrative,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative, |
|
12 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/note,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/notespublic, |
|
13 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeAspect,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/slopeaspect/_compass/value, |
|
14 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeGradient,/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/slopegradient, |
|
15 |
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/aggregateoccurrence/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=m,to=m,to=]/value/_rangeEnd/value", |
Also available in: Unified diff
VegBIEN: Reversed aggregateoccurrence<->plantobservation relationship to point from plantobservation->aggregateoccurrence, so plantobservation could be scoped by aggregateoccurrence in the same way as all other core tables are scoped by their parent tables. This reversed direction was an anomaly due to the need to have a trigger auto-set aggregateoccurrence.count to 1 when there was an associated plantobservation. This was most easily accomplished on the aggregateoccurrence table itself, but required the reversed relationship. The trigger has now been reimplemented on plantobservation, which externally updates aggregateoccurrence.count.