I'm working on a converter for cuelang files to the XLS form standard. It aims to be fully compatible with the XLS form spec. This provides a text alternative to XLS forms that's easier to deal with on most version control systems; but using cuelang gives us other benefits such as easy form reuse, scripting and much more. Here's a sample of the syntax
xlsform.#Group & {
type: "begin group"
name: "person_registration"
label: en: "Person Registration"
appearance: "field-list"
children: [
xlsform.#Question & {
type: "text"
name: "first_name"
label: en: "First Name"
required: "yes"
},
xlsform.#Question & {
type: "text"
name: "last_name"
label: en: "Last Name"
},
xlsform.#Question & {
type: "integer"
name: "age"
label: en: "Age"
}
]
}
I've included more examples of some of the things you can do with this. This is still a work in progress so feel free to provide suggestions