理解XForm——学习IBM DW的资料 (3)
2004-09-15 13:42
447 查看
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元素的其它属性
数据验证一般包括三种类型:
完整性(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:该属性设置任意的约束。比如,开发人员可以限制某个节点比另一个小。
maxOccurs和
minOccurs:这两个属性确定表单中可以出现多少个项。
p3ptype:该属性把一个节点绑定到用户私有工作文件中的信息。
相关文章推荐
- 理解XForm——学习IBM DW的资料
- 理解XForm——学习IBM DW的资料 (4)
- 计算机专业的学习资料与个人对本专业的理解
- angularjs速成学习个人理解_8form中的下拉框
- IBM 关于 Java 深入学习的技术资料
- java中servlet过滤器Filter学习(看网上资料 算是自己copy理解一遍吧)
- 深度学习资料整理(深度神经网络理解)
- 如何在IBM相关网站寻找学习资料
- IBM学习资料
- 很多学习资料的IBM网
- IBM网站的Python学习资料
- 学习技巧-如何在IBM官网寻找学习资料
- IBM HMC 学习资料!
- Sql Server DWBI的几个学习资料
- okhttp post 上传文件以及Multipart/form-data 的学习理解
- IBMjava学习资料
- DW学习笔记:form表单的创建
- 学习资料标记
- 【Java】SingleTalkClient代码理解与学习笔记
- 【深度学习】dropout浅层理解与实现