Formulários editáveis

Olá a todos,

Estou a desenvolver uma aplicação que lê dados de formulários. Embora exista um formulário base pode haver centenas de extensões desse formulário, com mais ou menos campos.

O que eu pretendia era uma solução que me permitisse ao utilizador carregar um formulário base, poder adicionar ou remover campos, grava-lo numa base de dados, preencher esse formulário, submeter os dados.

Existe alguma API ou software que faça isso? Estive a ver o ireports da jasperforge, mas parece-me que só permite outputs e não inputs.

Tenho ainda outra questão relacionada com a anterior, que é a seguinte: como vou ter um número variável de campos como vou guardar essa informação na base de dados? Em memória será parecido com um hashtable mas na base de dados que tipo de estrutura me permite gravar informação (campo, valor).

Obrigado.

Camarada, pronto, da maneira como você quer, desconheço.
Talvez seja algo mais braçal mesmo, por, um formulário sempre será composto por N componentes diferentes (input text, radio, combo, textarea, select, etc).

Quanto a estrutura de tabelas, ao meu ver, você precisará de 4 tabelas, pois, este relacionamento é N : M (muitos para muitos) a entender:
Cada formulário possui N labels (considero label a chave) e M componentes. Cada label pode representar 1 ou mais componentes em formulários diferentes e, cada componente, pode ser representado por 1 ou mais labels, em formulários diferentes.
Portanto, você teria que ter uma tabela para os formulários, outra para as chaves e outra para os campos, relacionando campo e chave através de uma tabela associativa