两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

在模型中描述預(yù)期實(shí)體關(guān)系的制作方法

文檔序號(hào):6476911閱讀:225來源:國知局
專利名稱:在模型中描述預(yù)期實(shí)體關(guān)系的制作方法
在模型中描述預(yù)期實(shí)體關(guān)系
背景
諸如商業(yè)過程和組織結(jié)構(gòu)等軟件和非軟件系統(tǒng)可以使用當(dāng)前可用的建模 語言來建模。存在眾多包括圖形記法來創(chuàng)建系統(tǒng)的抽象模型的通用建模語言。
各模型可以使用諸如可擴(kuò)展標(biāo)記語言(XML)、統(tǒng)一建模語言(UML)、標(biāo) 準(zhǔn)通用標(biāo)記語言(SGML)等標(biāo)記語言來串行化。
抽象模型可以由用戶圖形地査看,或由軟件工具解釋來確定實(shí)體之間的關(guān) 系。例如,資產(chǎn)管理器程序可以訪問描述公司中的硬件和軟件資產(chǎn)的模型以管 理資產(chǎn)的配置。
在定義通用模型和本體時(shí),用戶在模型中創(chuàng)建常見類型的實(shí)體以及連接實(shí) 體的關(guān)系。在模型中定義葉實(shí)體時(shí),用戶可能想要突出顯示(例如,為工具和 應(yīng)用程序)可能存在于實(shí)體之間的特定通用關(guān)系。通用關(guān)系的某些示例是依賴 性和合成。在現(xiàn)有方法中,關(guān)系是通過子類型化模型中的現(xiàn)存關(guān)系實(shí)體并將所 引用的實(shí)體特別地限制為該子類型中的目標(biāo)來定義的。然而,使用這種方法, 模型的表示迅速因不增加語義(例如,多重性中無變化,且除了限制所引用的 實(shí)體外沒有特性或?qū)傩缘脑黾?的眾多子類型化實(shí)體而變得混亂。此外,必須 將實(shí)體之間的通用關(guān)系與特別突出顯示的關(guān)系兩者都保留在模型中。在模型中 聲明實(shí)體之間的關(guān)系的現(xiàn)有方法導(dǎo)致了難于解釋且不向模型增加語義的高度 復(fù)雜、混亂的模型。
另--現(xiàn)有方法是使用關(guān)于通用關(guān)系的預(yù)期目標(biāo)的信息來更新每一解釋模 型的應(yīng)用程序,而不是在模型中聲明預(yù)期目標(biāo)。然而,使用這種方法,每次有 對預(yù)期目標(biāo)的改變都必須更新每一應(yīng)用程序。
概述
本發(fā)明的各實(shí)施例在表示系統(tǒng)中的對象的模型中描述預(yù)期實(shí)體關(guān)系。在一 實(shí)施例中,本發(fā)明包括模型中的各實(shí)體之間的預(yù)期但非必要關(guān)系的顯式聲明。模型中的各實(shí)體的現(xiàn)存數(shù)據(jù)類型定義被重用且非專用。將目標(biāo)數(shù)據(jù)類型定義成 包括關(guān)于預(yù)期與引用實(shí)體相關(guān)的實(shí)體以及通過哪個(gè)關(guān)系相關(guān)的數(shù)據(jù)。目標(biāo)數(shù)據(jù) 類型定義的實(shí)例被包括在引用實(shí)體的數(shù)據(jù)類型定義內(nèi)以將預(yù)期目標(biāo)實(shí)體與該 引用實(shí)體相關(guān)。
提供本概述是為了以簡化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的 一些概念。該概述不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不 旨在用于幫助確定所要求保護(hù)的主題的范圍。
其它特征的一部分將是顯而易見的, 一部分將在下文中指出。
附圖簡述


圖1是示出標(biāo)記語言文檔從數(shù)據(jù)源到數(shù)據(jù)接收者的傳送的示例性框圖。
圖2是示出具有嵌入在引用實(shí)體的數(shù)據(jù)類型定義內(nèi)的目標(biāo)數(shù)據(jù)類型定義 的實(shí)例的架構(gòu)的示例性框圖。
圖3是示出引用數(shù)據(jù)類型定義內(nèi)的預(yù)期目標(biāo)數(shù)據(jù)的插入的示例性流程圖。
圖4是具有嵌入在另一數(shù)據(jù)類型定義內(nèi)的預(yù)期目標(biāo)數(shù)據(jù)的XML架構(gòu)的示 例性實(shí)施例。
相應(yīng)的附圖標(biāo)記在全部附圖中指示相應(yīng)的部分。
詳細(xì)描述
本發(fā)明的各實(shí)施例涉及在由架構(gòu)類型聲明所表示的對象或過程的模型中 顯式地聲明預(yù)期關(guān)系。此信息有用于工具和應(yīng)用程序優(yōu)化其性能和顯示。例如, 一模型表示機(jī)架及其硬件組件和依賴性。對應(yīng)于該機(jī)架的實(shí)體(例如,基本實(shí) 體或其它引用實(shí)體)由統(tǒng)一建模語言(UML)中的類定義或可擴(kuò)展標(biāo)記語言 (XML)中的元素定義來表示。此實(shí)體可以具有它A己與其它基本實(shí)體之間的 若干預(yù)期但非必要關(guān)系。例如,該機(jī)架可以依賴于外部冷卻組件。預(yù)期關(guān)系在 基本實(shí)體的定義中(例如,作為元數(shù)據(jù))來表明,而不是子類型化依賴性關(guān)系 實(shí)體(例如,如元數(shù)據(jù))來使它專用于該機(jī)架和冷卻組件。此方法在不使模型 錯(cuò)亂和混亂的情況下傳達(dá)預(yù)期關(guān)系。
模型可以被串行化或以其它方式由諸如XML等標(biāo)記語言來表示。盡管在此處參考XML來描述本發(fā)明的一些方面,但是本發(fā)明的各方面可與任何形式 的基于文本的標(biāo)記語言或基于UML的圖形呈現(xiàn)一起操作。
預(yù)期關(guān)系出現(xiàn)在模型的標(biāo)記語言串行化中。例如,<ExpectedTargets> (預(yù) 期目標(biāo))元素的實(shí)例位于例如類型或元素聲明的〈xs:appinfO (應(yīng)用信息)標(biāo) 簽內(nèi)(例如,在〈xs:annotatior^ (注釋)標(biāo)簽內(nèi))。使用這種方法,在類型或 元素聲明內(nèi)聲明預(yù)期關(guān)系,同時(shí)直接使用通用關(guān)系而無需重新定義。
接著參考圖1,示例性框圖示出文檔202通過一個(gè)或多個(gè)網(wǎng)絡(luò)208、 210 從數(shù)據(jù)源204到數(shù)據(jù)接收者206的傳送。在其它實(shí)施例中,網(wǎng)絡(luò)208、 210中 的一個(gè)或多個(gè)不存在。文檔202可以是元語言文檔、標(biāo)記語言文檔、元標(biāo)記語 言文檔、基于標(biāo)簽的語言文檔、或其它圖形或基于文本的模型描述。
標(biāo)記語言提供用于以開放的、基于文本的格式交換數(shù)據(jù)的統(tǒng)一方法。標(biāo)記 語言包括傳達(dá)數(shù)據(jù)的一組代碼(例如,標(biāo)簽)以使諸如文檔202等文檔以及其 它文件能夠在應(yīng)用程序之間是平臺(tái)無關(guān)且高度可移植的。標(biāo)記語言中的元素是 包括起始標(biāo)簽、結(jié)束或關(guān)閉標(biāo)簽、以及標(biāo)簽之間或之內(nèi)所包括的信息、內(nèi)容、 或其它數(shù)據(jù)的結(jié)構(gòu)構(gòu)造。起始標(biāo)簽被格式化為<標(biāo)簽名>而結(jié)束標(biāo)簽被格式化為 </標(biāo)簽名>。在文檔202中,起始和結(jié)束標(biāo)簽可被嵌套在其它起始和結(jié)束標(biāo)簽 內(nèi)。每一元素形成此結(jié)構(gòu)中的節(jié)點(diǎn),并可能具有子、葉、或分支節(jié)點(diǎn)。子節(jié)點(diǎn) 表示出現(xiàn)在父節(jié)點(diǎn)的起始與結(jié)束標(biāo)簽之間的任何元素。
文檔202的結(jié)構(gòu)由架構(gòu)212、架構(gòu)文檔、或相似結(jié)構(gòu)來定義。架構(gòu)212定 義了文檔的合法構(gòu)件塊,包括元素聲明、子元素、屬性、數(shù)據(jù)類型、元素的數(shù) 據(jù)值、元素和屬性的默認(rèn)和固定值、以及其它特性和值。例如,可以在架構(gòu)中 在類型聲明內(nèi)使用諸如串、日期、日期時(shí)間、持續(xù)時(shí)間、時(shí)區(qū)、小數(shù)、數(shù)值、 整數(shù)等標(biāo)準(zhǔn)數(shù)據(jù)類型。
盡管標(biāo)記語言支持各種標(biāo)準(zhǔn)數(shù)據(jù)類型,但程序員可在架構(gòu)中定義其它數(shù)據(jù) 類型(例如,簡單和復(fù)雜數(shù)據(jù)類型兩者)。為使用一數(shù)據(jù)類型,在文檔202中 聲明此類型的元素并隨后實(shí)例化該元素。給定數(shù)據(jù)類型的元素的實(shí)例化可以在 創(chuàng)建時(shí)被分配值并隨后被更新或移除。
在圖1的示例中,數(shù)據(jù)源204向數(shù)據(jù)接收者206提供數(shù)據(jù)。該數(shù)據(jù)被嵌入 在文檔202中。文檔202根據(jù)標(biāo)準(zhǔn)化標(biāo)記語言句法來格式化,且還遵從架構(gòu)212。據(jù)。架構(gòu)212對應(yīng) 于表示系統(tǒng)中的對象的模型。
數(shù)據(jù)接收者206接收文檔202且在解析和解釋文檔202時(shí)可能遇到文檔 202內(nèi)或架構(gòu)212中所定義的元素的一個(gè)或多個(gè)實(shí)例。 一般而言,數(shù)據(jù)接收者 參考架構(gòu)212來標(biāo)識(shí)對應(yīng)于所遇到的實(shí)例的數(shù)據(jù)元素和類型定義。如果數(shù)據(jù)接 收者發(fā)現(xiàn)元素未在架構(gòu)212中定義或以其它方式指定,則數(shù)據(jù)接收者206可以 顯示錯(cuò)誤。如果在架構(gòu)212中找到該文檔元素,則數(shù)據(jù)接收者206在解析或解 釋文檔202時(shí)使用從架構(gòu)212所獲得的信息。
盡管架構(gòu)212被示為存儲(chǔ)在可由數(shù)據(jù)源204訪問或與數(shù)據(jù)源204相關(guān)聯(lián)的 存儲(chǔ)器區(qū)域214中,但架構(gòu)212或其副本還可由數(shù)據(jù)接收者206訪問(例如, 存儲(chǔ)在可由數(shù)據(jù)接收者206訪問的存儲(chǔ)器區(qū)域中)。
本發(fā)明的各方面可以使用計(jì)算機(jī)形式的通用計(jì)算設(shè)備來實(shí)現(xiàn)。通常,計(jì)算 機(jī)的數(shù)據(jù)處理器通過在不同時(shí)間存儲(chǔ)在計(jì)算機(jī)的各種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中 的指令來編程。本發(fā)明的各實(shí)施例可以在由一個(gè)或多個(gè)計(jì)算機(jī)或其他設(shè)備執(zhí)行 的諸如程序模塊等計(jì)算機(jī)可執(zhí)行指令的通用上下文中描述并實(shí)現(xiàn)。計(jì)算設(shè)備可 訪問或關(guān)聯(lián)于諸如存儲(chǔ)例如架構(gòu)212的存儲(chǔ)器區(qū)域214等計(jì)算機(jī)可讀介質(zhì)。計(jì) 算機(jī)可讀介質(zhì)包括易失性與非易失性介質(zhì)、可移動(dòng)與不可移動(dòng)介質(zhì),其可以是 任何可由服務(wù)器訪問的可用介質(zhì)。作為示例而非限制,計(jì)算機(jī)可讀介質(zhì)包括計(jì) 算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指 令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性與 非易失性、可移動(dòng)與不可移動(dòng)介質(zhì)。例如,計(jì)算機(jī)存儲(chǔ)介質(zhì)包括RAM、 ROM、 EEPROM、閃存或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它 光盤存儲(chǔ)、磁帶盒、磁帶、磁盤存儲(chǔ)或其他磁存儲(chǔ)設(shè)各、或可以用于存儲(chǔ)所需 信息并可由計(jì)算設(shè)備訪問的任何其它介質(zhì)。通信介質(zhì)--般以諸如載波或其它傳 輸機(jī)制等已調(diào)制數(shù)據(jù)信號(hào)來體現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它 數(shù)據(jù),并且包括任何信息傳遞介質(zhì)。本領(lǐng)域技術(shù)人員熟悉已調(diào)制數(shù)據(jù)信號(hào),其 -個(gè)或多個(gè)特征以將信息編碼在該信號(hào)中的方式來設(shè)置與改變。諸如有線網(wǎng)絡(luò) 或直接線連接等有線介質(zhì),以及如聲學(xué)、RF、紅外線及其它無線介質(zhì)等無線介 質(zhì)都是通信介質(zhì)的示例。以上的任一種的組合也包括在計(jì)算機(jī)可讀介質(zhì)的范圍之內(nèi)。
接著參考圖2, 一框圖示出示例性架構(gòu)302。示例性架構(gòu)302包括若干數(shù) 據(jù)類型定義,這些數(shù)據(jù)類型定義包括"關(guān)系的預(yù)期目標(biāo)" (ExpectedTargetofRelationship)數(shù)據(jù)類型定義310(例如,目標(biāo)數(shù)據(jù)類型定義)、 "實(shí)體1" (Entityl)數(shù)據(jù)類型定義312、"由實(shí)體1導(dǎo)出的實(shí)體2" (Entity2DerivedFromEntityl)數(shù)據(jù)類型定義314、"關(guān)系"(Relationship)數(shù) 據(jù)類型定義316、以及"由實(shí)體1導(dǎo)出的實(shí)體3" (Entity3DerivedFromEntity 1) 數(shù)據(jù)類型定義308 (例如,引用數(shù)據(jù)類型定義)。該"由實(shí)體1導(dǎo)出的實(shí)體3" 數(shù)據(jù)類型定義308包括"關(guān)系的預(yù)期目標(biāo)"數(shù)據(jù)類型定義310的實(shí)例306。實(shí) 例306包括具有關(guān)于預(yù)期關(guān)系和目標(biāo)實(shí)體的數(shù)據(jù)的目標(biāo)數(shù)據(jù)類型元素304。目 標(biāo)數(shù)據(jù)類型元素304包括目標(biāo)數(shù)據(jù)(例如,關(guān)于預(yù)期實(shí)體和關(guān)系,如對"關(guān)系" 數(shù)據(jù)類型定義316的引用)且屬于由"關(guān)系的預(yù)期目標(biāo)"數(shù)據(jù)類型定義310所 定義的類型。所導(dǎo)出的實(shí)體"實(shí)體2"和"實(shí)體3"表示"實(shí)體1"的特殊化。 例如,實(shí)體l對應(yīng)于通用硬件,實(shí)體2對應(yīng)于機(jī)殼,實(shí)體3對應(yīng)于機(jī)架,以及 "關(guān)系"數(shù)據(jù)類型定義316表示"被包含于"。
實(shí)例306位于"由實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類型定義308的公知或標(biāo)準(zhǔn) 化位置中。例如,實(shí)例306可以位于諸如〈xs:applnfo〉或〈xs:annotation〉等"由 實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類型定義308的元素中。 一般而言,〈xs:applnf(^和 〈xs:annotation〉元素是"由實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類型定義308的元素內(nèi)的 標(biāo)準(zhǔn)、可用元素。這些元素通常用于XML代碼的應(yīng)用程序?qū)游臋n編制。然而, 實(shí)例306可被存儲(chǔ)在"由實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類型定義308的任何一部 分中。可以在〈xs:applnfo〉和〈xs:annotation〉元素內(nèi)聲明多個(gè)實(shí)例。
一般而言,圖1和圖2表示用于在諸如"由實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類 型定義308等基本實(shí)體的數(shù)據(jù)類型聲明的定義中利用諸如"關(guān)系的預(yù)期目標(biāo)" 數(shù)據(jù)類型定義310等預(yù)定義數(shù)據(jù)類型定義的系統(tǒng)。實(shí)例306因此可應(yīng)用于"由 實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類型定義308的所有實(shí)例。
實(shí)例306的XML定義的示例如下所示。
<xs :element name="ExpectedTargets"> <xs:annotation>〈xs:documentation:Mlk類型的元素被置于xs:appinfo中來允許諸如 依賴性或合成等通用、繼承引用的"預(yù)期"目標(biāo)(元素或類型)的定 義。此外,可以指示對目標(biāo)的引用的實(shí)例的預(yù)期數(shù)量(如果沒有指定, 則可以有任意數(shù)量的實(shí)例)。 一示例是指示機(jī)架包含一個(gè)或多個(gè)機(jī)殼 (即,使用"ChildRef"元素且預(yù)期其引用"ChassisType"的多個(gè)實(shí) 例)并要求備用電源(即,使用"RequiredElementRef"元素且預(yù)期 其引用"PowerSourceType"的一個(gè)實(shí)例)。</xs:documentation>
</xs :annotation> <xs:complexType <xs:scqu6iic6>
<xs:element name="TargetDetails" type-"TargetDetailsType" minOccurs="0" maxOccurs="unbounded7> </xs:s6qucnc6> </xs:complexType> </xs:element>
<xs :complexType name="TargetDetailsType"> <xs:annotation>
〈xs:documentation〉包含(作為子元素)由referenceQName屬性所 定義的引用的目標(biāo)的實(shí)體。</xs:documentation> </xs :annotation> <xs:s6qu6nc6> <xs:element name="TargetQName" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> 〈xs:documentation〉特定目標(biāo)實(shí)體(類型或元素)和對此實(shí)體 的引用的預(yù)期數(shù)量。</xs:documentation> </xs :annotation> <xs:complexType> <xs:simpleContent>
<xs:extension base="xs:QName"> <xs: attribute name=" expectedNumber" type="xs:unsignedByte" use="optional"/>
10</xs:extension> </xs:simpleContent> </xs :complexType> </xs:element> </xs:sequence>
<xs: attribute name="referenceQName" type="xs:QName" use="required"A>
</xs:complexType>
在實(shí)例306的以上示例中,referenceQName (引用Q名稱)對應(yīng)于"關(guān)系" 數(shù)據(jù)類型定義316。
一般而言,架構(gòu)302被表示為存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上的數(shù)據(jù)結(jié)構(gòu)。本發(fā) 明的各方面包括其中具有任何數(shù)量和次序的字段的數(shù)據(jù)結(jié)構(gòu),或可與該數(shù)據(jù)結(jié) 構(gòu)一起操作。在一實(shí)施例中,圖2中的示例性數(shù)據(jù)結(jié)構(gòu)包括用于存儲(chǔ)"由實(shí)體 l導(dǎo)出的實(shí)體3"數(shù)據(jù)類型定義308的第一字段。該"由實(shí)體1導(dǎo)出的實(shí)體3" 數(shù)據(jù)類型定義308對應(yīng)于對象模型中的基本實(shí)體。"由實(shí)體1導(dǎo)出的實(shí)體3" 數(shù)據(jù)類型定義308內(nèi)的公知位置將"關(guān)系的預(yù)期目標(biāo)"數(shù)據(jù)類型定義310的實(shí) 例306存儲(chǔ)在該數(shù)據(jù)結(jié)構(gòu)的第二字段中。實(shí)例306包括一個(gè)或多個(gè)目標(biāo)數(shù)據(jù)類 型元素304的實(shí)例,這些實(shí)例中的每一個(gè)都描述預(yù)期通過指定關(guān)系(例如,經(jīng) 山"關(guān)系"數(shù)據(jù)類型定義316的實(shí)例)與基本實(shí)體相關(guān)聯(lián)的一個(gè)或多個(gè)目標(biāo)實(shí) 體。計(jì)算設(shè)備執(zhí)行計(jì)算機(jī)可讀指令來實(shí)例化"由實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類 型定義308和"關(guān)系"數(shù)據(jù)類型定義316以將基本實(shí)體的實(shí)例與目標(biāo)數(shù)據(jù)類型 元素304中所定義的數(shù)據(jù)類型相關(guān)聯(lián)。這些實(shí)例對應(yīng)于架構(gòu)302中的定義。
接著參考圖3,示例性流程圖示出引用數(shù)據(jù)類型定義內(nèi)的預(yù)期目標(biāo)數(shù)據(jù)的 插入。 一般而言,為引用或關(guān)系的預(yù)期目標(biāo)定義顯式標(biāo)簽。該標(biāo)簽和內(nèi)容被置 于XML文檔內(nèi)的公知且標(biāo)準(zhǔn)位置中(例如,在XML文檔的xs:annotation部 分內(nèi))。參考現(xiàn)存元素或類型定義來具體地定義實(shí)體的通用關(guān)系的目標(biāo)元素和 類型??梢杂袩o限數(shù)量的對目標(biāo)的引用,或可以在目標(biāo)數(shù)據(jù)類型元素中的一個(gè) 中顯式地指定該數(shù)量。
參考圖3,示例性流程圖示出在引用數(shù)據(jù)類型定義內(nèi)插入預(yù)期目標(biāo)數(shù)據(jù)以 顯式地聲明模型中實(shí)體之間的預(yù)期關(guān)系。在401處在標(biāo)記語言文檔中創(chuàng)建標(biāo)簽(例如,諸如在XML文檔中的架構(gòu)類型聲明)。在402處定義描述模型中的 預(yù)期實(shí)體的元素。在404處定義模型中的基本實(shí)體和關(guān)系實(shí)體。例如,定義預(yù) 期實(shí)體中的一個(gè)的預(yù)期數(shù)量。如果在406處有要定義的額外實(shí)體,則在404處 定義這些額外實(shí)體。如果在408處任何已定義的實(shí)體都不可重用通過推導(dǎo)分層 結(jié)構(gòu)來繼承的通用關(guān)系(例如,專用化),則本發(fā)明的實(shí)施例中的該過程停止。 可能需要發(fā)生預(yù)定義或現(xiàn)存關(guān)系的子類型化以對各實(shí)體建模。
如果在408處這些已定義實(shí)體中的至少一個(gè)可以重用通過推導(dǎo)分層結(jié)構(gòu) 來繼承的通用關(guān)系(例如,預(yù)定義或現(xiàn)存關(guān)系),則該過程在410處繼續(xù)。預(yù) 定義或現(xiàn)存關(guān)系包括例如,"被包含于"、"的一部分"、以及"被包括在"。 在410處,如果不應(yīng)該給出關(guān)于預(yù)期實(shí)體和關(guān)系的提示,則本發(fā)明的實(shí)施例中 的該過程停止。如果在410處應(yīng)該給出關(guān)于預(yù)期實(shí)體和關(guān)系的提示,則在412 處創(chuàng)建預(yù)期目標(biāo)的實(shí)例并將其插入到實(shí)體的定義中的公知位置中。
圖3中的實(shí)施例的操作可以由被組織成存儲(chǔ)在一個(gè)或多個(gè)計(jì)算機(jī)可讀介 質(zhì)上的一個(gè)或多個(gè)計(jì)算機(jī)可執(zhí)行組件的計(jì)算機(jī)可執(zhí)行指令來實(shí)現(xiàn)。本發(fā)明的各 實(shí)施例包括被配置成執(zhí)行計(jì)算機(jī)可執(zhí)行指令的處理器(未示出)。在執(zhí)行時(shí), 這些計(jì)算機(jī)可執(zhí)行指令實(shí)現(xiàn)本發(fā)明的各方面。本發(fā)明的各方面可以用任何數(shù)量 的這些組件或模塊及其任何組織來實(shí)現(xiàn)。例如,本發(fā)明的各方面不限于在各附 圖中示出和本文中描述的特定的計(jì)算機(jī)可執(zhí)行指令或者特定的組件或模塊。本 發(fā)明的其它實(shí)施例可以包括具有比在本文中示出和描述的更多或更少的功能 的不同計(jì)算機(jī)可執(zhí)行指令或組件。
在操作中,本發(fā)明的各方面包括顯式地聲明模型中的預(yù)期實(shí)體與引用實(shí)體
之間的預(yù)期關(guān)系的方法。該引用實(shí)體具有與其相關(guān)聯(lián)的引用數(shù)據(jù)類型定義。該 方法包括
在標(biāo)記語言架構(gòu)類型聲明中創(chuàng)建預(yù)期目標(biāo)標(biāo)簽;
定義描述該模型中的一個(gè)或多個(gè)預(yù)期實(shí)體的一個(gè)或多個(gè)元素;
標(biāo)識(shí)預(yù)定義實(shí)體關(guān)系;
將預(yù)期目標(biāo)標(biāo)簽與所定義的元素和所標(biāo)識(shí)的預(yù)定義實(shí)體關(guān)系相關(guān)聯(lián);以

將該預(yù)期目標(biāo)標(biāo)簽和相關(guān)聯(lián)的元素與實(shí)體關(guān)系置于引用實(shí)體的引用數(shù)
12據(jù)類型定義中以聲明預(yù)期實(shí)體與引用實(shí)體之間的關(guān)系。
通過重用預(yù)定義關(guān)系,無需子類型化這些預(yù)定義關(guān)系。 本發(fā)明的實(shí)施例中的方法還包括
從標(biāo)記語言架構(gòu)中標(biāo)識(shí)數(shù)據(jù)類型定義,所述數(shù)據(jù)類型對應(yīng)于模型中的引
用實(shí)體;
定義描述預(yù)期與引用實(shí)體相關(guān)聯(lián)的一個(gè)或多個(gè)實(shí)體的一個(gè)或多個(gè)元素;
標(biāo)識(shí)用于將預(yù)期實(shí)體與引用實(shí)體相關(guān)聯(lián)的預(yù)定義實(shí)體關(guān)系,所述預(yù)期實(shí) 體具有與其相關(guān)聯(lián)的目標(biāo)數(shù)據(jù)類型定義,所述引用實(shí)體具有與其相關(guān)聯(lián)的引用
數(shù)據(jù)類型定義;
將所定義的元素和所定義的關(guān)系與標(biāo)簽相關(guān)聯(lián);
將標(biāo)簽與相關(guān)聯(lián)的元素和關(guān)系一起插入到目標(biāo)數(shù)據(jù)類型定義的實(shí)例中;
以及
將目標(biāo)數(shù)據(jù)類型定義的實(shí)例置于引用數(shù)據(jù)類型定義中以將模型中的預(yù) 期實(shí)體與引用實(shí)體相關(guān)。
接著參考圖4, XML架構(gòu)的一示例性實(shí)施例具有嵌入在數(shù)據(jù)類型定義內(nèi) 的預(yù)期目標(biāo)數(shù)據(jù)的實(shí)例。在圖4的示例中,架構(gòu)開發(fā)者調(diào)出預(yù)期被插入到機(jī)架 中的事物以及機(jī)架的預(yù)期依賴性。這允許了為這些預(yù)期元素定制應(yīng)用程序或工 具。機(jī)架通常包含一個(gè)或多個(gè)機(jī)殼、以及很可能不超過一個(gè)的監(jiān)視器或鍵盤(例 如,作為"ChildRef(子引用)"引用的實(shí)例)。此夕卜,機(jī)架作為"RequiredElementRef (耍求的元素引用)"引用的實(shí)例依賴于備用電源。該機(jī)架如圖4所示地聲明。
在圖4中,ChildRef引用對應(yīng)于圖2中的"關(guān)系"數(shù)據(jù)類型定義316。 "RackType (機(jī)架類型)"對應(yīng)于圖2中的"由實(shí)體1導(dǎo)出的實(shí)體3"數(shù)據(jù)類 型定義308。
"ExpectedTargets (預(yù)期目標(biāo))"對應(yīng)于閣2中的"關(guān)系的預(yù)期 目標(biāo)"數(shù)據(jù)類型定義的實(shí)例306。
"ChassisType (機(jī)殼類型)"對應(yīng)于圖2中 的"由實(shí)體1導(dǎo)出的實(shí)體2"數(shù)據(jù)類型定義314。
此處所描述的計(jì)算機(jī)可執(zhí)行指令和組件構(gòu)成用于重用與引用實(shí)體相關(guān)聯(lián) 的預(yù)定義數(shù)據(jù)類型定義以定義描述引用實(shí)體的關(guān)系的目標(biāo)數(shù)據(jù)類型的示例性 裝置。在引用實(shí)體的聲明內(nèi)突出顯示該引用實(shí)體的各種通用關(guān)系的目標(biāo)。此處 所描述的計(jì)算機(jī)可執(zhí)行指令和組件還構(gòu)成用于定義描述期望與引用實(shí)體相關(guān)
13聯(lián)的一個(gè)或多個(gè)實(shí)體的一個(gè)或多個(gè)元素的示例性裝置。
盡管結(jié)合示例性計(jì)算系統(tǒng)環(huán)境進(jìn)行了描述,但本發(fā)明的各實(shí)施例可用于眾 多其它通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置。計(jì)算系統(tǒng)環(huán)境不旨在對本發(fā)明的任何 方面的使用范圍或功能提出任何限制。而且,計(jì)算系統(tǒng)環(huán)境不應(yīng)被解釋為對在 示例性操作環(huán)境中所示組件的任何一個(gè)或組合有任何依賴性或要求。適用于本 發(fā)明各方面的公知的計(jì)算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于個(gè)人計(jì) 算機(jī)、服務(wù)器計(jì)算機(jī)、手持式或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的 系統(tǒng)、機(jī)頂盒、可編程消費(fèi)電子產(chǎn)品、移動(dòng)電話、網(wǎng)絡(luò)PC、小型機(jī)、大型機(jī)、 包括上述系統(tǒng)或設(shè)備中的任一個(gè)的分布式計(jì)算機(jī)環(huán)境等。
在操作中,計(jì)算機(jī)執(zhí)行諸如在各附圖中所示出以及在此處所描述的計(jì)算機(jī) 可執(zhí)行指令來實(shí)現(xiàn)本發(fā)明的各方面。
除非另有指定,否則此處所示和所述的本發(fā)明各實(shí)施例的操作的執(zhí)行或進(jìn) 行的次序不是必需的。B卩,除非另有指明,否則各操作可按照任何次序執(zhí)行, 且本發(fā)明的實(shí)施例可以包括比本文所公開的更多或更少的操作。例如,構(gòu)想了 在另一操作之前、同時(shí)或之后執(zhí)行或進(jìn)行--特定操作是在本發(fā)明各方面的范圍 之內(nèi)的。
當(dāng)介紹本發(fā)明或其實(shí)施例的各方面的各元素時(shí),冠詞"一"、"一個(gè)"、 "該"和"所述"指的是存在該元素的一個(gè)或多個(gè)。術(shù)語"包括"、"包含"、 "具有"旨在是包括性的并且指的是可以有除所列元素之外的其它元素。
在詳細(xì)描述了本發(fā)明的各方面之后,可以清楚,修改和變化是有可能的, 而不背離所附權(quán)利要求書中定義的本發(fā)明各方面的范圍。不背離本發(fā)明各方面 的范圍的情況下,可對以上構(gòu)造、產(chǎn)品和方法進(jìn)行各種改變,以上描述中所包 含的以及在附圖中所示出的所有一切旨在應(yīng)被解釋為說明性并且沒有限制意 義。
權(quán)利要求
1.一種顯式地聲明模型中的預(yù)期實(shí)體與引用實(shí)體之間的預(yù)期關(guān)系的方法,所述引用實(shí)體具有與其相關(guān)聯(lián)的引用數(shù)據(jù)類型定義,所述方法包括在標(biāo)記語言架構(gòu)類型聲明中創(chuàng)建預(yù)期目標(biāo)標(biāo)簽(302);定義描述所述模型中的一個(gè)或多個(gè)預(yù)期實(shí)體的一個(gè)或多個(gè)元素(304);標(biāo)識(shí)預(yù)定義實(shí)體關(guān)系(316);將所述預(yù)期目標(biāo)標(biāo)簽與所定義的元素(304)和所標(biāo)識(shí)的預(yù)定義實(shí)體關(guān)系(316)相關(guān)聯(lián);以及將所述預(yù)期目標(biāo)標(biāo)簽和相關(guān)聯(lián)的所述元素(304)與所述預(yù)定義實(shí)體關(guān)系(316)置于所述引用實(shí)體的引用數(shù)據(jù)類型定義中以聲明所述預(yù)期實(shí)體與所述引用實(shí)體之間的關(guān)系。
2. 如權(quán)利要求1所述的方法,其特征在于,定義所述一個(gè)或多個(gè)元素包括 定義表示所述預(yù)期實(shí)體中的一種的預(yù)期數(shù)量的元素。
3. 如權(quán)利要求1所述的方法,其特征在于,在所述標(biāo)記語言架構(gòu)類型聲明 中創(chuàng)建所述預(yù)期目標(biāo)標(biāo)簽包括在可擴(kuò)展標(biāo)記語言(XML)文檔中創(chuàng)建所述預(yù)期 目標(biāo)標(biāo)簽。
4. 如權(quán)利要求1所述的方法,其特征在于,將所述預(yù)期目標(biāo)標(biāo)簽和相關(guān)聯(lián) 的元素與實(shí)體關(guān)系置于所述引用數(shù)據(jù)類型定義中包括將所定義的元素和所述 預(yù)定義實(shí)體關(guān)系嵌入到所述引用數(shù)據(jù)類型定義中的注釋數(shù)據(jù)類型元素內(nèi)。
5. 如權(quán)利要求1所述的方法,其特征在于,將所述預(yù)期目標(biāo)標(biāo)簽和相關(guān)聯(lián) 的元素與實(shí)體關(guān)系置于所述引用數(shù)據(jù)類型定義中包括將所已定義的元素和所 述預(yù)定義實(shí)體關(guān)系嵌入到所述引用數(shù)據(jù)類型定義中的應(yīng)用信息數(shù)據(jù)類型元素 內(nèi)。
6. 如權(quán)利要求1所述的方法,其特征在于,所述模型中的所述--個(gè)或多個(gè) 預(yù)期實(shí)體表示系統(tǒng)中的對象。
7. 如權(quán)利要求1所述的方法,其特征在于,創(chuàng)建所述預(yù)期目標(biāo)標(biāo)簽包括創(chuàng) 建〈ExpectedTargets〉標(biāo)簽。
8. 如權(quán)利要求1所述的方法,其特征在于,還包括以圖形或文本形式來顯 示所述模型。
9. 如權(quán)利要求1所述的方法,其特征在于, 一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)具 有用于執(zhí)行如權(quán)利要求1所述的方法的計(jì)算機(jī)可執(zhí)行指令。
10. —種用于引用與實(shí)體相關(guān)聯(lián)的預(yù)定義數(shù)據(jù)類型定義來定義描述所述實(shí)體的關(guān)系的目標(biāo)數(shù)據(jù)類型的系統(tǒng),所述系統(tǒng)包括用于存儲(chǔ)對應(yīng)于表示系統(tǒng)中的對象的模型的標(biāo)記語言架構(gòu)(212)的存 儲(chǔ)器區(qū)域(214);以及被配置為執(zhí)行計(jì)算機(jī)可執(zhí)行指令的處理器,所述指令用于從所述標(biāo)記語言架構(gòu)(212)中標(biāo)識(shí)數(shù)據(jù)類型定義,所述數(shù)據(jù)類型 對應(yīng)于所述模型中的引用實(shí)體;定義描述預(yù)期與所述引用實(shí)體相關(guān)聯(lián)的一個(gè)或多個(gè)實(shí)體的一個(gè)或 多個(gè)元素(304);標(biāo)識(shí)用于將所述預(yù)期實(shí)體與所述引用實(shí)體相關(guān)聯(lián)的預(yù)定義實(shí)體關(guān) 系(316),所述預(yù)期實(shí)體具有與其相關(guān)聯(lián)的目標(biāo)數(shù)據(jù)類型定義,所述引用實(shí) 體具有與其相關(guān)聯(lián)的引用數(shù)據(jù)類型定義;將所定義的元素(304)和所定義的關(guān)系(316)與標(biāo)簽相關(guān)聯(lián); 將所述標(biāo)簽與相關(guān)聯(lián)的元素(304)和關(guān)系(316) —起插入到所述目標(biāo)數(shù)據(jù)類型定義的實(shí)例中;以及將所述目標(biāo)數(shù)據(jù)類型定義的實(shí)例(306)置于所述引用數(shù)據(jù)類型定義中以將所述模型中的所述預(yù)期實(shí)體與所述引用實(shí)體相關(guān)。
11. 如權(quán)利要求10所述的系統(tǒng),其特征在于,還包括用于重用與實(shí)體 相關(guān)聯(lián)的預(yù)定義數(shù)據(jù)類型定義來定義描述所述實(shí)體的關(guān)系的目標(biāo)數(shù)據(jù)類型的 裝置。
12. 如權(quán)利要求10所述的系統(tǒng),其特征在于,還包括用于定義描述預(yù) 期與所述引用實(shí)體相關(guān)聯(lián)的一個(gè)或多個(gè)實(shí)體的所述一個(gè)或多個(gè)元素的裝置。
13. 如權(quán)利要求10所述的系統(tǒng),其特征在于,所述處理器還被配置成 執(zhí)行用于顯示所述模型中的所述引用數(shù)據(jù)類型定義的計(jì)算機(jī)可執(zhí)行指令。
14. 如權(quán)利要求10所述的系統(tǒng),其特征在于,所述存儲(chǔ)器區(qū)域以遵從 統(tǒng)一建模語言(UML)的格式存儲(chǔ)標(biāo)記語言架構(gòu)。
15. 如權(quán)利要求10所述的系統(tǒng),其特征在于,所述處理器還被配置成執(zhí)行用于通過參考存儲(chǔ)在所述存儲(chǔ)器區(qū)域中的所述標(biāo)記語言架構(gòu)來解釋所述 引用數(shù)據(jù)類型定義的計(jì)算機(jī)可執(zhí)行指令。
16. 如權(quán)利要求10所述的系統(tǒng),其特征在于,所述處理器還被配置成 執(zhí)行用于將目標(biāo)數(shù)據(jù)與所定義的一個(gè)或多個(gè)元素相關(guān)聯(lián)的計(jì)算機(jī)可執(zhí)行指令, 其中所述相關(guān)聯(lián)的目標(biāo)數(shù)據(jù)描述預(yù)期與所述引用實(shí)體相關(guān)聯(lián)的所述一個(gè)或多 個(gè)實(shí)體。
17. 如權(quán)利要求10所述的系統(tǒng),其特征在于,所述標(biāo)記語言架構(gòu)描述 硬件配置,所述引用實(shí)體包括計(jì)算設(shè)備,且所述一個(gè)或多個(gè)實(shí)體包括鍵盤和監(jiān) 視器。
18. —種其上存儲(chǔ)有表示系統(tǒng)模型的數(shù)據(jù)結(jié)構(gòu)的計(jì)算機(jī)可讀介質(zhì),所述 數(shù)據(jù)結(jié)構(gòu)包括用于存儲(chǔ)引用數(shù)據(jù)類型定義的第一字段,所述引用數(shù)據(jù)類型定義對應(yīng)于 所述對象模型中的引用實(shí)體;以及所述第一字段中的所述引用數(shù)據(jù)類型定義內(nèi)的用于存儲(chǔ)目標(biāo)數(shù)據(jù)類型 定義的實(shí)例(306)的第二字段,所述實(shí)例(306)包括一個(gè)或多個(gè)目標(biāo)數(shù)據(jù)類 型元素(304)的實(shí)例,每一所述元素(304)的實(shí)例描述預(yù)期根據(jù)預(yù)定義實(shí)體 關(guān)系與所述引用實(shí)體相關(guān)聯(lián)的一個(gè)或多個(gè)目標(biāo)實(shí)體,其中計(jì)算設(shè)備執(zhí)行執(zhí)行計(jì) 算機(jī)可執(zhí)行指令來實(shí)例化存儲(chǔ)在所述第一字段中的所述引用數(shù)據(jù)類型定義; 根據(jù)所述預(yù)定義關(guān)系將所實(shí)例化的引用數(shù)據(jù)類型定義與存儲(chǔ)在所 述第二字段中的所述目標(biāo)數(shù)據(jù)類型定義的實(shí)例(306)相關(guān)聯(lián)以將所述引用實(shí) 體與所述預(yù)期目標(biāo)實(shí)體相關(guān);以及將所實(shí)例化的引用數(shù)據(jù)類型定義存儲(chǔ)在標(biāo)記語言文檔中,所述標(biāo)記 語言文檔表示所述系統(tǒng)模型。
19. 如權(quán)利要求18所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述第二字 段被存儲(chǔ)在所述第一字段中的所述引用數(shù)據(jù)類型定義的注釋元素內(nèi)。
20. 如權(quán)利要求18所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述第二字 段被存儲(chǔ)在所述第一字段中的所述引用數(shù)據(jù)類型定義的應(yīng)用信息元素內(nèi)。
全文摘要
在目標(biāo)數(shù)據(jù)類型定義的實(shí)例內(nèi)定義目標(biāo)數(shù)據(jù)類型以便包括在引用數(shù)據(jù)類型定義中來聲明模型中的預(yù)期實(shí)體關(guān)系。模型對應(yīng)于例如軟件、商業(yè)過程、或組織結(jié)構(gòu)。目標(biāo)數(shù)據(jù)類型使用目標(biāo)數(shù)據(jù)定義一個(gè)或多個(gè)元素。目標(biāo)數(shù)據(jù)描述根據(jù)預(yù)定義實(shí)體關(guān)系預(yù)期與引用實(shí)體相關(guān)的實(shí)體。使用現(xiàn)存引用數(shù)據(jù)類型定義來聲明預(yù)期實(shí)體關(guān)系。在一實(shí)施例中,所定義的目標(biāo)數(shù)據(jù)類型包括擴(kuò)展標(biāo)記語言(XML)文檔中的標(biāo)簽。
文檔編號(hào)G06F17/00GK101663663SQ200880012521
公開日2010年3月3日 申請日期2008年3月20日 優(yōu)先權(quán)日2007年4月20日
發(fā)明者A·R·威斯特瑞恩, N·G·卡安 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
海门市| 南岸区| 沈丘县| 陕西省| 灵武市| 类乌齐县| 塔城市| 长宁区| 安西县| 饶平县| 南部县| 包头市| 海城市| 龙南县| 南木林县| 喜德县| 浙江省| 三明市| 敦化市| 巧家县| 吴堡县| 五家渠市| 巧家县| 阳曲县| 含山县| 通辽市| 卢湾区| 策勒县| 牟定县| 新龙县| 镇雄县| 买车| 通海县| 福州市| 图们市| 关岭| 明星| 枣强县| 金沙县| 邹城市| 马边|