XLSForm / pyxform

A Python package to create XForms for ODK Collect.
BSD 2-Clause "Simplified" License
77 stars 134 forks source link

Support ref in constraint and required messages with single language #487

Closed lognaturel closed 3 years ago

lognaturel commented 3 years ago

Closes #474

Why is this the best possible solution? Were any other approaches considered?

Discussed approach in the issue and @MartijnR agreed identifying ${} references and forcing itext creation in that case was our best bet.

In terms of implementation, I tried to reduce redundancy in this section but I couldn't come up with any approach that would be easy to read. I think this is ok because the conditions are linear and read well.

I considered adding tests for relative references in repeats but I think that's sufficiently covered elsewhere and should Just Work.

What are the regression risks?

Everything I added is in a conditional so I think risks are minimal. The worst risk is probably that I would have forgotten some cases.

Does this change require updates to documentation? If so, please file an issue here and include the link below.

No, this is a bug fix.

Before submitting this PR, please make sure you have: