Project

General

Profile

« Previous | Next » 

Revision 3722

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.

View differences:

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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/area</area>
12
                                    <elevation>
13
                                        <_alt>
14
                                            <1>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value>
31
                                                        </_units>
32
                                                    </min>
33
                                                </_avg>
34
                                            </2>
35
                                        </_alt>
36
                                    </elevation>
37
                                    <landform>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/landform</landform>
38
                                    <locationdetermination>
39
                                        <coordsaccuracy>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/CoordinateUncertaintyInMeters</coordsaccuracy>
40
                                        <footprintgeometry_dwc>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/location[placeType=county]/placeName</placename>
49
                                                        <parent_id>
50
                                                            <namedplace>
51
                                                                <rank>stateProvince</rank>
52
                                                                <placename>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/location[placeType=state]/placeName</placename>
53
                                                                <parent_id>
54
                                                                    <namedplace>
55
                                                                        <rank>country</rank>
56
                                                                        <placename>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/location[placeType=country]/placeName</placename>
57
                                                                        <parent_id>
58
                                                                            <namedplace>
59
                                                                                <rank>continent</rank>
60
                                                                                <placename>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLatitude</latitude>
72
                                        <longitude>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLongitude</longitude>
73
                                    </locationdetermination>
74
                                    <locationnarrative>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/locationNarrative</locationnarrative>
75
                                    <notespublic>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/note</notespublic>
76
                                    <slopeaspect><_compass><value>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/slopeAspect</value></_compass></slopeaspect>
77
                                    <slopegradient>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value>
94
                                                </_units>
95
                                            </from>
96
                                        </_range>
97
                                    </elevationrange>
98
                                    <centerlatitude>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLatitude</centerlatitude>
99
                                    <centerlongitude>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLongitude</centerlongitude>
100
                                    <sourceaccessioncode>
101
                                        <_merge>
102
                                            <2>
103
                                                <_alt>
104
                                                    <2>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*s/plot[plotUniqueIdentifier]/plotName</2>
105
                                                    <1>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*s/plot[plotUniqueIdentifier]/plotUniqueIdentifier</1>
106
                                                </_alt>
107
                                            </2>
108
                                            <1>
109
                                                <_alt>
110
                                                    <2>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotName</2>
111
                                                    <1>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotUniqueIdentifier</1>
112
                                                </_alt>
113
                                            </1>
114
                                        </_merge>
115
                                    </sourceaccessioncode>
116
                                </location>
117
                            </location_id>
118
                            <method_id><method><name>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=method]/*ID/method/name</name></method></method_id>
119
                            <project_id>
120
                                <project>
121
                                    <projectname>$/*ID-&gt;/*s/plotObservation/*ID-&gt;/*s/project/title[@id=name]</projectname>
122
                                    <sourceaccessioncode>$/*ID-&gt;/*s/plotObservation/*ID-&gt;/*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-&gt;/*s/plotObservation-&gt;/*s/communityDetermination[*ID]/*s/communityConcept/commonName</commname></commname></commname_id>
130
                                            <commdescription>$/*ID-&gt;/*s/plotObservation-&gt;/*s/communityDetermination[*ID]/*s/communityConcept/name</commdescription>
131
                                        </commconcept>
132
                                    </commconcept_id>
133
                                </commdetermination>
134
                            </commclass>
135
                            <obsenddate>$/*ID-&gt;/*s/plotObservation/obsEndDate</obsenddate>
136
                            <obsstartdate>$/*ID-&gt;/*s/plotObservation/obsStartDate</obsstartdate>
137
                            <precipitation>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=precipitation]/value</precipitation>
138
                            <soilobs>
139
                                <acidity>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=acidity]/value</acidity>
140
                                <basesaturation>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=base]/value</basesaturation>
141
                                <calcium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=calcium]/value</calcium>
142
                                <carbon>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=carbon]/value</carbon>
143
                                <cationexchangecapacity>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=cationExchangeCapacity]/value</cationexchangecapacity>
144
                                <clay>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=clay]/value</clay>
145
                                <conductivity>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=conductivity]/value</conductivity>
146
                                <magnesium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/magnesium</magnesium>
147
                                <nitrogen>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/nitrogen</nitrogen>
148
                                <organic>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=organic]/value</organic>
149
                                <ph>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/ph</ph>
150
                                <phosphorus>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/phosphorus</phosphorus>
151
                                <potassium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/potassium</potassium>
152
                                <sand>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=sand]/value</sand>
153
                                <silt>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=silt]/value</silt>
154
                                <sodium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=sodium]/value</sodium>
155
                                <texture>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value</texture>
156
                            </soilobs>
157
                            <temperature>$/*ID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/minimumDepthInMeters</value>
174
                                        </_units>
175
                                    </min>
176
                                </_avg>
177
                            </waterdepth>
178
                            <authorlocationcode>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*s/plot[plotUniqueIdentifier]/plotName</authorlocationcode>
179
                            <parent_id>
180
                                <locationevent>
181
                                    <authorlocationcode>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotName</authorlocationcode>
182
                                    <location_id>
183
                                        <location>
184
                                            <sourceaccessioncode>
185
                                                <_alt>
186
                                                    <2>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotName</2>
187
                                                    <1>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotUniqueIdentifier</1>
188
                                                </_alt>
189
                                            </sourceaccessioncode>
190
                                        </location>
191
                                    </location_id>
192
                                    <sourceaccessioncode>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotUniqueIdentifier</sourceaccessioncode>
193
                                </locationevent>
194
                            </parent_id>
195
                            <sourceaccessioncode>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/area</area>
13
                                        <elevation>
14
                                            <_alt>
15
                                                <1>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value>
32
                                                            </_units>
33
                                                        </min>
34
                                                    </_avg>
35
                                                </2>
36
                                            </_alt>
37
                                        </elevation>
38
                                        <landform>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/landform</landform>
39
                                        <locationdetermination>
40
                                            <coordsaccuracy>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/CoordinateUncertaintyInMeters</coordsaccuracy>
41
                                            <footprintgeometry_dwc>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/location[placeType=county]/placeName</placename>
50
                                                            <parent_id>
51
                                                                <namedplace>
52
                                                                    <rank>stateProvince</rank>
53
                                                                    <placename>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/location[placeType=state]/placeName</placename>
54
                                                                    <parent_id>
55
                                                                        <namedplace>
56
                                                                            <rank>country</rank>
57
                                                                            <placename>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/location[placeType=country]/placeName</placename>
58
                                                                            <parent_id>
59
                                                                                <namedplace>
60
                                                                                    <rank>continent</rank>
61
                                                                                    <placename>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLatitude</latitude>
73
                                            <longitude>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLongitude</longitude>
74
                                        </locationdetermination>
75
                                        <locationnarrative>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/locationNarrative</locationnarrative>
76
                                        <notespublic>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/note</notespublic>
77
                                        <slopeaspect><_compass><value>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/slopeAspect</value></_compass></slopeaspect>
78
                                        <slopegradient>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/minimumElevationInMeters</value></_rangeStart></value>
95
                                                    </_units>
96
                                                </from>
97
                                            </_range>
98
                                        </elevationrange>
99
                                        <centerlatitude>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLatitude</centerlatitude>
100
                                        <centerlongitude>$/*ID-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/DecimalLongitude</centerlongitude>
101
                                        <sourceaccessioncode>
102
                                            <_merge>
103
                                                <2>
104
                                                    <_alt>
105
                                                        <2>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*s/plot[plotUniqueIdentifier]/plotName</2>
106
                                                        <1>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*s/plot[plotUniqueIdentifier]/plotUniqueIdentifier</1>
107
                                                    </_alt>
108
                                                </2>
109
                                                <1>
110
                                                    <_alt>
111
                                                        <2>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotName</2>
112
                                                        <1>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotUniqueIdentifier</1>
113
                                                    </_alt>
114
                                                </1>
115
                                            </_merge>
116
                                        </sourceaccessioncode>
117
                                    </location>
118
                                </location_id>
119
                                <method_id><method><name>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=method]/*ID/method/name</name></method></method_id>
120
                                <project_id>
121
                                    <project>
122
                                        <projectname>$/*ID-&gt;/*s/plotObservation/*ID-&gt;/*s/project/title[@id=name]</projectname>
123
                                        <sourceaccessioncode>$/*ID-&gt;/*s/plotObservation/*ID-&gt;/*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-&gt;/*s/plotObservation-&gt;/*s/communityDetermination[*ID]/*s/communityConcept/commonName</commname></commname></commname_id>
131
                                                <commdescription>$/*ID-&gt;/*s/plotObservation-&gt;/*s/communityDetermination[*ID]/*s/communityConcept/name</commdescription>
132
                                            </commconcept>
133
                                        </commconcept_id>
134
                                    </commdetermination>
135
                                </commclass>
136
                                <obsenddate>$/*ID-&gt;/*s/plotObservation/obsEndDate</obsenddate>
137
                                <obsstartdate>$/*ID-&gt;/*s/plotObservation/obsStartDate</obsstartdate>
138
                                <precipitation>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=precipitation]/value</precipitation>
139
                                <soilobs>
140
                                    <acidity>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=acidity]/value</acidity>
141
                                    <basesaturation>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=base]/value</basesaturation>
142
                                    <calcium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=calcium]/value</calcium>
143
                                    <carbon>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=carbon]/value</carbon>
144
                                    <cationexchangecapacity>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=cationExchangeCapacity]/value</cationexchangecapacity>
145
                                    <clay>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=clay]/value</clay>
146
                                    <conductivity>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=conductivity]/value</conductivity>
147
                                    <magnesium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/magnesium</magnesium>
148
                                    <nitrogen>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/nitrogen</nitrogen>
149
                                    <organic>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=organic]/value</organic>
150
                                    <ph>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/ph</ph>
151
                                    <phosphorus>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/phosphorus</phosphorus>
152
                                    <potassium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/potassium</potassium>
153
                                    <sand>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=sand]/value</sand>
154
                                    <silt>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=silt]/value</silt>
155
                                    <sodium>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=sodium]/value</sodium>
156
                                    <texture>$/*ID-&gt;/*s/plotObservation-&gt;/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value</texture>
157
                                </soilobs>
158
                                <temperature>$/*ID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*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-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/geospatial/minimumDepthInMeters</value>
175
                                            </_units>
176
                                        </min>
177
                                    </_avg>
178
                                </waterdepth>
179
                                <authorlocationcode>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*s/plot[plotUniqueIdentifier]/plotName</authorlocationcode>
180
                                <parent_id>
181
                                    <locationevent>
182
                                        <authorlocationcode>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotName</authorlocationcode>
183
                                        <location_id>
184
                                            <location>
185
                                                <sourceaccessioncode>
186
                                                    <_alt>
187
                                                        <2>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotName</2>
188
                                                        <1>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotUniqueIdentifier</1>
189
                                                    </_alt>
190
                                                </sourceaccessioncode>
191
                                            </location>
192
                                        </location_id>
193
                                        <sourceaccessioncode>$/*ID-&gt;/*s/plotObservation/simpleUserdefined[name=parent]/value-&gt;/*s/plotObservation/*UniqueIdentifierID-&gt;/*s/plot/plotUniqueIdentifier</sourceaccessioncode>
194
                                    </locationevent>
195
                                </parent_id>
196
                                <sourceaccessioncode>$/*ID-&gt;/*s/plotObservation/plotUniqueIdentifierID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=TaxonomicRankBelowSubspeciesEnum])/tcs:Rank</first>
219
                                                                        <last>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=sp])/tcs:Name</plantname>
226
                                                                        <parent_id>
227
                                                                            <plantname>
228
                                                                                <rank>genus</rank>
229
                                                                                <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=gen])/tcs:Name</plantname>
230
                                                                                <parent_id>
231
                                                                                    <plantname>
232
                                                                                        <rank>family</rank>
233
                                                                                        <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=fam])/tcs:Name</plantname>
234
                                                                                    </plantname>
235
                                                                                </parent_id>
236
                                                                            </plantname>
237
                                                                        </parent_id>
218
                                                                        <_name>
219
                                                                            <first>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=TaxonomicRankBelowSubspeciesEnum])/tcs:Rank</first>
220
                                                                            <last>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=sp])/tcs:Name</plantname>
227
                                                                            <parent_id>
228
                                                                                <plantname>
229
                                                                                    <rank>genus</rank>
230
                                                                                    <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=gen])/tcs:Name</plantname>
231
                                                                                    <parent_id>
232
                                                                                        <plantname>
233
                                                                                            <rank>family</rank>
234
                                                                                            <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=computer]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=ssp])/tcs:Name</plantname>
272
                                                                    <parent_id>
273
                                                                        <plantname>
274
                                                                            <rank>species</rank>
275
                                                                            <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank=Species])/tcs:Name</plantname>
276
                                                                            <parent_id>
277
                                                                                <plantname>
278
                                                                                    <rank>genus</rank>
279
                                                                                    <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank=Genus])/tcs:Name</plantname>
280
                                                                                    <parent_id>
281
                                                                                        <plantname>
282
                                                                                            <rank>family</rank>
283
                                                                                            <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank=Family])/tcs:Name</plantname>
284
                                                                                            <parent_id>
285
                                                                                                <plantname>
286
                                                                                                    <rank>order</rank>
287
                                                                                                    <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=ord])/tcs:Name</plantname>
288
                                                                                                    <parent_id>
289
                                                                                                        <plantname>
290
                                                                                                            <rank>class</rank>
291
                                                                                                            <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=cl])/tcs:Name</plantname>
292
                                                                                                            <parent_id>
293
                                                                                                                <plantname>
294
                                                                                                                    <rank>subkingdom</rank>
295
                                                                                                                    <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=phyl_div])/tcs:Name</plantname>
296
                                                                                                                    <parent_id>
297
                                                                                                                        <plantname>
298
                                                                                                                            <rank>kingdom</rank>
299
                                                                                                                            <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=ssp])/tcs:Name</plantname>
271
                                                                <parent_id>
272
                                                                    <plantname>
273
                                                                        <rank>species</rank>
274
                                                                        <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank=Species])/tcs:Name</plantname>
275
                                                                        <parent_id>
276
                                                                            <plantname>
277
                                                                                <rank>genus</rank>
278
                                                                                <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank=Genus])/tcs:Name</plantname>
279
                                                                                <parent_id>
280
                                                                                    <plantname>
281
                                                                                        <rank>family</rank>
282
                                                                                        <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank=Family])/tcs:Name</plantname>
283
                                                                                        <parent_id>
284
                                                                                            <plantname>
285
                                                                                                <rank>order</rank>
286
                                                                                                <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=ord])/tcs:Name</plantname>
287
                                                                                                <parent_id>
288
                                                                                                    <plantname>
289
                                                                                                        <rank>class</rank>
290
                                                                                                        <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=cl])/tcs:Name</plantname>
291
                                                                                                        <parent_id>
292
                                                                                                            <plantname>
293
                                                                                                                <rank>subkingdom</rank>
294
                                                                                                                <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=phyl_div])/tcs:Name</plantname>
295
                                                                                                                <parent_id>
296
                                                                                                                    <plantname>
297
                                                                                                                        <rank>kingdom</rank>
298
                                                                                                                        <plantname>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=auth])/tcs:Name</plantname>
320
                                                        <_name>
321
                                                            <last>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</last>
322
                                                            <first>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=binom])/tcs:Name</first>
323
                                                        </_name>
316 324
                                                    </plantname>
317
                                                </parent_id>
318
                                                <plantname>
319
                                                    <_name>
320
                                                        <last>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</last>
321
                                                        <first>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=binom])/fit</1>
334
                                    <2>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID-&gt;/parties/party/individualName/givenName</first>
343
                                <last>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID-&gt;/parties/party/individualName/surName</last>
344
                            </_name>
345
                        </verbatimcollectorname>
346
                        <sourceaccessioncode>
331 347
                            <_alt>
332
                                <1>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=binom])/fit</1>
333
                                <2>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*s/taxonConcept[tcs:Rank/@code=binom])/{fit,tcs:Name/_name/middle}</2>
348
                                <3>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID-&gt;/parties/party/individualName/givenName</first>
342
                            <last>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,partyWithRole/role=collector]/partyWithRole/*ID-&gt;/parties/party/individualName/surName</last>
343
                        </_name>
344
                    </verbatimcollectorname>
345
                    <sourceaccessioncode>
346
                        <_alt>
347
                            <3>$/*ID-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/taxonDetermination[*ID,!partyWithRole]/*s/taxonRelationshipAssertion(/assertion/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/aggregateOrganismObservation[*ID]/*/aggregateValue/value</count>
355
            <cover>$/volumeCanopy/*ID-&gt;/*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-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*s/aggregateOrganismObservation[*ID]/*/aggregateValue/value</count>
356
                <cover>$/volumeCanopy/*ID-&gt;/*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-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*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-&gt;/*s/individualOrganism/*ID-&gt;/*s/taxonNameUsageConcept-&gt;/*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",
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff