XForms malli

XForms-malli määrittää lomakkeen tietojen keskittymiseen tarkoitetun mallin.

XForms-kehys

HTML-lomakkeen tehtävä on kerätä tietoja. XFormsilla on sama tehtävä.

XFormsin avulla syötetiedot kuvataan kahdessa eri osassa:

  • XForms-malli (kuvailee tietoja ja logiikkaa)
  • XForms-käyttöliittymä (näyttää ja syöttää tietoja)

XForms malliMäärittää, mitä lomake on, mitä tietoja se sisältää ja mitä sen tulisi tehdä.

XForms käyttöliittymäMäärittää syöttökentät ja kuinka ne näytetään.

XForms malli

XForms MalliKäyttöönKuvausTietoja.

Datamalli on XML-dokumentin esimerkki (yksi malleista).

XForms-malli määrittää <model>-elementin sisällä olevan datamallin:

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

Yllä olevasta esimerkistä näet, että XForms-malli käyttää <instance> elementti määrittää XML-mallin tarvittavista tiedoista ja käyttää <submission> elementti määrittää, miten tiedot lähetetään.

<submission>-malliEi oleIlmaisevat tietoja lomakkeen näkyvistä osista (käyttöliittymästä).

XForms nimeäspace

Jos jätät nämä esimerkit XForms-nimitysprofiilin huomiotta tai jos et tunne nimitysprofiilin käsitettä, käsittelemme tätä aiheesta seuraavassa luvussa.

<instance>-elementti

XForms malli <instance> elementti määrittää tietojen keräämistä.

XForms onTietojen kerääminen jollekin XML-dokumentilleTässä XForms-mallissa <instance>-elementti määrittelee tämän XML-dokumentin.

Yllä olevassa esimerkissä lomake kerää tietojaan tällä tavalla:

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

Tiedon keräämisen jälkeen tämä XML-dokumentti voi näyttää tältä:

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

<submission>-elementtiä

XForms-malli käyttää <submission> elementti määrittää, miten tiedot lähetetään.

<submission>-elementti voi määrittää lomakkeen ja sen lähettämistavan. Yllä olevassa esimerkissäid="form1" Käyttääkseen merkintää tälle lomakkeelle,action="submit.asp" Ominaisuus määrittää URL-osoitteen, johon lomake lähetetään, ja method="get" Ominaisuudet määrittelevät menetelmän, jota käytetään lomakkeen lähettämisessä.

XForms käyttöliittymä

XForms KäyttöliittymäKäyttöönNäyttö ja syöttöTietoja.

XFormsin käyttöliittymäelementit kutsutaanKontrolliTai syöttökontrolli:

<input ref="fname"><label>Etu nimi</label></input>
<input ref="lname"><label>Sukunimi</label></input>
<submit submission="form1"><label>Lähetä</label></submit>

Yllä olevassa esimerkissä kaksi <input>-elementtiä määrittää kaksi syöttökenttää. ref="fname" ja ref="lname"-ominaisuudet viittaavat XForms-mallin <fname> ja <lname>-elementteihin.

<submit>-elementin submission="form1"-ominaisuus voi viitata XForms-mallin <submission>-elementtiin. submit-elementti näytetään yleensä painikkeena.

Huomaa esimerkissä oleva <label>-elementti. XFormsin käyttöä varten jokaisella syöttökontrollielementillä täytyy olla <label>-elementti.

Tarvitset konttin

XForms ei ole suunniteltu toimimaan yksinään. Eikä ole olemassa XForms-dokumenttia.

XForms on täytyy toimia toisessa XML-dokumentissa. Se voi suorittaa toiminnan XHTML 1.0:ssa, ja se toimii myös XHTML 2.0:ssa.

Nyt yhdistetään kaikki yhteen

Jos yhdistämme ne, tämä dokumentti näyttää tältä:

<xforms>
<model>
<instance>
  <person>
    <fname/>
    <lname/>
  </person>
</instance>
<submission id="form1" action="submit.asp" method="get"/>
</model>
<input ref="fname"><label>Etu nimi</label></input>
<input ref="lname"><label>Sukunimi</label></input>
<submit submission="form1"><label>Lähetä</label></submit>
</xforms>

Sivu näyttää tältä:

xforms_example

XForms-käsittelijä

Sisäänrakennettuna selaimessa XForms-käsittelijäVastuussa XForms-datan lähettämisestä kohteeseen.

Data voidaan lähettää XML:nä, esimerkiksi tällä tavalla:

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

Tai lähetä sitä tekstinä, esimerkiksi tällä tavalla:

fname=David;lname=Smith