# Spec proposal: expose xforms-value-changed event with odk:setgeopoint action in XLSForm

**URL:** <https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655>\
**Category:** Ideas\
**Tags:** spec-proposal\
**Created:** [August 9, 2024, 5:52am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655 "2024-08-09T05:52:50Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![Xiphware](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/xiphware/32/2587_2.png) [@Xiphware](https://forum.getodk.org/u/Xiphware)\
**Post date:** [September 3, 2024, 2:24am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/21 "2024-09-03T02:24:48Z")

</div>

FYI I've created a pyxform github issue to track this new feature request: [https://github.com/XLSForm/pyxform/issues/716](https://github.com/XLSForm/pyxform/issues/716)

---

<div class="post-metadata">

**Author:** ![chun\_hing\_yap](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/chun_hing_yap/32/13598_2.png) [@chun\_hing\_yap](https://forum.getodk.org/u/chun_hing_yap)\
**Post date:** [December 17, 2024, 8:26am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/22 "2024-12-17T08:26:13Z")

</div>

> [@Xiphware](#):
>
> background-geopoint

The background-geopoint currently is unable to be nested within a repeat group like in permutation 3.  
[background\_geopoint\_trigger.xml](https://forum.getodk.org/uploads/short-url/kcVmovUt6ka5d7fe4DCM3aHqQg1.xml) (5.0 KB)

---

<div class="post-metadata">

**Author:** ![Xiphware](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/xiphware/32/2587_2.png) [@Xiphware](https://forum.getodk.org/u/Xiphware)\
**Post date:** [December 17, 2024, 8:21pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/23 "2024-12-17T20:21:18Z")

</div>

> [@chun\_hing\_yap](#):
>
> The background-geopoint currently is unable to be nested within a repeat group

This is a known issue that has to do with 'incorrect' behavior (of Enketo) when it comes to resolving refs the underlying XForm action [the same issue results in regular `trigger`/`setvalue` actions misbehaving too].

For all the gory details see [Incorrect (setvalue) trigger behavior in Enketo when used inside repeats](https://forum.getodk.org/t/incorrect-setvalue-trigger-behavior-in-enketo-when-used-inside-repeats/49058/1).

There's a couple Enketo bugs/issues tracking this here:

> <https://github.com/enketo/enketo/issues/1346>
>
> \*\*Describe the bug\*\*
> When both the source trigger and target control are within… the same repeat group, the trigger only ever updates the control's value in the \_first\_ repeat iteration 
> 
> \*\*To Reproduce\*\*
> Steps to reproduce the behavior. If applicable please include the smallest possible XLSForm or XForm (as zip or link).
> 
> \[RepeatWithTrigger.xlsx\](https://github.com/user-attachments/files/16856220/RepeatWithTrigger.xlsx)
> 
> 1. Answer the age question, you should then see a timestamp.
> 2. Add another repeat iteration
> 3. In the new (ie second) repeat, answer the age question
> 4. observe that the timestamp of the \*first\* iteration changes, whereas the timestamp of the second iteration remains blank.
> 
> Whenever you change the source trigger value in any repeat iteration, only the target control of the \_first repeat iteration\_ is updated.
> 
> \*\*Expected behavior\*\*
> Whenever you change the source trigger value in a repeat iteration, only the target control of the \_same repeat iteration\_ should be updated. This is the behavior that is observed running the same form and scenario under ODK Collect.
> 
> \*\*Screenshots\*\*
> This is an example of a repeat with 3 iterations. The trigger is the age question and the target is a calculation to record the timestamp. As shown, setting the age in either iteration 2 and 3 just keeps updating the timestamp in iteration 1, only.
> 
> !\[Screenshot 2024-08-30 at 12 43 28 PM\](https://github.com/user-attachments/assets/005a4d85-3d77-418d-bdb7-752376c459d2)
> 
> \*\*Browser and OS (please complete the following information):\*\*
> 
> \- OS: macOS 14.6
> \- Browser: Firefox
> 
> \*\*Additional context\*\*
> Note, this behavior is similar to that observed for \*\*odk:set-geopoint\*\* actions too, when triggered inside a repeat; that is, only the target geopoint control of the first iteration is ever updated. See \[\<link TBD\>\](https://github.com/enketo/enketo/issues/1347)

> <https://github.com/enketo/enketo/issues/1347>
>
> \*\*Describe the bug\*\*
> When both the source trigger and target control of the odk…:setgeopoint action are within the same repeat group, the trigger only ever updates the geopoint value in the first repeat iteration
> 
> \*\*To Reproduce\*\*
> Steps to reproduce the behavior. If applicable please include the smallest possible XLSForm or XForm (as zip or link).
> 
> \[RepeatWithSetgeopoint.xml.zip\](https://github.com/user-attachments/files/16856610/RepeatWithSetgeopoint.xml.zip)
> 
> 1. Answer the age question, you should then see a geopoint.
> 2. Add another repeat iteration
> 3. In the new (ie second) repeat, answer the age question
> 4. observe that the geopoint of the first iteration changes, whereas the geopoint of the second iteration remains blank.
> 
> \*\*Expected behavior\*\*
> Whenever you change the source trigger value in a repeat iteration, only the target control of the same repeat iteration should be updated with the new geopoint location. This is the behavior that is observed running the same form and scenario under ODK Collect.
> 
> \*\*Screenshots\*\*
> This is an example of a repeat with 3 iterations. The trigger is the age question and the target is a geopoint control set by the xform-value-changed triggered odk:setgeopoint action. As shown, setting the age in either iteration 2 and 3 just keeps updating the location in iteration 1, only.
> 
> !\[Screenshot 2024-08-28 at 1 52 25 PM\](https://github.com/user-attachments/assets/f95c8d06-1acc-44e2-8486-5b94f5d83bf0)
> 
> \*\*Browser and OS (please complete the following information):\*\*
> 
> \- OS: macOS 14.6
> \- Browser Firefox
> 
> \*\*Additional context\*\*
> Note, this behavior is similar to that observed for \*\*setvalue\*\* actions too, when triggered inside a repeat; that is, only the target control of the first iteration is ever updated. See https://github.com/enketo/enketo/issues/1346
> 
> \*\*These may well have the same root cause!\*\* However, I've opened separate tickets for each since they are different XForm actions, and whereas setvalue is a \_synchronous\_ operation, odk:setgoepoint is \_asynchronous\_. So they could potentially have different underlying cause but similar consequences.

---

<div class="post-metadata">

**Author:** ![LN](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ln/32/1605_2.png) [@LN](https://forum.getodk.org/u/LN)\
**Post date:** [December 17, 2024, 8:51pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/24 "2024-12-17T20:51:23Z")

</div>

This was added to `pyxform` in 2.2.0 and is in Central v2024.3. Thanks, everyone!

---

<div class="post-metadata">

**Author:** ![danbjoseph](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/danbjoseph/32/21901_2.png) [@danbjoseph](https://forum.getodk.org/u/danbjoseph)\
**Post date:** [April 4, 2025, 1:43pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/25 "2025-04-04T13:43:01Z")

</div>

Where can I find details on implementing this? I checked the [Central v2024.3 release announcement](https://forum.getodk.org/t/odk-central-v2024-3-offline-entities-submission-deletes-and-faster-form-uploads/51515/3) and search the docs, but am not finding anything. Apologies, I may be missing something obvious.

---

<div class="post-metadata">

**Author:** ![yanokwa](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/yanokwa/32/1695_2.png) [@yanokwa](https://forum.getodk.org/u/yanokwa)\
**Post date:** [April 7, 2025, 8:24pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/26 "2025-04-07T20:24:06Z")

</div>

@danbjoseph Looks like we haven't had time to document it.

> <https://github.com/getodk/docs/issues/1870>
>
> https://github.com/XLSForm/pyxform/pull/726

> <https://github.com/XLSForm/xlsform.github.io/issues/277>
>
> https://github.com/XLSForm/pyxform/pull/726

I'll see if we can get to that soon!

---

<div class="post-metadata">

**Author:** ![yanokwa](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/yanokwa/32/1695_2.png) [@yanokwa](https://forum.getodk.org/u/yanokwa)\
**Post date:** [April 9, 2025, 10:13pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/27 "2025-04-09T22:13:11Z")

</div>

It's now documented in the user-facing docs: [https://docs.getodk.org/form-question-types/#background-geopoint](https://docs.getodk.org/form-question-types/#background-geopoint).

---

<div class="post-metadata">

**Author:** ![chun\_hing\_yap](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/chun_hing_yap/32/13598_2.png) [@chun\_hing\_yap](https://forum.getodk.org/u/chun_hing_yap)\
**Post date:** [April 9, 2025, 11:05pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/28 "2025-04-09T23:05:59Z")

</div>

Perhaps also good to mentioned on the compatibility of this widget for collect and enketo. If I remember correctly, it doesn't work inside repeat also.

---

<div class="post-metadata">

**Author:** ![ahblake](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ahblake/32/22392_2.png) [@ahblake](https://forum.getodk.org/u/ahblake)\
**Post date:** [April 10, 2025, 5:42am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/29 "2025-04-10T05:42:50Z")

</div>

An example might help here too - I tried to use it with Collect 2025.2.0 Beta 1 and Central v2024.3.2. The question `background-geopoint` appears on the form as an acknowledge question type with a checkbox, the value (showing it in a note) is null until I check it, then it's 'OK' when checked. When I change a question that is set as its trigger with or without the checkbox the value doesn't change to a location coordinate.

The uploaded values I saw were null if it's checked (triggered or not) and POINT ( ... ) if it's not checked but triggered.

I assume I'm missing something blindingly obvious here, but I shouldn't see the question label or be able to wipe the value with the checkbox if it's a background item?

---

<div class="post-metadata">

**Author:** ![LN](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ln/32/1605_2.png) [@LN](https://forum.getodk.org/u/LN)\
**Post date:** [April 23, 2025, 7:38pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/30 "2025-04-23T19:38:50Z")

</div>

Here is the example from the docs as a working form: [https://docs.google.com/spreadsheets/d/1oPOszhovewBzjxYtHGif6VzrGOBE5N9EiXNPluWlwfg/](https://docs.google.com/spreadsheets/d/1oPOszhovewBzjxYtHGif6VzrGOBE5N9EiXNPluWlwfg/)

> [@chun\_hing\_yap](#):
>
> the compatibility of this widget for collect and enketo

It should work with Enketo! I just verified that it works for me in Firefox. Keep in mind that location capture may not be immediate, especially the first time you fill out a form. When you change a question's value, you should either be prompted to give location permissions or see a location icon in the address bar. I find that I generally need to wait about 5 seconds before I submit to get a location reading.

> [@chun\_hing\_yap](#):
>
> it doesn't work inside repeat also

This is also expected to work! And in a repeat is to me the most compelling context in which to use `background-geopoint`. I've used it to accurately map my neighbors during a walk around the block. Could you please share the form you're trying?

> [@ahblake](#):
>
> The question `background-geopoint` appears on the form as an acknowledge question type with a checkbox

A quick example form would help troubleshoot, this sounds very surprising!

---

<div class="post-metadata">

**Author:** ![Xiphware](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/xiphware/32/2587_2.png) [@Xiphware](https://forum.getodk.org/u/Xiphware)\
**Post date:** [April 23, 2025, 8:58pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/31 "2025-04-23T20:58:35Z")

</div>

> [@LN](#):
>
> This is also expected to work! And in a repeat is to me the most compelling context in which to use `background-geopoint`.

Please note the above known Enketo issue I mentioned earlier: [https://github.com/enketo/enketo/issues/1347](https://github.com/enketo/enketo/issues/1347)

It looks like the **setvalue** target XML element is not getting properly resolved when performed _within_ a repeat group. So although the `background-geopoint` is being triggered and 'working' per se, its storing the result in the wrong place.

---

<div class="post-metadata">

**Author:** ![ahblake](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ahblake/32/22392_2.png) [@ahblake](https://forum.getodk.org/u/ahblake)\
**Post date:** [April 23, 2025, 11:25pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/32 "2025-04-23T23:25:06Z")

</div>

> [@LN](#):
>
> A quick example form would help troubleshoot, this sounds very surprising!

> **tl;dr**
>
> I grabbed your example form and tested in 2025.2.0 Beta 2 (prev was beta 1), and it works exactly as expected... I also already deleted the test form from a couple weeks ago and didn't screenshot ;( ... I recreated a new form, two questions each triggering a different background-geopoint, in Enketo, the usual geopoint dialogue appears with an 'OK' at the bottom, and if you mouseover on it, a blue box appears and clicking fills the field with `OK`. Clicking in the map fills the lat/long but doesn't fill the field with location. If you hit the trigger it does fill the field with location, the map zooms to that location but the lat/long/etc fields stay blank. The form is invalid if the geopoint has been clicked and contains 'OK' but trashing it or retriggering it will allow submission. The note with the fields shows the location or 'OK'.
> 
> Click on map to fill lat/long, click in hitbox to fill background geopoint with `OK`
> 
> ![image](https://getodk.b-cdn.net/uploads/default/original/3X/4/0/40d676f793046b45824b6798ecdddee3353f85d9.jpeg)
> 
> In Collect, I get the acknowledge appearance as mentioned earlier:
> 
> ![image](https://getodk.b-cdn.net/uploads/default/original/3X/e/6/e6aeb93456cd5f644586f3c081e8697f1f6e9fff.jpeg)
> 
> After triggering them, the ack is unchecked and the note with the fields doesn't display anything
> 
> ![image](https://getodk.b-cdn.net/uploads/default/original/3X/5/1/512ed4a2223e6aeaa82099dd5426b2b437530686.jpeg)
> 
> I did have trouble getting a location fix, and no way to know it had succeeded until sending, as looking at the form TOC view didn't show the value, the note didn't show the value, but viewing the sent form _did_ show the value in the field and note.
> 
> TOC view
> 
> ![image](https://getodk.b-cdn.net/uploads/default/original/3X/6/0/601fb428d9b6136844bab6aa907eac12dcf10339.jpeg)  
> Sent form view  
> ![image](https://getodk.b-cdn.net/uploads/default/original/3X/b/c/bc952da3c2b0082dc9169120380cdc7c9d4d9ae9.jpeg)
> 
> It's not the field-list appearance in a group, I removed the group and it was the same.

Taking another look at your example.. **you don't have a label on your `background-geopoint` and I do**.  
Removing the label hides the geopicker in Enketo and the check box in Collect, **and** shows the location in the note (Have to change screens to refresh it though) / TOC view. Here's a form with a wonky and a working one:

[Background\_Geopoint\_label\_issue.xlsx](https://forum.getodk.org/uploads/short-url/kUGNq5sdSLHdhZNzg9fhCbbxA0o.xlsx) (576.7 KB)

> [@LN](#):
>
> It should work with Enketo! I just verified that it works for me in Firefox.

Both Edge & Chrome defaulted to blocking location for me, the trigger question showed a location pin in the address bar, which could be clicked to change permission:

 ![image](https://getodk.b-cdn.net/uploads/default/original/3X/9/8/9893406060cf9d3c72865263c5b3b3b982808166.png)

Once location allowed, Chrome attained location quickly, but Edge didn't succeed, up to 20s wait between trigger and submit and still nothing for me.

---

<div class="post-metadata">

**Author:** ![LN](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ln/32/1605_2.png) [@LN](https://forum.getodk.org/u/LN)\
**Post date:** [April 23, 2025, 11:43pm UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/33 "2025-04-23T23:43:45Z")

</div>

> [@Xiphware](#):
>
> It looks like the **setvalue** target XML element is not getting properly resolved when performed _within_ a repeat group

That makes sense, thanks! Sorry, I went back to thinking about Collect which is where I did extensive testing within repeats.

> [@ahblake](#):
>
> **you don't have a label on your `background-geopoint` and I do**.

Oh no! That's definitely something we should guard against in pyxform. 🙈 [https://github.com/XLSForm/pyxform/issues/763](https://github.com/XLSForm/pyxform/issues/763)

> [@ahblake](#):
>
> Edge didn't succeed, up to 20s wait between trigger and submit and still nothing for me.

That feels like it could be a browser configuration issue. Maybe Edge's default is more privacy-preserving in some way? Enketo uses the standard browser location APIs so I don't think there's a lot we can do about this one.

---

<div class="post-metadata">

**Author:** ![chun\_hing\_yap](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/chun_hing_yap/32/13598_2.png) [@chun\_hing\_yap](https://forum.getodk.org/u/chun_hing_yap)\
**Post date:** [April 24, 2025, 12:15am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/34 "2025-04-24T00:15:41Z")

</div>

I am referring to the context of **trigger behavior inside repeat** in **Enketo** , I am not quite sure whether the issue brought up by @Xiphware earlier has already been resolved.

> [@Incorrect (setvalue) trigger behavior in Enketo when used inside repeats](https://forum.getodk.org/t/incorrect-setvalue-trigger-behavior-in-enketo-when-used-inside-repeats/49058/11):
>
> No, I'm sorry, I really confused things! The goal is for pyxform to always generate relative references within repeats in places where relative references are allowed/expected. I briefly thought that that absolute reference might have been part of the issue but it's not. The ref for actions is the same as the ref for body controls and is expected to always be an absolute path. I believe Enketo should be contextualizing the action's ref the same way it does for body controls but it looks like t…

---

<div class="post-metadata">

**Author:** ![ahblake](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ahblake/32/22392_2.png) [@ahblake](https://forum.getodk.org/u/ahblake)\
**Post date:** [April 24, 2025, 12:19am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/35 "2025-04-24T00:19:49Z")

</div>

> [@LN](#):
>
> That feels like it could be a browser configuration issue

I did click the barred location in the address bar to allow location, then a popup dialogue appeared and i allowed that, so i thought that would be enough. I'd have to go digging further into config options to try to resolve.

> [@LN](#):
>
> Oh no!

Always looking for new and interesting ways to break things 😃

---

<div class="post-metadata">

**Author:** ![Xiphware](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/xiphware/32/2587_2.png) [@Xiphware](https://forum.getodk.org/u/Xiphware)\
**Post date:** [April 24, 2025, 1:27am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/36 "2025-04-24T01:27:34Z")

</div>

> [@chun\_hing\_yap](#):
>
> I am not quite sure whether the issue brought up by @Xiphware earlier has already been resolved.

AFAIK this has not been fixed yet.

Presently the `ref` in a `setvalue` (aka trigger) or `odk:setgeopoint` (aka background-geopoint) action isnt being 'contextualized' correctly by Enketo for controls within a repeat group; instead it is always just referencing the XML element in the _first_ iteration, not the current one.

Once this is fixed, both xforms-value-changed event triggers and background-geopoints should start to behave correctly in Enketo, as they do already in Collect.

---

<div class="post-metadata">

**Author:** ![Xiphware](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/xiphware/32/2587_2.png) [@Xiphware](https://forum.getodk.org/u/Xiphware)\
**Post date:** [April 24, 2025, 3:11am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/37 "2025-04-24T03:11:17Z")

</div>

> [@ahblake](#):
>
> you don't have a label on your `background-geopoint` and I do.

You know, @ahblake, we did call it _background_-geopoint for a reason...

😜

But I totally agree with @LN , good catch! I'd never have thought of doing that 😆

---

<div class="post-metadata">

**Author:** ![ahblake](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ahblake/32/22392_2.png) [@ahblake](https://forum.getodk.org/u/ahblake)\
**Post date:** [April 24, 2025, 3:54am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/38 "2025-04-24T03:54:03Z")

</div>

> [@Xiphware](#):
>
> we did call it _background_-geopoint for a reason...

> **I'm just over here putting labels on everything**
>
> [https://comb.io/u9R5Av.gif](https://comb.io/u9R5Av.gif)

Does background-audio do similar funny things when a label is added? The examples in the docs do show no label but don't currently warn that one will cause an issue.

---

<div class="post-metadata">

**Author:** ![Xiphware](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/xiphware/32/2587_2.png) [@Xiphware](https://forum.getodk.org/u/Xiphware)\
**Post date:** [April 24, 2025, 4:44am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/39 "2025-04-24T04:44:20Z")

</div>

I did a quick test as most everything else seems ok. Specifically, all the other 'hidden' [metadata](https://xlsform.org/en/#metadata) question types - `start`, `end`, etc - seem to happily ignore any superfluous label in the XLSForm.

 ![Screenshot 2025-04-24 at 4.42.05 PM](https://getodk.b-cdn.net/uploads/default/original/3X/f/b/fb331cc127b5f8be61d51ff3b76f945b8cc29423.png)

However, as you observed, an unexpected label on a **background-geopoint** question seems to mysteriously turn it into a [trigger](https://docs.getodk.org/form-question-types/#trigger-acknowledge-widget) question _in Collect_ 🤨:

 ![Screenshot_20250424-163526_KoboCollect](https://getodk.b-cdn.net/uploads/default/original/3X/3/b/3b70337f254f5d380945fc3ef31cf8c7fb1540d4.jpeg)

or turns it into an (ir)regular geopoint question under Enketo:

 ![Screenshot 2025-04-24 at 4.38.53 PM](https://getodk.b-cdn.net/uploads/default/original/3X/8/d/8d6fc658e4db2ded4733f3ad21fc8ec82724d88e.png)

Both of which are quite incorrect client behavior.

---

<div class="post-metadata">

**Author:** ![ahblake](https://getodk.b-cdn.net/user_avatar/forum.getodk.org/ahblake/32/22392_2.png) [@ahblake](https://forum.getodk.org/u/ahblake)\
**Post date:** [April 24, 2025, 6:14am UTC](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655/40 "2025-04-24T06:14:37Z")

</div>

> [@Xiphware](#):
>
> or turns it into a regular geopoint question under Enketo:

almost - it's a hybrid geopoint-trigger! (see the 'OK' at the bottom, and click in the whitespace between the map and fields to activate the trigger)

[Previous page](https://forum.getodk.org/t/spec-proposal-expose-xforms-value-changed-event-with-odk-setgeopoint-action-in-xlsform/48655.md?page=1)
