XML模式:XForms和客戶發(fā)票
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-17 20:15:39 作者:佚名
我要評(píng)論

XForms
XForms XML 標(biāo)準(zhǔn)用于定義表單中的不同成分(字段、單選按鈕和列表等輸入控件)以及希望在表單中提供的信息驗(yàn)證。
XForms XML 標(biāo)準(zhǔn)和 Web 開發(fā)人員熟悉的 HTML、XHTML 表單標(biāo)記非常相似,并將成為 XHTML 2.0 標(biāo)準(zhǔn)的一部分。
XForms XML 基于簡(jiǎn)單的模型、視圖
XForms
XForms XML 標(biāo)準(zhǔn)用于定義表單中的不同成分(字段、單選按鈕和列表等輸入控件)以及希望在表單中提供的信息驗(yàn)證。
XForms XML 標(biāo)準(zhǔn)和 Web 開發(fā)人員熟悉的 HTML、XHTML 表單標(biāo)記非常相似,并將成為 XHTML 2.0 標(biāo)準(zhǔn)的一部分。
XForms XML 基于簡(jiǎn)單的模型、視圖、控制器格式。模型是表單的整體描述,包括字段、輸入約束以及數(shù)據(jù)提交方式。視圖定義了出現(xiàn)在表單中的控件、分組及其引用的模型字段。表單控件的格式和呈現(xiàn)由 CSS 控制。
XForms 標(biāo)準(zhǔn)通過更詳細(xì)地劃分表單信息擴(kuò)展了傳統(tǒng)的 HTML 表單定義。填充表單的過程中可使用動(dòng)態(tài)元素(目前一般只能通過 JavaScript 或 Ajax 元素實(shí)現(xiàn))。
清單 11 中可以看到一個(gè)簡(jiǎn)單的文本輸入框和彈出式的選擇框。
清單 11. 簡(jiǎn)單的文本輸入框和彈出選擇框
<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 擴(kuò)展來查看該 XForms 表單。結(jié)果如圖 2 所示。
圖 2. 使用 Firefox XForms 擴(kuò)展查看 XForms 表單
客戶發(fā)票
很多商業(yè)活動(dòng)中的一個(gè)老問題是從紙質(zhì)的客戶發(fā)票系統(tǒng)遷移到計(jì)算機(jī)處理。創(chuàng)建發(fā)票結(jié)構(gòu)需要認(rèn)真考慮各種不同的類型和重復(fù)元素。
過去,發(fā)票這類商業(yè)信息的交換必須建立非常龐大的結(jié)構(gòu)和定義,國(guó)際發(fā)票信息交換標(biāo)準(zhǔn)包括數(shù)百個(gè)字段。如果沒有交換數(shù)據(jù)的有效方法,共享發(fā)票、訂單和其他數(shù)據(jù)會(huì)非常困難。
由于沒有統(tǒng)一的標(biāo)準(zhǔn),很多組織開發(fā)出了核心發(fā)票標(biāo)準(zhǔn)的各種版本。其中,OASIS 組開發(fā)的標(biāo)準(zhǔn)可能是最知名的,也是大量公司和組織認(rèn)可的一種。
這種結(jié)構(gòu)是 OASIS 開發(fā)的更龐大的框架 Universal Business Logic(UBL)的一部分,包括多種模式和工作流,從訂單、打印發(fā)票到支付。這個(gè)系統(tǒng)非常復(fù)雜,不可能在本文中討論,不過如果需要一種靈活、互操作的系統(tǒng),UBL 是不錯(cuò)的起點(diǎn)。
XForms XML 標(biāo)準(zhǔn)用于定義表單中的不同成分(字段、單選按鈕和列表等輸入控件)以及希望在表單中提供的信息驗(yàn)證。
XForms XML 標(biāo)準(zhǔn)和 Web 開發(fā)人員熟悉的 HTML、XHTML 表單標(biāo)記非常相似,并將成為 XHTML 2.0 標(biāo)準(zhǔn)的一部分。
XForms XML 基于簡(jiǎn)單的模型、視圖、控制器格式。模型是表單的整體描述,包括字段、輸入約束以及數(shù)據(jù)提交方式。視圖定義了出現(xiàn)在表單中的控件、分組及其引用的模型字段。表單控件的格式和呈現(xiàn)由 CSS 控制。
XForms 標(biāo)準(zhǔn)通過更詳細(xì)地劃分表單信息擴(kuò)展了傳統(tǒng)的 HTML 表單定義。填充表單的過程中可使用動(dòng)態(tài)元素(目前一般只能通過 JavaScript 或 Ajax 元素實(shí)現(xiàn))。
清單 11 中可以看到一個(gè)簡(jiǎn)單的文本輸入框和彈出式的選擇框。
清單 11. 簡(jiǎn)單的文本輸入框和彈出選擇框
<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 擴(kuò)展來查看該 XForms 表單。結(jié)果如圖 2 所示。
圖 2. 使用 Firefox XForms 擴(kuò)展查看 XForms 表單

很多商業(yè)活動(dòng)中的一個(gè)老問題是從紙質(zhì)的客戶發(fā)票系統(tǒng)遷移到計(jì)算機(jī)處理。創(chuàng)建發(fā)票結(jié)構(gòu)需要認(rèn)真考慮各種不同的類型和重復(fù)元素。
過去,發(fā)票這類商業(yè)信息的交換必須建立非常龐大的結(jié)構(gòu)和定義,國(guó)際發(fā)票信息交換標(biāo)準(zhǔn)包括數(shù)百個(gè)字段。如果沒有交換數(shù)據(jù)的有效方法,共享發(fā)票、訂單和其他數(shù)據(jù)會(huì)非常困難。
由于沒有統(tǒng)一的標(biāo)準(zhǔn),很多組織開發(fā)出了核心發(fā)票標(biāo)準(zhǔn)的各種版本。其中,OASIS 組開發(fā)的標(biāo)準(zhǔn)可能是最知名的,也是大量公司和組織認(rèn)可的一種。
這種結(jié)構(gòu)是 OASIS 開發(fā)的更龐大的框架 Universal Business Logic(UBL)的一部分,包括多種模式和工作流,從訂單、打印發(fā)票到支付。這個(gè)系統(tǒng)非常復(fù)雜,不可能在本文中討論,不過如果需要一種靈活、互操作的系統(tǒng),UBL 是不錯(cuò)的起點(diǎn)。
相關(guān)文章
MIME類型中application/xml與text/xml的區(qū)別介紹
這篇文章介紹了MIME類型中application/xml與text/xml的區(qū)別,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-12-28- XML中擁有Schema特性,能夠比DTD更加強(qiáng)大地引入元素結(jié)構(gòu),下面我們就來詳解XML中的模式Schema的概念及作用和用法,需要的朋友可以參考下2021-11-30
- 這篇文章主要介紹了XML基本概念入門學(xué)習(xí)指南,包括其與HTML的關(guān)系以及元素和特殊標(biāo)簽等,需要的朋友可以參考下2016-06-24
- XML標(biāo)簽的自定義功能非常強(qiáng)大,比如本文將要講解的DTD(Document Type Definition)就帶給人們一種面向?qū)ο蟀愕母杏X,well,下面就來看一下XML中的DTD文件類型定義完全解析2016-06-24
- 這篇文章主要介紹了XML文件的閱讀與編輯,最常用的工具當(dāng)然還是瀏覽器中的控制臺(tái)與源代碼查看,需要的朋友可以參考下2016-02-16
- 這篇文章主要介紹了XML的命名空間,包括命名空間的聲明等XML入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2016-02-16
解析XML中的樹形結(jié)構(gòu)與DOM文檔對(duì)象模型
這篇文章主要介紹了XML中的樹形結(jié)構(gòu)與DOM文檔對(duì)象模型,文中舉了JavaScript解析DOM對(duì)象的例子,需要的朋友可以參考下2016-02-15- 這篇文章主要介紹了詳解XML編程中的模式定義XSD,講解了如何在XML文檔中聲明模式及定義類型等內(nèi)容,需要的朋友可以參考下2016-02-15
- 這篇文章主要介紹了XML中的DTD文檔類型定義,是XML入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2016-02-15
- 這篇文章主要介紹了XML代碼編寫的編碼與驗(yàn)證問題,與HTML類似,XML文件的編碼也能在序言部分被指定,需要的朋友可以參考下2016-02-15