Display multiple instances that match criteria from a dynamic dataset

I have a parent survey form that will be used to register trainings. These trainings will be used in a child form to register participants’ attendance.

Each training is given a unique ID constructed as FI-[province]-[district]-[village]-[consecutive number]

I was able to link the parent form to itself so that the consecutive number increases based on the number of trainings previously registered. I would now like to display the details of all previously registered trainings in the same village so that the user can confirm that the training they would like to register has not been registered previously, prior to submitting the form, to avoid trainings being registered multiple times.

Training_registration.xlsx (202.6 KB)

I know I can pull details of individual trainings using instance(). I would like to know if there’s any way to return the details of multiple matches from an xml-external dataset, similar to how the search() function can be used to return dynamic choice lists. I haven’t been able to get a clear idea from the help articles and forum posts I’ve seen about whether this is possible.

i think (though am not sure), you cannot use pulldata()/instance() to return multiple matches. The only way Kobo allows displaying multiple rows from an external dataset is through search() / dynamic choice lists. If you want to “show” them, you’ll need to present them as a select (single/multiple) question, with labels structured to show the training details.