Die optionalen Kinder einer jeden Node werden nach Alter angeordnet. Das heißt, dem DOM ist bekannt, in welcher Reihenfolge die optionalen Kinder hinzugefügt wurden.
Für jeden Schritt in der Formularverarbeitung gibt es ein DOM, das die Datenstruktur für diese Phase speichert. Skripten können jedes DOM überprüfen und ändern. DOMs sind für die Einhaltung einer internen, aber nicht externen Konsistenz verantwortlich. Wenn ein Skript beispielsweise ein Optionsfeld durch das Zuweisen des entsprechenden Felds aktiviert, werden alle anderen an dieses Optionsfeld gekoppelten Felder automatisch deaktiviert. Da es sich hier um eine Frage der internen Konsistenz handelt, übernimmt das Formluar-DOM selbst die Verwaltung.
Im Gegensatz dazu unternimmt das Daten-DOM nichts, um zu verhindern, dass ein Skript die XML-Regeln verletzt, beispielsweise indem es einem Objekt zwei Eigenschaften mit demselben Namen zuweist. Da es sich hier um eine Frage der externen Konsistenz handelt, liegt die Verantwortung beim Verfasser des Skripts und nicht beim DOM.
Bei der Kombination eines Formularentwurfs mit Daten, erleichtert das XMLFomularobjektmodell den Vorgang der Kombination von Vorlage und Daten für die Erstellung des Formulars. Dieser Vorgang beginnt mit der Verwendung vorhandener XML-DOM-Darstellungen für den Formularentwurf und den XML-Daten zur Erstellung verschiedener Modelle Diese separaten Modelle speichern eine strukturierte Darstellung des ursprünglichen Formularentwurfs und die Original-XML-Daten. Die Vorlage-DOM entspricht dem Formularentwurf und die Daten-DOM den vom Benutzer bereitgestellten XML-Daten.
Nach der Erstellung der Vorlagen- und Datenmodelle wird ein drittes Modell, das Formular-DOM erstellt, das die zusammengeführten Daten enthält. Das Formular-DOM dient als Medium zur Zusammenführung der spezifischen Werte der XML-Daten mit den Darstellungsregeln, die durch die Formularentwürfe vorgegeben sind.
Erstellen Sie ein interaktives Formular, ist dieses nach der Erstellung eines Formular-DOMs abgeschlossen und kann den Benutzern bereitgestellt werden. Interaktive Formularentwürfe können zugeordnete Daten, mit denen sie zusammengeführt wurden, enthalten, aber die meisten interaktiven Formulare werden für die Unterstützung der vom Benutzer eingegebenen Daten entworfen.
Die Verarbeitung und Erstellung des Formular-DOMs ist bei allen Formularen identisch. Die nicht interaktiven Formulare enthalten jedoch einen Datensatz, der mit ihrem Formularentwurf zusammengeführt werden muss. Im Fall von Formularen mit einem festen Layout bestimmt die Datenzusammenführung nicht die Darstellungsregeln für das Formular. Das bedeutet, dass die Daten mit den geeigneten Feldern ohne Änderung der Feldeigenschaften zusammengeführt werden. Werden die Daten hingegen mit Formularen, die ein flexibles Layout enthalten, zusammengeführt, wird die Größe der Felder an die Datenmenge, mit der sie zusammengeführt werden sollen, angepasst.
Das Formular-DOM für Formulare, die sowohl ein festes wie auch flexibles Layout besitzen, sehen sich sehr ähnlich. Es ist ein langes Formular ohne Paginierung. Sobald die Daten- und Darstellungsregeln auf diese Art von Formularen angewendet werden, müssen sie gemäß den Layoutinformationen formatiert werden. Aus dem Formular-DOM wird ein Layout-DOM erstellt, das das Formular in Seiten gliedert und seitenbasierte Regeln, wie die Seitennummerierung, Kopfzeilen und Trailer anwendet. Dieser Vorgang ist in folgendem Diagramm ersichtlich.
Nach Anwendung der Layoutregeln auf Formulare mit festem oder flexiblen Layout, sind beide Formulararten vollständig.