TW490639B - A software component-container framework for dynamic deployment of business logic components in a distributed object environment - Google Patents
A software component-container framework for dynamic deployment of business logic components in a distributed object environment Download PDFInfo
- Publication number
- TW490639B TW490639B TW89120058A TW89120058A TW490639B TW 490639 B TW490639 B TW 490639B TW 89120058 A TW89120058 A TW 89120058A TW 89120058 A TW89120058 A TW 89120058A TW 490639 B TW490639 B TW 490639B
- Authority
- TW
- Taiwan
- Prior art keywords
- component
- file
- synthesizer
- patent application
- components
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
490639 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(/ ) 相關申請案 本申請案係於1999年九月二十八日申請之美國臨時 申請案第60/156,499號及2000年二月二十五日申請之第 60/184,945號的接續案並主張其優先權。 枝術領域 本申請案係有關於多層式、分佈式電腦系統,且尤指 一種於CORBA分佈式物件結構上之商務邏輯軟體組件動 態配置的組件合成器仲介軟體架構。 本發明之背曼 線上旅遊係今日最大的單一性電子商務種類之一。第 一代的旅遊網站,那些粗略地建立於1994至1996年間, 係充滿描述旅遊目的地及套裝專案的圖片和相片。這些必 定是基礎的線上說明書或”說明物”且缺乏互動。網站難以 維護且爲靜態內容所構成。 線上訂位開始於大約1996年第二代旅遊網站。許多 的航空網站及虛擬旅行社爲飛機、旅館、租車引進訂位服 務。此爲第一次個人具有僅需透過旅行社預先獲得資訊的 管道。一種利益潮流發展,但獲利性維持難以捉摸,由於 如Apollo及SABRE的存取預訂系統成本、高維護成本、 佣金上限等。於是”觀看者”數量對比於”訂位者”數量維持 一高比率。 展現於今日的第三代旅遊網站,和原先的不同的是提 供高度的人性化。現代的旅遊網站基於由數百萬使用者自 願提供的資訊來呈現動態內容。網頁動態地呈現在會員槪 3 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) 0 ϋ β ϋ ϋ in ϋ I n I ϋ n «ϋ II ϋ n ·ϋ «ϋ ϋ ·ϋ ί ί ϋ I ϋ ϋ n ϋ -^1 II ϋ _ 490639 ______B7___ 五、發明說明()) 況中儲存的資訊。此種槪況能夠包括本國機場、預訂座位 、一般目的地、會員資格授予狀態等。 對電腦程式設計師及對設計此類系統的建造者而言, 支援所有此種互動性,及由數千位同時使用的使用者所造 成的負載是一種挑戰。本發明係指一種”仲介軟體”架構, 亦即,位於網站及如SABRE之電腦訂位系統之間的軟體 。此一系統必須是強韌的、可擴充的及可靠的。 尤其是,此一系統應該爲它的使用者提供,例如,旅 遊網站系統整合者、快速修改自己的商務邏輯軟體以及快 速且輕易地開展新的商務邏輯物件的能力。如果可以區隔 功能性模組並且發展簡單具彈性的構件,用以引進此種功 能性模組至預訂系統,系統整合者將能夠提供給客戶更強 力有效的介面,降低它們發展和維護的成本。 由物件管理群組(OMG)所定義的通用物件要求仲介架 構CORBA,係用以在來源相異系統間通訊的協定定義。 CORBA允許系統使用不同的硬體、操作系統及程式語言來 通訊。CORBA允許那些系統間以平臺獨立的方式定義之互 動,給予系統一個定義完整的介面集合。於是,CORBA提 供一個分布型電腦之架構。 本發明最好在CORBA平臺上實現。傳統上,一 CORBA伺服器,例如,一簡單、可執行的程式,包含使用 者或客戶所可能需要的所有不同的組件。可執行通常是難 以編碼及編譯的。一份編譯過的可執行檔拷貝提供給系統 中的每一伺服器。因此,要更新軟體或引入新的組件,該 4 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) ;0 經濟部智慧財產局員工消費合作社印製490639 Printed by the Consumer Property Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs A7 B7 V. Description of Invention (/) Related Applications This application is US Provisional Application Nos. 60 / 156,499 and 2000 filed on September 28, 1999 Continuation of application No. 60 / 184,945 filed on February 25 and claims priority. The field of application This application relates to a multi-layer, distributed computer system, and more particularly to a component synthesizer intermediary software architecture for the dynamic configuration of business logic software components on a CORBA distributed object structure. The online travel of the present invention is one of the largest single e-commerce types today. The first generation of travel websites, roughly built between 1994 and 1996, are full of pictures and photos describing travel destinations and packages. These must be basic online manuals or "instructions" and lack interaction. Websites are difficult to maintain and consist of static content. Online reservations started around the second generation of travel websites around 1996. Many airline websites and virtual travel agencies have introduced booking services for aircraft, hotels, and car rental. This is the first time that an individual has access to information in advance through a travel agency only. A trend of interest develops, but profitability remains elusive due to the cost of access reservation systems such as Apollo and SABRE, high maintenance costs, and commission ceilings. As a result, the number of "viewers" maintained a high ratio to the number of "bookers". The third-generation tourism website displayed today is different from the original one in that it offers a high degree of humanity. Modern travel websites present dynamic content based on information volunteered by millions of users. The webpage is dynamically displayed on the member 槪 3 This paper size is applicable to the Chinese National Standard (CNS) A4 specification (210 X 297 mm) (Please read the precautions on the back before filling this page) 0 ϋ β ϋ ϋ in ϋ I n I ϋ n «ϋ II ϋ n · ϋ« ϋ ϋ · ϋ ί ί ϋ I ϋ ϋ n ϋ-^ 1 II ϋ _ 490639 ______B7___ 5. Information of the invention ()). Such conditions can include domestic airports, reserved seats, general destinations, status of membership grants, etc. For computer programmers and builders designing such systems, supporting all such interactivity and the load imposed by thousands of simultaneous users is a challenge. The present invention refers to a "intermediary software" architecture, that is, software located between a website and a computer reservation system such as SABRE. Such a system must be robust, scalable, and reliable. In particular, such a system should provide its users with, for example, the ability to integrate with travel website systems, quickly modify its own business logic software, and quickly and easily launch new business logic objects. If you can separate functional modules and develop simple and flexible components to introduce such functional modules to the reservation system, system integrators will be able to provide customers with a more powerful and effective interface, reducing their development and maintenance costs. . The common objects defined by the Object Management Group (OMG) require an intermediary architecture, CORBA, which is a protocol definition used to communicate between systems of different origins. CORBA allows systems to communicate using different hardware, operating systems, and programming languages. CORBA allows interaction between those systems that are defined in a platform-independent manner, giving the system a well-defined set of interfaces. Therefore, CORBA provides a distributed computer architecture. The invention is best implemented on a CORBA platform. Traditionally, a CORBA server, for example, a simple, executable program, contains all the different components that a user or customer may need. Executables are often difficult to code and compile. A copy of the compiled executable is provided to each server in the system. Therefore, to update the software or introduce new components, the 4 paper sizes are applicable to the Chinese National Standard (CNS) A4 specification (210 X 297 mm) (Please read the precautions on the back before filling this page); 0 Ministry of Economic Affairs Wisdom Printed by the Property Agency Staff Consumer Cooperative
一:°J» ϋ ϋ n n I l ·ϋ I I m - I - - I— - SI- — — - - - - n : - - 11 n I i I! !: - - I 490639 A7 _____________ B7 五、發明說明(3 ) 程式碼必須修改或重新編譯,然後新的可執行檔經由適當 的伺服器分布。這是耗時且昂貴的過程。”即插即用”是所 需要的解決方案形式,其允許整合者能夠快速且容易地引 入新的組件至分佈式系統,而不需要對系統的可擴充性及 效能作妥協。 本發明之槪要 本發明之一個大致方向係有關於多層式、分佈式電腦 系統,更特別的係指於在CORBA分佈式物件結構中商務 邏輯軟體組件動態配置的組件合成器仲介軟體架構。本發 明由實例但不以此爲限的方式描述此種實現旅遊計劃及訂 位的系統’以呈現其顯著的特性。此一系統能夠讓消費者 使用網路瀏覽器且經由網際網路連接,來調查包含航機班 次(也如同旅館房間、租車等等)旅遊的選項,並且真實地 登記他們獨有的預約,例如,在”線上”購票。 此預約引擎建立在獨一的CORBA架構頂層。,,仲介軟 體”架構係此旅遊系統之彈性、可擴充性、及監督程序能力 的基礎成分。這些相同的服務可由程式設計師執行可與現 有系統共存,用於旅遊系統甚或個別應用之新商務物件來 取得。因此,在實際應用上,本發明允許系統整合者不需 重建系統,甚至不需存取現有系統的資源碼,而能輕易地 展開新的商務規則或邏輯至一強韌的、可擴充的分佈式系 統。 本發明架構係基於一組件合成器(container)模型。該 架構包括一標準的”合成器”,其能夠包含組件。該合成器 5 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) ·· 經濟部智慧財產局員工消費合作社印製 · - II — — — — — — — — — — — —— — — — — — — — — — 490639 A7 B7 五、發明說明(中) 最好是一般性的CORBA伺服器,其基於、結構檔〃能夠 載入一個或更多之組件。當合成器啓動時,該合成器自動 地讀取結構檔,且載入條列於結構檔中的組件。 組件從架構基底類別來取得。程式設計師以加入至合 成器之結構檔中〈稍後會再解釋〉,來實現在組成物件中 的欲求功能及載入結果物件至合成器。該組件以共享式資 料庫方式執行,所以該合成器能夠在執行時間不需重新編 譯或連結一般性的伺服器合成器而載入這些組件。圖二係 描述該合成器及組件如何安裝在一起,這將在以下更詳細 地解釋。 一般性伺服器合成器提供多組服務至其包含的組件。 這些服務減輕許多負擔,其負擔是因處理負載平衡、監督 程序、架構、登錄、及分緒(threading)所需細節以創造物 件而產生的。一般性伺服器及組件基底類別能夠提供的說 明服務包括如下: •讀取XML結構檔 •基於該結構檔載入組件 •建立條列在結構檔中的組件之間的連結 •設定根據結構檔之組件的特性 •用於組件之三種不同的分緒模組 •公告及消費項目 •登錄 •允許監督組件及合成器的管理功能 •組件的收集和公告統計 6 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 I - ·ϋ -1 n ϋ n .1 ϋ^OJ· ϋ ϋ -ϋ H ϋ ϋ n I ϋ -ϋ I ϋ I I I ϋ n n ϋ 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 490639 A7 B7 五、發明說明(t) •組件庫 •交易的動態特性 另外,新的架構能夠實現建立在一般性伺服器及組件 模型之頂層上的較高層次服務。這些較高層次的服務能夠 包括,例如,尤其是協調以用於負載平衡的一交易服務、 及用以儲存、詢問和存留用以狀態管理之XML文件的文 件伺服器。以這種方式,新的架構允許程式設計師專注於 建立組件的商務邏輯,無須擔心建立強韌且可擴充的系統 所需的無數細節。一般性伺服器合成器實現許多任何組件 的此種服務,即其在組件中沒有包含特別的性質,而只要 從架構基底類別繼承。 本發明因此能夠描述成一種可組織之仲介軟體架構, 包括一客戶層介面、用以支援一個或多個商務物件或組件 的合成器處理、以及一資源介面,如一介面至現有電腦預 約系統。該合成器處理具有一結構檔的存取,且能夠讀取 XML,用以在執行時間組織該合成器處理以包括結構檔中 特定的組件。此種處理可包括用以載入邏輯合成器的內部 組件,以及很好的外部組件參考。該結構檔最好是以XML 執行,同時組件本身不受限於除了 CORBA相容介面以外 的執行種類。 一般性伺服器也允許組件從結構檔透過組件基底類別 之介面擷取出資訊。這使得程式設計師容易儲存XML結 構檔中的參數或其他資訊,及不用改變任何碼來修改那些 參數。讀取及剖析XML的過程由一般性伺服器合成器及 7 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ------------· (請先閱讀背面之注意事項再填寫本頁) -------訂 *--------I · 經濟部智慧財產局員工消費合作社印製 490639One: ° J »ϋ ϋ nn I l · ϋ II m-I--I—-SI- — —----n:--11 n I i I!!:--I 490639 A7 _____________ B7 V. Description of the Invention (3) The code must be modified or recompiled, and then the new executable file is distributed via an appropriate server. This is a time-consuming and expensive process. "Plug and play" is the required form of solution that allows integrators to quickly and easily introduce new components to a distributed system without compromising system scalability and performance. Summary of the Invention One general aspect of the present invention relates to a multi-layer, distributed computer system, and more particularly to a component synthesizer intermediary software architecture that dynamically configures business logic software components in a CORBA distributed object structure. The present invention describes by way of example, but not limitation, such a system for realizing tourism planning and booking 'to show its remarkable characteristics. This system allows consumers to use a web browser and connect via the Internet to investigate options that include flight departures (also like hotel rooms, car rentals, etc.) and to actually register their unique reservations, such as , Buy tickets online. This booking engine is built on top of a unique CORBA architecture. The "intermediary software" architecture is the basic component of the flexibility, scalability, and supervisory capabilities of this travel system. These same services can be performed by programmers and can coexist with existing systems for new businesses in the travel system or even individual applications Therefore, in practical application, the present invention allows a system integrator to easily develop new business rules or logic to a strong, flexible, or new system without having to rebuild the system or even access the resource code of the existing system. Scalable distributed system. The architecture of the present invention is based on a component synthesizer (container) model. The architecture includes a standard "synthesizer" that can contain components. The synthesizer 5 paper standards are applicable to Chinese national standards (CNS ) A4 size (210 X 297 mm) (Please read the notes on the back before filling out this page) ·· Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs ·-II — — — — — — — — — — — — — — — — — — — — — — 490639 A7 B7 V. Description of the Invention (Medium) It is best to be a general CORBA server, which is based on The structure file can load one or more components. When the synthesizer is started, the synthesizer automatically reads the structure file and loads the components listed in the structure file. The component is obtained from the architecture base class. Program The designer added to the synthesizer's structure file (explained later) to achieve the desired function in the composition object and load the result object into the synthesizer. This component is executed in a shared database mode, so the synthesis The synthesizer can load these components at runtime without recompiling or linking to a general server synthesizer. Figure 2 describes how the synthesizer and components are installed together, which will be explained in more detail below. General Servo The synthesizer provides multiple sets of services to the components it contains. These services alleviate many of the burdens that arise from processing the details required for load balancing, monitoring procedures, architecture, login, and threading to create objects. Description services that can be provided by the general server and component base classes include the following: • Read XML structure files • Load components based on this structure file • Establish links between components listed in the structure file • Set according to the characteristics of the components of the structure file • Three different threading modules for the component • Announcements and consumption items • Login • Allows the supervision of components and synthesizers Management functions • Collection and announcement statistics of components 6 (Please read the notes on the back before filling out this page) Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs I-· ϋ -1 n ϋ n .1 ϋ ^ OJ · ϋ ϋ -ϋ H ϋ ϋ n I ϋ -ϋ I ϋ III ϋ nn ϋ This paper size applies to China National Standard (CNS) A4 (210 X 297 mm) 490639 A7 B7 V. Description of the invention (t) • Component library • Transaction In addition, the new architecture enables higher-level services built on top of general server and component models. These higher-level services can include, for example, a transaction service coordinated especially for load balancing, and a file server for storing, querying, and persisting XML files for status management. In this way, the new architecture allows programmers to focus on building the business logic of components without having to worry about the myriad details required to build robust and scalable systems. A general server synthesizer implements many of these services for any component, that is, it does not include special properties in the component, but only inherits from the architectural base class. The invention can thus be described as an organized intermediary software architecture, including a client-level interface, a synthesizer process to support one or more business objects or components, and a resource interface, such as an interface to an existing computer reservation system. The synthesizer process has access to a structure file and can read XML to organize the synthesizer process at execution time to include specific components in the structure file. This processing can include internal components to load the logic synthesizer, as well as good external component references. The structure file is preferably implemented in XML, and the component itself is not limited to execution types other than a CORBA compatible interface. Generic servers also allow components to retrieve information from the structure file through the interface of the component base class. This makes it easy for programmers to store parameters or other information in XML structures and to modify those parameters without changing any code. The process of reading and parsing XML consists of a general server synthesizer and 7 paper sizes that are applicable to China National Standard (CNS) A4 (210 X 297 mm) ------------ · (Please (Please read the notes on the back before filling in this page) ------- Order * -------- I · Printed by the Consumer Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs 490639
經濟部智慧財產局員工消費合作社印製 五、發明說明(6 ) 組件基底類別全部處理,所以程式設計師不必擔心關於檔 案格式或剖析問題。本發明因此能夠使整合者加入一新的 商務邏輯且開展到一分佈性系統,並且不會使處理變慢’ 不用修改和重新編譯原始碼,且不需拷貝重新編譯的原始 碼至每一個伺服器。實際上,一整合器或其他經授權的使 用者能夠不用原始碼即可加入或修改功能。 本發明的其他目標及優點經由以下較佳實施例伴隨附 圖參考的詳細描述將彰顯出來。 附圖之簡胳說明 圖一係顯示用於經由網路連接終端使用者至例如電腦 化預定系統的後端資源之多層次、分佈式電腦系統之高層 次方塊圖,以執行強韌、具彈性、可擴充、高效能之系統 〇 圖二係根據本發明之一般性合成器之槪念圖,用以載 入以結構檔爲基礎的軟體組件。 圖三係描述連結組件之間之結構檔的槪念圖。 圖四A及四B —起構成以XML執行之結構檔的一實 例,以城市碼查閱處理。 圖五A至五C描述軟體處理,其中每一個執行具有相 對應結構檔的一般性合成器。 圖六係說明支援一旅遊計劃及預約網站之多層次、分 佈式電腦系統的操作簡化圖。 圖七A說明對應於圖五B之合成器處理的XML結構 檔之一部份。 8 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) I 1_1 ϋ ·ϋ n ϋ ·ϋ 1-1 1** 線丨-- 490639 9 A7 B7 ?°年(月 ΊΡ 煩請委 vs容 經濟部智慧財產局員工消費合作社印製 五、發明說明() 執行所條列之僞碼。 圖八A-八B係說明以XML表示的要求班次行程表之 實例。 圖九A-九B係說明以XML表示的回應班次行程表之 實例。 圖十A-十B係說明城市碼查閱處理(合成器)結構檔。 圖十一係一旅遊計劃控制器處理(合成器)結構檔的說 明部分。 圖十二A至圖十二C說明XML資料,一 XML資料 的個別DOM等級模組以及相對應之節點表單; 圖十三A至圖十三B提出一用於檔案伺服器物件之介 面定義。 元件符號說明 1、2、3 :組件 102 :伺服器 104:網際網路 106 :終端使用者 108 :應用伺服器 112 : XML文件庫 114 :架構物件 116 :商務物件 120 :資料庫存取層 122 :客戶描繪資料庫 126 : CRS(電腦預約系統)介面 9 (請先閱讀背面之注意事項再填寫本頁) ·____ 一-口,· n 1_1 ϋ n -ϋ i ft ϋ 1 ·ϋ n «ϋ n «ϋ n n n n I n ϋ i_l 1 I n 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) 490639 A7 B7 經濟部智慧財產局員工消費合作社印製 五、發明說明(ί) 130 :電腦預約系統 500 :合成器 502、504 :組件 506 :商務邏輯組件 510 :合成器處理 512 : Amadeus介面工廠 514 :介面物件 516 :濾波器統合組件 520 :文件伺服器組件 522及524 :物件(或”文件”) 600 :客戶包裝介面 602 :呼叫 604 :旅遊計劃控制器工廠組件 606 :旅遊計劃控制器實例 610 :呼叫 612 :文件工廠 614 :文件物件 620 :呼叫 622 :呼叫 624 : Amadeus介面工廠 626 :介面物件 627 :航班要求資訊 640 :電腦預約系統 650 :猶太餐商務邏輯 (請先閱讀背面之注意事項再填寫本頁) 訂-丨 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 490639 經濟部智慧財產局員工消費合作社印製 A7 _____B7 _ 五、發明說明(1 ) 652 :結構檔 654 :呼叫 662 :呼叫 664 :城市碼查閱組件 666 :查閱表 670 :客戶包裝 672 :濾波器組件 674 :更新文件 鮫佳窨施例之詳細說昍 圖一係描述以COBRA提供分佈式機制的二層電子商 務架構。在頂層,HTTP伺服器耦合至網際網路104, 以提供至執行標準網路瀏覽器,例如IE或Navigator之多 重終端使用者106的存取。在該網路伺服器102之後係一 應用伺服器,例如BroadVision應用伺服器108。該應用伺 服器透過由仲介軟體商所提供的一客戶包裝層,和商務邏 輯及架構”仲介軟體者”互動。該客戶包裝層在飛機旅遊、 旅館預約及租車之狀況中能夠實行,例如透過使用爪哇描 述語言且提供適合於該應用的方法。該客戶包裝不實現商 務邏輯。商務邏輯經由爪哇描述語言在架構(仲介軟體)層 及使用者介面層實現。 第二,中間層實現本發明之商務邏輯及仲介軟體架構。 該層包括一 XML文件儲存112、架構物件ι14、商務物件 116及用以和電腦預約系統及/或庫存來源界接的各種介 面。以描述的方式,圖一顯示一資料庫存取層12〇,用以 (請先閱讀背面之注意事項再填寫本頁) — — — — — — — 線丨· 11 490639 A7 五、發明說明( 連接客戶描繪資料庫122,且它又進一步顯示用以界接至 一電腦預約系統130之CRS(電腦預約系統)介面126。該附 圖大幅的簡化,例如,各種架構物件u4及商務物件116 可能包括建立相對物件之多個實例之工廠,且此各種物件 將透過多個伺服器被分佈至大多數的應用。如以上所提及, 本發明主要的主題係實現一仲介軟體架構,其不用接觸系 統原始碼,而大幅簡化商務物件116的開展。驅動該網站 的商務邏輯包括如訂票規則或特定旅行的限制之情事。商 務邏fe組件^夠實現標價、折扣、座位分配等策略。在稍 後所描述之實例中,當猶太餐被要求時一猶太餐物件確認 獲得。在實際的實現中,此CRS介面126類似於管理1,0〇〇 個同時和例如SABRE系統的CRS主機連接之順序。 圖二係描述根據本發明如以上在槪要中所提及的一般 性伺服器合成器。組件從架構基底類別得到來實現。程式 設計師(或旅遊網站整合者)實現組件物件中期望的功能’ 且由加入結果物件至圖二中合成器之結構檔202,來載入 結果物件至合成器中。該組件實現成共享式資料庫,所以 合成器204能夠在執行時間載入而不用重新編譯或連結-般性伺服器合成器。該結構檔以XML語法表示,係爲說明 一般性伺服器將載入哪些組件,及該如何連接在一起的基 當一般性伺服器啓動,首先要做的事之一是尋找基# 通過伺服器之命令列上的名字之結構檔。在較佳實施例+ 對於每一伺服器處理皆具有個別分開的結構檔,如同個別 木紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs. 5. Description of invention (6) The base types of components are all processed, so programmers need not worry about file format or analysis. The invention therefore enables the integrator to join a new business logic and develop into a distributed system without slowing down the process' without modifying and recompiling the source code, and without copying the recompiled source code to each server Device. In fact, an integrator or other authorized user can add or modify features without source code. Other objects and advantages of the present invention will become apparent through the following detailed description of the preferred embodiment with reference to the accompanying drawings. Brief Description of the Drawings Figure 1 is a high-level block diagram showing a multi-level, distributed computer system for connecting end users to back-end resources such as a computerized reservation system via a network to implement strong and flexible Scalable, high-performance system. Figure 2 is a conceptual diagram of a general synthesizer according to the present invention for loading software components based on structural files. Figure 3 is a conceptual diagram describing the structural files between the connected components. Figures 4A and 4B—an example of a structure file that is implemented in XML, is processed by city code. Figures 5A to 5C describe software processing, each of which executes a general synthesizer with a corresponding structure file. Figure 6 is a simplified diagram illustrating the operation of a multi-level, distributed computer system supporting a travel planning and booking website. Fig. 7A illustrates a part of the XML structure file corresponding to the synthesizer of Fig. 5B. 8 This paper size applies to China National Standard (CNS) A4 (210 X 297 mm) (Please read the precautions on the back before filling this page) I 1_1 ϋ · ϋ n ϋ · ϋ 1-1 1 ** Line 丨-490639 9 A7 B7? Year (month ΊP. I would like to ask the commission to print the employee's cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs. 5. Description of the invention () The pseudo-codes listed in the implementation. Figure 8A-B is written in XML An example of the requested shift schedule is shown in Figure 9. Figures A--9B are examples of response schedules expressed in XML. Figures 10A-B are illustrations of city code lookup processing (synthesizer) structure files. Figure 11 Figure 12A to Figure 12C illustrate the XML data, an individual DOM-level module of the XML data, and the corresponding node form; Figure 13A To FIG. 13B, an interface definition for a file server object is proposed. Component symbol description 1, 2, 3: Component 102: Server 104: Internet 106: End user 108: Application server 112: XML file Library 114: Architecture Object 116: Business Object 120: Database Inventory Layer 1 22: Customer profile database 126: CRS (Computer Reservation System) interface 9 (Please read the precautions on the back before filling out this page) · ____ Yi-kou, · n 1_1 ϋ n -ϋ i ft ϋ 1 · ϋ n « ϋ n «ϋ nnnn I n ϋ i_l 1 I n This paper size applies to Chinese National Standard (CNS) A4 (210 X 297 public love) 490639 A7 B7 Printed by the Consumer Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs 130: Computer reservation system 500: Synthesizers 502, 504: Component 506: Business logic component 510: Synthesizer processing 512: Amadeus interface factory 514: Interface object 516: Filter integration component 520: Document server components 522 and 524: Object (or "document") 600: Customer Packaging Interface 602: Call 604: Travel Plan Controller Factory Component 606: Travel Plan Controller Instance 610: Call 612: Document Factory 614: Document Object 620: Call 622: Call 624: Amadeus Interface factory 626: Interface object 627: Flight request information 640: Computer reservation system 650: Kosher meal business logic (please read the precautions on the back before filling this page) Order-丨 This paper size applies to China Standard (CNS) A4 (210 X 297 mm) 490639 Printed by the Consumer Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs A7 _____B7 _ V. Description of the Invention (1) 652: Structure File 654: Call 662: Call 664: City Code Viewing Component 666: Look-up table 670: Customer package 672: Filter component 674: Update file. Detailed description of the embodiment. Figure 1 describes a two-tier e-commerce architecture that uses COBRA to provide a distributed mechanism. At the top level, an HTTP server is coupled to the Internet 104 to provide access to multiple end users 106 running a standard web browser, such as IE or Navigator. Behind the web server 102 is an application server, such as the BroadVision application server 108. The application server interacts with business logic and framework "intermediary software providers" through a customer packaging layer provided by an intermediary software vendor. This customer packaging layer can be implemented in the conditions of airplane travel, hotel reservations and car rental, for example by using Java description language and providing methods suitable for the application. This customer package does not implement business logic. Business logic is implemented through the Java description language at the architecture (intermediary software) layer and the user interface layer. Second, the middle layer implements the business logic and intermediary software architecture of the present invention. This layer includes an XML document storage 112, a structure object 14, a business object 116, and various interfaces for interfacing with a computer reservation system and / or an inventory source. By way of description, Figure 1 shows a database inventory layer 12 for the purpose of (please read the notes on the back before filling out this page) — — — — — — — Line 丨 · 11 490639 A7 V. Description of the invention (connection The customer depicts the database 122, and it further displays a CRS (Computer Reservation System) interface 126 to interface to a computer reservation system 130. The drawing is greatly simplified, for example, various architecture objects u4 and business objects 116 may include Establish a factory with multiple instances of relative objects, and these various objects will be distributed to most applications through multiple servers. As mentioned above, the main subject of the present invention is to implement an intermediary software architecture without touching the system Source code, which greatly simplifies the development of business objects 116. The business logic that drives the site includes things such as ticket booking rules or restrictions on specific travel. Business logic components are sufficient to implement pricing, discounts, seat allocation and other strategies. Later In the example described, a Jewish meal item is confirmed to be obtained when a Jewish meal is requested. In a practical implementation, this CRS interface 126 is similar to management 1, 0 The sequence of simultaneous connection to a CRS host such as the SABRE system. Figure 2 depicts the general server synthesizer according to the present invention as mentioned above in the summary. The components are obtained from the architecture base class. The programmer (Or a travel website integrator) to achieve the desired function in the component object 'and load the result object into the synthesizer by adding the result object to the structure file 202 of the synthesizer in Figure 2. The component is implemented as a shared database, Therefore, the synthesizer 204 can be loaded at runtime without recompilation or link-general server synthesizer. The structure file is expressed in XML syntax to explain which components the general server will load, and how to connect to it When the basic server starts together, one of the first things to do is to find the basic file with the name on the server's command line. In the preferred embodiment + separate processing for each server The structure file is the same as the individual wood paper standard applicable to China National Standard (CNS) A4 (210 X 297 mm) (Please read the precautions on the back before filling in this ) Ministry of Economic Affairs Intellectual Property Office employees consumer cooperatives printed
ϋ I H 一aJ· n n n n n I ϋ I I I- n n n n n 1 1 ϋ I n I I ϋ ϋ n n n I I I n I 490639 A7 B7 經濟部智慧財產局員工消費合作社印製 五、發明說明(!h 的結構檔能夠包括的共享結構檔。這使得放置共同的元件 變得容易,例如每一伺服器能夠使用資訊的共享檔案中之 特定共享物件參考。 另外,該結構檔能夠敘述實現特定架構定義的介面之 組件間的連接。該連接能夠包括位於相同的伺服器處理的 組件(內部組件)、位於其它一般性伺服器處理中的組件、 及甚至位於沒有在架構內實現的其它處理中之物件(外部組 件)。其物件參考能夠以字串輸入至結構檔中的任何CORBA 物件能夠被連接-即使該物件以另一種由CORBA所支援的 語言所寫成。圖三係說明在結構檔中特定兩個組件之間的 連接。在這種情形中,組件1要求一確認服務,其確認介 面是由結構檔中提供一連結至組件2來實現,並位於由條 列在結構檔中之組件2物件參考所定義之另一伺服器中。 分緒策略 一般性伺服器也支援三種不同的分緒模組,用以處理 其所包含之物件的要求。 單1·獨分緒。這是最簡單的模型。對於在一般伺服器 中,在此伺服器處理中包含的任何物件發出之每一個要求 是以串聯來處理。進入之要求儲存在佇列中,且每一要求 在下一個要求處理之前執行完成。注意此模組適用於所有 包含在伺服器處理中的有組件,故一次僅處理伺服器處理 中任一組件的一個要求。 2.分緒每個要求。一般性伺服器合成器也支援一種模 組,其每一輸入要求由一分開的分緒所處理。每一新的要 13 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) ·____ 訂--- 線丨· 490639 經濟部智慧財產局員工消費合作社印制衣 A7 B7 ____ 五、發明說明) 求造成一分緒被建立以處理該要求,且該分緒開始執行直 到該要求完成。然後該分緒終止。以XML結構檔中特定的 參數能夠設定建立分緒之最大數目。如果達到該最大數目, 新的要求被阻擋直到至少一個預先的要求完成且它的分緒 終止。 3.分緒庫。在這個模型中,一般性伺服器在啓動時開 始結構檔中數個特定的分緒。當進入要求時,如果沒有分 緒,該要求在佇列中等待直到可獲得分緒。所使用的分緒 模型由結構檔來指定。然而,它也可以在執行時間改變。 一般性伺服器也檢查其所載入的每一個組件之分緒安全屬 性,如果其載入的任一組件爲非分緒安全,伺服器強迫其 爲單獨分緒模型。另外,一般性伺服器合成器處理分緒維 護問題,例如處理失效或懸宕的分緒,並報告分緒使用上 的統計。 圖四A及4B係說明一結構檔,在此情形中,伺服器 被視爲城市碼查閱伺服器。這提供應用伺服器查閱城市碼 之能力,其由透過圖一之客戶包裝層獲得。所以如果旅遊 網站的一個終端使用者輸入不是唯一的城市名稱 (Portland、Oregon/Portland、Maine)或使用機場縮寫(PDX) 或誤拼了城市名稱,該應用伺服器能夠請求城市碼查閱以 獲得一個或多個有效的替換。參閱圖四A,檔案的一部份 條列合成器的屬性,例如時間超過、分緒策略及同時發生 之分緒的最大數目(“最大分緒”)。 i部組件> 14 本紙張尺度適用中國國家標準(CNS)A4規格(210 x 297公爱) (請先閱讀背面之注意事項再填寫本頁) *1=口、·111111 線丨· 490639 A7 B7 五、發明說明(ρ]) 內部軟體組件條列在這一節中,在此情形,以組件名 稱”城市碼查閱”開始。對於每一內部組件,該結構檔指出 一創造者的名字及位置、關係(在本實例中並沒有關係)及 屬性。目前之最佳實施例中,一個組件能夠具有三種形式 的屬性:簡單、架構及順序。在該實例中,所有條列的屬 性都是簡單形式。 該城市碼查閱結構檔接續在圖四B。下一個組件以組 件名稱”城市碼限制查閱”開始條列。再一次,提供建立者 名字及建立者的位置,即一資料庫。在本實例中沒有關係, 且再次條列各種屬性。因此,當城市碼查閱伺服器或合成 器處理初始化時,其將讀取結構檔,建立所記錄的一般屬 性,然後其將載入(創造)城市碼查閱及城市碼限制查閱組 件的範例。該簡單形式屬性,及相對應的値,提供通過周 圍至這些組件的工具。這使得只要編輯XML結構檔便能整 合改變給定的商務邏輯組件周圍。 該結構檔也簡單地按照組件在結構檔中的次序,定義 呼叫組件的次序。這允許新的商務邏輯(一個新的組件)簡 單地由插入至結構檔中組件表之相對應的點之方式,在既 存處理中插入正確的點。如稍後再解釋的,結構檔能夠定 義組件之間的關係或”連接”,例如,定義組件使用其它組 件的服務。由”循序,,一新的組件至結構檔表中正確的位置, 以定義和其他組件的關係,一新的邏輯組件能夠不用改變 任何存在的原始碼,安裝入整個系統內。換言之’以上之 本發明組件合成器架構呈現一較高層次的摘要,但仍然和 15 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製ϋ IH-aJ · nnnnn I ϋ II I- nnnnn 1 1 ϋ I n II ϋ ϋ nnn III n I 490639 A7 B7 Printed by the Consumers ’Cooperative of Intellectual Property Bureau of the Ministry of Economic Affairs Shared structure file. This makes it easy to place common components. For example, each server can use a specific shared object reference in a shared file of information. In addition, the structure file can describe the connections between components that implement a specific architecture-defined interface. The connection can include components (internal components) located in the same server process, components in other general server processes, and even objects (external components) in other processes that are not implemented within the architecture. Its objects Any CORBA object that can be entered as a string into the structure file can be linked-even if the object is written in another language supported by CORBA. Figure 3 illustrates the connection between two specific components in the structure file. In this case, component 1 requires a confirmation service, and its confirmation interface is provided by the structure file with a link to component 2 It is implemented and located in another server defined by the component 2 object reference listed in the structure file. The threading strategy general server also supports three different threading modules to process the objects it contains Requirement. Single 1. Separate thread. This is the simplest model. For general servers, every request issued by any object included in this server processing is processed in series. The incoming requests are stored in In the queue, and each request is completed before the next request is processed. Note that this module is applicable to all components included in server processing, so only one request of any component in server processing is processed at a time. 2. Separate each request. The general server synthesizer also supports a module, each input request is processed by a separate split. Each new 13 paper standards are applicable to China National Standard (CNS) A4 specifications (210 X 297 mm) (Please read the notes on the back before filling out this page) · ____ Order --- Line 丨 490639 Printed clothing A7 B7 by the Consumer Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs ____ 5 Description of the Invention) seeking a cause partial thread is created to handle the request, and starts executing the thread minutes until the request is completed. Then the thread terminates. The maximum number of threads can be set with specific parameters in the XML structure file. If this maximum number is reached, the new request is blocked until at least one prior request is completed and its division is terminated. 3. Partition library. In this model, the generic server starts several specific threads in the structure file at startup. When entering a request, if there is no disjunction, the request waits in the queue until a disjunction is available. The threading model used is specified by the structure file. However, it can also change at execution time. The general server also checks the threading safety attributes of each component it loads. If any of the components it loads are non-threading safe, the server forces it to be a separate threading model. In addition, general server synthesizers deal with thread maintenance issues, such as dealing with broken or hanged threads, and reporting statistics on thread usage. Figures 4A and 4B illustrate a structure file, in which case the server is considered a city code lookup server. This provides the ability for the application server to look up the city code, which is obtained through the customer packaging layer of Figure 1. So if an end user of a travel website enters a city name that is not unique (Portland, Oregon / Portland, Maine) or uses an airport abbreviation (PDX) or misspells the city name, the application server can request a city code lookup to get a Or multiple valid replacements. Referring to Figure 4A, a part of the file lists the attributes of the synthesizer, such as the time over, the splitting strategy, and the maximum number of simultaneous splitting ("maximum splitting"). Part I > 14 This paper size applies to China National Standard (CNS) A4 (210 x 297 public love) (Please read the precautions on the back before filling this page) * 1 = mouth, · 111111 line 丨 · 490639 A7 B7 V. Description of the Invention (ρ)) The internal software components are listed in this section. In this case, start with the component name "City Code Lookup". For each internal component, the structure file indicates a creator's name and location, relationship (not related in this example), and attributes. In the presently preferred embodiment, a component can have three forms of attributes: simplicity, architecture, and order. In this example, the attributes of all the bars are in simple form. The city code checking structure file is continued in Figure 4B. The next component starts with the component name "City Code Restricted Access". Once again, provide the name of the creator and the location of the creator, a database. It doesn't matter in this example, and various attributes are listed again. Therefore, when the city code lookup server or synthesizer processes the initialization, it will read the structure file, establish the recorded general attributes, and then it will load (create) the example of the city code lookup and city code restriction lookup components. This simple form attribute, and the corresponding frame, provide the tools to go around these components. This makes it possible to integrate changes around a given business logic component by simply editing the XML structure file. This structure file also simply defines the order of calling components according to the order of the components in the structure file. This allows new business logic (a new component) to be simply inserted into the corresponding point in the component table in the structure file by inserting the correct point in the existing process. As explained later, a structure file can define relationships or "connections" between components, for example, defining services that components use for other components. From "sequentially, a new component to the correct position in the structure file table to define the relationship with other components, a new logical component can be installed into the entire system without changing any existing source code. In other words, 'above the The component synthesizer architecture of the present invention presents a high-level abstract, but it is still compatible with 15 paper sizes in accordance with the Chinese National Standard (CNS) A4 specification (210 X 297 mm) (please read the precautions on the back before filling this page) Printed by the Consumer Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs
一一0、I «^1 1 a^i 1§ ϋ I n 11 n I —_B1 ϋ·· I n_i am 11 MmMMe In tmmmme I ·ϋ n n ϋ· n n I 經濟部智慧財產局員工消費合作社印製 490639 A7 _ B7 五、發明說明(/分) COBRA架構相容。 圖五A係描述合成器處理Cl及相對應結構檔,,結構 (C1)”的一簡單實例。合成器500包括一旅遊計劃控制其組 件502、一猶太餐組件504及任何其他的商務邏輯組 件”XX”506。圖五B係描述第二個合成器處理510,其包 括先前提及的組件502及504,且引入一新的組件,Amadeus 介面工廠512。該介面工廠視需要建立介面物件,由介面 物件514所描述。該介面工廠組件由在相對應的結構檔,,結 構(C2)”中條列來加入至合成器。該結構檔由於描述的目的 被簡化,在實際的應用中將如圖四A-四B包含更詳細。圖 五C描述另一合成器處理C3,在這實例中係一文件伺服器 合成器。該合成器包括兩個組件,稱作一文件伺服器組件 520及一濾波器統合組件516,如相對應結構檔” Config. (C3)”中所條列。該文件伺服器視需要建立個別的文件,例 如,物件(或”文件”)522及524。 在旅遊網站應用中,一文件將由網站應用伺服器處理 的每一終端使用者”行程”來建立。該應用伺服器維護講習 狀態資訊,及呼叫文件伺服器(文件工廠)以產生一新的文 件,且相反地,可以注意到當相對應的行程結束時,文件 合成器放棄既有的文件。個別的文件物件儲存使用者/行程 資訊,例如一飛行日記,以稍後再描述的XML格式。 圖六係描述以上所描述的軟體系統之操作。參閱圖六, 在旅遊計劃網站上客戶行程的開始,應用伺服器(請看圖 一),使用客戶包裝介面600,做一呼叫602至合成器C2 16 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ----------------------訂·--------1AW-1 (請先閱讀背面之注意事項再填寫本頁) 490639 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(d) 中所顯示的旅遊計劃控制器工廠組件6O4。工廠建立旅遊 計劃控制器實例606的一要求是必然的。該物件606將實 現特定行程的旅遊計劃處理。該客戶包裝600也用做一呼 叫610至文件工廠612,在此情形中,係位於一文件伺服 器合成器C3。該文件工廠612創造文件物件,在此實例中, 文件物件614,用以儲存關於現在行程的資訊。相對應的 旅遊計劃控制器606經由通道616和文件614通訊。 假設現在行程中的終端使用者要求關於指定日期給定 位置之間的航班資訊等。該航班要求資訊經由呼叫620以 XML語法寫入行程文件614。該旅遊計劃控制器(TPC)606 做一呼叫622至Amadeus介面工廠624以要求至CRS的一 介面。該工廠624視要求創造(或從資料庫中特定)一介面 物件626、使它可獲得至TPC。該介面626使用稍後解釋 的一詢問語言,從文件614讀取航班要求資訊627,且以 合適的形式建立航班計劃要求,描述該航班計劃要求至電 腦預約系統640。該介面接收一航班計劃回應且再以XML 語法的格式寫入該資訊至文件614。該客戶包裝600能夠 經由另一呼叫讀取更新的文件,且提供該文件至應用伺服 器,然後,提供該航班資訊至網路伺服器(請看圖一)。注 意該客戶包裝層提供一介面至應用伺服器文件以存取XML 資料。 接著我們假設終端使用者從提供的航班中選擇她的旅 程。該選擇的航班資訊透過所描述的客戶包裝寫入至行程 文件614。在該行程結束之前,各種商務邏輯組件可以被 17 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) • -------—tr---------^ 經濟部智慧財產局員工消費合作社印製 490639 A7 B7 五、發明說明(α) 呼叫以修正及/或確認合適的旅遊計劃資訊。其它的組件能 夠由行程(606)之旅行計劃控制器呼叫,且它們江漢儲存於 相對文件614中的資料互動。多個組件能夠被實現以提供 各種的商務邏輯,如以上所提及,例如定價、座位分配、 折扣特價、里程數累積、貸款和甚至於食物要求。我們由 猶太餐商務邏輯650的方式描述以上的特性。該猶太餐組 件顯示於在合成器C2中配置,且因此出現相對應的結構 檔 652 〇 該猶太餐組件決定猶太餐是否可由終端使用者在航班 要求上獲得。例如,如果猶太餐被要求,旅遊計劃控制器 做一呼叫654至猶太餐組件650。組件650的工作係決定 猶太餐是否可在航班要求上獲得。兩種要求必須被滿足: 第一,起飛的程式必須能夠提供猶太餐、及第二,要提供 猶太餐需預先告知的最少天數是必要的。所需預先告知的 最少天數在執行時間經由結構檔C2將傳送至猶太餐組件, 在稍後會再解釋。因應於呼叫654,猶太餐組件650做一 詢問660至文件614。即要決定對於每一航班區段的兩件 資訊,即起飛日期及起飛城市碼。然後該猶太餐650做一 呼叫662至城市碼查閱組件664以決定指定的起飛城市是 否能夠提供猶太餐。我們假設該資訊可獲得至城市碼查閱, 如據有關於實際的世界上所有商業機場的資訊。如果猶太 餐在指定的起飛城市可獲得,且如果先前的告知符合,以 從訂票(或今日)至起飛的日期之天數來表示,猶太組件650 將修正文件614以指定猶太餐可在相對應的航班區段獲 18 本^張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) (請先閱讀背面之注意事項再填寫本頁) ··___1-1 0, I «^ 1 1 a ^ i 1§ ϋ I n 11 n I —_B1 ϋ ·· I n_i am 11 MmMMe In tmmmme I · ϋ nn ϋ · nn I Printed by the Consumers’ Cooperative of Intellectual Property Bureau of the Ministry of Economic Affairs 490639 A7 _ B7 V. Description of the invention (/ min) The COBRA architecture is compatible. Figure 5A is a simple example of the synthesizer processing Cl and the corresponding structure file, structure (C1). The synthesizer 500 includes a travel plan control component 502, a Kosher meal component 504, and any other business logic components. "XX" 506. Figure 5B depicts the second synthesizer process 510, which includes the previously mentioned components 502 and 504, and introduces a new component, the Amadeus interface factory 512. The interface factory creates interface objects as needed. Described by the interface object 514. The interface factory components are added to the synthesizer by listing in the corresponding structure file, structure (C2) ". This structure file is simplified for the purpose of description, and will be contained in more detail in actual applications as shown in Figures 4A-B. Figure 5C depicts another synthesizer process C3, in this case a file server synthesizer. The synthesizer includes two components, called a file server component 520 and a filter integration component 516, as listed in the corresponding structure file "Config. (C3)". The document server creates individual documents as needed, such as objects (or "documents") 522 and 524. In the travel website application, a document will be created by each end-user "trip" processed by the website application server. The application server maintains the workshop status information and calls the document server (document factory) to generate a new document. Conversely, it can be noted that the document synthesizer discards the existing document when the corresponding trip ends. Individual document objects store user / trip information, such as a flight journal, in XML format as described later. Figure 6 describes the operation of the software system described above. Refer to Figure 6. At the beginning of the customer itinerary on the travel planning website, the application server (see Figure 1), using the customer packaging interface 600, make a call to 602 to the synthesizer C2 16 This paper size applies to China National Standard (CNS) A4 Specifications (210 X 297 mm) ---------------------- Order · -------- 1AW-1 (Please read the note on the back first Please fill in this page again for matters) 490639 A7 B7 printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs V. The travel plan controller factory component 6O4 shown in the description of the invention (d). A requirement for the factory to set up a travel plan controller instance 606 is inevitable. The object 606 will implement the travel plan processing for a specific itinerary. The customer package 600 is also used as a call 610 to the document factory 612, in this case at a document server synthesizer C3. The document factory 612 creates document objects. In this example, the document object 614 is used to store information about the current trip. The corresponding travel plan controller 606 communicates with the file 614 via the channel 616. Suppose the end user in the current itinerary requests flight information, etc., between a given location on a given date. The flight request information is written to the itinerary file 614 in XML syntax via call 620. The travel plan controller (TPC) 606 makes a call 622 to the Amadeus interface factory 624 to request an interface to the CRS. The factory 624 creates (or specifies from the database) an interface object 626 as required, making it available to the TPC. The interface 626 uses a query language explained later, reads flight request information 627 from a file 614, and establishes a flight plan request in a suitable form, describing the flight plan request to the computer reservation system 640. The interface receives a flight plan response and writes the information to a file 614 in XML syntax. The customer package 600 can read the updated document through another call, provide the document to the application server, and then provide the flight information to the web server (see Figure 1). Note that the client packaging layer provides an interface to the application server document to access the XML data. We then assume that the end user chooses her journey from the offered flights. The selected flight information is written to the itinerary document 614 through the customer package described. Before the end of the trip, various business logic components can be adjusted to 17 national standards (CNS) A4 (210 X 297 mm) in this paper size (please read the precautions on the back before filling this page) • ---- ---— tr --------- ^ Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economy 490639 A7 B7 V. Description of Invention (α) Call to correct and / or confirm the appropriate travel plan information. Other components can be called by the travel planning controller of the itinerary (606), and they interact with the data stored in relative file 614 by Jianghan. Multiple components can be implemented to provide various business logic, as mentioned above, such as pricing, seat allocation, discount specials, mileage accumulation, loans and even food requirements. We describe the above characteristics in the manner of Jewish meal business logic 650. The Kosher meal component is shown configured in the synthesizer C2, and a corresponding structure file 652 appears. The Kosher meal component determines whether Kosher meals are available on the flight request by the end user. For example, if a kosher meal is required, the travel plan controller makes a call 654 to a kosher meal component 650. The work of component 650 determines whether Kosher meals are available on flight request. Two requirements must be met: first, the take-off program must be able to provide Kosher meals, and second, the minimum number of days in advance to provide Kosher meals is necessary. The minimum number of days required to be notified in advance will be transmitted to the Jewish meal component via structure file C2 at the execution time, which will be explained later. In response to call 654, the kosher meal assembly 650 makes an inquiry 660 to document 614. That is to determine two pieces of information for each flight segment, namely the departure date and the departure city code. The Kosher meal 650 then makes a call 662 to the city code lookup component 664 to determine if the designated departure city is able to provide Kosher meals. We assume that this information is accessible to the city code, as it is based on information on all commercial airports in the world. If Kosher meals are available in the designated departure city, and if previous notifications are met, expressed as the number of days from booking (or today) to the departure date, Jewish component 650 will amend document 614 to specify that Kosher meals are available The flight segment was awarded 18 ^ sheets in accordance with Chinese National Standard (CNS) A4 specifications (210 X 297 public love) (Please read the precautions on the back before filling this page) ·· ___
· I I I I I I I —I— I —II 490639 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(丨q) 得。獲得該猶太餐能夠以查閱表666來實現,但使用城市 查閱組件將是較佳的,使得機場資訊在一個地方來收集。 旅遊計劃控制器606能夠提供更新資訊至客戶包裝670。 猶太餐組件的一說明實施例在圖七七C被提供。該組件 使用以下所描述的詢問語言以存取儲存在行程文件物件中 的資料。 當然,許多的使用者行程能夠在相同的時間處理。應 用伺服器,經由客戶包裝,將視需要要求旅遊計劃控制器 及從文件工廠之相對應的文件。在圖中BL205僅確認另一 商務邏輯組件。另一組件,在合成器C3中描述,係稱爲” 濾波器統合”的一濾波器組件672。該組件架構包括一般所 謂濾波器的工作。這被使用以修正系統在其上工作的一文 件。檢查該文件且刪除特定資訊係必然的。在該情形中, 濾波器統合具有從文件統合航空公司航班移除的任務,其 出現在航班計劃回應資料中。要加入任何新的濾波器,程 式設計師能夠從基底濾波器類別得到,簡單地寫一個,且 加入至結構檔中的濾波器條列。爲了說明,我們顯示更新 文件674的濾波器統合。 圖七A更詳細地描述C2結構檔。該結構檔,以XML 語法來顯示,以伺服器名稱及伺服器屬性開始。然後,條 列三個內部組件、旅遊計劃控制、猶太餐、Amadeus介面 工廠,如以上所提及。對於每一組件名稱,該結構名稱包 括創造者名字及創造者的資料庫位置。它也包括屬性及和 其他組件的關係,如合適的。對於猶太餐組件,創造者名 19 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) (請先閱讀背面之注意事項再填寫本頁) .· 5 ^ 1 1 1_« ϋ· an· I— n in I I— ϋ_ι ·*1 n aMemm i §mm§ HI 言 务 490639 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(丨f) 字及創造者的資料庫位置被條列。3有一種屬性被顯示, 即簡單形式,稱作”預先告知”且參數値爲5,指出猶太餐 需要在前五天告知。一合成器處理讀取結構檔且在執行時 間提供屬性資訊至猶太組件做爲參數。以這種方式,先前 的告知要求能夠容易地由簡單地編輯XML結構檔來改變。 該檔案也顯示組件猶太餐具有一種關係,其中它使用城市 碼查閱組件。 圖八係航班計劃要求的一實例。航班計劃要求的各種 元件被摘錄在以下的表中: 表一 ·航班計劃要求方法元件條列: 元件:航班計劃 說明:包含所有資訊以執行航班取得及航班計劃要求 且顯示結果。 屬性:無 次元件:要求-以下,1或多個,視需要 元件:要求 說明:包含所有資訊以執行航班取得及航班計劃要求。 屬性:識別碼-唯一的確認 义兀件·要求航班區段-以下,1或多個,視需要 服務的類別-以下,正好1,視需要 乘客形式:以下,1或多個,視需要 有效客機:以下,〇或1,可選擇 元件:要求航班區段 說明:包含一航班詢問的所有資訊。 釐) (請先閱讀背面之注意事項再填寫本頁) --------J叮·--------丨 20 490639 經濟部智慧財產局員工消費合作社印製 A7 五、發明說明(7) 屬性:識別碼-唯一的確認 次元件:起飛-以下,正好1,視需要 到達-以下,正好1,視需要 包括過境城市-以下,〇或1,可選擇 元件:起飛 說明:起飛點說明。 屬性:日期-起飛日期 時間-起飛時間 次元件:城市-旅遊計劃XML,正好1,視需要 元件:到達 說明:到達城市。 屬性:無 次元件:城市_旅遊計劃XML,正好1,視需要 元件:包括過境城市 說明:需要過境城市的條列,其航班選擇必須包括中 途停留的城市 屬性:無 次元件:城市-旅遊計劃XML,正好1,視需要 元件:服務的類別 說明:所有區段客艙要求 屬性:碼-所要求之客臆的客艙碼 次元件:無 元件:有效客機 說明:客機的限制條列,其係爲回程航班可接受 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁)· I I I I I I I —I— I —II 490639 Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs A7 B7 V. Description of Invention (丨 q). Obtaining the Jewish meal can be achieved with a lookup table 666, but it would be better to use the city lookup component so that airport information is collected in one place. The travel plan controller 606 can provide updated information to the customer package 670. An illustrative embodiment of a kosher meal assembly is provided in FIG. 77C. This component uses the query language described below to access the data stored in the trip document object. Of course, many user trips can be processed at the same time. The application server, packaged by the customer, will request the travel plan controller and corresponding documents from the document factory as needed. BL205 only confirms another business logic component in the figure. Another component, described in the synthesizer C3, is a filter component 672 called "filter integration". The component architecture includes what is commonly referred to as a filter. This is used to modify a file on which the system works. It is necessary to check the document and delete specific information. In this case, the filter integration has the task of removing the flight from the document integration airline, which appears in the flight plan response data. To add any new filter, the program designer can get it from the base filter category, simply write one, and add it to the filter bar in the structure file. To illustrate, we show the filter integration of update file 674. Figure VIIA describes the C2 structure in more detail. The structure file is displayed in XML syntax, starting with the server name and server attributes. Then line up the three internal components, travel plan control, kosher meals, and the Amadeus interface factory, as mentioned above. For each component name, the structure name includes the creator name and the creator's database location. It also includes attributes and relationships with other components, as appropriate. For Kosher meal components, the creator name 19 This paper size applies Chinese National Standard (CNS) A4 specifications (210 X 297 public love) (Please read the precautions on the back before filling this page). · 5 ^ 1 1 1_ «ϋ · An · I— n in II— ϋ_ι · * 1 n aMemm i §mm§ HI Words 490639 Printed by the Consumers ’Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs A7 B7 V. Description of invention (丨 f) Character and creator database The locations are listed. 3 There is an attribute that is displayed in a simple form, called "notify in advance" and the parameter 値 is 5, indicating that the Jewish meal needs to be informed in the first five days. A synthesizer handles reading the structure file and provides attribute information to the Jewish component as a parameter at runtime. In this way, previous notification requirements can be easily changed by simply editing the XML structure file. The archive also shows that the component Jewish meal has a relationship in which it uses the city code to look up the component. Figure 8 shows an example of flight plan requirements. The various components required by the flight plan are extracted in the following table: Table 1 · The flight plan request method components are listed: Component: Flight plan Description: Contains all information to perform flight acquisition and flight plan requirements and displays the results. Attributes: None Sub-components: Requirement-The following, 1 or more, as needed Component: Requirement Description: Contains all information to perform flight acquisition and flight planning requirements. Attribute: Identification code-unique confirmation element · required flight segment-below, 1 or more, category of service as required-below, exactly 1, as needed passenger form: below, 1 or more, valid as needed Airliner: The following, 0 or 1, optional components: Request Flight Segment Description: Contains all information requested by a flight. (Please read the notes on the back before filling this page) -------- J Ding · -------- 丨 20 490639 Printed by A7, Consumer Cooperatives, Intellectual Property Bureau, Ministry of Economic Affairs Description of the invention (7) Attribute: identification code-unique confirmation secondary element: takeoff-below, exactly 1, arrive as needed-below, exactly 1, include transit cities as required-below, 0 or 1, optional element: takeoff description : Take-off point description. Attributes: Date-Departure Date Time-Departure Time Secondary Element: City-Travel Plan XML, exactly 1, as needed Element: Arrival Description: Arrival city. Attribute: No secondary element: City_Tourism Plan XML, exactly 1, as needed Element: Include transit cities Description: The list of cities that require transit, the flight selection must include a stopover city Attribute: No secondary element: City-Tourism Plan XML, exactly 1, as needed Component: Category description of the service Requirement: Cabin required attributes for all segments: Code-required cabin code for the passenger component: No component: Valid passenger description: Restrictions for passenger aircraft. The return flight is acceptable for this paper. Applicable to China National Standard (CNS) A4 (210 X 297 mm) (Please read the precautions on the back before filling this page)
一:口 Y ·ϋ 11 —^1 II —^1 ·ϋ ^^1 I «ϋ n —ϋ 8— I— n i in II —ϋ ·ϋ in in i i-i n flu n an Hi n m n I 490639 A7 ______B7 五、發明說明(yD) 屬性:無 次元件:客機-旅遊計劃XML,正好1,視需要 元件:乘客形式 說明:要求取得的乘客數目-所有乘客形式的總數將在 要求中使用 屬性:數目-該形式之乘客的數目 次元件:無 元件:數目選擇 說明:回程航班選擇之最大數目 屬性:値-該形式之乘客的數目 次元件:無 兀件· f/l班選擇 說明:該元件包含使用者想要得到的計劃或取得其上 的資訊之航班數目 屬性:値-航班數目 次元件:無 圖八的實例係顯示實際所有的元件,其可能包括在航 班取得搜尋中,儘管不是他們所有都被要求,如表中所指 出。航班計劃要求中及航班計劃中所有的資訊被儲存在相 對應的行程文件,如以上所提及。圖九A-九B係描述一航 班計劃回應。該回應以相對應的航班計劃要求確認來開始。 該回應具有一確認數字,且包括兩種選擇(航班),選擇確 認數字1及2。 圖十A-十B形成城市碼查閱伺服器結構檔之條列。該 22 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) .·____ 經濟部智慧財產局員工消費合作社印製1: mouth Y · ϋ 11 — ^ 1 II — ^ 1 · ϋ ^^ 1 I «ϋ n —ϋ 8— I— ni in II —ϋ · ϋ in i ii n flu n an Hi nmn I 490639 A7 ______B7 V. Description of the invention (yD) Attribute: No secondary element: Airliner-Travel Plan XML, exactly 1, as needed Element: Passenger form Description: Number of passengers required-Total number of all passenger forms will be used in the request Attribute: Number- Number of passengers in this form Secondary element: No element: Number selection description: Maximum number of return flight options Attribute: 値 -Number of passengers in this form Secondary element: No element · f / l class selection description: This element includes the use of The number of flights attributed to the plan or information that the user wants to get: 値-Number of flights Secondary element: None The example in Figure 8 shows practically all elements that may be included in the flight acquisition search, although not all of them Required, as indicated in the table. All information in the flight plan request and flight plan is stored in the corresponding itinerary file, as mentioned above. Figures IXA-IXB describe the response to a flight plan. The response begins with a corresponding flight plan request confirmation. The response has a confirmation number and includes two options (flights), choosing confirmation numbers 1 and 2. Figures 10A-B form the rows of the city code query server structure file. The 22 paper sizes are in accordance with Chinese National Standard (CNS) A4 (210 X 297 mm) (Please read the precautions on the back before filling out this page.)
一-OT n n ϋ H ϋ i n I I n n I ϋ -n n ϋ n ϋ n n n n n I n n ϋ ϋ I I I 490639 A7 B7 五、發明說明(yj) 檔包括一般屬性(可使用至整個合成器)及內部組件。每一 內部組件”城市碼查閱”及”城市碼限制查閱”具有多個屬 性。又,這些屬性在執行時間傳送至組件當作參數。圖十 一 A-十一 B係描述部分的旅遊計劃控制器合成器結構檔。 該結構檔包括以上所討論形式之一旅遊控制器工廠。 文件組件 該文件組件係內部包含XML文件的一組件,它的外 部介面提供客戶在預定時間設定及解除特定部分文件的能 力。該XML文件最好使用一 C++DOM實現來內部儲存。 然而,大部分的文件使用者將不需要直接處理XML或 DOM,因爲文件資訊大部分的讀取及寫入能夠使用節點及 節點屬性結構來做,使用節點識別碼或一 XQL詢問以確認 一節點或一群節點。 可注意到,行程資料以XML的格式儲存在文件物件 中。圖十二A係描述以XML格式標籤的階層式組合。圖 十二B係描述DOM模組,其中標籤具有三種結構,且每 一節點具有一相對應節點識別碼數字。本發明以它的詢問 語言實現一節點串列觀念。這是標籤的一串列及相對應的 貪口點識別碼。一*節點識別碼係內部唯一的確認’文件處理 使用以確認個別的節點。文件的使用者將不會嘗試決定自 己上面的節點識別碼,而將只使用從文件實例已經獲得的 値,它們係透過類似由詢問得到節點的操作來運作。如果 詢問得到節點的一呼叫成功,然後回覆的節點能夠相信具 有正確的節點識別碼,它們的値或屬性能夠被修正,它們 23 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐)一"一^' (請先閱讀背面之注意事項再填寫本頁) 丨· 線丨· 經濟部智慧財產局員工消費合作社印製 490639 A7 B7 五、發明說明(~y>) 能夠經由節點識別碼更新傳送回文件,且該改變將在文件 中適當的地方來達成。然而,如果這些節點識別碼之一釋 出,該文件儲存一檔案,且一新的文件由相同的檔案建立’ 該節點識別碼將不再有效。 詢問語言 詢問係一字串,其符合已定義的詢問語言。在本發明 最佳實施例中,合適於存取文件內容的一詢問語言係XQL 的子集合(XML詢問語言),其係XSL(可擴充文體語言)的 延伸。這些語言上的更多資訊可公開獲得。接著是包含組 件支援之詢問命令的實例之表,及它們所做的: / 確認根節點 ./ 確認現在文件節點 .·/ 確認現在文件節點的父節點 碼 選擇現在文件節點之兒子的所有碼節點 "碼 選擇現在文件_節點之兒子的所有碼節點 觸 選擇根節點之兒子的所有碼節點 城市/碼 找尋現在文件的所有城市碼兒子,且選 擇所有它們的碼節點兒子 /城市/碼 找尋根節點的所有城市碼兒子,且選擇 所有它們的碼節點兒子 丨丨 在根節點(但不包括)執行一遞迴下傳開使 .// 在現在文件(但不包括)執行一遞迴下傳開 始 //碼 選擇在文件中任何地方的碼節點 ·//碼 選擇現在文件以下任何地方的碼節點 24 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) (請先閱讀背面之注意事項再填寫本頁) --------訂·-------- 經濟部智慧財產局員工消費合作社印製 490639 Α7 Β7 五、發明說明θ') 城市/* 找尋現在文件的所有城市碼兒子,且選 擇所有它們的碼節點兒子 */城市 選擇現在文件的所有城市孫子 /城市/ / 找尋係根節點的兒子之所有城市碼節 點,且在每一個(但不包括)執行一遞迴下 傳開始 城市"碼 找尋係現在文件的兒子之所有城市碼節 點,且選擇所有它們的碼節點兒子 / /城市馬 找尋在文件內所有的城市碼,且選擇所 有它們的碼節點兒子 城市/@確認 找尋現在文件的所有城市碼兒子,且從 每一個僅選擇屬性 城市/@* 找尋現在文件的所有城市碼兒子,且從 每一個僅選擇屬性(不包括節點之名稱及 値) 城市[@確認] 選擇係現在文件的兒子之所有城市碼節 點,且具有一確認屬性 城市[碼] 選擇係現在文件的兒子之所有城市碼節 點,且具有至少它們自己的一碼兒子節 點 城市[@確認=”我的城市] 選擇係現在文件的兒子之所有城市碼節 點,且它的確認屬性値爲”我的城市” 本發明違反符號文件支援的標準XQL,包括加入!運 算子當作//性能的修正。XQL定義//運算子係在特定節點一 遞迴下傳開始。因此,·//將指出一遞迴下傳開始,但不包 括現在的文件節點。這在我們的XQL之使用是很明顯的, 因爲一共用的XQL詢問將找尋特定的節點且選擇它們及它 們的後裔。例如,你可以想要選擇文件中任何地方所有城 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) .·____ 經濟部智慧財產局員工消費合作社印製 一一口 τ I n ^^1 *1^ ϋ— ϋ— mtmmMm I ϋ m ϋ— II 11 ·ϋ flu Ha 11 m ·ϋ —ϋ m —ϋ n m ϋ ϋ II >ϋ ·ϋ flu - 490639 A7 經濟部智慧財產局員工消費合作社印製 ___B7____五、發明說明(^) 市節點及它們的後裔。由文句隨著XQL,你能夠寫入詢問// 城市,其將選擇文件中任何地方所有的城市節點’但將不 選擇它們的後裔。你將也寫入"城市//’其將找尋文件中任 何地方所有的城市節點’且選擇它們的後裔’但不包括城 市節點本身。因此,你將必須至少兩次詢問以選擇城市節 點及它們的後裔,一潛在昂貴的處理是否透過網路來完成, 且將一次回應混亂的結果。我們的解決方案係允許一!運算 子,直接隨著//,以修正//的作用來包括開始的節點。這將 允許以下的詢問: 找尋係根節點的兒子之所有城市碼節點,且在每一個 (且包括)執行一遞迴下傳開始。 找尋係現在文件的兒子之所有城市碼節點,找尋它們 的碼後裔,在每一個(且包括)執行一遞迴下傳開始。 選擇現在文件或現在文件以下任何地方的所有碼節點 (非常輕微的差異)。 找尋係現在文件的兒子之所有城市碼節點,且選擇所 有它們的碼後裔。在這種情形中,!係無用的,因爲它 將修正//的作用以檢查每一城市節點,看它是否係一碼 節點,其明顯地從未是真實的。 找尋在文件內所有的城市碼,且選擇所有它們的碼節 點兒子。又,這裡!係無用的,因爲它將修正//的作用 以檢查每一城市節點,看該根節點是否係一城市節點, 其將從未是真實的,因爲該根節點係文件而不是XML 26 國國孓標準(CNS)A4規格(210 X 297公釐) /城市/ /! 城市/ /碼/ /! • / /!碼 城市/ /!碼 / /!城市/碼 J · (請先閱讀背面之注意事項再填寫本頁)-OT n n ϋ H ϋ i n I I n n I ϋ -n n ϋ n ϋ n n n n n n n ϋ ϋ I I I 490639 A7 B7 V. Description of the invention (yj) file includes general attributes (can be used to the entire synthesizer) and internal components. Each of the internal components "city code lookup" and "city code restricted lookup" has multiple attributes. Also, these attributes are passed to the component as parameters at execution time. Fig. 11 A-Eleven B. Describe the structure of the travel plan controller synthesizer. The structure file includes a tour controller factory in one of the forms discussed above. File component This file component is a component that contains XML files internally. Its external interface provides customers with the ability to set and release specific parts of files at a predetermined time. The XML file is preferably stored internally using a C ++ DOM implementation. However, most document users will not need to process XML or DOM directly, because most of the reading and writing of document information can be done using nodes and node attribute structures, using node identifiers or an XQL query to confirm a node Or a group of nodes. Note that the itinerary data is stored in the document object in XML format. Figure 12A illustrates a hierarchical combination of tags in XML format. Figure 12B is a description of the DOM module. The tag has three structures, and each node has a corresponding node identification number. The present invention implements a node tandem concept with its query language. This is a list of tags and the corresponding point of identification. A * node identification code is the only internal confirmation 'file processing used to identify individual nodes. The user of the file will not try to determine the node ID on it, but will only use the 値 that has been obtained from the file instance. They operate through operations similar to those obtained by querying the node. If a call to a node is successful, then the responding node can believe that it has the correct node identification code, and their attributes or attributes can be modified. These 23 paper standards are applicable to the Chinese National Standard (CNS) A4 specification (210 X 297 public). Li) one " one ^ '(Please read the notes on the back before filling in this page) 丨 · Line 丨 · Printed by the Intellectual Property Bureau Employee Consumer Cooperative of the Ministry of Economic Affairs 490639 A7 B7 V. Description of the invention (~ y >) The node ID update is transmitted back to the file, and the change will be made where appropriate in the file. However, if one of these node IDs is released, the file stores a file, and a new file is created from the same file 'The node ID will no longer be valid. Query language A query is a string of characters that conforms to a defined query language. In the preferred embodiment of the present invention, a query language suitable for accessing file content is a subset of XQL (XML query language), which is an extension of XSL (Extensible Stylistic Language). More information in these languages is publicly available. Next is a table containing examples of query commands supported by the component, and what they do: / Confirm the root node. / Confirm the current file node. / / Confirm the parent node code of the current file node Select all code nodes that are children of the current file node " Code Select Now File_All Code Nodes of Sons of Nodes Touch Select All Code Nodes of Sons of Root Nodes to Find All City Code Sons of Current Files and Select All Their Code Node Sons / Cities / Codes to Find Root All city code children of the node, and select all their code node children 丨 丨 Perform a recursive download at the root node (but not included). // Perform a recursive download at the current file (but not included) Start // code selection code node anywhere in the file // code selection now code node anywhere in the file 24 This paper size applies to China National Standard (CNS) A4 specifications (210 X 297 public love) (Please read first Note on the back, please fill in this page) -------- Order · -------- Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economy 490639 Α7 Β7 V. Invention Explanation θ ') city / * find all city code sons of the current file and select all their code node sons * / city select all city grandsons / cities of the current file // find all city code nodes of the son of the root node, And in each (but not including) perform a recursive download to start the city " code search, find all the city code nodes of the son of the current file, and select all their code nodes son // city horse to find all the City code, and select all their code node son cities / @ confirm to find all city code sons of the current file, and select only the attribute city from each @@ * find all city code sons of the current file, and select only from each Attribute (excluding node name and 节点) City [@OK] Select all city code nodes of the son of the current file and have a confirmation attribute City [Code] Select all city code nodes of the son of the current file and have At least their own one-node son node city [@ confirmed = ”my city] select all the sons of the current file City code node, and its confirmation attribute is "My City" The present invention violates the standard XQL supported by symbol files, including the addition of the! Operator as a // performance modification. The XQL definition // operator is on a specific node. Recursive download begins. Therefore, // will indicate that a recursive download begins, but does not include the current file node. This is obvious in our use of XQL, because a common XQL query will look for a specific Nodes and select them and their descendants. For example, you may want to select all urban paper sizes anywhere in the file to apply Chinese National Standard (CNS) A4 specifications (210 X 297 mm) (Please read the precautions on the back before (Fill in this page). · ____ Printed by the Consumer Cooperative of the Intellectual Property Bureau of the Ministry of Economic Affairs τ I n ^^ 1 * 1 ^ ϋ— ϋ— mtmmMm I ϋ m ϋ— II 11 · ϋ flu Ha 11 m · ϋ — ϋ m —ϋ nm ϋ ϋ II > ϋ · ϋ flu-490639 A7 Printed by the Consumer Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs ___B7____ V. Invention Description (^) City nodes and their descendants. With the sentence along with XQL, you can write the query // city, which will select all the city nodes anywhere in the file ’but will not select their descendants. You will also write " City // 'which will find all city nodes anywhere in the file' and select their descendants' but not the city node itself. Therefore, you will have to ask at least twice to select urban nodes and their descendants, whether a potentially expensive process is done over the internet, and will respond to the chaotic results once. Our solution allows an! Operator to follow // directly to include the starting node with the effect of //. This will allow the following queries: Find all city code nodes that are the children of the root node, and perform a recursive download at each (and including) start. Find all the city code nodes of the sons of the current document, find their code descendants, and perform a recursive download on each (and including) to begin. Select all code nodes in the current file or anywhere below the current file (very slight difference). Find all city code nodes that are the sons of the current file and select all their code descendants. In this case,! It is useless because it will modify the effect of // to check each city node to see if it is a yard node, which is obviously never true. Find all city codes in the file and select all their code node sons. Again, here! Is useless, because it will modify the role of // to check each city node to see if the root node is a city node. It will never be true because the root node is a file and not XML 26 National Standard (CNS) A4 (210 X 297 mm) / City / /! City / / Code / /! • / /! Code City // / Code / /! City / Code J · (please first (Read the notes on the back and fill out this page)
一5JI n n I ϋ n ϋ ϋ I I n H ϋ n 1 n n I n ϋ I ϋ n I n n I I n i I n I 490639 A7 ______B7 五、發明說明 節點。 當使用一詢問時,現在文件是一重要觀念。如果詢問 以’/’開始,其從根開始,其係文件樹的基底。然而,如果 不是以V’開始,從現在文件開始。在其他技術中,現在文 件是類似於一指標或游標,代表文件中特定的位置。一旦 現在文件被設定,其將維持直到淸楚地改變或直到該文件 被破壞。這允許詢問僅被使用在文件之特定位置’如果需 要的話。 某些由詢問操作的運算,例如由詢問設定現在文件及 在詢問加入節點,僅能夠在詢問於文件中指定一單獨節點 時,執行他們的功能。在其他運算中,例如由詢問得到節 點,詢問能夠指定及選擇多個節點。使用這些形式詢問的 一簡單實例,係在圖七B-七C之實例的猶太餐中所描述。 對於熟習本技術者將是很明顯的’本發明以上所描述的實 施例之細節可以做許多的改變,不違反它們的基礎原則。 本發明的範圍因此將僅由以下之申請專利範圍所決定。. (請先閱讀背面之注意事項再填寫本頁) ·· 訂.丨 線丨-- 經濟部智慧財產局員工消費合作社印製 27 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐)5JI n n I ϋ n ϋ ϋ I I n H ϋ n 1 n n I n ϋ I ϋ n I n n I I n i I n I 490639 A7 ______B7 V. Description of the node. When using a query, documentation is now an important concept. If the query starts with '/', it starts at the root, which is the base of the file tree. However, if it does not start with V ', it starts with the current file. In other technologies, the file is now similar to an indicator or cursor, representing a specific location in the file. Once the file is now set, it will remain until it is changed neatly or until the file is destroyed. This allows queries to be used only at specific locations of the file 'if needed. Some operations that are performed by a query, such as setting a current file by a query and adding a node to a query, can only perform their functions when a query specifies a single node in the file. In other operations, for example, nodes are obtained from a query, and a query can specify and select multiple nodes. A simple example of using these forms of inquiry is described in the Jewish meal of the examples of Figures 7B-C. It will be apparent to those skilled in the art that the details of the embodiments of the present invention described above can be changed in many ways without violating their basic principles. The scope of the invention will therefore only be determined by the scope of the following patent applications. (Please read the precautions on the back before filling this page) ·· Order. 丨 Line 丨-Printed by the Employees ’Cooperatives of the Intellectual Property Bureau of the Ministry of Economic Affairs 27 This paper size applies to China National Standard (CNS) A4 (210 X 297 Mm)
Claims (1)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15649999P | 1999-09-28 | 1999-09-28 | |
US18494500P | 2000-02-25 | 2000-02-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW490639B true TW490639B (en) | 2002-06-11 |
Family
ID=26853240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW89120058A TW490639B (en) | 1999-09-28 | 2000-09-28 | A software component-container framework for dynamic deployment of business logic components in a distributed object environment |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1222539A1 (en) |
AU (1) | AU7734100A (en) |
TW (1) | TW490639B (en) |
WO (1) | WO2001024003A1 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2823932B1 (en) * | 2001-04-23 | 2003-06-27 | Intaan Technology | SYSTEM AND METHOD FOR DYNAMIC DISTRIBUTION OF DATA AND / OR SERVICES |
AUPS173802A0 (en) * | 2002-04-16 | 2002-05-23 | Camms Pty Ltd | Data collection system using remotely configurable scripting |
AU2002303070A1 (en) * | 2002-05-16 | 2003-12-02 | Agency For Science, Technology And Research | A computing system deployment method |
US7765521B2 (en) | 2002-08-29 | 2010-07-27 | Jeffrey F Bryant | Configuration engine |
US8006224B2 (en) | 2005-04-15 | 2011-08-23 | Research In Motion Limited | System and method for unified visualization of two-tiered applications |
EP1712987A1 (en) * | 2005-04-15 | 2006-10-18 | Research In Motion Limited | System and Method for Unified Visualization of Two-Tiered Applications |
DE102005041628B4 (en) * | 2005-09-01 | 2012-12-27 | Siemens Ag | Apparatus and method for processing data of different modalities |
US7739690B2 (en) | 2007-04-26 | 2010-06-15 | Microsoft Corporation | Meta-container for model-based distributed applications |
US8225308B2 (en) * | 2007-10-26 | 2012-07-17 | Microsoft Corporation | Managing software lifecycle |
US8015213B2 (en) | 2008-06-26 | 2011-09-06 | Microsoft Corporation | Content having native and export portions |
CN107957893A (en) * | 2017-12-20 | 2018-04-24 | 四川九洲电器集团有限责任公司 | A kind of software flow and function dynamic realizing method |
CN112631797B (en) * | 2020-12-18 | 2024-09-20 | 京东科技控股股份有限公司 | Method and device for configuring service system |
CN112558949B (en) * | 2020-12-21 | 2024-05-28 | 长沙树根互联技术有限公司 | Program construction method, program construction device, electronic equipment and storage medium |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5515508A (en) * | 1993-12-17 | 1996-05-07 | Taligent, Inc. | Client server system and method of operation including a dynamically configurable protocol stack |
KR960008583A (en) * | 1994-08-26 | 1996-03-22 | 윌리암 티. 엘리스 | Data Processing Systems and Methods for Managing Data Processing Systems |
US5822580A (en) * | 1996-01-19 | 1998-10-13 | Object Technology Licensing Corp. | Object oriented programming based global registry system, method, and article of manufacture |
JP3622313B2 (en) * | 1996-01-29 | 2005-02-23 | 株式会社日立製作所 | Document management system |
-
2000
- 2000-09-28 EP EP00967087A patent/EP1222539A1/en not_active Withdrawn
- 2000-09-28 AU AU77341/00A patent/AU7734100A/en not_active Abandoned
- 2000-09-28 WO PCT/US2000/026789 patent/WO2001024003A1/en not_active Application Discontinuation
- 2000-09-28 TW TW89120058A patent/TW490639B/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP1222539A1 (en) | 2002-07-17 |
AU7734100A (en) | 2001-04-30 |
WO2001024003A1 (en) | 2001-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8032890B2 (en) | Resources managing in isolated plurality of applications context using data slots to access application global data and specification of resources lifetime to access resources | |
Mendling et al. | EPC markup language (EPML): an XML-based interchange format for event-driven process chains (EPC) | |
US7370335B1 (en) | System and method for providing a public application program interface | |
US8176083B2 (en) | Generic data object mapping agent | |
US6560633B1 (en) | Method for creating network services by transforming an XML runtime model in response to an iterative input process | |
US20090006997A1 (en) | Workflow ui generating method and generator | |
TW490639B (en) | A software component-container framework for dynamic deployment of business logic components in a distributed object environment | |
US20020129345A1 (en) | Scripting business logic in a distributed object oriented environment | |
EP1225508A1 (en) | A universal software application | |
JP2004280821A (en) | Software business process model | |
US7055134B2 (en) | Service provider integration framework in object oriented programming environment | |
JP2004280820A (en) | Framework for supporting business software application | |
JP2013530464A (en) | Integrated workflow and database transactions | |
US20130047135A1 (en) | Enterprise computing platform | |
US20030144860A1 (en) | Dynamic conversation logic selection method and system | |
US7890540B2 (en) | Browsing meta data for an enterprise service framework | |
JP2003141173A (en) | Database management system and database | |
JP2003015869A (en) | Program, method and system for supporting development | |
US7076779B2 (en) | System for controlling and monitoring a process | |
Sung et al. | A component-based product data management system | |
Selfridge et al. | Managing design knowledge to provide assistance to large-scale software development | |
Heilig et al. | SAP NetWeaver: The Official Guide | |
OO et al. | A Model-driven Ontology Approach for Developing Service System Applications | |
Maschke | Execution and Re-evaluation of BPMN Processes | |
Aberer et al. | Separating business process from user interaction utilizing process-aware XSLT stylesheets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent | ||
MM4A | Annulment or lapse of patent due to non-payment of fees |