What is the general goal of the feature?
Many form designs include repeat groups that may not be filled out in a linear fashion. For such forms, the ability to easily jump from repeat item to repeat item would be a big usability gain. We are wondering if a sidebar may be a useful tool for this.
What are some example use cases for this feature?
Imagine a form for a household with 10 members. The enumerator wishes to first list everyone's name, and then survey the members one by one, often jump…
opened 03:12PM - 04 May 18 UTC
closed 03:10AM - 07 Feb 19 UTC
Many form designs include repeat groups that may not be filled out in a linear f… ashion. For such forms, the ability to easily jump from repeat item to repeat item would be a big usability gain.
Imagine a form for a household with 10 members. The enumerator wishes to first list everyone's name, and then survey the members one by one, often jumping around the list in a non-linear way. Getting the names at the beginning is important because people may come and go.
Currently, doing this via the jump screen is somewhat painful.
Now that we have the ability to dynamically name repeat items things are somewhat better, but still, if you are on a question in one of the repeat items, to go to a different item, you need to tap: Jump > Go Up > Expand Arrow > Desired Item > Desired Question. That's 5 taps for each jump, and each is in a different part of the screen, meaning a lot of finger targeting and moving and cognitive load! If you're doing this a lot, that's a lot!
## Suggested Solutions
To remedy this we're suggesting 3 separate changes:
1. Separate screen in jump screen for listing repeat items
2. Change jump screen icon to convey 'up' metaphor and show this icon in jump screen
3. "Add item" and "Delete item" buttons in jump screen for repeat groups
### Separate screen in jump screen for listing repeat items
Currently the jump screen with repeat groups looks like this:

Specifically:
1. The repeat group is shown initially as a collapsed list item
1. When expanded, a list item is shown for each repeat item/instance
1. Tapping an item opens a _separate_ screen showing the questions within the item.
So there is a somewhat strange combination of two techniques for browsing a hierarchy: 1) tree view, 2) screen-by-screen drill-down.
I would argue that #2 is the more common approach in mobile UIs. Think of the Android settings screen, the iPod interface, etc. Therefore I'm proposing we change things so that tapping the repeat group opens a new screen to show repeat items instead of expanding.
This approach can be seen in [these mockups](https://app.moqups.com/sassafras/4WPu8QH3er/view). (You can ignore the question icons and other fancy stuff for now and just focus on the navigation from top level down into a repeat group item and back up.)
### Change jump screen icon to convey 'up' metaphor and show this icon in jump screen
Check out this diagram:

I think this is the implicit mental model of ODK Collect -- the left-right swipe motion moves through a long a linear list of questions (those grouped into a single screen are field-lists or grids). Going to the jump screen is kind of like moving 'up' from the base-level question view. This is reinforced by the label of the button 'Go Up' in the jump screen footer. You can go all the way 'up' to the top level of the jump screen, or all the way 'down' to the question view.
Right now, moving up through the hierarchy is cumbersome because to get from a question to the top level via a repeat group you have to:
1. Tap the jump screen icon (this brings you to the list of questions in the repeat item)
2. Tap 'go up' (this brings you to the screen on which the repeat group appears, contracted)
3. Expand the repeat group (note that we skipped a step here -- the repeat group is revealed before its members)
So you have to tap three different things just to get to the list of items in the repeat.
If, instead, we:
1. Do the above (put the repeat items on a separate screen) AND
2. Change the icon to convey the 'up' metaphor that we implicitly use AND
3. Include this new up icon in the same place in the jump screen header as the question view header...
THEN
Moving up the hierarchy is as simple as repeatedly pressing that icon.
1. One press gets you to the list of questions you're in
1. Second press gets you to the repeat item list
1. Third press gets you to the level where the repeat group lives, etc.
[Our mockups](https://app.moqups.com/sassafras/4WPu8QH3er/view) convey this idea. e.g.

### "Add item" and "Delete item" buttons in jump screen for repeat groups
Cuz why not!? See [the mockups](https://app.moqups.com/sassafras/4WPu8QH3er/view) for where these would be located.
This would make it much easier to add/remove/manage repeat items.
(In future it would also be nice to prompt the user to enter an answer to a key question (e.g. person name) right when they click the 'add' button, but that's for another day.)
That's it! Thanks all for considering!
PS: Note to Helene, others: I know earlier we had discussed skipping the question list for groups that contain only field-list. That is still a possibility, but I realized it may not be as useful given that for non-trivial forms it's hard to have a field-list only repeat group because conditions and multi-level select-ones don't work in field-lists. So that solution won't work for us I think. I also think it might be a bit confusing and inconsistent. I prefer making it easily to quickly move up the hierarchy instead of just skipping things outright.
in one of the comments on that roadmap issue:
Third: It would be nice to spiff up the text in the repeat. Right now it says e.g. "Add another 'People' group?" Yikes! If we had some way in the XForms spec of specifying the noun or even the full string here, that would make things a lot more usable.
1 Like