I think I muddied the waters when I described this to the TSC.
This proposal is very narrow and rightfully so. It is only to enable the collection of a single geopoint in the background on form load and it's really about the XLSForm syntax. Other background location gathering (e.g., on value change, in repeats) will require different syntax (probably an on_change column).
In the generated XForms, this seems reasonable to me.
<bind nodeset="/data/my-location" type="geopoint" />
<odk:setgeopoint ref="/data/my-location" event="odk-instance-first-load" />
odk:setgeopoint is a proposed change to the current spec that we can discuss more at Spec addition proposal: location preload. My argument for that change is that current geopoint format is bad and we should change it to some standard format and it seems reasonable to maybe save odk:setlocation for that.
In XLSForms, this seems reasonable to me:
- type:
start-geopoint, end-geopoint
It's reasonable because we are adding a geopoint at first load, which is analogous to adding a timestamp at first load. We called that start and calling this start-geopoint seems reasonable (maybe we can add a start-datetime alias).
- I don't like
autobecause it's not a differentiator. We'll never have amanual-start-locationbecause we already havegeopoint. - I don't like
locationit could be confusing. If you havestart-locationandend-location, someone might expect that those are action that start a background trace. Also, we might want to save thelocationword for a different format. I don't feel super strongly about that though.