Error: 'Allow_choice_duplicates'

Hello all,

When converting an excel build form using xlsform online, the following error occurs:
"There does not seem to be a allow_choice_duplicates column header defined in your settings sheet. You must have set allow_choice_duplicates setting in your settings sheet to have duplicate choice list names in your choices sheet"

xlsform offline does not identify this error

I have searched all the xlsform/odk documentation about this allow_choice_duplicates setting but have not found anything. I have literally followed the instruction by adding a allow_choice_duplicates to the settings sheet without succes

I can't think of anyway of reproducing the problem, it happened in 2 separate forms that both used to work fine before.

Can't share the files now due to confidentiality but perhaps anyone has insights?

Thank you in advance,
Sivan

1 Like

When adding a: allow_choice_duplicates column with 'yes' underneath, the error makes place for another: "List index out of range"

I just noticed someone else raised the topic some hours ago:

Dear Sivan, I am experiencing the same problem. Have you managed to fix it?

Bw,

Aure

**1. When validating on http://opendatakit.org/xlsform/ I get Error: list index out of range on form that were validating and deploying on August 8th.

**2. http://opendatakit.org/xlsform/ 1.6.0. Forms validate on older versions (offline). Form validates on Kobo and can be deployed.

My forms were validating a few days ago and could be deployed/used. The same forms do not get validated anymore and produce an error message. I noticed on github new commits dating of August 12th. Were there major changes introduced that could produce this error?

Thanks in advance,
Geneviève

Hi @Genevieve_Audet_B

could you attach your form?

Thank you so much for looking into this, and to you Geneviève for raising the issue. I had the same problem (same error message) today on forms that had previously been validated using http://opendatakit.org/xlsform/

In case it is relevant, just to say the other additional (new) error message I got today was regarding "allow_choice_duplicates column header defined in your settings sheet". I was able to fix that and so the only error message I get is now relating to the list index out of range.

I too have not made any changes to the forms that were working fine last week, and only discovered the error message when trying to hand over work to a colleague today.

With thanks, Phil

We found the issue. Replace _ by -

Hi all, there seems to be a bug in the latest release of pyxform v0.15.0 that shipped with ODK XLSForm Online v1.6 and ODK XLSForm Offline v1.11.

I don't yet know what the problem is, but I've filed the upstream issue at https://github.com/XLSForm/pyxform/issues/352 and you can track progress there.

While we try to track down the problem, I've rolled back http://opendatakit.org/xlsform to the previous version (v1.5). If you use XLSForm Offline, you can download the previous version (v1.11) here.

@Ukang_a_Dickson can you help?

Thank you for your help. Both the online and offline versions still produce the same error message. Is there another way to convert the xml file, I have always used this online/offline tools so I am not sure about other options.

Thanks a lot.

Aurelia

@AL Can you retry the online server? I just made a few changes. Also, what version of the offline app did you try? Finally, can you please share a small form that has this problem? It'd really help track this down.

The new online version now works :slight_smile: This is life saving since we are starting our survey in Kenya next week!

Thanks again for your help.

Aurelia

1 Like

Many thanks from me too, the XLSForm Online is working again for me. Much appreciated.

1 Like

@Genevieve_Audet_B, @pjames, and @Sivan I'm having trouble reproducing the list index out of range issue. Do you have a sample form that you can share so we can fix this problem?

The reported issues have been fixed in the newest releases of ODK XLSForm Online v1.6 and ODK XLSForm Offline v1.11. Thanks to everyone who reported the issue and provided a sample form.

Hi, I think the issue is back today (Sep 24, 2019 @ 10:15 MST) using https://opendatakit.org/xlsform/ v.1.6.1 . I'm attempting to convert a XLSform that previously worked, and am getting the exact same error as above:
"Error: There does not seem to be a allow_choice_duplicates column header defined in your settings sheet. You must have set allow_choice_duplicates setting in your settings sheet to have duplicate choice list names in your choices sheet"

@Greg You probably have a duplicate choice name in one or more of your choice lists. This is a new error that was added because choices with the same name will be impossible to differentiate in analysis.

You will need to either remove the duplicate choices or add allow_choice_duplicates column in your settings sheet and below that header write yes.

This is a not great error message and there is an issue at https://github.com/XLSForm/pyxform/issues/373 to improve it.

OK, thanks @yanokwa ! I was just confused because it was the same form as before that worked.

1 Like

Issue is still exist in 1.6.1

I experiment this issue with a form which previously works perfectly
I did not change any thing except the version name
were can I find the previous version ?

@ganesh_rajput, @Fabienne35, the problem is almost certainly that you actually have duplicate choice names in one or more of your lists. For example, you might have options with labels "Red" and Blue" that both have the name "2". This is a problem because you won't be able to tell in analysis whether the user selected red or blue. That's what the error is about.

Sometimes this is intentional because you want to do something like give red and blue the same "weight" when doing a calculation later. In that case, you can add a settings sheet (see http://xlsform.org/en/#settings-worksheet), add a column named allow_choice_duplicates and put the value yes below that heading.

2 Likes