理解XForm——学习IBM DW的资料 (3)

原创 2004年09月15日 13:42:00

1、XForm灵活的客户端数据校验功能

数据验证一般包括三种类型:

  • 完整性(Completeness):用户必须填充所有要求的字段。有时候,某个字段是否必须填充依赖于另一个字段的值。比如,只有当用户使用信用卡支付时才需要信用卡号。
  • 数据类型(Data types): 数字必须是数字、日期必须是日期,依次类推。
  • 合理性(Appropriateness):电话号码应该只包含数字,或者还可以包含与区号有关的短线和括号。邮政编码必须有 5 个数字组成,还可以带有短线和“加四”号码。

XForm提供Model中数据节点的类型绑定机制,如:

<xforms:model id=“payinfo“>

<xforms:submission action="http://www.example.com/orderform.php"
               method="post"/>
         <xforms:instance xmlns="">
            <paymentinfo>
                <method></method>
                <cardtype></cardtype>
                <cardnumber></cardnumber>
                <expdate></expdate>
            </paymentinfo>
         </xforms:instance>

<xforms:bind ref="paymentinfo" type="ccnumber"/>  
    <xsd:schema> 
             <xsd:simpleType name="ccnumber">  
                   <xsd:restriction base="xsd:string">   
      <xsd:pattern value="/d{14,18}"/>
                   </xsd:restriction>  
             </xsd:simpleType>  
      </xsd:schema>  

</xforms:model>

2、强制输入

...
         </xsd:schema>
         <xforms:bind ref="paymentinfo/cardnumber"
                           required="true()" 
                           type="ccnumber"/>
      </xforms:model>
...

3、带条件的强制输入

如只有当用户选择信用卡支付时才要求输入信用卡号:

...
          </xsd:schema>
          <xforms:bind ref="paymentinfo/cardnumber"
                       relevant="paymentinfo/method = 'cc'"  
                       required="true()"
                       type="ccnumber"/>
      
      </xforms:model>

4、只读字段

如“单价”字段不允许修改

...
            </order>
         </xforms:instance>
         <xforms:bind ref="order/soaps/item/unitprice"
                 readonly="true()"/> 

      </xforms:model>
...

5、计算字段

如“总价”=数量 *  单价:
...
            </order>
         </xforms:instance>
         <xforms:bind ref="order/soaps/item/unitprice" readOnly="true()"/>
         <xforms:bind ref="order/soaps/item/totalprice"  
               calculate="../qty * ../unitprice"/>
      </xforms:model>
...

6、bind元素的其它属性

  • constraint:该属性设置任意的约束。比如,开发人员可以限制某个节点比另一个小。
  • maxOccursminOccurs:这两个属性确定表单中可以出现多少个项。
  • p3ptype:该属性把一个节点绑定到用户私有工作文件中的信息。

【机器学习基础】理解为什么机器可以学习3——VC理论

上一小节中,“理解为什么机器可以学习——Hoeffding不等式”中,我们介绍了有限假设空间中的概率边界。在这篇文章中,我们将推广至无限假设空间中,进而引入VC理论。...
  • JasonDing1354
  • JasonDing1354
  • 2014年12月11日 20:23
  • 2693

IBM dW NoSQL数据建模

关系数据库已经统治数据存储30 多年了,但是无模式(或NoSQL)数据库的逐渐流行表明变化正在发生。尽管 RDBMS 为在传统的客户端服务器架构中存储数据提供了一个坚实的基础,但它不能轻松地(或便宜地...
  • qq_16490557
  • qq_16490557
  • 2014年07月01日 09:11
  • 208

Dreamweaver学习心得(2)

这周还是在继续制作予果的网页,所用工具为Dreamweaver,本人纯0基础入门,接下来将这一周的一些心得分享给大家。 打开DW之后新建HTML文件,接着需要建立站点,即是将网站与电脑中的一...
  • youkooo
  • youkooo
  • 2015年10月23日 13:51
  • 1030

python核心编程第3版第2章 网络编程【读书笔记】

客户端/服务器架构服务器是一系列硬件或软件,为一个或多个客户端(服务的用户)提供所需的“服务”。它存在的唯一目的就是等待客户端的请求,并响应它们(提供服务),然后等待更多请求。 客户端因特定的请求而...
  • hehe_win
  • hehe_win
  • 2017年01月20日 17:05
  • 226

Java 学习资料整理

Java 学习资料整理 Java 精品学习视频教程下载汇总 Java视频教程 孙鑫Java无难事 (全12CD) Java视频教程 即学即会java 上海交大 Java初级编程...
  • u013700340
  • u013700340
  • 2014年05月26日 00:02
  • 4142

ucos学习资料、论坛等

论坛: http://bbs.elecfans.com/forum.php?mod=forumdisplay&fid=301&typeid=505 教程推荐: 第一步.《嵌入式实时操...
  • bytxl
  • bytxl
  • 2015年12月12日 10:37
  • 1025

MyBatis概述及学习资料整理

MyBatis这个名字真的是如雷贯耳,但一直没仔细研究过,最近闲来无事,收集了些资料并写了些Demo,算是有了个初步的认识。必须得说MyBatis的相关资料确实不算多,收集的过程也花了我不少的时间,还...
  • qiubabin
  • qiubabin
  • 2015年11月30日 15:59
  • 871

超全的学习资料——Oracle 从入门到精通

Oracle 从入门到精通 目录 一、SQL...........................................................................
  • Li_soso
  • Li_soso
  • 2013年01月29日 10:20
  • 937

100本c c++ vc学习资料

100本c c++ vc学习资料    软件:  http://www.icodeguru.com/fav/soft.htm    教程:  C函数实例参考手册  http://www....
  • C_singleboy
  • C_singleboy
  • 2014年12月11日 16:24
  • 551

QT开发学习资料(2)

博主QQ:1356438802 《Qt 实战一二三》 http://blog.csdn.net/liang19890820/article/details/50277095 这个系列文章,主...
  • luoyouren
  • luoyouren
  • 2016年09月08日 17:15
  • 1274
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:理解XForm——学习IBM DW的资料 (3)
举报原因:
原因补充:

(最多只允许输入30个字)