XML模式:XForms和客户发票

所属分类: 网页制作 / XML/XSLT 阅读数: 471
收藏 0 赞 0 分享
XForms
XForms XML 标准用于定义表单中的不同成分(字段、单选按钮和列表等输入控件)以及希望在表单中提供的信息验证。
XForms XML 标准和 Web 开发人员熟悉的 HTML、XHTML 表单标记非常相似,并将成为 XHTML 2.0 标准的一部分。
XForms XML 基于简单的模型、视图、控制器格式。模型是表单的整体描述,包括字段、输入约束以及数据提交方式。视图定义了出现在表单中的控件、分组及其引用的模型字段。表单控件的格式和呈现由 CSS 控制。
XForms 标准通过更详细地划分表单信息扩展了传统的 HTML 表单定义。填充表单的过程中可使用动态元素(目前一般只能通过 JavaScript 或 Ajax 元素实现)。
清单 11 中可以看到一个简单的文本输入框和弹出式的选择框。
清单 11. 简单的文本输入框和弹出选择框

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms="http://www.w3.org/2002/xforms"> <head> <title>XForms Sample</title> <xforms:model> <xforms:instance> <Name xmlns=""> <FName /> <LName /> <Title /> </Name> </xforms:instance> </xforms:model> </head> <body> <xforms:select1 ref="Title"> <xforms:label>Title:</xforms:label> <xforms:item> <xforms:label>Mr</xforms:label> <xforms:value>Mr</xforms:value> </xforms:item> <xforms:item> <xforms:label>Mrs</xforms:label> <xforms:value>Mrs</xforms:value> </xforms:item> </xforms:select1> <xforms:input ref="FName"> <xforms:label>First name: </xforms:label> </xforms:input> <xforms:input ref="LName"> <xforms:label>Last name: </xforms:label> </xforms:input> <hr /> <xforms:output value="concat('Hello ',Title,' ',FName,' ',LName)"> <xforms:label>Output: </xforms:label> </xforms:output> </body> </html>

可以通过 Firefox XForms 扩展来查看该 XForms 表单。结果如图 2 所示。
图 2. 使用 Firefox XForms 扩展查看 XForms 表单
使用 Firefox XForms 扩展查看 XForms 表单 客户发票
很多商业活动中的一个老问题是从纸质的客户发票系统迁移到计算机处理。创建发票结构需要认真考虑各种不同的类型和重复元素。
过去,发票这类商业信息的交换必须建立非常庞大的结构和定义,国际发票信息交换标准包括数百个字段。如果没有交换数据的有效方法,共享发票、订单和其他数据会非常困难。
由于没有统一的标准,很多组织开发出了核心发票标准的各种版本。其中,OASIS 组开发的标准可能是最知名的,也是大量公司和组织认可的一种。
这种结构是 OASIS 开发的更庞大的框架 Universal Business Logic(UBL)的一部分,包括多种模式和工作流,从订单、打印发票到支付。这个系统非常复杂,不可能在本文中讨论,不过如果需要一种灵活、互操作的系统,UBL 是不错的起点。
更多精彩内容其他人还在看

在XML模式中扩展枚举列表

在列表中添加新值是一种常见而且必要的需求。模式设计者通常希望在系统架构中构建一种添加附加值的方法,并且该附加值在设计阶段是未知的。模式设计者如何创建一个可扩展、易于实现的枚举值列表?本文将介绍几种实现这一目标的方法。 模式设计者和实现人员需要一种扩
收藏 0 赞 0 分享

XML入门教程:XML名称空间-XML/XSLT

XML名称空间表示XML名称的使用范围,因为XML可自定义元素标签,所以有不同XML应用间XML名称重名的机会是很大的。如果没有一种方法来区分不应用的名称,就会造成混乱。XML名称空间就是为了解决这个问题而设计的。通过XML名称空间,我们可以区分
收藏 0 赞 0 分享

XML入门教程:属性声明-XML/XSLT

一个有效的XML文档,必须对元素的属性进行声明。使用ATTLIST声明来完成,一个ATTLIST可以为一个元素类型声明多个属性。 一个有效的XML文档,必须对元素的属性进行声明。使用ATTLIST声明来完成,一个ATTLIST可以为一个元素类型
收藏 0 赞 0 分享

XML入门教程:实体-XML/XSLT

由于数据不是XML格式,所以使用NDATA声明指定数据类型。avi是在NOTATION中定义的MIME媒体类型。在XML中嵌入未析实体很复杂且不规范,尽量不要使用。 实体 用ENTITY声明定义实体。如:
收藏 0 赞 0 分享

XML入门教程:元素声明-XML/XSLT

有效文档中使用的每个元素都必须在文档的DTD中用元素声明进行声明。element_name可是任何合法的XML名称,content_model(内容模型)指定元素可以或必须包含的子元素以及子元素的顺序。下面具体介绍内容模型的内容。 上节文档类型
收藏 0 赞 0 分享

XML入门教程:文档类型声明-XML/XSLT

要使用DTD进行有效性检验,就要使用文档类型定义声明指定DTD。文档类型声明位于XML声明之后,根元素之前。如果dtd文档位于本机,可用路径名直接指出dtd文档的位置。 由于XML可自定义标签,所以每个人定义的标签集都会不同,如
收藏 0 赞 0 分享

XML入门教程:XML语法-XML/XSLT

接着在浏览器中打开index.xml文档,则可显示“Hello World”。上面两个文档都是合法的XML文件,具体的语法规则下面会详细介绍,上例可先给大家一个感性的认识。合法的XML文档可有种意思,一个是良构文档(well-format),即符合XML规则书写的文档
收藏 0 赞 0 分享

xml入门教程:XML是什么-XML/XSLT

XML(eXtensible Markup Language,可扩展标记语言)是SGML的一个子集,但比SGML简单,用以创建可相互转换的结构化文本文档和数据文档。下面说明一下与XML相关的一些概念。 XML(eXtensible Markup L
收藏 0 赞 0 分享

WAP教程(11):WAP论坛和开放移动联盟与论坛-XML/XSLT

WAP 论坛,WAP开放移动联盟,WAP论坛. WAP 论坛 (WAP Forum) 无线应用协议 (WAP) 论坛为数字移动电话和其他无线终端开发了事实上的全球标准。 WAP 论坛发布了开放的全球无线协议规范,此规范基于已有的因特网标准
收藏 0 赞 0 分享

WAP教程(10):WML参考手册、WML实例和WML DTD-XML/XSLT

WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 WAP 协议用于在无线客户端(比如移动电话)上展示因特网内容。 Deck / Card 元素
收藏 0 赞 0 分享
查看更多