cheap nfl jerseys china cheap nfl jerseys free shipping wholesale nfl jerseys china wholesale jerseys from china cheap nfl jerseys free shipping cheap nfl jerseys for sale cheap jerseys free shipping wholesale nfl jerseys from china cheap nfl jerseys sale cheap nike nfl jerseys china wholesale jerseys free shipping cheap nfl jerseys wholesale wholesale nfl jerseys online cheap nfl jerseys wholesale china jerseys wholesale cheap coach handbags outlet authentic designer handbags cheap coach handbags outlet cheap coach purses outlet discount coach bags coach bags sale coach purse outlet cheap real coach purses coach handbags sale online coach purse outlet michael kors outlet online store cheap michael kors bags cheap michael kors purse michael kors factory outlet online cheap michael kors handbags cheap michael kors purses michael kors bags outlet online cheap michael kors purse michael kors handbags discount
XML
XML
eXtensible Markup Language
eXtensible Markup Language
sistema per lo scambio di dati tra sistemi informativi

XForms

la nuova generazione delle form, più standard e flessibile, con XML,
separano i dati dalla presentazione e possono eseguire calcoli e validazioni.
Sono raccomandazioni W3C e saranno lo standard in XHTML 2.0

I dati in ingresso sono descritti in due parti: modello e interfaccia.

modello

descrive i dati con XML

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

Dopo la raccolta dei dati, il documento sarà così:

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

oppure così:

fname=John;lname=Smith

user interface

visualizza e raccoglie i dati:

<input ref="fname"><label>First Name</label></input>
<input ref="lname"><label>Last Name</label></input>
<submit submission="form1"><label>Submit</label></submit>

insieme

i blocchi precedeti (modello e user interface) vanno messi insieme sequenzialmente e incapsulati:

<xforms>
...
</xforms>

i controlli

<input ref="name/fname"><label>First Name</label></input>
<secret ref="name/password"><label>Password:</label></secret>
<textarea ref="message"><label>Message</label></textarea>
<submit submission="form1"><label>Submit</label></submit>
<trigger ref="calculate"><label>Calculate!</label></trigger>

First Name: <output ref="name/fname" />

<upload bind="name"> <label>File to upload:</label> <filename bind="file"/> <mediatype bind="media"/> </upload>

select

<select1 ref="status"> 
  <label>Status:</label> 
  <item><label>Male</label><value>M</value></item> 
  <item><label>Female</label><value>F</value></item> 
</select1> 

<select ref="languages">
  <label>Languages:</label>
  <item><label>English</label><value>E</value></item>
  <item><label>French</label><value>F</value></item>
  <item><label>Spanish</label><value>S</value></item>
</select>

<range ref="length" start="0" end="100" step="5">
  <label>Length: </label>
</range>

data types di XML Schema

<shtml xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

nuovi data types

<xf:instance>
<person xmlns="">
  <fname xsi:type="xsd:string"/>
  <lname xsi:type="xsd:string"/>
  <born xsi:type="xsd:date>"/>
  <size xsi:type="xsd:integer"/>
</person>
</xf:instance>

<xf:bind nodeset="/person/size" type="xsd:integer"/>

proprietà

calculate, constrains, p3ptype, readonly, relevant. required, type

<bind nodeset="person/lname" required="true()"/>

azioni

message, DomFocusing, ephemeral, setvalue

<message level="ephemeral" event="DOMFocusIn">
Input Your First Name
</message>

<setvalue value="50" event="xforms-ready"/>

funzioni

il tutorial W3Schools
il reference W3Schools