Los elementos secundarios no obligatorios de cada nodo del árbol se ordenan por antigüedad. Es decir, DOM conoce el orden en que se agregaron los nodos secundarios no obligatorios.
Para cada paso del procesamiento de formularios, hay un DOM que contiene las estructuras de datos de dicha etapa. Las secuencias de comandos pueden examinar y modificar cada DOM. Los DOM son responsables de mantener la coherencia interna, pero no la coherencia externa. Por ejemplo, cuando una secuencia de comandos activa un botón de radio mediante la asignación del campo correspondiente, los demás botones acoplados a ése se desactivan automáticamente. Al tratarse de una cuestión de coherencia interna, lo administra el propio DOM de formulario (Form).
En contraste, el DOM de datos (Data) no hace nada para impedir que una secuencia de comandos infrinja las normas de XML, por ejemplo al asignar a un objeto dos propiedades con el mismo nombre. Ésta es una cuestión de coherencia externa, por lo que es responsabilidad del creador de la secuencia de comandos, no del DOM.
Cada vez que se combina un diseño de formulario con datos, se utiliza el Modelo de objetos de formulario XML para facilitar el proceso de combinar la plantilla y los datos para crear el formulario resultante. Este proceso comienza por utilizar las representaciones del DOM de XML existente del diseño de formulario y los datos XML para crear modelos independientes. Estos modelos independientes almacenan una representación estructurada del diseño de formulario original y los datos XML originales. El DOM de plantilla (Template) corresponde al diseño de formulario y el DOM de datos (Data) corresponde a los datos XML proporcionados por el usuario.
Después de crear los modelos de plantilla y datos, se crea un tercer modelo, el DOM de formulario (Form), que representa la información combinada. El DOM de formulario actúa como medio para combinar los valores específicos de los datos XML con las normas de presentación definidas en el diseño de formulario.
Si se crea un formulario interactivo, una vez creado el DOM de formulario, el formulario está completo y listo para su distribución a los usuarios. Los diseños de formulario interactivos pueden tener datos asociados con los que se combinan, pero la mayoría de los formularios interactivos se diseñan para admitir datos especificados por el usuario.
El proceso que incluye hasta la creación del DOM de formulario es idéntico para todos los formularios. Sin embargo, los formularios no interactivos tienen un conjunto de datos para combinar con el diseño de formulario. En el caso de formularios con una presentación fija, la combinación de datos no determina las normas de presentación del formulario; es decir, los datos se combinan en los campos correspondientes sin modificar las propiedades de éstos. En contraste, cuando los datos se combinan con formularios que tienen una presentación flexible, los campos se ajustan para adaptarse a la cantidad de datos combinados en ellos.
El DOM de formulario para los formularios con presentaciones fija y flexible tiene un aspecto muy similar; es un solo formulario largo sin paginación. Cuando los datos y las normas de presentación se aplican a estos tipos de formularios, el formato debe adaptarse a la información de presentación. Un DOM de presentación (Layout) se crea a partir del DOM de formulario que estructura el formulario en páginas y aplica otras normas basadas en página, como la numeración de páginas, encabezados y pies. En el siguiente diagrama se describe este proceso.
Después de aplicar las normas de presentación a los formularios con una presentación flexible, ambos tipos de formulario están completos.