XForms-Modelle

Das XForms-Modell definiert ein Muster für die Datenkonzentration im Formular.

XForms-Framework

Die Funktion des HTML-Formulars ist die Sammlung von Daten. Die Funktion von XForms ist gleich.

Durch XForms werden Eingabedaten in zwei verschiedenen Teilen beschrieben:

  • XForms-Modell (Beschreibung von Daten und Logik)
  • XForms-Benutzeroberfläche (Anzeige und Eingabe von Daten)

XForms-ModelleDefiniert, was ein Formular ist, welche Daten es enthält und was es tun soll.

XForms BenutzeroberflächeDefiniert die Eingabefelder und wie diese angezeigt werden.

XForms-Modelle

XForms ModellverwendetBeschreibungDaten bezeichnet.

Ein Datenmodell ist eine Instanz eines XML-Dokuments (ein Muster).

XForms-Model definiert einen Datenmodell innerhalb eines <model>-Elements:

<model>
<instance>
  <person>
    <fname/>
    <lname/>
  </person>
</instance>
<submission id="form1" action="submit.asp" method="get"/>
</model>

Von den obigen Beispielen können Sie sehen, dass das XForms-Modell einen verwendet <instance> Elemente, um eine XML-Vorlage für die zu sammelnden Daten zu definieren, und verwenden einen <submission> Elemente, wie die Daten übertragen werden.

<submission> ModellkeineInformationen über die sichtbaren Teile des Formulars (Benutzeroberfläche) ausdrücken.

XForms-Namensräume

Wenn Sie in diesen Beispielen die XForms-Namespace ignoriert haben oder wenn Sie sich nicht mit dem Konzept des Namespace auskennen, werden wir dies in der nächsten Sektion erklären.

<instance> Element

XForms-Modelle <instance> Elemente, um die zu sammelnden Daten zu definieren.

XForms istDaten für ein XML-Dokument zu sammelndefiniert. In diesem XForms-Modell definiert das <instance>-Element dieses XML-Dokument.

In diesem Beispiel ähnelt der Dateninstanz (XML-Dokument), für die das Formular Daten sammelt, so:

<person>
  <fname/>
  <lname/>
</person>

Nach Abschluss der Datenerfassung könnte dieser XML-Dokument so aussehen:

<person>
  <fname>John</fname>
  <lname>Smith</lname>
</person>

Das <submission>-Element

Das XForms-Modell verwendet <submission> Elemente, wie die Daten übertragen werden.

Das <submission>-Element kann das Formular und den Übertragungsprozess definieren. In diesem Beispiel definiertid="form1" wird verwendet, um dieses Formular zu kennzeichnenaction="submit.asp" Attribute ist die URL, an die das Formular gesendet wird, während method="get" Attribute definieren die Methoden, die während des Formularübergabeprozesses verwendet werden.

XForms Benutzeroberfläche

XForms BenutzeroberflächeverwendetAnzeige und EingabeDaten bezeichnet.

Die Benutzeroberfläche-Elemente von XForms werden alsKontrollenoder Eingabekontrollen:

<input ref="fname"><label> Vorname </label></input>
<input ref="lname"><label> Nachname </label></input>
<submit submission="form1"><label>Submit</label></submit>

In diesem Beispiel definieren zwei <input>-Elemente zwei Eingabefelder. Die Attribute ref="fname" und ref="lname" verweisen auf die <fname> und <lname>-Elemente im XForms-Modell.

Das submission="form1"-Attribut im <submit>-Element kann auf das <submission>-Element im XForms-Modell verwiesen.

Bitte beachten Sie das <label>-Element im Beispiel. Mit XForms muss jeder Eingabekontroll-Element ein <label>-Element haben.

Sie benötigen einen Container

XForms wurde nicht für eine Arbeit als einzelnes Element konzipiert. Es gibt auch keine XForms-Dokumente.

XForms müssen in einem anderen XML-Dokument arbeiten. Sie können in XHTML 1.0 ausgeführt werden und werden auch in XHTML 2.0 funktionieren.

Jetzt fügen wir alles zusammen

Fügen wir sie jetzt zusammen, so sieht das Dokument aus:

<xforms>
<model>
<instance>
  <person>
    <fname/>
    <lname/>
  </person>
</instance>
<submission id="form1" action="submit.asp" method="get"/>
</model>
<input ref="fname"><label> Vorname </label></input>
<input ref="lname"><label> Nachname </label></input>
<submit submission="form1"><label>Submit</label></submit>
</xforms>

Die Seite wird so angezeigt:

xforms_example

XForms-Verarbeiter

In Browser integriert XForms-Verarbeiterwird verantwortlich für die Übermittlung von XForms-Daten an das Ziel.

Daten können als XML eingereicht werden, ähnlich wie folgt:

<person>
  <fname>David</fname>
  <lname>Smith</lname>
</person>

Oder als Text einreichen, ähnlich wie folgt:

fname=David;lname=Smith