XForms

来自站长百科
跳转至: 导航、​ 搜索

XFormsW3C组织所推荐的下一代在线Forms,它吸取了W3C标准诸如:XML Schema, XPath和基于XML的事件,XForms试图突破当前HTML forms模型的一些限制。

简介[ ]

被称为“下一代Web表单”的XForms最初起源于HTML工作组的工作。W3C组织力图将XForms制定成为HTML表单的替代标准,用于包括桌面电脑、手持设备、信息家电等领域在内的各种平台之上。传统的HTML Web表单没有将表单的设计目的和表现形式分离开来,表单设计的灵活性很低,同时客户端计算能力也无法充分利用。

Xforms特点[ ]

  • 支持手持设备、电视、桌面浏览器,以及打印机和扫描仪等   
  • 丰富的用户界面满足商务、消费和设备控制等各种应用   
  • 消除数据、逻辑和表现之间的耦合   
  • 增强的国际化功能   
  • 支持结构化表单数据   
  • 先进的表单逻辑   
  • 单页面多表单,以及单表单多页面   
  • 挂起和恢复功能的支持   
  • 和XML标签集的无缝集成

Xforms功能[ ]

XForms的最大特色是包含了客户端验证的功能,在HTML中,许多关于forms验证的功能需要写大量的JavaScript脚本,由于验证的Javascript脚本库依赖于forms中的各个元素,当它们发生变化时,不得不重新更新或维护Javascript验证脚本。XForms结合了许多关于验证方面的功能,对form验证只需要使用简单的XML标记完成,另外,XForms将数据从表现中分离,更健壮的数据类型表示,能够递交XML数据到服务端-替代我们通常使用name/value递交的做法,XForms可以在不同的设备上正常显示。 为了克服以上缺点,XForms对表单进行了抽象定义,将表单区分为数据,逻辑和表现三方面。规范中没有规定实现细节,因此XForms处理器的实现形式是多样的。既可以基于浏览器嵌入HTML页面中,利用HTML和JavaScript进行表现;也可以用Java Swing应用程序等形式表现。另外XForms还为应用提供了事件驱动模型,这使得用户可以像开发普通的GUI应用程序一样对鼠标键盘等事件进行相应的编程

Xforms表单设计[ ]

  • 使用XML表现表单. XForms 详细的定义了表单的结构和数据格式:存储在XML文档中,称为XForms实例,初始化为空,如下一个信用卡数据采集:
<credit-card>  
<type/>  
<number/>  
<expiration-month/>  
<expiration-year/>  
</credit-card>
用户填写后的结果如下:
 <credit-card>  
<type>visa</type>  
<number>1234567812345678</number>  
<expiration-month>8</expiration-month>  
<expiration-year>2008</expiration-year>  
</credit-card>

Xforms模型[ ]

XForms 模型用于描述数据。XForms 模型定义了一个 <model> 元素内部的一个数据模型:   

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

从上面的例子,您可以看到 XForms 模型使用 一个 <instance> 元素来为需要收集的数据定义 XML 模板,并使用一个 <submission> 元素来描述如何提交数据。<submission> 模型没有表达任何有关表单可见部分(用户界面)的信息。

相关词条[ ]

参考来源[ ]