Cannot update form using XLSForm Online v.2.x

I tried to update an existing form using XLSForm Online v.2.x. I followed all of the instructions in the documentation (including maintaining the filename of the .xlxs file). When I tried to upload to Aggregate v.2.0.3 I got the following error: ''Form Already Exists for this Namespace/Id attribute'. I looked at the XML for the old form and the new form and realized that the filename was missing from the new form, but it appeared 415 times in the old form. I fixed the problem by using the Previous Version of XLSForm online.

I am posting here as in case others have the same issue and to find out if this is a bug or a deliberate change. (The filename thing was quite annoying in the previous version).

3 Likes

Good troubleshooting. :+1:

I agree! Using a standard root node name offers many benefits including letting you change filenames as you wish. This was a deliberate change and you can read more in the release notes for XLSForm Online v2.0.0. The documentation for the setting called name which lets you set the XML root node name is available here. Please try that with XLSForm Online v2.x and let us know if you run into any other issues.

Hi I'm a bit stuck. The link to the old XLSForm online converter has gone, so I tried to add the old filename as the 'name' attribute on the settings tab and tried to upload using v2.x.

To make sure I had the correct filename I downloaded the XML from the Aggregate server and copied the text in the code (in bold below). As I understand it this is the root node:

id="/machinery_surv_eng_lao_20190430.01

Unfortunately instead of updating I got the error: "Form Already Exists for this Namespace/Id attribute"

I updated the version number. Is it possible to update this form using v.2.x or do I need to find the link to the old convertor?

The v1 converter is available from https://getodk.org/xlsform/v1/. The link from the v2 converter is now at the bottom of the page.

There were other changes in v2 that would result in a different form structure and prevent an update with Aggregate. It's probably easiest to keep using v1 for this form and use v2 when you create new forms.

1 Like