The problem

XForms is a W3C standard for creating powerful, XML-based web forms that separate data, logic, and presentation. It allows developers to build dynamic, interactive forms with built-in features like data validation, calculations, and conditional logic, all without scripting. XForms is best used in data-intensive applications such as enterprise systems, government portals, and document processing workflows, especially where structured data and XML integration are important.

However, if you try to use it for other applications, issues will start to pop up. Usually, it's either something missing so you can't simply implement it, or something that can be done, but it clearly could be much easier.

Consider the following screenshot as an example to better understand the issues:

Figure 1. Concept design of a SaaS amdin dashboard

Concept design of a SaaS amdin dashboard


Can we make this in XForms? Yes.

Will it be in XForms alone? Most likely not.

Will it be easy? Definitely not.

Will the code be straightforward and easy to maintain? No, and it will definitely get more complicated when you need two of the same complex element.

Why is that? And can we avoid it?