Project

General

Profile

« Previous | Next » 

Revision 1471

units.py: Restructured to use a Quantity object for the units-tagged value and conversion functions quantity2str() and str2quantity() to convert between that and a raw string. Added convert() with basic support for removing units and passing through matching units. xml_func.py: _units: Added "to" attr. VegBIEN mappings: Remove units using new _units "to" attr instead of temporary workaround in _units.

View differences:

inputs/SALVIAS/maps/VegBIEN.plots.csv
8 8
Locality_Description,/*_id/location/locationnarrative,"Brad: No; this is free text description of locality where plot was situated, same as for DwC. Not a description of vegetation. Most likely='namedPlace.placeDescription' in VB; not sure about VX, again need to ask Nick where locality descriptions live in VX"
9 9
slope_aspect,/*_id/location/slopeaspect,
10 10
slope_gradient,/*_id/location/slopegradient,
11
elev_max_m,"/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=""m""]/value",
12
elev_min_m,"/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value",
11
elev_max_m,"/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=m,to=m,to=]/value",
12
elev_min_m,"/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value",
13 13
LatDec,"/*_id/location/{locationdetermination/latitude,centerlatitude}",
14 14
LongDec,"/*_id/location/{locationdetermination/longitude,centerlongitude}",
15 15
PlotMethod,/*_id/method/name,
inputs/ARIZ/maps/src.join.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
VerbatimCollectingDate,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/0",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
inputs/ARIZ/maps/VegBIEN.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
VerbatimCollectingDate,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/0",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
inputs/NY/test/VegBIEN.specimens.xml.ref
31 31
                                </locationdetermination>
32 32
                                <locationnarrative>Parque Nacional del Manu. R&#237;o Manu: Cocha Casha Station; habitat: Floodplain forest</locationnarrative>
33 33
                                <elevation>350.0</elevation>
34
                                <elevationrange>0.0</elevationrange>
34
                                <elevationrange/>
35 35
                                <centerlatitude>-11.80</centerlatitude>
36 36
                                <centerlongitude>-71.40</centerlongitude>
37 37
                            </location>
......
126 126
                                </locationdetermination>
127 127
                                <locationnarrative>Belize Zoo, in savanna plot immediately behind zoo. Mile 31 on Western Highway</locationnarrative>
128 128
                                <elevation>15.0</elevation>
129
                                <elevationrange>0.0</elevationrange>
129
                                <elevationrange/>
130 130
                                <centerlatitude>17.40</centerlatitude>
131 131
                                <centerlongitude>-88.50</centerlongitude>
132 132
                            </location>
inputs/NY/maps/VegBIEN.specimens.csv
21 21
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
22 22
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
23 23
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
24
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
27
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}/_nullIf:[null=.]/value",,71
28
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
24
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
27
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}/_nullIf:[null=.]/value",,71
28
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
32 32
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
33 33
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
34 34
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
41 41
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42 42
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
43 43
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
44
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
47
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
48
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
50
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
51
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
44
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
47
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
48
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
51
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
52 52
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
53 53
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
54 54
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/GBIF/maps/src.join.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
27
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
MaximumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
27
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
MaximumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
32 32
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
33 33
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
34 34
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
41 41
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42 42
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
43 43
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
44
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
47
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
48
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
50
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
51
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
44
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
47
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
48
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
51
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
52 52
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
53 53
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
54 54
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/GBIF/maps/VegBIEN.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
27
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
MaximumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
27
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
MaximumElevationInMeter,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
32 32
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
33 33
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
34 34
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
41 41
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42 42
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
43 43
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
44
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
47
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
48
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
50
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
51
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
44
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
47
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
48
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
51
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
52 52
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
53 53
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
54 54
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/NCU-NCSC/maps/src.join.specimens.csv
21 21
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
22 22
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
23 23
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
24
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
27
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
28
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
24
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
27
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
28
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
32 32
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
33 33
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
34 34
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
43 43
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
44 44
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
45 45
Long (-=W),"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value/_replace:[""\?$""=]/value",,82
46
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
47
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
48
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
49
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
50
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
51
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
52
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
53
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
46
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
47
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
48
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
49
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
50
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
51
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
52
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
53
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
54 54
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
55 55
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
56 56
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/NCU-NCSC/maps/VegBIEN.specimens.csv
21 21
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
22 22
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
23 23
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
24
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
27
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
28
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
24
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
27
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
28
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
31
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
32 32
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
33 33
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
34 34
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
43 43
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
44 44
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
45 45
Long (-=W),"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value/_replace:[""\?$""=]/value",,82
46
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
47
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
48
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
49
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
50
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
51
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
52
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
53
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
46
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
47
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
48
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
49
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
50
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
51
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
52
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
53
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
54 54
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
55 55
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
56 56
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/SpeciesLink/maps/src.join.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/SpeciesLink/maps/VegBIEN.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/MO/maps/src.join.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/MO/maps/VegBIEN.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
inputs/SALVIAS-CSV/maps/VegBIEN.plots.csv
8 8
locality_description,/*_id/location/locationnarrative,"Brad: No; this is free text description of locality where plot was situated, same as for DwC. Not a description of vegetation. Most likely='namedPlace.placeDescription' in VB; not sure about VX, again need to ask Nick where locality descriptions live in VX"
9 9
slope_aspect,/*_id/location/slopeaspect,
10 10
slope_gradient,/*_id/location/slopegradient,
11
elev_max_m,"/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=""m""]/value",
12
elev_min_m,"/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value",
11
elev_max_m,"/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=m,to=m,to=]/value",
12
elev_min_m,"/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value",
13 13
lat_decimal,"/*_id/location/{locationdetermination/latitude,centerlatitude}",
14 14
long_decimal,"/*_id/location/{locationdetermination/longitude,centerlongitude}",
15 15
plot_methodology,/*_id/method/name,
lib/units.py
16 16
    else: return strings.remove_suffix('.', units) # for abbr ending in '.'
17 17
    # TODO: deal with '"° and abbrs
18 18

  
19
def parse_units(value):
20
    '''@return tuple (number float, units str|None)'''
21
    number = value
19
class Quantity:
20
    def __init__(self, value='', units=None):
21
        self.value = value
22
        self.units = std_units(util.none_if(units, u''))
23

  
24
def quantity2str(quantity):
25
    str_ = quantity.value
26
    if quantity.units != None: str_ += ' '+quantity.units
27
    return str_
28

  
29
Quantity.__str__ = quantity2str
30

  
31
def str2quantity(str_):
32
    value = str_
22 33
    units = None
23
    if not value.isdigit(): # optimization to avoid regexp for simple cases
34
    if not str_.isdigit(): # optimization to avoid regexp for simple cases
24 35
        match = re.match(ur'(?i)^\s*(.*?\d\.?)\s*([a-z\'"°][\w.*/^-]*?)?\s*$',
25
            value)
26
        if match: # has units
27
            number, units = match.groups()
28
            units = std_units(util.none_if(units, u''))
29
    return (format.str2float(number), units)
36
            str_)
37
        if match: value, units = match.groups() # has units
38
    return Quantity(value, units)
30 39

  
31
def cleanup_units(value, default_units=None):
32
    '''Cleans up units so the number is separated from the units by one space.
33
    @param default_units Units to add if value has no units. If None, raises
34
        MissingUnitsException if value has no units.
35
    '''
36
    number, units = parse_units(value)
37
    if units == None:
38
        if default_units != None: units = default_units
39
        else: raise MissingUnitsException(value)
40
    return str(number)+' '+units
40
def set_default_units(quantity, units):
41
    if quantity.units == None: quantity.units = units
42

  
43
def convert(quantity, units):
44
    units = std_units(units)
45
    if units == None: return Quantity(quantity.value, units) # remove units
46
    elif quantity.units == units: return quantity
47
    else: raise NotImplementedError('Unit conversion not implemented yet')
lib/xml_func.py
133 133

  
134 134
def _map(items):
135 135
    items = conv_items(str, items) # get *once* from iter and check types
136
    try: value = items.pop()[1] # value is last entry's value
136
    try: value = items.pop()[1] # last entry contains value
137 137
    except IndexError, e: raise SyntaxException(e)
138 138
    map_ = dict(items)
139 139
    closed = bool(map_.pop('_closed', False))
......
159 159
#### Quantities
160 160

  
161 161
def _units(items):
162
    items = dict(conv_items(str, items))
163
    try: value = items['value']
164
    except KeyError: return None # input is empty
165
    default_units = items.get('default', None)
166
    # DB unit conversion isn't ready yet, so just return number
167
    try: return units.cleanup_units(value, default_units).split(' ')[0]
162
    items = conv_items(str, items) # get *once* from iter and check types
163
    try: last = items.pop() # last entry contains value
164
    except IndexError: return None # input is empty and no actions
165
    if last[0] != 'value': return None # input is empty
166
    str_ = last[1]
167
    
168
    quantity = units.str2quantity(str_)
169
    try:
170
        for action, units_ in items:
171
            units_ = util.none_if(units_, u'')
172
            if action == 'default': units.set_default_units(quantity, units_)
173
            elif action == 'to': quantity = units.convert(quantity, units_)
174
            else: raise SyntaxException(ValueError('Invalid action: '+action))
168 175
    except units.MissingUnitsException, e: raise SyntaxException(e)
176
    return units.quantity2str(quantity)
169 177
funcs['_units'] = _units
170 178

  
171 179
def _range(items):
mappings/VegX-VegBIEN.plots.csv
10 10
/*UniqueIdentifierID->/*s/plot/locationNarrative,/*_id/location/locationnarrative,
11 11
/*UniqueIdentifierID->/*s/plot/slopeAspect,/*_id/location/slopeaspect,
12 12
/*UniqueIdentifierID->/*s/plot/slopeGradient,/*_id/location/slopegradient,
13
/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=""m""]/value",
14
/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters,"/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value",
13
/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=m,to=m,to=]/value",
14
/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters,"/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value",
15 15
/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLatitude,"/*_id/location/{locationdetermination/latitude,centerlatitude}",
16 16
/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLongitude,"/*_id/location/{locationdetermination/longitude,centerlongitude}",
17 17
/simpleUserdefined[name=plotMethodology]/value,/*_id/method/name,
......
43 43
->/*s/abioticObservation[*ID]/simpleUserdefined[name=sodium]/value,/soilobs/sodium,
44 44
->/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value,/soilobs/texture,
45 45
/temperature,/temperature,
46
/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters,"/waterdepth/max/_units:[default=""m""]/value",
47
/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters,"/waterdepth/min/_units:[default=""m""]/value",
46
/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters,"/waterdepth/max/_units:[default=m,to=m,to=]/value",
47
/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters,"/waterdepth/min/_units:[default=m,to=m,to=]/value",
48 48
:[partyWithRole/*ID->/parties/party/organizationName=$/_ignore/inLabel]/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier,:[datasource_id/party/organizationname/_alt/2=$/_ignore/inLabel]/authorlocationcode,
49 49
/partyWithRole/*ID->/parties/party/organizationName,:[datasource_id/party/organizationname/_alt/2=$/_ignore/inLabel]/datasource_id/party/organizationname/_alt/1,
50 50
:[partyWithRole/*ID->/parties/party/organizationName=$/_ignore/inLabel]/simpleUserdefined[name=sourceaccessioncode]/value,:[datasource_id/party/organizationname/_alt/2=$/_ignore/inLabel]/sourceaccessioncode,
mappings/VegX-VegBIEN.organisms.csv
10 10
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/locationNarrative,/*_id/locationevent/*_id/location/locationnarrative,
11 11
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeAspect,/*_id/locationevent/*_id/location/slopeaspect,
12 12
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/slopeGradient,/*_id/locationevent/*_id/location/slopegradient,
13
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=""m""]/value",
14
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters,"/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value",
13
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumElevationInMeters,"/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max,elevationrange/_range/to}/_units:[default=m,to=m,to=]/value",
14
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumElevationInMeters,"/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value",
15 15
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLatitude,"/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}",
16 16
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/DecimalLongitude,"/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}",
17 17
/*ID->/*s/plotObservation/simpleUserdefined[name=plotMethodology]/value,/*_id/locationevent/*_id/method/name,
......
43 43
/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=sodium]/value,/*_id/locationevent/soilobs/sodium,
44 44
/*ID->/*s/plotObservation->/*s/abioticObservation[*ID]/simpleUserdefined[name=texture]/value,/*_id/locationevent/soilobs/texture,
45 45
/*ID->/*s/plotObservation/temperature,/*_id/locationevent/temperature,
46
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters,"/*_id/locationevent/waterdepth/max/_units:[default=""m""]/value",
47
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters,"/*_id/locationevent/waterdepth/min/_units:[default=""m""]/value",
46
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/maximumDepthInMeters,"/*_id/locationevent/waterdepth/max/_units:[default=m,to=m,to=]/value",
47
/*ID->/*s/plotObservation/*UniqueIdentifierID->/*s/plot/geospatial/minimumDepthInMeters,"/*_id/locationevent/waterdepth/min/_units:[default=m,to=m,to=]/value",
48 48
/*ID->/*s/plotObservation:[partyWithRole/*ID->/parties/party/organizationName=$/_ignore/inLabel]/*UniqueIdentifierID->/*s/plot/plotUniqueIdentifier,/*_id/locationevent:[datasource_id/party/organizationname/_alt/2=$/_ignore/inLabel]/authorlocationcode,
49 49
/*ID->/*s/plotObservation/partyWithRole/*ID->/parties/party/organizationName,/*_id/locationevent:[datasource_id/party/organizationname/_alt/2=$/_ignore/inLabel]/datasource_id/party/organizationname/_alt/1,
50 50
/*ID->/*s/plotObservation:[partyWithRole/*ID->/parties/party/organizationName=$/_ignore/inLabel]/simpleUserdefined[name=sourceaccessioncode]/value,/*_id/locationevent:[datasource_id/party/organizationname/_alt/2=$/_ignore/inLabel]/sourceaccessioncode,
mappings/DwC2-VegBIEN.specimens.csv
8 8
locality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/1,,68
9 9
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
10 10
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
11
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
12
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
11
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
12
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
13 13
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
14 14
verbatimLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
15 15
decimalLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/1/_nullIf:[null=0,type=float]/value",,86
16 16
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
17
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
18
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
17
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
18
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
19 19
eventDate,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value",,44
20 20
dateIdentified,/*_id/taxonoccurrence/taxondetermination[role=identifier]/determinationdate/_*/date/_dateRangeStart/value,,120
21 21
identifiedBy,"/*_id/taxonoccurrence/taxondetermination[role=identifier]:[iscurrent=true]/*_id/party/{givenname/_namePart/first,middlename/_namePart/middle,surname/_namePart/last}",Brad: Bob: does this look correct for VegBank?,119
mappings/DwC-VegBIEN.specimens.no_empty.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
mappings/DwC-VegBIEN.specimens.csv
19 19
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
20 20
Habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
21 21
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
22
MinimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
23
MinimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
24
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
25
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
26
MaximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
27
MaximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
28
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
29
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
30 30
DecimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
31 31
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
32 32
Latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
......
39 39
VerbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
40 40
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
41 41
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
42
MaximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
43
MaximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
44
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
45
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
46
MinimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
47
MinimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
48
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
49
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
50 50
EventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
51 51
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
52 52
DayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
mappings/DwC.cs-VegBIEN.specimens.csv
9 9
locality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/1,,68
10 10
verbatimLocality,/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/2,"Brad: Correct for VB; Nick, is there no specific element for locality description in VegX? Definitely need one.",69
11 11
habitat,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/locationnarrative/_merge/3/_label[label=""habitat""]/value","Brad: Free-text description of vegetation community where collected, frequently redundane wrt 'Vegetation'. Bob, Nick: keep as user defined or create special element?",52
12
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
13
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=""m""]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/2/_rangeEnd/value}",,71
14
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
15
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=""m""]/value,elevationrange/_range/to/_units:[default=""m""]/value/_alt/1}",,72
12
minimumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
13
minimumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{./{elevation/_alt/2/_avg/min,elevationrange/_range/from}/_units:[default=m,to=m,to=]/value/_rangeStart/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/2/_rangeEnd/value}",,71
14
maximumElevation,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
15
maximumElevationInMeters,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{elevation/_alt/2/_avg/max/_units:[default=m,to=m,to=]/value,elevationrange/_range/to/_units:[default=m,to=m,to=]/value/_alt/1}",,72
16 16
decimalLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/1/_nullIf:[null=0,type=float]/value",,85
17 17
latitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
18 18
verbatimLatitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/latitude,centerlatitude}/_alt/2/_nullIf:[null=0,type=float]/value",,81
19 19
decimalLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/1/_nullIf:[null=0,type=float]/value",,86
20 20
longitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
21 21
verbatimLongitude,"/*_id/taxonoccurrence/*_id/locationevent/*_id/location/{locationdetermination/longitude,centerlongitude}/_alt/2/_nullIf:[null=0,type=float]/value",,82
22
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
23
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=""m""]/value",,75
24
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
25
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=""m""]/value",,74
22
maximumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
23
maximumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/max/_units:[default=m,to=m,to=]/value",,75
24
minimumDepth,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
25
minimumDepthInMeters,"/*_id/taxonoccurrence/*_id/locationevent/waterdepth/_avg/min/_units:[default=m,to=m,to=]/value",,74
26 26
eventDate/_alt,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt",Allow datasource to define custom eventDate mappings that don't pass through the default eventDate mapping,44
27 27
dayCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/day/_nullIf:[null=0,type=float]/value",,44
28 28
monthCollected,"/*_id/taxonoccurrence/*_id/locationevent/{obsstartdate/_*/date/_dateRangeStart,obsenddate/_*/date/_dateRangeEnd}/value/_alt/1/_date/month/_nullIf:[null=0,type=float]/value",,44

Also available in: Unified diff