Diseño de la base de datos para el creador de formularios personalizados (y almacenamiento de resultados)

Estoy intentando implementar un generador de formularios personalizado, similar a los proporcionados porWufoo yGoogle.

Si bien he creado una IU simple para crear estos formularios personalizados, mis problemas se encuentran en el diseño de la base de datos. Al crear el formulario, una implementación JSON se guarda en la base de datos (me gustaría mejorar esto) y se hace referencia para crear el formulario que un usuario vería.

Tras el envío, me gustaría almacenar todos los campos del formulario en una base de datos. Siguiendo la estructura JSON utilizada para diseñar la base de datos, esto es bastante fácil. sin embargoMe gustaría que cada campo individual se pueda buscar.

Las preguntas:¿Hay una mejor manera de almacenar el diseño del formulario?¿Qué estructuras / modelos de datos se adaptarían al almacenamiento de los resultados del formulario?He visto que EAV podría ser una posibilidad, pero debido a los diferentes tipos de entrada involucrados (menú desplegable, casilla de verificación, texto, área de texto) esto puede resultar tedioso.¿Qué estructura permitiría la búsqueda más fácil y permitiría el uso de las cláusulas WHERE?El ejemplo de JSON dado, no me permite hacer esto tan bien

Respuestas a la pregunta(2)

Su respuesta a la pregunta