亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

利用表單類(lèi)型生成表單的方法和裝置的制作方法

文檔序號(hào):6551577閱讀:182來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):利用表單類(lèi)型生成表單的方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及表單的生成。更為具體的是,本發(fā)明涉及生成和更新表單用戶(hù)界面(UI)的方法和裝置。
背景技術(shù)
在典型的商業(yè)軟件產(chǎn)品和應(yīng)用程序中,如企業(yè)資源計(jì)劃(ERP)產(chǎn)品,使用了大量的表單或表單用戶(hù)界面。表單是一個(gè)用于查看和/或輸入數(shù)據(jù)的窗口、對(duì)話框、頁(yè)面或另一UI單元。結(jié)合商業(yè)軟件應(yīng)用程序使用的表單數(shù)量超過(guò)數(shù)千并非是不常見(jiàn)的。開(kāi)發(fā)大量的表單通常對(duì)于軟件開(kāi)發(fā)者而言是一個(gè)勞動(dòng)密集型的任務(wù)。
通常,在生成某些商業(yè)或其它類(lèi)型軟件應(yīng)用程序所需的大量表單時(shí),軟件開(kāi)發(fā)者必須分別并略為獨(dú)立地創(chuàng)建每一個(gè)表單。為了實(shí)現(xiàn)表單之間某種程度的獨(dú)立性,開(kāi)發(fā)者必須經(jīng)常遵守指示表單的總體布局的某些類(lèi)型的標(biāo)準(zhǔn)。這些表單的標(biāo)準(zhǔn)被實(shí)現(xiàn)為“最佳實(shí)施”或優(yōu)選實(shí)現(xiàn)。盡管軟件開(kāi)發(fā)人員能夠依賴(lài)于確定一個(gè)特定表單的外觀應(yīng)該如何的指導(dǎo)的最佳實(shí)施,然而即使有最佳實(shí)施,開(kāi)發(fā)者在很大程度上仍彼此獨(dú)立地面對(duì)創(chuàng)建多個(gè)不同表單中的每一個(gè)的勞動(dòng)密集型任務(wù)。
軟件開(kāi)發(fā)者和消費(fèi)者或用戶(hù)都面臨的另一個(gè)困難涉及在需要時(shí)更新表單的勞動(dòng)密集型任務(wù)。通常,若表單基于特定的商業(yè)模型,則對(duì)商業(yè)模型的改變需要開(kāi)發(fā)者單獨(dú)改變關(guān)聯(lián)于商業(yè)模型的表單。此外,若大量的表單與同一商業(yè)模型相對(duì)應(yīng),則對(duì)該商業(yè)模型的改變需要每一個(gè)對(duì)應(yīng)的表單也被更新。同樣地,在大量表單的布局或內(nèi)容需要改變的任何時(shí)刻,大量表單的每一個(gè)都被獨(dú)立地修訂。因此,這些困難使創(chuàng)建大量表單對(duì)軟件開(kāi)發(fā)者而言成為了勞動(dòng)密集型任務(wù),且同樣地使軟件應(yīng)用程序的消費(fèi)者或用戶(hù)自己很難對(duì)商業(yè)模型及其表單進(jìn)行改變。
本發(fā)明提供了對(duì)一個(gè)或多個(gè)上述問(wèn)題的解決方案,和/或提供了優(yōu)于現(xiàn)有技術(shù)的其它優(yōu)越性。

發(fā)明內(nèi)容
提供了生成表示數(shù)據(jù)模型或問(wèn)題域模型的模型驅(qū)動(dòng)表單用戶(hù)界面的方法、計(jì)算機(jī)可讀介質(zhì)和系統(tǒng)。利用該方法,為生成表示諸如商業(yè)模型等數(shù)據(jù)模型的表單用戶(hù)界面,作出選擇以識(shí)別多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)將用于生成表示數(shù)據(jù)模型的表單用戶(hù)界面。隨后,在運(yùn)行時(shí)利用該數(shù)據(jù)模型和所選的邏輯表單類(lèi)型生成邏輯表單。隨后在運(yùn)行時(shí)也利用生成的邏輯表單再現(xiàn)表單用戶(hù)界面,以使在運(yùn)行時(shí)對(duì)數(shù)據(jù)模型起作用。
在某些實(shí)施例中,選擇多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)用于生成表單用戶(hù)界面還包括選擇多個(gè)不同邏輯表單類(lèi)型模型中的哪一個(gè)用于生成用戶(hù)界面。隨后,在運(yùn)行時(shí)生成邏輯表單包括在運(yùn)行時(shí)利用所選邏輯表單類(lèi)型和來(lái)自該數(shù)據(jù)模型的元數(shù)據(jù)兩者生成邏輯表單。
在某些實(shí)施例中,多個(gè)不同邏輯表單類(lèi)型中的每一個(gè)都具有一個(gè)定義了要包含在生成的邏輯表單中的數(shù)據(jù)模型數(shù)據(jù)的關(guān)聯(lián)方案。不同邏輯表單類(lèi)型的方案表示從多個(gè)表單中捕捉的模式。在這些實(shí)施例中,在運(yùn)行時(shí)生成邏輯表單還包括利用關(guān)聯(lián)方案生成邏輯表單。
通過(guò)閱讀以下詳細(xì)描述并觀察相關(guān)附圖,可以清楚特征化本發(fā)明的實(shí)施例的其它特征和益處。


圖1是能在其中使用本發(fā)明的示例性環(huán)境的框圖。
圖2是可在其中實(shí)現(xiàn)本發(fā)明的通用移動(dòng)計(jì)算環(huán)境的框圖。
圖3是使用本發(fā)明的表單類(lèi)型以生成邏輯表單和物理表單的示意圖。
圖4是圖3中所示的表單類(lèi)型的使用的示意圖,其還進(jìn)一步示出了表單類(lèi)型與邏輯表單和物理表單的生成之間的關(guān)系。
圖5是示出根據(jù)本發(fā)明的實(shí)施例利用表單類(lèi)型生成表單的方法的流程圖。
圖6是示出圖5中所示的方法的一個(gè)更具體實(shí)施例的流程圖。
圖7是示出圖5中所示的方法的一個(gè)更具體實(shí)施例的流程圖。
圖8是根據(jù)本發(fā)明的實(shí)施例利用表單類(lèi)型生成表單的系統(tǒng)或裝置。
具體實(shí)施例方式
圖1示出了能在其上實(shí)現(xiàn)本發(fā)明的合適的計(jì)算系統(tǒng)環(huán)境100的示例。計(jì)算系統(tǒng)環(huán)境100僅是適合的計(jì)算環(huán)境中的一個(gè)示例,且并非意圖對(duì)本發(fā)明的使用范圍或功能提出任何限制。不應(yīng)認(rèn)為計(jì)算環(huán)境100對(duì)在示例性操作環(huán)境100中所示的組件中的任何一個(gè)或其組合具有任何依賴(lài)性或要求。
本發(fā)明可以用眾多其它通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置來(lái)運(yùn)作。適合本發(fā)明使用的眾所周知的計(jì)算系統(tǒng)、環(huán)境、和/或配置的示例包括,但不限于,個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手提式或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)者電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括上述系統(tǒng)或設(shè)備的任一個(gè)的分布式計(jì)算環(huán)境等。
本發(fā)明可在諸如由計(jì)算機(jī)執(zhí)行的程序模塊等計(jì)算機(jī)可執(zhí)行指令的通用上下文中描述。通常,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類(lèi)型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。本發(fā)明也可在由通過(guò)通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)的分布式計(jì)算環(huán)境中實(shí)現(xiàn)。在分布式計(jì)算環(huán)境中,程序模塊可位于本地和遠(yuǎn)程計(jì)算機(jī)的存儲(chǔ)介質(zhì)中,包括存儲(chǔ)器存儲(chǔ)設(shè)備。
參照?qǐng)D1,用于實(shí)現(xiàn)本發(fā)明的示例性系統(tǒng)包括計(jì)算機(jī)110形式的通用計(jì)算設(shè)備。計(jì)算機(jī)110的組件可包括,但不限于,處理器120、系統(tǒng)存儲(chǔ)器130、以及將包括系統(tǒng)存儲(chǔ)器的各種系統(tǒng)組件耦合至處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是若干總線結(jié)構(gòu)類(lèi)型中的任一種,包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、和利用多種總線體系結(jié)構(gòu)的局部總線。作為示例,而非限制,此類(lèi)體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、增強(qiáng)型ISA(EISA)總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)本地總線、以及也被稱(chēng)為Mezzanine總線的外圍部件互連(PCI)總線。
計(jì)算機(jī)110通常包括各種計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可讀介質(zhì)可以是能被計(jì)算機(jī)110訪問(wèn)的任何可用介質(zhì),且包括易失性和非易失性,可移動(dòng)和不可移動(dòng)介質(zhì)。舉例來(lái)說(shuō),而非限制,計(jì)算機(jī)可讀介質(zhì)可包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括以任何方法或技術(shù)實(shí)現(xiàn)的用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的易失性和非易失性,可移動(dòng)和不可移動(dòng)介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(pán)(DVD)或其它光學(xué)存儲(chǔ)器、磁帶盒、磁帶、磁盤(pán)存儲(chǔ)器或其它磁存儲(chǔ)設(shè)備、或任何其它可用于存儲(chǔ)所需信息并能由計(jì)算機(jī)110訪問(wèn)的介質(zhì)。通信介質(zhì)通常在諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號(hào)中包含計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或的其它數(shù)據(jù),且包含任何信息傳遞介質(zhì)。術(shù)語(yǔ)“已調(diào)制數(shù)據(jù)信號(hào)”的意思是有一個(gè)或多個(gè)特征是以在信號(hào)中編碼的方式設(shè)置或改變的信號(hào)。舉例來(lái)說(shuō),而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線路連接等有線介質(zhì),以及諸如聲學(xué)、RF、紅外和其它無(wú)線介質(zhì)等無(wú)線介質(zhì)。任何上述的組合也應(yīng)包含在計(jì)算機(jī)可讀介質(zhì)的范圍之內(nèi)。
系統(tǒng)存儲(chǔ)器130包括易失和/或非易失存儲(chǔ)器形式的計(jì)算機(jī)存儲(chǔ)介質(zhì),如只讀存儲(chǔ)器(ROM)131和隨機(jī)存取存儲(chǔ)器(RAM)132?;据斎?輸出系統(tǒng)133(BIOS),包含有助于如在啟動(dòng)期間在計(jì)算機(jī)110內(nèi)部的元件之間傳輸信息的基本例程,通常被存儲(chǔ)在ROM 131中。RAM 132通常包括可由處理單元120立即訪問(wèn)和/或當(dāng)前由其進(jìn)行操作的數(shù)據(jù)和/或程序模塊。作為示例而非限制,圖1示出了操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136、以及程序數(shù)據(jù)137。特定應(yīng)用程序組被稱(chēng)為商業(yè)應(yīng)用程序。它們針對(duì)公司的管理,包括但不限于,處理總帳、產(chǎn)品清單、薪水、顧客、銷(xiāo)售、采購(gòu)、財(cái)務(wù)報(bào)表以及其它商業(yè)相關(guān)數(shù)據(jù)。
計(jì)算機(jī)110還可包含其它可移動(dòng)/不可移動(dòng)、易失/非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)。僅作為示例,圖1舉例說(shuō)明了從不可移動(dòng),非易失磁性介質(zhì)中讀取或向其中寫(xiě)入的硬盤(pán)驅(qū)動(dòng)器141、從可移動(dòng),非易失磁盤(pán)152中讀取或向其中寫(xiě)入的磁盤(pán)驅(qū)動(dòng)器151、以及從諸如CD-ROM或其它光學(xué)介質(zhì)的可移動(dòng),非易失光盤(pán)156中讀取或向其中寫(xiě)入的光盤(pán)驅(qū)動(dòng)器155。其它可在示例操作環(huán)境中使用的可移動(dòng)/不可移動(dòng)、易失/非易失計(jì)算機(jī)存儲(chǔ)介質(zhì)包括,但不限于,盒式磁帶、閃存卡、數(shù)字多功能盤(pán)、數(shù)字視頻磁帶、固態(tài)RAM、固態(tài)ROM等等。硬盤(pán)驅(qū)動(dòng)器141通常通過(guò)諸如接口140等不可移動(dòng)存儲(chǔ)器接口連接到系統(tǒng)總線121,而磁盤(pán)驅(qū)動(dòng)器151通過(guò)諸如接口150等可移動(dòng)存儲(chǔ)器接口連接到系統(tǒng)總線121。
以上在圖1中討論并闡明的驅(qū)動(dòng)器及其相關(guān)的計(jì)算機(jī)存儲(chǔ)介質(zhì)為計(jì)算機(jī)110提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲(chǔ)。例如,硬盤(pán)驅(qū)動(dòng)器141被示出為存儲(chǔ)操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意,這些組件既可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137相同,也可以與其不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147在此被指定了不同的標(biāo)號(hào)以說(shuō)明至少它們是不同的副本。
用戶(hù)可以通過(guò)輸入設(shè)備,如鍵盤(pán)162、麥克風(fēng)163、和諸如鼠標(biāo)、跟蹤球或觸摸板等定位設(shè)備161向計(jì)算機(jī)110輸入命令和信息。其它輸入設(shè)備(未示出)可包括操縱桿、游戲墊、圓盤(pán)式衛(wèi)星電視天線、掃描儀等等。這些和其它輸入設(shè)備通常通過(guò)耦合至系統(tǒng)總線的用戶(hù)界面160連接至處理單元120,但是也可以通過(guò)其它接口和總線結(jié)構(gòu)連接,如并行端口、游戲端口或通用串行總線(USB)。輸入設(shè)備用于創(chuàng)建、修改和刪除數(shù)據(jù)。輸入設(shè)備也可以用于控制(啟動(dòng)和停止)應(yīng)用程序和其中的特定功能。這些功能包括打開(kāi)(顯示)表單以及關(guān)閉表單。監(jiān)視器191或其它類(lèi)型的顯示設(shè)備也通過(guò)接口,如視頻接口190連接至總線121。除了監(jiān)視器之外,計(jì)算機(jī)可以包括其它外圍輸出設(shè)備,如揚(yáng)聲器192和打印機(jī)196,它們可通過(guò)外圍輸出接口195連接。監(jiān)視器或其它顯示設(shè)備用于顯示(再現(xiàn))表單。
計(jì)算機(jī)110可在使用到諸如遠(yuǎn)程計(jì)算機(jī)180等一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)的邏輯連接的網(wǎng)絡(luò)化環(huán)境中運(yùn)行。遠(yuǎn)程計(jì)算機(jī)180可以是個(gè)人計(jì)算機(jī)、手提式設(shè)備、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對(duì)等設(shè)備或其它公共網(wǎng)絡(luò)節(jié)點(diǎn),并通常包括與計(jì)算機(jī)110相關(guān)的許多或所有上述元件。圖1中敘述的邏輯連接包括局域網(wǎng)(LAN)171以及廣域網(wǎng)(WAN)173,但是也可包括其它網(wǎng)絡(luò)。此類(lèi)網(wǎng)絡(luò)環(huán)境常見(jiàn)于辦公室、企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)。
當(dāng)用于LAN網(wǎng)絡(luò)環(huán)境時(shí),計(jì)算機(jī)110通過(guò)網(wǎng)絡(luò)接口和適配器170連接到LAN171。當(dāng)用于WAN網(wǎng)絡(luò)環(huán)境時(shí),計(jì)算機(jī)110通常包括調(diào)制解調(diào)器172和其它裝置,用于通過(guò)諸如因特網(wǎng)等WAN 173建立通信。調(diào)制解調(diào)器172可以是內(nèi)置的或外置的,可通過(guò)用戶(hù)輸入接口160或其它合適的機(jī)制連接至系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對(duì)于計(jì)算機(jī)110描述的程序模塊或其部分可存儲(chǔ)在遠(yuǎn)程存儲(chǔ)器設(shè)備中。作為示例而非限制,圖1示出了遠(yuǎn)程應(yīng)用程序185駐留在遠(yuǎn)程計(jì)算機(jī)180上。可以理解,所示的網(wǎng)絡(luò)連接是示例性的,且可以使用在計(jì)算機(jī)之間建立通信鏈路的其它裝置。
圖2是移動(dòng)設(shè)備200的框圖,它是另一個(gè)示例性計(jì)算機(jī)環(huán)境。移動(dòng)設(shè)備200包括微處理器202、存儲(chǔ)器204、輸入/輸出(I/O)組件206和用于與遠(yuǎn)程計(jì)算機(jī)和其它移動(dòng)設(shè)備通信的通信接口208。在一個(gè)實(shí)施例中,前面所述的組件被耦合在一起,以通過(guò)適當(dāng)?shù)目偩€210彼此通信。
存儲(chǔ)器204被實(shí)現(xiàn)為諸如帶有備電模塊(未示出)的隨機(jī)存取存儲(chǔ)器(RAM)等非易失性電子存儲(chǔ)器,以使當(dāng)移動(dòng)設(shè)備200的總電源被關(guān)閉時(shí),存儲(chǔ)在存儲(chǔ)器204中的信息不會(huì)丟失。存儲(chǔ)器204的一部分較佳地被分配為用于程序執(zhí)行的可尋址存儲(chǔ)器,而存儲(chǔ)器204的另一部分較佳地用于存儲(chǔ),如模擬磁盤(pán)驅(qū)動(dòng)器上的存儲(chǔ)。
存儲(chǔ)器204包括操作系統(tǒng)212、應(yīng)用程序214以及對(duì)象存儲(chǔ)216。在運(yùn)行期間,操作系統(tǒng)212較佳地由處理器202從存儲(chǔ)器204中執(zhí)行。在一個(gè)優(yōu)選實(shí)施例中,操作系統(tǒng)212是市場(chǎng)上可購(gòu)買(mǎi)的來(lái)自微軟公司W(wǎng)INDOWSCE品牌的操作系統(tǒng)。操作系統(tǒng)212較佳地為移動(dòng)設(shè)備而設(shè)計(jì),并實(shí)現(xiàn)可由應(yīng)用程序214通過(guò)一組揭示的應(yīng)用程序接口和方法來(lái)使用的數(shù)據(jù)庫(kù)特征。對(duì)象存儲(chǔ)216中的對(duì)象由應(yīng)用214和操作系統(tǒng)212至少部分地響應(yīng)于對(duì)所揭示的應(yīng)用程序接口和方法的調(diào)用來(lái)維護(hù)。
通信接口208表示允許移動(dòng)設(shè)備200發(fā)送并接收信息的多個(gè)設(shè)備和技術(shù)。該設(shè)備包括,舉幾個(gè)例子,有線和無(wú)線調(diào)制解調(diào)器、衛(wèi)星接收器和廣播協(xié)調(diào)器。移動(dòng)設(shè)備200也可直接連接到計(jì)算機(jī)以與之交換數(shù)據(jù)。在此情況下,通信接口208可以是紅外收發(fā)器或串行或并行的通信連接,它們都能夠傳輸流信息。
輸入/輸出組件206包括各種輸入設(shè)備,如觸敏屏、按鈕、滾輪和麥克風(fēng),并包括各種輸出設(shè)備,包括音頻發(fā)生器、振動(dòng)設(shè)備和顯示器。以上列出的設(shè)備是作為示例,無(wú)需都在移動(dòng)設(shè)備200上存在。此外,其它輸入/輸出設(shè)備可以附在移動(dòng)設(shè)備200上或與其一起建立。
表單類(lèi)型本發(fā)明利用邏輯表單和邏輯表單類(lèi)型的概念提供了構(gòu)建商業(yè)和其它應(yīng)用程序的表單用戶(hù)界面(表單)的新方法。盡管在本發(fā)明的示例性實(shí)施例或?qū)崿F(xiàn)中使用了邏輯表單和邏輯表單類(lèi)型,但是在所有的實(shí)施例中不需要邏輯層的使用。因此,本發(fā)明大體上適用于利用表單類(lèi)型創(chuàng)建表單。當(dāng)今的商業(yè)應(yīng)用程序常包括大量的表單,它們一般被分成幾種類(lèi)別或遵循類(lèi)似的模式。調(diào)查顯示,在微軟商業(yè)解決方案Axapta中發(fā)現(xiàn)的1800個(gè)表單可分成僅有的7類(lèi)。
本發(fā)明的表單類(lèi)型可以是用于幫助生成表單用戶(hù)界面的模型,它通過(guò)在設(shè)計(jì)時(shí)和運(yùn)行時(shí)保存商業(yè)或數(shù)據(jù)模型并在其上作用來(lái)支持模型驅(qū)動(dòng)用戶(hù)界面的概念。它為軟件開(kāi)發(fā)者提供了高級(jí)抽象。此外,根據(jù)本發(fā)明的表單類(lèi)型的使用確保了重復(fù)使用(一個(gè)布局可以被使用多次)更為同類(lèi)的一組表單用戶(hù)界面,因?yàn)樗械谋韱味挤殖蓭追N不同的類(lèi)型,且表單更易于維護(hù)(類(lèi)型的布局可以無(wú)需更改表單而被更改,且在某些情況下可以應(yīng)用不同的類(lèi)型而無(wú)需更改表單)。應(yīng)該注意,在某些實(shí)施例中,某些表單類(lèi)型可以是不兼容的,并且改變表單類(lèi)型需要表單的重編譯或完全重建。本發(fā)明確保了應(yīng)用程序開(kāi)發(fā)者可跨多個(gè)顯示目標(biāo)重復(fù)使用用戶(hù)界面模型,同時(shí)保留對(duì)應(yīng)用程序的外觀和感覺(jué)以及應(yīng)用程序中的導(dǎo)航如何在每個(gè)顯示目標(biāo)上發(fā)生的全部控制。顯示目標(biāo)的示例包括當(dāng)前和未來(lái)操作系統(tǒng)的多個(gè)類(lèi)型中的每一個(gè),也包括許多可用的和未來(lái)移動(dòng)設(shè)備中的每一個(gè)。作為另一個(gè)示例,特定操作系統(tǒng)上每一個(gè)再現(xiàn)技術(shù)也可以是顯示目標(biāo)。
利用本發(fā)明的概念,邏輯表單包括顯示目標(biāo)無(wú)關(guān)的邏輯控制,它使邏輯表單與顯示目標(biāo)本身無(wú)關(guān)。邏輯表單涉及定義了邏輯表單必須遵照的類(lèi)型的邏輯表單類(lèi)型。邏輯表單所參考的邏輯表單類(lèi)型涉及可以從多種不同邏輯表單類(lèi)型中選擇,以快速建立邏輯表單的外觀和內(nèi)容。在本發(fā)明的實(shí)施例中,邏輯表單類(lèi)型是當(dāng)結(jié)合了商業(yè)或其它數(shù)據(jù)模型時(shí),能導(dǎo)致邏輯表單的生成的模型。
在某些實(shí)施例中,邏輯表單類(lèi)型揭示了表單必須符合的方案(它描述了表單的結(jié)構(gòu),它能包含的元素等等)、(由應(yīng)用開(kāi)發(fā)者自動(dòng)或手動(dòng))將商業(yè)模型映射到邏輯模型并由此映射到物理模型的映象(或規(guī)則)。在另一個(gè)實(shí)施例中(沒(méi)有使用方案),表單類(lèi)型本身是定義了表單能擴(kuò)展的某一結(jié)構(gòu)的表單。表單類(lèi)型還可包括影響邏輯表單及其內(nèi)容的動(dòng)態(tài)行為的用戶(hù)界面邏輯(代碼)。此外,表單類(lèi)型可引用顯示目標(biāo)信息或包含顯示目標(biāo)專(zhuān)用的元數(shù)據(jù)。因此,表單類(lèi)型揭示了樣式和布局信息,以及對(duì)顯示目標(biāo)專(zhuān)用的其它類(lèi)型的信息。盡管如此,由于它們還為本邏輯表單及其表單內(nèi)容指定了規(guī)則,因此它們起到了更為巨大的作用。本發(fā)明的表單類(lèi)型的某些方面介紹如下不同表單類(lèi)型正如所述的,在本發(fā)明的一個(gè)典型使用中,提供了多種不同的表單類(lèi)型,以供應(yīng)用程序開(kāi)發(fā)者在創(chuàng)建表單時(shí)使用。例如,在一個(gè)示例實(shí)施例中,表單類(lèi)型包括Dialog(對(duì)話框)表單類(lèi)型、Card(卡片)或CardView(查看卡片)表單類(lèi)型、ListView(查看列表)表單類(lèi)型、EntityOverview實(shí)體概述表單類(lèi)型和ActivityCenter(活動(dòng)中心)表單類(lèi)型。這些表單類(lèi)型與一個(gè)示例中在商業(yè)應(yīng)用程序中使用的典型的不同類(lèi)別的表單相對(duì)應(yīng)。因此,提供多種表單類(lèi)型允許應(yīng)用程序開(kāi)發(fā)者構(gòu)建組成現(xiàn)有技術(shù)的商業(yè)應(yīng)用程序的所有表單。正如本領(lǐng)域的技術(shù)人員能理解的,這些特定的表單類(lèi)型僅僅是一個(gè)示例,本發(fā)明并不限于任何特定表單類(lèi)型和任何特定數(shù)量的表單類(lèi)型。
表單類(lèi)型布局每一個(gè)表單類(lèi)型的布局信息的內(nèi)容和結(jié)構(gòu)都可不同。此外,布局信息可以是顯示目標(biāo)專(zhuān)用的。例如,ActivityCenter表單類(lèi)型的布局信息可以支持由HTML(即,萬(wàn)維網(wǎng)或因特網(wǎng))顯示目標(biāo)用于在特定操作系統(tǒng)平臺(tái)上顯示表單的主題(Theme)/外殼(Skin)/樣式(Style)以及主頁(yè)面(Master Pages)。這給予了商業(yè)開(kāi)發(fā)者在不同顯示目標(biāo)上創(chuàng)新以及按需調(diào)整表單用戶(hù)界面的自由。在以?xún)H一個(gè)顯示目標(biāo)為目標(biāo),且若因此邏輯層被忽略的特定情況下,表單類(lèi)型和表單類(lèi)型布局可以是相同的。
可插入和可擴(kuò)展表單類(lèi)型提供了充分的靈活性和擴(kuò)展性,如獨(dú)立軟件開(kāi)發(fā)商(ISV)能修改或擴(kuò)展它們并創(chuàng)建新的表單類(lèi)型,由此改變整個(gè)應(yīng)用程序的外觀和感覺(jué)。表單類(lèi)型還可定義在給定顯示目標(biāo)上使用哪些物理控制。例如,表單類(lèi)型允許用第三方網(wǎng)格控制替代標(biāo)準(zhǔn)網(wǎng)格(若第三方網(wǎng)格滿足定義明確的合約/接口)。使用的控制能在映象中定義(它可以在表單類(lèi)型之間有所不同)——且因此它們是后綁定的(latebound)——因此控制能被替換,而無(wú)需重新編譯——即,在使用之后。
現(xiàn)在參考圖3和4,示出了利用根據(jù)本發(fā)明的示例實(shí)施例的Card表單類(lèi)型創(chuàng)建的銷(xiāo)售定單邏輯表單的示意圖表。在該示例中,銷(xiāo)售定單邏輯表單包含被組合成3個(gè)不同邏輯控制組的一組邏輯控制。正如以下將進(jìn)一步描述的,Card表單類(lèi)型定義了控制在物理表單上以及在不同顯示目標(biāo)上將如何出現(xiàn)以及在哪里出現(xiàn),以及哪個(gè)物理控制用于再現(xiàn)。圖3和圖4示出了相同信息,其中圖4包含示出邏輯表單類(lèi)型和邏輯表單之間信息的關(guān)系和起源,以及從邏輯表單中生成物理表單的箭頭。
圖3和圖4示意性地示出了利用表單類(lèi)型300生成表單示例305。在核心客戶(hù)機(jī)310上,該客戶(hù)機(jī)是顯示目標(biāo)無(wú)關(guān)的表單引擎,表單實(shí)例305是邏輯表單306(表示為表單的概念模型),而表單類(lèi)型300是邏輯表單類(lèi)型301。在顯示目標(biāo)320上,表單305是利用邏輯表單306,且最終從邏輯表單類(lèi)型301創(chuàng)建的再現(xiàn)表單370。再現(xiàn)表單370是一個(gè)特定實(shí)現(xiàn),但可以完成許多其它實(shí)現(xiàn)和再現(xiàn)。再現(xiàn)表單370也可被認(rèn)為是物理表單。
表單類(lèi)型300中包含的兩個(gè)部分包括定義在使用表單類(lèi)型的特定表單中必須包含什么的方案330,和包含指定在特定顯示目標(biāo)上應(yīng)如何再現(xiàn)或繪制表單的布局331。表單類(lèi)型還包括從邏輯到物理控件的映射,它在某些實(shí)施例中也可被認(rèn)為是布局331的一部分。表單類(lèi)型還包括確定UI元素(控件等等)之間的相互關(guān)系的邏輯。該邏輯是顯示目標(biāo)無(wú)關(guān)的,因此方案還包括“分離的代碼(code-behind)”。通過(guò)擁有可由表單類(lèi)型使用的不同的布局,利用表單類(lèi)型創(chuàng)建的表單可適合于不同顯示目標(biāo)(例如,蜂窩電話顯示屏、個(gè)人數(shù)字助理顯示屏、個(gè)人計(jì)算機(jī)監(jiān)視器等等)。采用表示在多種表單中使用的所捕捉的模式的表單類(lèi)型300,多種表單實(shí)例305可利用表單類(lèi)型300來(lái)生成。
對(duì)于該示例,考慮開(kāi)發(fā)者可仔細(xì)檢查來(lái)為銷(xiāo)售定單實(shí)體或?qū)ο竽P?即,商業(yè)或數(shù)據(jù)模型)創(chuàng)建表單的過(guò)程。首先,該開(kāi)發(fā)者可查看以便發(fā)現(xiàn)他或她必須選擇何種類(lèi)型的表單。選擇“Card”表單類(lèi)型,如在圖3和圖4的325處所示,調(diào)用或指定Card方案330,如同圖4中通過(guò)箭頭記號(hào)326所表示。
當(dāng)開(kāi)發(fā)者指定特定表單類(lèi)型以及關(guān)聯(lián)方案時(shí),他或她在某些實(shí)施例中選擇在表單中包含由方案規(guī)定的信息或字段,并用來(lái)自用戶(hù)的商業(yè)或其它模型的元數(shù)據(jù)填充字段值。在某些實(shí)施例中,表單類(lèi)型可包括用于在表單之間導(dǎo)航的模式——該表單類(lèi)型定義了(給定類(lèi)型的)另一表單是如何被打開(kāi)的——例如,在其自己的窗口中或替換內(nèi)容區(qū)域。例如,通過(guò)選擇Card表單類(lèi)型301(以及關(guān)聯(lián)Card方案330),邏輯表單306包括與方案330中定義的內(nèi)容區(qū)域335對(duì)應(yīng)的內(nèi)容區(qū)域336。與內(nèi)容區(qū)域335對(duì)應(yīng)的內(nèi)容區(qū)域336的起源在圖4中由箭頭記號(hào)337表示。類(lèi)似的,由于Card表單類(lèi)型的方案330包括UI部件區(qū)域340、相關(guān)實(shí)體UI部件區(qū)域345和行動(dòng)區(qū)域350,因此邏輯表單306同樣如在341、346和351處所示的包括這些區(qū)域和字段。再一次,這些字段的起源由箭頭342、347和352圖解表示。
如上所述,每個(gè)表單類(lèi)型也包含規(guī)定使用何種控制以在特定顯示目標(biāo)上再現(xiàn)的布局331。如在圖3和圖4中圖解表示的,卡片表單類(lèi)型的布局包括控件,其促使顯示目標(biāo)320包括內(nèi)容區(qū)域339、UI部件區(qū)域344、相關(guān)實(shí)體UI部件區(qū)域349和行動(dòng)區(qū)域354。箭頭338、343、348和353示出了這些區(qū)域在卡片布局中與在Card方案中其對(duì)應(yīng)區(qū)域的相關(guān)性。利用所選邏輯表單類(lèi)型和來(lái)自數(shù)據(jù)模型(在本示例中為銷(xiāo)售定單實(shí)體)的元數(shù)據(jù)生成的邏輯表單306被再現(xiàn)為顯示目標(biāo)320上的物理表單370。該過(guò)程在圖4中用箭頭361和362示出。
現(xiàn)在參照?qǐng)D5,所示為示出生成表示如上參照?qǐng)D3和圖4描述的數(shù)據(jù)模型的模型驅(qū)動(dòng)表單用戶(hù)界面的方法的流程圖500。在步驟505處,示出該方法包含選擇多種不同邏輯表單類(lèi)型的哪一種用于生成表示數(shù)據(jù)模型的表單用戶(hù)界面。在以上提供的示例中,為此目的選擇Card和CardView表單類(lèi)型。隨后在步驟510處,該方法包括在運(yùn)行時(shí)利用數(shù)據(jù)模型和所選的邏輯表單類(lèi)型生成邏輯表單。通過(guò)在運(yùn)行時(shí)生成邏輯表單,數(shù)據(jù)模型被保留(即,在運(yùn)行時(shí)對(duì)其起作用),且對(duì)數(shù)據(jù)模型的任何改變將在邏輯表單和再現(xiàn)的物理表單中被反映。由于在某些實(shí)施例中,表單類(lèi)型可以被認(rèn)為是邏輯表單類(lèi)型模型,因此步驟510可被認(rèn)為包括在運(yùn)行時(shí)利用所選的邏輯表單類(lèi)型模型和來(lái)自數(shù)據(jù)模型的元數(shù)據(jù)生成邏輯表單。
如上所述,多種不同邏輯表單類(lèi)型中的每一個(gè)都具有定義要包括在所生成的邏輯表單中的來(lái)自數(shù)據(jù)模型的數(shù)據(jù)的關(guān)聯(lián)方案。因此,在運(yùn)行時(shí)生成邏輯表單的步驟510包括利用示例性實(shí)施例中的關(guān)聯(lián)方案生成邏輯表單。由于每個(gè)不同邏輯表單類(lèi)型的方案表示從大量表單中捕捉的模式,因此少數(shù)表單類(lèi)型可用于生成非常大量的表單。同樣,由于每個(gè)邏輯表單類(lèi)型具有對(duì)特定顯示目標(biāo)專(zhuān)用的至少一個(gè)定義的布局,因此在運(yùn)行時(shí)生成物理表單的步驟包含利用至少一個(gè)定義的布局生成物理表單。在另一個(gè)實(shí)施例中,每個(gè)邏輯表單類(lèi)型可包括對(duì)應(yīng)于多種不同顯示目標(biāo)的多種不同布局,以便于生成用于不同顯示目標(biāo)的大量表單。
在本發(fā)明的某些實(shí)施例中,在此揭示的方法生成表示單個(gè)數(shù)據(jù)模型的多種不同表單用戶(hù)界面。例如,考慮在圖6所示的流程圖600中所舉例說(shuō)明的方法步驟。此處,示出該方法進(jìn)一步包含選擇多種不同邏輯表單類(lèi)型用于生成表示數(shù)據(jù)模型的多種不同表單用戶(hù)界面的步驟605。然后,如同步驟610所示,該方法包括在運(yùn)行時(shí)生成多種不同邏輯表單,每一個(gè)不同邏輯表單是利用數(shù)據(jù)模型和所選邏輯表單類(lèi)型之中不同的一個(gè)來(lái)生成。依照本發(fā)明的一個(gè)方面,由于數(shù)據(jù)模型在運(yùn)行時(shí)被作用,這允許了在多個(gè)生成的表單中自動(dòng)實(shí)現(xiàn)對(duì)數(shù)據(jù)模型的更改。盡管更變數(shù)據(jù)模型一次,但是在運(yùn)行時(shí)自動(dòng)影響多個(gè)表單相較于傳統(tǒng)的更為勞動(dòng)密集型的生成表單方法在效率上提供了顯著的提高。
在又一實(shí)施例中,本發(fā)明的方法用于生成表示多種不同數(shù)據(jù)模型的多種不同模型驅(qū)動(dòng)類(lèi)型用戶(hù)界面。例如,考慮在圖7中所示的流程圖700中舉例說(shuō)明的方法步驟。在步驟705,該方法的這一更具體的實(shí)施例包括選擇多種不同邏輯表單類(lèi)型中的哪一種用于生成表示數(shù)據(jù)模型的多種不同表單用戶(hù)界面。然后,在步驟710,示出該方法包括在運(yùn)行時(shí)生成多種不同邏輯表單,多種不同類(lèi)型邏輯表單的每一個(gè)是利用多種不同數(shù)據(jù)模型之一和所選的邏輯表單類(lèi)型來(lái)生成的。因此,單個(gè)表單類(lèi)型可用于為大量數(shù)據(jù)模型中的每一個(gè)生成邏輯表單。由于多種不同表單用戶(hù)界面在運(yùn)行時(shí)利用生成的邏輯表單而被再現(xiàn),因此,數(shù)據(jù)模型仍在運(yùn)行時(shí)被作用。由于效率的提高,多種不同表單用戶(hù)界面的每一個(gè)都可通過(guò)一次改變一個(gè)所選邏輯表單類(lèi)型而被改變。
現(xiàn)在參考圖8,所示為用于生成表示數(shù)據(jù)模型的模型驅(qū)動(dòng)表單用戶(hù)界面的系統(tǒng)800的框圖。正如圖8所示,系統(tǒng)800包括處理/控制組件810,以及用于存儲(chǔ)與數(shù)據(jù)模型815(例如以實(shí)體和對(duì)象形式的商業(yè)模型)的元數(shù)據(jù)或用于存儲(chǔ)表單類(lèi)型825和關(guān)聯(lián)方案830和布局835的數(shù)據(jù)存儲(chǔ)820和840。開(kāi)發(fā)者輸入805可以是,但不限于,選擇用于生成邏輯表單845的表單類(lèi)型和數(shù)據(jù)模型的任何輸入。例如,參照?qǐng)D1和圖2所述的任一輸入設(shè)備可用于提供此類(lèi)輸入。示例輸入行動(dòng)可包括從列表和其它地方選擇使用何種表單類(lèi)型。開(kāi)發(fā)者輸入也可包括諸如將數(shù)據(jù)模型的可視表示拖拽到所選表單類(lèi)型的可視表示上以規(guī)定生成的邏輯表單應(yīng)包括何種字段類(lèi)型的輸入行動(dòng)。也可以使用許多其它開(kāi)發(fā)者輸入。
邏輯表單類(lèi)型也可由第三方使用,以在運(yùn)行時(shí)定制表單類(lèi)型,其不必被認(rèn)為要選擇數(shù)據(jù)模型和表單類(lèi)型。因此,開(kāi)發(fā)者輸入不必限制于“設(shè)計(jì)時(shí)”。此外,本發(fā)明的方法不限于需要開(kāi)發(fā)者輸入的實(shí)施例。在其它實(shí)施例中,表單類(lèi)型可被個(gè)性化——允許終端用戶(hù)一次改變多種表單。
選擇了表單類(lèi)型825以及關(guān)聯(lián)方案830和布局835之后,連同特定數(shù)據(jù)模型一起,處理/控制組件810被配置成如上所述地生成邏輯表單845。隨后,再現(xiàn)引擎850生成物理表單855和對(duì)應(yīng)的顯示目標(biāo)860。
盡管本發(fā)明是參照特定實(shí)施例來(lái)描述的,但是本領(lǐng)域的技術(shù)人員可以意識(shí)到,可以在形式和細(xì)節(jié)上進(jìn)行改變而不脫離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種生成表示數(shù)據(jù)模型的模型驅(qū)動(dòng)表單用戶(hù)界面的方法,其特征在于,所述方法包括選擇多個(gè)不同邏輯表單類(lèi)型中的哪一種用于生成表示數(shù)據(jù)模型的表單用戶(hù)界面;以及利用所述數(shù)據(jù)模型和所選的邏輯表單類(lèi)型生成表單。
2.如權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)模型是商業(yè)模型。
3.如權(quán)利要求1所述的方法,其特征在于,生成所述表單還包括在設(shè)計(jì)時(shí)生成并修改所述表單,以及在運(yùn)行時(shí)用來(lái)自所述數(shù)據(jù)模型的數(shù)據(jù)填充所生成的表單。
4.如權(quán)利要求1所述的方法,其特征在于,生成所述表單還包括利用所述數(shù)據(jù)模型和所選的邏輯表單類(lèi)型生成邏輯表單。
5.如權(quán)利要求4所述的方法,其特征在于,還包括利用所生成的邏輯表單再現(xiàn)所述表單用戶(hù)界面。
6.如權(quán)利要求5所述的方法,其特征在于,再現(xiàn)所述表單用戶(hù)界面還包括在運(yùn)行時(shí)利用所生成的邏輯表單再現(xiàn)物理表單,以使所述數(shù)據(jù)模型在運(yùn)行時(shí)被作用。
7.如權(quán)利要求1所述的方法,其特征在于,選擇多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)用于生成所述表單用戶(hù)界面還包括選擇多個(gè)不同邏輯表單類(lèi)型模型中的哪一個(gè)用于生成所述表單用戶(hù)界面,且其中生成所述表單還包括利用所選的邏輯表單類(lèi)型模型和來(lái)自所述數(shù)據(jù)模型的元數(shù)據(jù)兩者來(lái)生成所述表單。
8.如權(quán)利要求1所述的方法,其特征在于,所述多個(gè)不同邏輯表單類(lèi)型中的每一個(gè)都具有一定義要包括在所生成的表單中的來(lái)自所述數(shù)據(jù)模型的數(shù)據(jù)的關(guān)聯(lián)方案,且其中,生成所述表單還包括利用所述關(guān)聯(lián)方案生成所述表單。
9.如權(quán)利要求8所述的方法,其特征在于,所述多個(gè)不同邏輯表單類(lèi)型中的每一個(gè)的方案都表示從多個(gè)表單中捕捉的模式。
10.如權(quán)利要求8所述的方法,其特征在于,所述多個(gè)不同邏輯表單類(lèi)型中的每一個(gè)具有至少一個(gè)定義的布局,所述方法還包括利用所述至少一個(gè)定義的布局來(lái)生成物理表單。
11.如權(quán)利要求1所述的方法,其特征在于,所述方法生成表示數(shù)據(jù)模型的多個(gè)不同模型驅(qū)動(dòng)表單用戶(hù)界面,所述方法還包括選擇多個(gè)不同邏輯表單類(lèi)型中的多個(gè)表單用于生成表示所述數(shù)據(jù)模型的所述多個(gè)不同表單用戶(hù)界面;以及生成多個(gè)不同表單,其中,所述多個(gè)不同表單的每一個(gè)是利用所述數(shù)據(jù)模型和所述多個(gè)不同邏輯表單類(lèi)型中所選的多個(gè)表單類(lèi)型中不同的一種來(lái)生成的。
12.如權(quán)利要求11所述的方法,其特征在于,還包括在運(yùn)行時(shí)利用所述多個(gè)生成的表單中對(duì)應(yīng)的幾個(gè)再現(xiàn)所述多個(gè)不同表單用戶(hù)界面,以使所述數(shù)據(jù)模型在運(yùn)行時(shí)被作用。
13.如權(quán)利要求12所述的方法,其特征在于,還包括通過(guò)一次改變所述數(shù)據(jù)模型來(lái)改變所述多個(gè)不同表單用戶(hù)界面中的每一個(gè)。
14.如權(quán)利要求1所述的方法,其特征在于,所述方法生成表示多個(gè)數(shù)據(jù)模型的多個(gè)不同模型驅(qū)動(dòng)表單用戶(hù)界面,所述方法還包括選擇所述多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)用于生成表示所述多個(gè)數(shù)據(jù)模型的所述多個(gè)不同表單用戶(hù)界面;以及生成多個(gè)不同的表單,其中,所述多個(gè)不同表單的每一個(gè)都是利用所述多個(gè)數(shù)據(jù)模型和所選的邏輯表單類(lèi)型來(lái)生成的。
15.如權(quán)利要求14所述的方法,其特征在于,還包括在運(yùn)行時(shí)利用所述多個(gè)生成的表單再現(xiàn)所述多個(gè)不同表單用戶(hù)界面,以使所述多個(gè)數(shù)據(jù)模型在運(yùn)行時(shí)被作用。
16.如權(quán)利要求15所述的方法,其特征在于,還包括通過(guò)一次改變所選的邏輯表單類(lèi)型來(lái)改變所述多個(gè)不同表單用戶(hù)界面中的每一個(gè)。
17.一種具有用于執(zhí)行表單用戶(hù)界面生成步驟的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),所述步驟包括接收選擇輸入,以選擇多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)用于生成表示數(shù)據(jù)模型的表單用戶(hù)界面;以及在運(yùn)行時(shí)利用所述數(shù)據(jù)模型和所選的邏輯表單類(lèi)型生成邏輯表單。
18.如權(quán)利要求17所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述數(shù)據(jù)模型是商業(yè)模型。
19.如權(quán)利要求17所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還具有計(jì)算機(jī)可執(zhí)行指令,用于執(zhí)行在運(yùn)行時(shí)利用所生成的邏輯表單再現(xiàn)所述表單用戶(hù)界面以使所述數(shù)據(jù)模型在運(yùn)行時(shí)被作用的其它步驟。
20.如權(quán)利要求17所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,接收所述選擇的輸入以選擇所述多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)用于生成所述表單用戶(hù)界面還包括,接收所述選擇的輸入以選擇所述多個(gè)不同邏輯表單類(lèi)型模型中的哪一個(gè)用于生成所述用戶(hù)界面,且其中,在運(yùn)行時(shí)生成所述邏輯表單還包括,在運(yùn)行時(shí)利用所選的邏輯表單類(lèi)型模型和來(lái)自所述數(shù)據(jù)模型的元數(shù)據(jù)兩者生成所述邏輯表單。
21.如權(quán)利要求17所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述多個(gè)不同邏輯表單類(lèi)型的每一個(gè)都具有一定義要包括在所生成的邏輯表單中的來(lái)自所述數(shù)據(jù)模型的數(shù)據(jù)的關(guān)聯(lián)方案,且其中,在運(yùn)行時(shí)生成所述邏輯表單還包括利用所述關(guān)聯(lián)方案生成所述邏輯表單。
22.如權(quán)利要求21所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述多個(gè)不同邏輯表單類(lèi)型的每一個(gè)的方案表示從多個(gè)表單中捕捉的模式。
23.如權(quán)利要求21所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述多個(gè)邏輯表單類(lèi)型的每一個(gè)具有至少一個(gè)定義的布局,所述方法還包括利用所述至少一個(gè)定義的布局在運(yùn)行時(shí)生成物理表單。
24.如權(quán)利要求17所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述表單用戶(hù)界面生成步驟生成表示所述數(shù)據(jù)模型的多個(gè)不同表單用戶(hù)界面,所述計(jì)算機(jī)可讀介質(zhì)還具有用于執(zhí)行以下其它步驟的計(jì)算機(jī)可執(zhí)行指令用于接收其它選擇輸入以選擇所述多個(gè)不同邏輯表單類(lèi)型中的多個(gè)用于生成表示所述數(shù)據(jù)模型的多個(gè)不同表單用戶(hù)界面;以及在運(yùn)行時(shí)生成多個(gè)不同邏輯表單,其中,所述多個(gè)不同邏輯表單的每一個(gè)都是利用所述數(shù)據(jù)模型和所述多個(gè)不同邏輯表單類(lèi)型中所選的多個(gè)的不同的一個(gè)來(lái)生成的。
25.如權(quán)利要求24所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還包括計(jì)算機(jī)可執(zhí)行指令,用于執(zhí)行利用所述多個(gè)生成的邏輯表單中對(duì)應(yīng)的幾個(gè)在運(yùn)行時(shí)再現(xiàn)所述多個(gè)不同表單用戶(hù)界面以使所述數(shù)據(jù)模型在運(yùn)行時(shí)被作用的其它步驟。
26.如權(quán)利要求17所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述表單用戶(hù)界面生成步驟生成表示多個(gè)數(shù)據(jù)模型的多個(gè)不同模型驅(qū)動(dòng)表單用戶(hù)界面,所述計(jì)算機(jī)可讀介質(zhì)還具有用于執(zhí)行以下其它步驟的計(jì)算機(jī)可執(zhí)行指令接收所述選擇輸入以選擇所述多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)用于生成表示所述多個(gè)數(shù)據(jù)模型的所述多個(gè)不同表單用戶(hù)界面;以及在運(yùn)行時(shí)生成所述多個(gè)不同邏輯表單,其中,所述多個(gè)不同邏輯表單的每一個(gè)都是利用所述多個(gè)數(shù)據(jù)模型中的一個(gè)和所選的邏輯表單類(lèi)型來(lái)生成的。
27.如權(quán)利要求26所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還具有計(jì)算機(jī)可執(zhí)行指令,用于執(zhí)行在運(yùn)行時(shí)利用所述多個(gè)生成的邏輯表單再現(xiàn)所述多個(gè)不同表單用戶(hù)界面以使所述多個(gè)數(shù)據(jù)模型在運(yùn)行時(shí)被作用的其它步驟。
全文摘要
提供了生成表示數(shù)據(jù)模型的模型驅(qū)動(dòng)表單用戶(hù)界面的方法、計(jì)算機(jī)可讀介質(zhì)和系統(tǒng)。利用該方法,為生成表示諸如商業(yè)模型等數(shù)據(jù)模型的表單用戶(hù)界面,作出選擇以識(shí)別多個(gè)不同邏輯表單類(lèi)型中的哪一個(gè)將被用于生成表示該數(shù)據(jù)模型的表單用戶(hù)界面。隨后,利用該數(shù)據(jù)模型和所選的邏輯表單類(lèi)型在運(yùn)行時(shí)生成邏輯表單。
文檔編號(hào)G06F9/44GK1704937SQ20051007128
公開(kāi)日2005年12月7日 申請(qǐng)日期2005年5月12日 優(yōu)先權(quán)日2004年6月3日
發(fā)明者F·克里斯蒂安森, J·莫勒-彼澤森, P·本德森, P·斯洛斯 申請(qǐng)人:微軟公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1