專利名稱::虛擬內(nèi)容儲存庫的系統(tǒng)和方法
技術領域:
:本發(fā)明公開涉及內(nèi)容管理,具體涉及使內(nèi)容版本化(versioning)并且提供可限定的內(nèi)容生命周期。
背景技術:
:內(nèi)容儲存庫管理和提供對大容量數(shù)據(jù)存儲的訪問,所述大量數(shù)據(jù)存儲例如報紙檔案庫、廣告、詳細目錄(inventory)、圖像集合等。內(nèi)容儲存庫可以是諸如門戶那樣的網(wǎng)絡應用的關鍵組件,其必須響應于用戶的交互而迅速地提供不同類型的內(nèi)容。然而,當試圖整合一個以上的賣主的內(nèi)容儲存庫時可能出現(xiàn)困難。每個內(nèi)容儲存庫可能具有其自己的專有的應用程序接口和內(nèi)容服務(例如,用于搜索和操縱內(nèi)容、版本化、生命周期和數(shù)據(jù)格式的約定)。而且,每次將儲存庫添加至應用時,該應用軟件必須被修改以便適應這些差異。所需要的是一種一致的系統(tǒng)和方法,用于與完全不同的儲存庫交互并且用于對所有儲存庫(包括那些缺少這種服務的儲存庫)提供一套統(tǒng)一的內(nèi)容服務。圖1是本發(fā)明的各種實施例中的功能性系統(tǒng)層的示例性圖示。圖2是本發(fā)明的各種實施例中的生命周期的示例性圖示。圖3是在各種實施例中調(diào)用生命周期的外部情景(scenario)的示例性圖示。圖4是本發(fā)明的各種實施例中的示例性用戶接口。圖5是在本發(fā)明的各種實施例中能被用來將儲存庫連接至VCR的對象/接口的示例性圖示。圖6是在本發(fā)明的各種實施例中能被用作服務模型的對象/接口的示例性圖示。圖7是根據(jù)本發(fā)明的各種實施例當禁止VCR內(nèi)容服務時的內(nèi)容創(chuàng)建的示例性圖示。圖8是根據(jù)本發(fā)明的各種實施例當使能VCR內(nèi)容服務時的內(nèi)容創(chuàng)建的示例性圖示。圖9是根據(jù)本發(fā)明的各種實施例當使能內(nèi)容服務時修改VCR中的節(jié)點的示例性圖示。圖10是根據(jù)本發(fā)明的各種實施例當使能內(nèi)容服務時在VCR中公布的節(jié)點的示例性圖示。圖11是根據(jù)本發(fā)明的各種實施例當使能內(nèi)容服務時隱退(retire)VCR中的節(jié)點的示例性圖示。具體實施例方式在附圖部分的圖中作為示例而不是作為限制圖示本發(fā)明的方面,在附圖中相似的標記表示類似的元素。應當注意在此7>開中對"一(an)"、"一個(one)"和"各種"實施例的引用未必是針對相同的實施例,并且這種引用意p未著至少一個。在下面的描述中,陳述許多特定細節(jié)以便提供對本發(fā)明的全面描述。然而,本領域的技術人員將很清楚在沒有這些特定細節(jié)的情況下也可以使本發(fā)明付諸實踐。在其它實例中,沒有詳細描述公知特征以便不使本發(fā)明難以理解。圖1.是根據(jù)本發(fā)明的各種實施例的功能性系統(tǒng)層的示例性圖示。盡管此圖將組件描繪成在邏輯上是分離的,但是這樣的描繪只是出于說明的目的。本領域的技術人員將很清楚此圖中所繪制的組件可被任意組合或劃分成分立的軟件、固件和/或硬件。而且,本領域的技術人員也將很清楚這樣的組件,無論它們是如何組合或劃分的,都能在相同的計算設備上執(zhí)行,或者能夠分布在通過一個或多個網(wǎng)絡、或其它適合的通信手段連接的不同計算設備中。內(nèi)容儲存庫112表示可搜索的數(shù)據(jù)存儲。這樣的系統(tǒng)能夠將結構化內(nèi)容和非結構化內(nèi)容(例如,數(shù)字掃描的紙質文檔、可擴展標記語言、便攜式文檔格式、超文本標記語言、電子郵件、圖像、視頻和音頻流、原始二進制數(shù)據(jù)等)關聯(lián)進可搜索的語料庫(corpus)。內(nèi)容儲存庫能夠耦合至內(nèi)容管理系統(tǒng),或者與內(nèi)容管理系統(tǒng)整合在一起。內(nèi)容管理系統(tǒng)能夠提供內(nèi)容生命周期管理、版本化、內(nèi)容查看和批準、自動內(nèi)容分類、事件驅動的內(nèi)容處理、進程跟蹤和到其它系統(tǒng)的內(nèi)容傳送。舉例來說,如果用戶在網(wǎng)絡門戶上填寫一個貨涼欠申請,那么該門戶能夠將該申請轉發(fā)給內(nèi)容儲存庫,內(nèi)容儲存庫進而聯(lián)系銀行系統(tǒng)、接收貨款批準的通知、在該儲存庫中更新該貨款申請并且通過以適合該網(wǎng)絡門戶的格式呈現(xiàn)該批準信息來通知該用戶。一虛擬或聯(lián)合的內(nèi)容儲存庫(以下稱為"VCR,,)是一個或多個單獨的內(nèi)容儲存庫的邏輯表示,使得它們從應用層120的立場作為單個內(nèi)容儲存庫出現(xiàn)和作為。VCR也能夠將內(nèi)容服務添加到自身缺少所述內(nèi)容服務的儲存庫中。在各種實施例中并且作為說明,這能夠通過使用API(應用程序接口)100和SPI(服務提供者接口)102而部分地實現(xiàn)。API描述所述應用層中的實體能夠如何與某些程序邏輯或功能接口。應用層能夠包括使用所述API的應用及其細分,諸如進程、線程、小服務程序、小門戶服務程序(portlet)、對象、庫和其它適合的應用組件。SPI描述服務提供者(例如,內(nèi)容儲存庫、內(nèi)容管理系統(tǒng))能夠如何被整合到某種系統(tǒng)中。所述SPI將與儲存庫的直接交互從API隔離。在各種實施例中,這能夠在運行時實現(xiàn),在運行時期間API庫動態(tài)地鏈接至SPI庫或者加載SPI庫。在另一實施例中,SPI能夠作為服務器進程的一部分,使得API和SPI能夠通過網(wǎng)絡通信。SPI能夠使用任何數(shù)目的手段與所述儲存庫通信,所述手段包括但不限于共享的存儲器、遠程過程調(diào)用和/或通過一個或多個中間服務器進程。API和SPI能夠被規(guī)定為類/接口、數(shù)據(jù)結構和/或方法/功能的集合,其共同工作以便提供一編程手段,通過其能夠訪問和利用(多個)VCR服務。作為說明,能夠以面向對象的編程語言來詳細描述API和SPI,所述面向對象的編禾呈i吾言例如Java丁M(可,人California的MountainView的SimMicrosystems有限公司得到)和C弁(可從Washington的Redmond的Microsoft公司得到)。API和SPI能夠以幾種方式顯露(expose),包括但不限于"l爭態(tài)庫、動態(tài)l連接庫、分布式對象、服務器、類/接口實例和其它適合的手段。在各種實施例中,API向應用層提供所有儲存庫的統(tǒng)一視圖,使得從該應用層啟動的導航、CRUD操作(創(chuàng)建、讀取、更新、刪除)、版本化、生命周期和搜索操作像所述儲存庫是一個儲存庫那樣對它們進行操作。實現(xiàn)SPI的儲存庫能夠"插入,,VCR。SPI包括在儲存庫等級上支持API功能的一套接口和服務。API和SPI共享內(nèi)容模型,所述內(nèi)容模型將所有儲存庫的組合內(nèi)容表示為分層的節(jié)點名稱空間(namespace)。假設一節(jié)點N、在層次上低于N的節(jié)點被稱為N的子,而在層次上高于N的節(jié)點被稱為N的父。該層次的最頂部的級別被稱為聯(lián)合根。對等級的深度沒有限制。在各種實施例中,儲存庫為聯(lián)合根的子。每個儲存庫自身能夠具有子。作為說明,內(nèi)容挖掘功能(miningfacility)104、進程/線程106、標記庫108、集成開發(fā)環(huán)境(IDE)llO和其它庫118都可以使用API以便與VCR交互。IDE可以為用戶提供交互地建立生命周期和/或內(nèi)容視圖的能力。內(nèi)容挖掘功能可以包括基于參數(shù)從VCR中自動提取內(nèi)容的服務。JavaServerPages標記庫使門戶能夠與VCR交互并且使其內(nèi)容出現(xiàn)在網(wǎng)頁上。(可以從SunMicrosystems有卩艮公司得到JavaServerPagesTM)。此外,本領域的技術人員將很清楚許多其它類型的應用和軟件組件使用API并且同樣完全落在本公開的范圍和精神內(nèi)。在各種實施例中,API可以包括改進與VCR的交互性能的優(yōu)化??梢允褂靡粋€或多個高速緩沖存儲器116來緩沖搜索結果和/或最近訪問的節(jié)點。在各種實施例中,高速緩沖存儲器可以包括節(jié)點高速緩沖存儲器和二進制高速緩沖存儲器。節(jié)點高速緩沖存儲器可以被用于提供對最近訪問的節(jié)點的快速訪問,而二進制高速緩沖存儲器可以被用來提供對與節(jié)點高速緩沖存儲器中的每個節(jié)點相關聯(lián)的內(nèi)容/數(shù)據(jù)的快速訪問。API也可以提供使應用、工具和庫能夠配置高速緩沖存儲器和VCR的配置功能114。在各種實施例中,此功能可以作為Java擴展管理(JavaManagementExtension)(可以,人SunMicrosystems有限公司得到)而實現(xiàn)。在各種實施例中,在API和SPI之間共享用于表示層次信息的模型、內(nèi)容和數(shù)據(jù)類型的模型。在此模型中,節(jié)點可以表示層次信息、內(nèi)容或沖莫式信息。在與分層文件系統(tǒng)中文件子目錄類似的名稱空間中,層次節(jié)點可以用作與其它節(jié)點的容器。模式節(jié)點表示預定義的數(shù)據(jù)類型。內(nèi)容節(jié)點表示內(nèi)容/數(shù)據(jù)。節(jié)點可以具有由它們的屬性所定義的形狀。屬性關聯(lián)名稱、數(shù)據(jù)類型和可選的值(一個適合于該類型的值)。在特定實施例中,內(nèi)容節(jié)點的屬性包含值。作為說明,類型可以是表l中所描述的任何類型。本領域的技術人員將很清楚許多類型是可能的并且完全落在本公開的范圍和精神內(nèi)。<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage9</column></row><table>表l:各種實施例中的示例性屬性類型在各種實施例中,屬性也可以指示其是否是必須的、其是否是只讀的、是是否提供了默認值,以及其是否規(guī)定了屬性選擇。屬性選擇指示屬性是單一非受限值、單一受限值、多重非受限值、還是多重受限值。單一屬性只具有一個值而多重屬性可以具有一個以上的值。如果屬性是受限的,那么其(多個)值從有限的一組值中選擇。但是如果屬性是非受限的,可以向其提供任何(多個)值。屬性也可以被指定為主屬性。作為說明,節(jié)點的主屬性可以被認為是其默認內(nèi)容。例如,如果節(jié)點包含了保存圖像的二進制屬性,那么其也可以包含表示該圖像的縮略圖的次二進制屬性。如果該縮略圖是主屬性,那么諸如瀏覽器的軟件應用可以默認地將其顯示。一個或多個屬性類型的命名集合是模式(schema)。模式節(jié)點是模式的位置標志符(placeholder)。在各種實施例中,模式可以被用來規(guī)定節(jié)點的屬性。作為說明,出于討論的目的可以將具有三個屬性(姓名、地址、出生日期(Mzme、、Da/eq/SzW/z))的人(尸e^o")才莫式4葛述3口下SchemaPerson={〈Name^Name,Type=Text>,<Name=Address,Type=Address>,<Name=Dateoffiirth,Type=Date>}各種實施例允許基于模式來定義節(jié)點。作為說明,可以將與所述模式人(尸erw")相同的屬性賦予內(nèi)容節(jié)點J0/2w:ContentNodeJohnisaPerson(內(nèi)容節(jié)點John是人)在此情況下,節(jié)點/o/zn將具有下面的屬性姓名、地址、出生日期。作為選擇,節(jié)點可以使用一個或多個模式來定義各個屬性。有時這稱為嵌套類型。在下面的說明中,Jo/z"被定義為具有本身包含屬性姓名、地址、出生日期的信息(/"/o)屬性。此外,Jo/w也具有客戶身份(CwWomeW力屬性ContentNodeJohn-{<Name=Info,Type=Person>,<Name=CustomerId,Type=Number>}施例中,模式可以從至少一個其它模式繼承屬性。模式繼承在深度上可以不受限。就是說,模式A可以從模式B繼承,模式B本身可以從模式C繼承,等等。如果數(shù)個模式包含重復的屬性,那么可以配置"基(base),,模式,其它模式可以從所述基模式繼承。例如,雇員(Em;/qyee)模式可以繼承包含屬性姓名、地址、出生日期的人^t式,雇員模式添加其自身屬性(即,雇員身份、雇用曰期和薪金(五附//o,eiD、D她o///z>e(Sa/a7)):SchemaEmployeeinheritsfromPerson={<Name=EmployeeID,Type=Number>,<Name=DateofHire,Type=Date>,<Name=Salary,Type=Number>}因此,如以上所定義的,雇員模式具有下列屬性姓名、地址、出生日期、雇員身份、雇用日期和薪金。如果人模式使其自身從另一模式繼承了屬性,那么那些屬性也將屬于雇員。在各種實施例中,節(jié)點具有名稱/標識符,并且可以使用在VCR名稱空間中指定節(jié)點位置的路徑來可編程地指定或尋址所述節(jié)點。作為說明,該路徑可以指定從聯(lián)合根('/,)到所討論的節(jié)點('c,)的路徑/a/b/c在此示例中,開始的'/,表示聯(lián)合根,'a,表示該聯(lián)合根下的儲存庫,'b,是'a,儲存庫中的層次節(jié)點,而'c,是所討-淪的節(jié)點。該路徑也可以標識關于節(jié)點的屬性("propertyl"):/a/b/c.propertyl在這些實施例的方面中,如果系統(tǒng)可以基于上下文信息推斷出節(jié)點的位置,那么出現(xiàn)在節(jié)點名稱前的路徑部分可以省略。在各種實施例中,在一個儲存庫或VCR中定義的模式可以從在相同的儲存庫、不同的儲存庫或VCR中定義的一個或多個模式繼承。在這些實施例的某些方面中,如果被繼承的模式所涉及的一個或多個儲存庫不支持繼承,那么可以在VCR中由API自動定義繼承模式。在一個實施例中,默認地在VCR中定義繼承模式。作為說明,位于Avitech儲存庫中的雇員模式從位于BEA儲存庫中的模式層次節(jié)點下的戶e^o"模式繼承<formula>formulaseeoriginaldocumentpage11</formula>在各種實施例中,鏈接屬性類型(見表l)允許內(nèi)容重用和包括可以不在VCR的控制下的內(nèi)容。作為說明,與鏈接屬性相關聯(lián)的值可以引用/指向下列中的任何一個VCR中的內(nèi)容節(jié)點、關于VCR中的內(nèi)容節(jié)點的個體屬性、文件系統(tǒng)上的文件、URL(統(tǒng)一資源定位符)所標識的對象、或任何其它適合的標識符。在各種實施例中,當編輯具有鏈接屬性類型的內(nèi)容節(jié)點時,用戶可以指定《連接目的地(例如,使用瀏覽器型用戶接口)。在這些實施例的某些方面,如果鏈接引用已經(jīng)移動的內(nèi)容節(jié)點或內(nèi)容節(jié)點屬性,那么該系統(tǒng)可以自動解析(resolve)該鏈接以反映新位置。在各種實施例中,類型為查找(參見表i)的值可以擁有表達式,所述表達式可以被求值以便在VCR中搜索滿足該表達式的(多個)內(nèi)容節(jié)點的實例。滿足該表達式的節(jié)點(如果有的話)可以被用于隨后的處理。在各種實施例中,查找表達式可以包含一個或多個能夠替換來自以下的表達式變量的表達式包含查找屬性的內(nèi)容節(jié)點、用戶簡檔(profile)、請求或會話的范圍內(nèi)的任何事物。在各種實施例中,表達式可以包括數(shù)學、邏輯和布爾算子、功能/方法調(diào)用、宏、SQL(結構化查詢語言)和任何其它適合的查詢語言。在各種實施例中,表達式可以被預處理一次或多次以便執(zhí)行變量替換、常量合并和/或宏擴展。本領域的技術人員將很清楚許多其它類型的表達式是可能的并且完全落在此公開的范圍和精神之內(nèi)。在各種實施例中,當編輯具有查找屬性類型的內(nèi)容節(jié)點時,用戶可以通過用戶接口編輯表達式,所述用戶接口允許用戶通過直接將其輸入和/或通過選擇其組成部分來構造表達式。此外,用戶接口可以使用戶預覽表達式求值的結果。數(shù)據(jù)庫映射屬性類型(參見表l)允許從一個或多個數(shù)據(jù)庫表(或其它數(shù)據(jù)庫對象)挑選(cull)(即映射)信息并且通過節(jié)點屬性來對其進行操縱。作為說明,公司可能具有諸如在一個或多個RDBMS(關系數(shù)據(jù)庫管理系統(tǒng))表中成行存儲的新聞文章的那樣"內(nèi)容"。公司可能希望通過他們的門戶實現(xiàn)來利用此"內(nèi)容"。而且,它們可能希望像此表中的信息存在于VCR中那樣來對其進行管理。一旦被實例化,作為數(shù)據(jù)庫映射類型的內(nèi)容節(jié)點屬性象其內(nèi)容在VCR中(而不是在數(shù)據(jù)庫表中)那樣作為。在一個實施例中,對該屬性的所有API操作按同樣方式作為,但最終對數(shù)據(jù)表中的信息進行操作。在各種實施例中,給定的數(shù)據(jù)庫映射屬性類型可以具有表達式(例如SQL),其當被求值時,解析為可由該系統(tǒng)通過一個或多個網(wǎng)絡訪問的數(shù)據(jù)庫表中的行和列(或解析為任何種類的數(shù)據(jù)庫對象)。數(shù)據(jù)庫映射屬性將能夠使用固有的數(shù)據(jù)庫表/對象或關于那些表/對象的數(shù)據(jù)庫^L圖。本領域的技術人員將理解本公開不限于任何特定類型的數(shù)據(jù)庫或解析表達式。在某些實施例的方面中,可以自動創(chuàng)建映射至數(shù)據(jù)庫表中的任何行的模式。該系統(tǒng)可以檢查該表的數(shù)據(jù)結構并且用對應于來自表的列的數(shù)據(jù)庫映射屬性來預填充該模式。該表列名稱可以被用作默認屬性名稱,同樣每列的數(shù)據(jù)類型將確定每個對應屬性的數(shù)據(jù)類型。該系統(tǒng)也可以在該模式中指示哪些屬性對應于主鍵(primarykey)列。如果在新模式中將不使用來自表的特定列,可以由用戶或進程將他們?nèi)ビ成?即,取消選定)。內(nèi)容節(jié)點可以基于這樣的模式,并且當將內(nèi)容節(jié)點實例化時,其可以被自動綁定到數(shù)據(jù)庫表中的行(或其它數(shù)據(jù)庫對象)。在各種實施例中,用戶可以通過瀏覽數(shù)據(jù)庫表來交互地指定數(shù)據(jù)庫對象。在各種實施例中,可以使用顯示模板("模板")基于模式來顯示內(nèi)容。模板可以實現(xiàn)各種"視圖"。作為說明,視圖可以是"完整(full)"、"縮略,,和"列表",但是附力口"視圖,,可以由終端用戶來定義。完整視圖可以是內(nèi)容的最大的或者是整頁視圖??s略視圖將是非常小的視圖,而列表視圖可以當在頁面(例如,產(chǎn)品目錄搜索結果頁面)上顯示作為"列表"的多個內(nèi)容節(jié)點時使用。在各種實施例中,模式和模板之間的關聯(lián)可以是一對多的。模板可以被指定為模式的默認模板。在這些實施例的一些中,可以借助于集成開發(fā)環(huán)境(IDE)來指定模板。在各種實施例中并且作為說明,可以使用HTML(超文本標記語言)和JSP(JavaServerPages)來實現(xiàn)顯示模板。作為進一步的說明,可以從網(wǎng)頁通過接收內(nèi)容節(jié)點的標識符作為自變量的JSP標記來訪問這樣的顯示模板。給定內(nèi)容節(jié)點,可以導出和呈現(xiàn)該節(jié)點的模式和相關聯(lián)的默認顯示模板。作為選擇,JSP標記可以采用附加的自變量來指定除了默認之外的視圖。在另一實施例中,可以基于內(nèi)容節(jié)點的模式(例如,事先或在運行時動態(tài)地)自動生成顯示模板。在其它實施例中,可以基于HTTP請求的內(nèi)容自動確定視圖(例如,完整、縮略、列表)。在各種實施例中,角色是一組動態(tài)的用戶。作為說明,角色可以基于由其成員所共有的功能性職責。在這些實施例的方面中,角色可以由一個或多個成員標準(membershipcriteria)來定義。角色映射是這樣的進程,即通過該進程確定用戶是否滿足給定角色的成員標準。出于討論的目的,可以將角色描述如下Role=PMembers+[MembershipCriteria]其中,戶Mem&ra是形成服從成員標準的此角色的潛在成員的池的(多個)用戶、(多個)組和/或其它(多個)角色(如果有的話)的集合。對于將要成為角色的用戶或進程,他們必須屬于尸7kfew&"并且滿足成員標準。成員標準可以包括一個或多個條件。作為說明,這樣的條件可以包括但是不限于一個或多個(可能是嵌套的和混雜的)布爾、數(shù)學、函數(shù)、關系和/或邏輯表達式。作為說明,考慮下面的管理員(A/m/"Wrator)角色Administrator=Joe,Mary,SuperUser+CurrentTime>5:00pm該角色具有作為其潛在成員的兩個用戶C/oe和Mar力和屬于名為超級用戶OS,w仏er)的用戶組的用戶。成員標準包括需要當前時間在下午5:00之后的條件。因此,如果用戶是Joe、^fa7或屬于S,er^w組,并且當前時間在下午5:00之后,那么該用戶為管理員角色的成員。在各種實施例中,角色可以與(多個)資源(Resource)相關聯(lián)。作為說明,資源可以是任何系統(tǒng)和/或應用資產(chǎn)(例如,VCR節(jié)點和節(jié)點屬性、VCR模式和模式屬性、操作系統(tǒng)資源、虛擬機資源、J2EE應用資源和任何其它可以被某種軟件/固件所使用或者作為某種軟件/固件的一部分的實體)。一般來說,資源可以被布置在一個或多個層次中以便建立父/子關系(例如,VCR分層名稱空間和模式繼承層次)。在這些實施例的某些中,遵循角色的容納模型(containmentmodel),使得子資源繼承與它們的父相關聯(lián)的角色。此外,子資源可以用它們自身的角色覆蓋它們的父角色。在各種實施例中,成員標準可以至少部分地基于節(jié)點的屬性。例如,這允許這樣的角色,所述角色能夠將關于用戶/進程的信息比作VCR中的內(nèi)容。在各種實施例中,可以使用圓點記法來可編程地訪問節(jié)點屬性」Wc/e.CVeator是文章04Wc/e)節(jié)點的創(chuàng)建者(Cwator)屬性。作為說明,假設^r"c/e節(jié)點,其表示新聞文章并包括兩個屬性創(chuàng)建者和狀態(tài)(Stofe)。系統(tǒng)可以自動將創(chuàng)建者屬性設置為創(chuàng)建該文章的用戶的姓名。炎',悉屬性從公布生命周期(publicationlifecycle)的立場指示該文章的當前狀態(tài)(例如,該文章是草稿(Draft)還是已經(jīng)被批準公布)。在此示例中,定義兩個角色(參見表2)。<table>tableseeoriginaldocumentpage14</column></row><table>表2:實施例中的示例性角色提交者和批準者角色與文章節(jié)點相關。根據(jù)此模式實例化的內(nèi)容節(jié)點將繼承這些角色。如果試圖訪問該文章的用戶是文章的創(chuàng)建者并且文章的狀態(tài)是草稿,那么該用戶可以是提交者角色。同樣,如果用戶屬于編輯者組并且文章的狀態(tài)是已提交或已批準,那么該用戶可以屬于批準者角色。在各種實施例中,策略(policy)可以被用來確定策略的主體(Subject)(例如,(多個)用戶、(多個)組和/或(多個)角色)可以使用給定資源的什么能力或特權(Privilege)。出于討論的目的,可以將策略描述如下Policy=Resource+Privilege(s)+Subjects+[PolicyCriteria]策略映射是這樣的進程,通過其對策略標準(如果有的話)求值以確定哪些主體被授予訪問資源上的一個或多個特權。策略標準可以包括一個或多個條件。作為說明,這樣的條件可以包括但是不限于一個或多個(可能是嵌套的或混雜的)布爾、數(shù)學、功能、關系和/或邏輯表達式。某些實施例的方面允許策略映射正好在提出對資源的訪問決定之前發(fā)生。與角色類似,在這些實施例的某些中,遵循策略的容納模型,使得子資源能夠繼承與它們的父相關聯(lián)的策略。此外,子資源可以用它們自身的策略覆蓋它們的父策略。在各種實施例中,關于節(jié)點的策略可以控制對與節(jié)點相關聯(lián)的特權的訪問。作為說明,給定下列策略Policy1=Printer504+Read/View+MarketingPolicy2=Printer504+All+Engineering銷售(Marfe加g)角色可以讀取/查看并瀏覽Printer504(打印機504)資源,而設計0^g/"eer&g)角色可以對其進行充分訪問("全部(ALL)")。在表3中概括了這些特權。尸o/ZqW只允許銷售角色中的用戶查看Printer504的屬性,而戶o/z'qy2允許工程角色的用戶查看并修改其屬性,以便基于Printer504(假設它是模式)創(chuàng)建內(nèi)容節(jié)點,以及刪除該資源。<table>tableseeoriginaldocumentpage15</column></row><table>表3:各種實施例中的"Printer504"節(jié)點的示例性特權這些實施例中的某些的方面包括特權的隱含層次,其中如果策略授予了父特權,那么自動授予父特權的子特權。舉例來說,特權可以4皮認為是Printer504節(jié)點的優(yōu)勢最小的特權。任何其它特權的添加將隱含地包括瀏覽。例如,如果下一步是讀取/查看能力,那么讀取/查看的選擇將隱含地包括瀏覽特權。在各種實施例中,策略和角色的容納模型被擴展至允許節(jié)點的屬性繼承節(jié)點上附帶的策略和角色。關于屬性的角色/策略也可以覆蓋被繼承的角色/策略。出于說明的目的,假設關于Printer504的電源0Powe。屬性的下列策略Policy3=Printer504.Power+Update+Marketing在Policy3中,銷售角色被授予了更新打印機資源Printer504的電源屬性的權利(例如,控制開啟還是關斷該打印機)。默認地,根據(jù)隱含的特權層次也授予了讀取/查看屬性。(對于此屬性沒有瀏覽特權。)參見表4。作為選擇,如果沒有隱含的特權層次,那么電源屬性將從其父Printer504繼承銷售角色的讀取/查看特權。盡管對于電源屬性和工程角色沒有規(guī)定策略,但是可以從父節(jié)點繼承符合工程角色的特權。在表4中總結了這些特權。<table>tableseeoriginaldocumentpage15</column></row><table>表4:"Printer504"節(jié)點中的"電源"屬性的示例性特權在各種實施例中,可以特許基于模式實例化節(jié)點的能力。這可以被用來控制用戶或進程可以創(chuàng)建哪種類型的內(nèi)容。為了說明,假設下面的策略Policy4=Press—Release+Instantiate+Marketing,ManagerPo"c;^規(guī)定僅可以由作為銷售和/或管理者角色的成員的用戶/進程來實例化基于模式通迅稿(尸re^一ie/ewe)創(chuàng)建的節(jié)點。在這些實施例的某些的方面中,用戶接口可以使用這些策略的知識來限制可用的用戶選擇(choice)(例如,用戶應當只能看到并選擇他們對其具有實例化(/mto油'ate)特權的模式)。在各種實施例中,策略可以被置于模式上。模式的實例(例如,內(nèi)容節(jié)點)可以繼承這些策略除非被更局部的策略覆蓋。出于說明的目的,假設下面的策略Policy5=Press—Release+Read/View+EveryonePolicy6=Press—Release+All+Public—Relation<table>tableseeoriginaldocumentpage16</column></row><table>表5:"PressRelease"模式的示例性特權參照圖5并且作為說明,假設內(nèi)容節(jié)點實例是基于PressRelease模式創(chuàng)建的。默認地,其將具有與PressRelease模式相同的角色/策略。如果將一策略添加到節(jié)點以賦予角色"Editor"更新節(jié)點的特權,那么該結果是可以附加的。就是說,每個人和公共關系將保持他們的最初的特權。在各種實施例中,策略可以被置于模式中的屬性上,包括屬性選擇。(屬性選擇是給定屬性的預定的一組可允許的值。例如,"色彩"屬性可能具有屬性選擇"紅"、"綠"和"藍")。模式的實例(例如在內(nèi)容節(jié)點中),將繼承這些屬性策略除非被更局部的策略所覆蓋。在各種實施例中,內(nèi)容和模式節(jié)點可以遵從下面的生命周期。在這些實施例的某些方面中,生命周期可以表述節(jié)點可以通過的一組狀態(tài);作為狀態(tài)轉變的一部分而發(fā)生的或由于狀態(tài)轉變而發(fā)生的動作;和可以參加生命周期的動作者。作為說明,生命周期可以被用來模仿組織的內(nèi)容批準進程。在各種實施例中,生命周期可以嵌套在生命周期中。這允許劃分復雜的生命周期以便容易地操縱和開發(fā)。各種實施例包括生命周期定義、可擴展生命周期與其它系統(tǒng)交互的部件。如果內(nèi)容儲存庫不是固有地支持生命周期,那么VCR可以提供支持。在各種實施例中,生命周期可以與節(jié)點相關聯(lián)或這作為節(jié)點的屬性。在這些實施例的方面中,如果生命周期與層次節(jié)點相關聯(lián),那么該層次節(jié)點的子將也與該生命周期相關聯(lián)。同樣,如果生命周期與模式相關聯(lián),那么基于該模式實例化的節(jié)點將也與該生命周期相關聯(lián)。生命周期也能夠直接與內(nèi)容節(jié)點相關聯(lián)。在各種實施例中并且作為說明,節(jié)點可以從當前狀態(tài)轉變到新狀態(tài)。在轉變之前、期間或之后,可以執(zhí)行一個或多個動作。動作可以可選地在該節(jié)點上操作和/或利用該節(jié)點。動作可以包括可以在生命周期的過程中調(diào)用的任何類型的處理。作為示例,動作可以包括函數(shù)/方法調(diào)用、遠程過程調(diào)用、進程間通信、進程內(nèi)通信、與硬件設備接口、將節(jié)點檢入/檢出版本控制、將節(jié)點指定給用戶、組或角色、對節(jié)點執(zhí)行某種處理(根據(jù)可以對節(jié)點定義的任何策略)、向用戶、組和/或角色提供通知,和其它適合的處理??梢詫幼饕?guī)定為(多個)命令、(多個)指令、(多個)表達式或其它可以被解釋或映射以識別所需處理的構造。例如,諸如"公布(publish),,的高級動作指令可以使得內(nèi)容節(jié)點被公布,并且使得電子郵件或其它消息被發(fā)送至特定方。本領域的技術人員將明白任何動作都落在本公開的范圍和精神之內(nèi)。在表6和圖2中圖示了表示新聞文章的內(nèi)容節(jié)點的示例性生命周期。狀態(tài)在圖2中被圖示為文檔圖標(204、208、212、216)并且狀態(tài)之間的判決點被圖示為圓圈(206、210、214)。狀態(tài)之間的轉變被圖示為線,所述線,皮定向為顯示狀態(tài)的次序。在這些實施例的某些的方面中,狀態(tài)之間的轉變可以通過一個或多個判決點。判決點是可視的占位符(例如,IDE圖形編輯器中的圖標),用于限制到(多個)用戶、(多個)組和(多個)角色的轉變;并且用于規(guī)定可以伴隨狀態(tài)變化的(多個)動作,如果有的話。判決點可以連接狀態(tài)至至少一個其它狀態(tài)。動作可以由與節(jié)點相關聯(lián)的、并且以生命周期狀態(tài)為鍵值(例如,狀態(tài)可以是節(jié)點的屬性)的策略和/角色來控制,以允許不同狀態(tài)下的某些類用戶/進程特權。<table>tableseeoriginaldocumentpage17</column></row><table>就緒以待批準拒絕批準者草稿已公布隱退編輯者創(chuàng)建者已隱退已公布更新創(chuàng)建者草稿表6:各種實施例中的示例性生命周期圖2中的示例性生命周期在開始狀態(tài)202開始,在生命周期中該狀態(tài)不受限制地轉變到下一狀態(tài),即草稿狀態(tài)204。轉變可以不受限或受限于(多個)用戶、(多個)組和/或(多個)角色的集合。在這些實施例的方面中,可以通過委派(delegated)管理將角色委派給用戶。作為示例,批準能力可以基于在委派管理模型中的能力。在一個實施例中,限制可以規(guī)定只有某些被授權的用戶/進程可以使之出現(xiàn)到下一狀態(tài)的轉變。在各種實施例中,狀態(tài)轉變可以由通過工具與節(jié)點交互的用戶和/或通過VCRAPI與節(jié)點交互的進程啟動。在這些實施例的某些方面中,節(jié)點的當前狀態(tài)是節(jié)點的屬性。作為示例,修改狀態(tài)屬性(例如,將其從"開始"改變成"草稿",假設用戶被授權來這樣做),可以導致伴隨的生命周期處理的發(fā)生,例如執(zhí)行對該轉變限定的動作。新聞文章在處于草稿狀態(tài)時可以由(多個)用戶和/或(多個)進程修改,然后被提交以待批準。作為示例,用戶可以檢出新聞文章(假設其在版本控制之下),對其進行修改,然后檢入該具有變化的文章。在將該文章檢入之前,用戶可以將狀態(tài)屬性從"草稿"改成"就緒以待批準"以便引出到就緒以待批準208狀態(tài)的轉變。為了進一步說明,用戶接口可以呈現(xiàn)按鈕或菜單選項,使得當用戶已經(jīng)完成對文章的編輯時可以選擇創(chuàng)建者。一定被選4奪,文章可以被自動提交至其可以前進至下一狀態(tài)的生命周期。在此圖示中,通過判決點ZX/206到就緒以待批準狀態(tài)的轉變被限制于處于創(chuàng)建者角色的用戶。因此,只有創(chuàng)建該文章的用戶/進程可以使該文章轉變成就緒以待批準狀態(tài)。從草稿到就緒以待批準的轉變也具有伴隨動作,即,提交。舉例來說,該動作可以使通知被發(fā)送至對查看文章以便批準感興趣的人??商鎿Q地,或除此之外,可以將新文章指定給用戶/組/角色。因此,在其處于就緒以待批準狀態(tài)的同時,處于所指定的用戶/組/角色中的用戶/進程可以對其進行查看。自就緒以待批準狀態(tài)起,存在通過判決點D2210的轉變。D2判決點規(guī)定處于批準者角色的用戶/進程可以引起到草稿狀態(tài)204或到已公布狀態(tài)212的轉變。如果該轉變是到草稿狀態(tài)的,那么與該轉變相關聯(lián)的動作將是拒絕該文章。被拒絕的文章將重復從草稿到就緒以待批準的生命周期路徑。然而,如果該轉變是到已公布狀態(tài)的,那么該動作將是接受該文章。一旦該文章處于已公布狀態(tài),處于編輯者或創(chuàng)建者角色的用戶/進程就可以引起到已隱退狀態(tài)216的轉變。處于創(chuàng)建者角色的用戶可以引起到草稿狀態(tài)的轉變。從已公布狀態(tài)到草稿狀態(tài)的轉變引起更新動作,而從已公布狀態(tài)到已隱退狀態(tài)的轉變引起隱退動作。在這些實施例的方面中,可以將角色組織進角色層次,使得高級角色可以跳過需要低級角色的狀態(tài)轉變。作為說明,假設批準者角色比創(chuàng)建者角色等級高。如果文章的當前生命周期狀態(tài)是草稿,那么處于批準者角色的用戶可以跳過就緒以待批準狀態(tài)并且將該文章一直轉變到已公布狀態(tài)。在一個實施例中,即使跳過了就緒以待批準狀態(tài),也可以自動調(diào)用與判決點和相關聯(lián)的動作。在各種實施例中并且作為說明,可以使用文本編輯器和/或IDE來定義生命周期。用戶可以根據(jù)文本編輯器用語言(例如,XML)來創(chuàng)建完整的生命周期的定義。在圖形環(huán)境中,用戶可以創(chuàng)建不同的狀態(tài),然后將它們連接在一起以表示轉變。在一實施例中,生命周期的圖形描繪可以顯現(xiàn)為圖2中所示的那樣。狀態(tài)和判決節(jié)點的圖形表示可以被放置到IDE畫布(canvas)上并且被連接以形成轉變。與圖形對象相關聯(lián)的屬性表單(sheet)可以允許用戶交互地規(guī)定與狀態(tài)和/或轉變相關聯(lián)的角色和動作。在這些實施例的方面中,用戶可以容易地在生命周期的圖形和文本表示之間切換,因為這兩種表示是等同的。在各種實施例中,可以調(diào)用第三方生命周期引擎。這允許附加的功能被無縫地合并到生命周期模型中。在一個實施例中,這可以從生命周期內(nèi)部通過生命周期動作實現(xiàn)。在另一個實施例中,可以通過回調(diào)(callback)機制來調(diào)用第三方生命周期。作為說明,例如當內(nèi)容節(jié)點/情景已經(jīng)被修改和/或其狀態(tài)屬性已經(jīng)改變時,VCRAPI可以響應特定事件調(diào)用第三方生命周期。在此說明中,當這些事件發(fā)生時,實現(xiàn)第三方生命周期的進程可以注冊以便接收回調(diào)?;卣{(diào)通知還可以包括VCR節(jié)點標識符和選擇性地包括諸如關于?1起該事件的用戶/進程的信息那樣的上下文信息。在各種實施例中,可以從其它進程使用生命周期。VCRAPI包括允許訪問節(jié)點的生命周期定義的生命周期接口。此外,生命周期接口通過提供諸如確定節(jié)點的當前狀態(tài)、基于根據(jù)當前狀態(tài)可用的轉變選擇將該節(jié)點放置在新的狀態(tài)中、并且調(diào)用與狀態(tài)轉變相關聯(lián)的動作的能力那樣的功能,允許進程驅動節(jié)點經(jīng)過生命周期。圖3是在各種實施例中調(diào)用生命周期的示例性外部情景的圖解。如圖3所示,用戶可以根據(jù)IDE創(chuàng)建情景的可視表示。在此圖解中,情景包括起始點302圖標,其后跟著表示接收客戶請求的進程的客戶請求控件圖標304。在收到該請求之后,該情景進入"while"循環(huán)306。在此循環(huán)中,表示VCR生命周期的生命周期控件圖標308使得相關聯(lián)的生命周期被調(diào)用。生命周期控件可以具有識別生命周期以及其將驅動通過該生命周期的節(jié)點的相關屬性。在這些實施例的方面中,控件可以是JavaTM控件。生命周期控件可以使用VCRAPI的生命周期接口驅動節(jié)點通過生命周期。在該生命周期結束后,該情景調(diào)用通知控件310,其可以使得生命周期結束的通知被發(fā)送給各種用戶/進程。系統(tǒng)的各種實施例包括可用于節(jié)點的版本控制能力,使得在節(jié)點的生命期內(nèi)維護狀態(tài)的歷史。在各種實施例中,節(jié)點的一個版本被認為是已公布的版本。在這些實施例的某些方面,可以賦予版本名稱(或其它適合的標識符)并且可以將其存儲或者通過與特定節(jié)點相關聯(lián)的版本列表對其進行訪問。在這些實施例的方面中,如果節(jié)點持續(xù)存在于其中的儲存庫沒有提供對版本化的支持,那么VCR可以提供該支持。在各種實施例中,節(jié)點的版本也可以包括上次修改該版本的用戶/進程的標識以及描述或注釋。在VCR內(nèi)可以移動或復制處于版本控制下的節(jié)點。在各種實施例中,在移動或復制期間,版本的歷史隨節(jié)點前進。當用戶或進程移動內(nèi)容節(jié)點時,那個節(jié)點的歷史隨它移動。在退回(rollback)的情況下,可以在歷史中指示退回的父版本。在各種實施例中,節(jié)點的版本可以退回(即,恢復)至先前的版本。在這些實施例的方面中,在退回時,所選擇的要恢復的內(nèi)容節(jié)點版本變成內(nèi)容節(jié)點的最新版本。在這些實施例的方面中,自動賦予所退回的版本新的版本標識符(例如,舊版本號+1)。每個節(jié)點可以具有鎖(例如,信號標志(semaphore)或者用于控制對節(jié)點的訪問的其它適合的方式)。鎖防止一個以上的用戶/進程同時修改節(jié)點。當節(jié)點被檢出版本控制時,用戶獲取該鎖。鎖獲取防止他人檢出與該節(jié)點相關聯(lián)的版本直到其被檢入為止??梢栽诠?jié)點級別或版本級別上運用鎖。如杲運用版本級別的鎖,可以同時檢出節(jié)點的一個以上的版本。對于給定節(jié)點、儲存庫和/或VCR,可以開啟/關閉版本控制。在一個實施例中,沒有利用版本控制的節(jié)點在其版本列表中只有單個版本。版本化包括用戶或進程檢出節(jié)點版本以便編輯的能力。作為說明,用戶可以點擊VCR的樹形瀏覽器視圖中的項(參見圖4和所附文本)。在這些實施例的方面中,用戶或進程可以選擇要檢出節(jié)點的哪個版本。樹形瀏覽器可以對于每個版本顯示(例如,通過彈出菜單或工具提示(tooltip))以下信息版本號/標識符、上次保存版本的日期、執(zhí)行上次保存的用戶/進程、以及可選的(多個)注釋。在各種實施例中,用戶可以在諸如樹形瀏覽器那樣的用戶接口的幫助下、通過交互地瀏覽特定節(jié)點的版本歷史,來選擇要檢出的版本。在一個實施例中,如果沒有指定版本,則默認地;險出節(jié)點的最近的版本。在一個實施例中,用戶接口可以提供節(jié)點屬性的呈現(xiàn)。例如,用戶可以選擇'編輯內(nèi)容,按鈕以便編輯節(jié)點的屬性。如果被還沒有檢出,則此動作可以試圖檢出此節(jié)點。在各種實施例中,給定用戶的已檢出的節(jié)點出現(xiàn)在用戶的工作空間中(參見圖4)。用戶可以保存它們的工作直到檢入時間為止。在各種實施例中,被'保存,的節(jié)點沒有改變版本或者導致版本增加。從其它用戶的角度看,該節(jié)點仍然是被檢出的。一旦用戶已經(jīng)完成編輯,就可以將任何改變丟到或檢入VCR中。一旦檢入,在系統(tǒng)中就可使用節(jié)點的新版本了。在各種實施例中,檢入節(jié)點使得節(jié)點出現(xiàn)在VCR中而不是出現(xiàn)在用戶的工作空間中。在檢入時間期間,用戶/進程可以輸入對節(jié)點所作的改變的描述。該描述可以隨該版本一起被保存。將節(jié)點檢入到工作空間還使得相關的鎖被釋放(以便他人可以編輯)并且,如果開啟版本化,則創(chuàng)建節(jié)點的新版本。然而,如果用戶僅僅保存他們的工作而不是將其檢入,那么該節(jié)點將保留在工作空間中并且將不產(chǎn)生新的版本。在這些實施例的方面中,如果生命周期與節(jié)點相關聯(lián),那么將該節(jié)點檢入可以將該節(jié)點提交給該生命周期。作為說明并且參照圖2,處于創(chuàng)建者角色的用戶可以通過將新聞文章的狀態(tài)改變到"就緒以待批準,,并隨后將其檢入來提交新聞文章以便批準。在一個實施例中,使得可以向其指定狀態(tài)屬性的狀態(tài)的下拉列表可以為用戶所用??梢曰谟脩舻慕巧?或生命周期的階段過濾下拉列表。在檢入之后,處于批準者角色的用戶的工作空間更新以便將該新聞文章顯示為被指定給用戶的項。在各種實施例中,批準者也可能收到指示該新聞文章可用于查看的告警(例如,電子郵件、即時消息、頁面等)。如果批準者選擇編輯該新聞文章,那么該批準者可以將其檢出。一旦批準者獲得該鎖,此項將從批準者角色中的其它每個的工作空間的'所指定的項'部分中消失。在各種實施例中,用戶/進程可以導航至節(jié)點并且執(zhí)行刪除動作。在一個實施例中,刪除節(jié)點改變其狀態(tài)(例如,到已隱退或已刪除)。用戶可以在以后看到所有已刪除的節(jié)點并選擇永久刪除它們還是對它們?nèi)∠麆h除。在另一實施例中,刪除節(jié)點永久地將其從VCR中去除。在一個實施例中,可以不管節(jié)點的生命周期狀態(tài)為何而刪除節(jié)點。在一個實施例中,如果節(jié)點被檢出,那么不能刪除該節(jié)點。在一個實施例中,刪除節(jié)點導致節(jié)點的所有子被刪除。在一個實施例中,只刪除節(jié)點的一皮;險入的子。還是在另一實施例中,已刪除的節(jié)點(可選地,和它的子)可以^皮取消刪除。圖4是在本發(fā)明的各種實施例中的示例性用戶接口。舉例來說,用戶接口可以包括下列一個或多個1)圖形用戶接口(GUI)(例如,以超文本標記語言呈現(xiàn));2)響應聲音和/或語音命令的能力;3)響應來自遙控設備(例如,蜂窩電話、PDA、或其它適合的遙控)的輸入的能力;4)響應姿勢(例如,面部和其它)的能力;5)響應來自相同或另一計算設備上的進程的命令的能力;和6)響應來自計算機鼠標和/或鍵盤的輸入的能力。本公開不限于任何特定用戶接口。本領域的那些技術人員將認識到許多其它用戶接口實施例是可能的,并且完全落在本公開的范圍和精神之內(nèi)。的圖形樹形瀏覽器,以允許用戶對VCR和他們的工作空間進行探索(explore)并且與VCR和他們的工作空間交互。樹形瀏覽器提供節(jié)點和模式的分層視圖。節(jié)點的縮進程度指示父/子關系。在各種實施例中,樹形瀏覽器可以提供VCR的一個或多個視圖。這些視圖可以包括(但不限于)已公布的節(jié)點、未公布的節(jié)點、已隱退的節(jié)點、已刪除的節(jié)點、被指定的節(jié)點、被鎖定的節(jié)點以及等待批準的節(jié)點。在這些實施例的方面中,用戶可以將該樹形瀏覽器定制為包括這些視圖中的一個或多個。這些視圖可以被呈現(xiàn)為分立的樹或者合并的樹。在各種實施例中,對于特定(多個)用戶可以自動定制視圖。例如,可以使用修飾節(jié)點的角色和/或策略來過濾該視圖。作為說明,被指定的項的視圖和等待批準的視圖將只示出適用于給定用戶的節(jié)點。在一個實施例中,這可以通過在生命周期轉變中檢查角色并且濾除給定用戶不能與之交互的生命周期的節(jié)點來實現(xiàn)。作為說明,樹形瀏覽器可以顯露VCR400,即,聯(lián)合根。其包含兩個儲存庫(iVe^,e402和P/wto412)和公共層次節(jié)點426。在各種實施例中,可以用文件夾和相關可視符號來裝飾節(jié)點以便指示它們的用途。在這些特定實施例的方面中,在該樹中文件夾圖標或層次節(jié)點名稱的選擇使得節(jié)點的內(nèi)容向其下方擴展。在這些實施例的進一步的方面中,任何類型的節(jié)點的選擇可以允許用戶編輯該節(jié)點的屬性。在一個實施例中,可以在VCR中的任何地方(包括直接位于聯(lián)合根(未示出)下)定義模式。在各種實施例中,沒有在儲存庫中定義的模式(例如,428、430和434)被認為是虛擬的。A^pm"e儲存庫402包含兩個儲存庫節(jié)點通迅稿404和舊模式408。通信稿包括名稱為日本帳戶(JapanAccount)406的內(nèi)容節(jié)點,其當前被鎖定(例如,被4全出),如由緊挨著其名稱的掛鎖圖標所指示的那樣。只有已經(jīng)將該節(jié)點;險出的用戶可以對其進行編輯。他人可以根據(jù)角色和/或權限選擇性看到它。舊模式層次節(jié)點包含當前未被鎖定的名稱為帳戶模式410的模式。在這些實施例的方面中,可以通過選擇樹形瀏覽器中的節(jié)點而看到節(jié)點的屬性。如果所選擇的節(jié)點沒有被鎖定,那么系統(tǒng)可以代表用戶自動試圖獲得鎖。尸/wto儲存庫包括模式414和兩個頂層層次節(jié)點(416、418)。層次節(jié)點之一,即,2003備忘錄416,具有純色(solidcolor)的文件夾符號,另一個具有文件夾符號418的輪廓。在一個實施例中,特殊可視符號(例如,純色文件夾圖標)可以向用戶指示層次節(jié)點具有與之相關聯(lián)的模式和/或生命周期。在各種實施例中,將模式和/或生命周期與層次節(jié)點相關聯(lián)導致將模式和/或生命周期強加到該層次節(jié)點的子或者由該層次節(jié)點的子繼承。2004備忘錄層次節(jié)點包含另一層次節(jié)點420、未鎖定的內(nèi)容節(jié)點422和被鎖定的內(nèi)容節(jié)點424。在各種實施例中,用戶接口可以提供邏輯工作空間文件夾436,其提供對用戶的新的、已檢出的和被指定的項的快速訪問。被指定的項是那些根據(jù)生命周期或一些其它適合的方式指定給一個或多個用戶、組和/或角色的項。在此圖解中,存在指定給用戶的兩個節(jié)點日本帳戶444和內(nèi)部備忘錄模式446。與當前未被檢出的內(nèi)部備忘錄模式不同,由于日本帳戶以其旁邊帶有掛鎖的樣子出現(xiàn)在VCIU對中,所以用戶已經(jīng)^^出日本帳戶節(jié)點。由于職員(staff)變化模式434沒有出現(xiàn)在他們的工作空間,所以用戶沒有將其檢出(即,另一用戶或進程已經(jīng)將其檢出)。在各種實施例中,通過選擇職員變化模式434,用戶可以發(fā)現(xiàn)誰持有該鎖以及他們在何時得到它。在各種實施例中并且作為進一步的例證,可以創(chuàng)建新節(jié)點。新創(chuàng)建的節(jié)點可以出現(xiàn)在創(chuàng)建它們的用戶的工作空間中,直到它們在VCR中被乂^布為接口使用戶能夠選擇新的節(jié)點將駐留在哪個VCR、儲存庫或層次節(jié)點。用戶可以指示是否應為新節(jié)點保留版本歷史并且可以向其添加屬性或者以模式作為其屬性的基礎。也可以規(guī)定新節(jié)點的生命周期。可以更新樹形瀏覽器以反映新節(jié)點的添加。圖5是各種實施例中在將儲存庫連接至VCR中可以使用的對象/接口的示例性圖示。盡管此圖將組件描繪成在邏輯上是分立的,但是這樣的描繪只是出于說明的目的。本領域的技術人員將很清楚在此圖中描繪的組件可以被任意組合成或被分割成分立的軟件、固件和/或硬件。而且,本領域的技術人員也將很清楚,這樣的組件,不管將它們?nèi)绾谓M合或分割,都可以在相同的計算設備上執(zhí)行,或者可以分布在由一個或多個網(wǎng)絡或其它適合的通信方式連接的不同計算設備上。從應用程序500的觀點看,儲存庫管理器502可以用作VCR的表示。在這些實施例的方面中,儲存庫管理器試圖(可選地利用用戶或進程憑證(credential))將所有可用儲存庫(例如512-516)都連接到VCR。在各種實施例中,這可以基于Java驗證和授權服務(從SUNMicrosystems公司可以得到)。本領域的技術人員將認識到在不背離本公開的范圍和精神的情況下,許多授權方案都是可能的。每個可用的內(nèi)容儲存庫由SPI儲存庫對象506-510表示。儲存庫管理器可以在儲存庫對象集上調(diào)用連接方法(connect()method)。在各種實施例中,儲存庫管理器將儲存庫會話對象的列表返回至應用程序,一個對象表示試圖被連接的一個儲存庫??梢杂蓵拰ο鬆顟B(tài)來描述連接過程中的任何錯誤。在另一實施例中,儲存庫管理器可以連接到已賦予存儲庫名稱的特定存儲庫。在各種實施例中,儲存庫的名稱可以是URI(統(tǒng)一資源標識符》圖6是在本發(fā)明的各種實施例中可以用作服務模型的對象/接口的示例性圖示。盡管此圖將組件描繪成在邏輯上是分立的,但是這樣的描繪只是出于說明的目的。本領域的技術人員將很清楚在此圖中描繪的組件可以被任意組合成或^fe分割成分立的軟件、固件和/或硬件。而且,本領域的技術人員也將很清楚,這樣的組件,不管將它們?nèi)绾谓M合或分割,都可以在相同的計算設備上執(zhí)行,或者可以分布在由一個或多個網(wǎng)絡或其它適合的通信方式連接的不同計算設備上。參照圖6,虛線箭頭指示箭頭從其發(fā)出的對象/接口可以在運行時產(chǎn)生箭頭指向的對象/接口。權證(ticket)602是API級對象/接口,其提供對下列VCR服務對象/接口的訪問節(jié)點操作(NodeOps)604、工作空間操作(WorkspaceOps)606和搜索操作(SearchOps)608。連接到VCR的每個儲存庫提供作為SPI的一部分的這些對象/接口中的一些的實現(xiàn)。權證602對象/接口意為輕量的(light-weight)。因而,可以為每個訪問VCR的應用/進程創(chuàng)建并且可能高速緩存一個或多個。權證可以利用用戶或進程的憑證來授權服務。在各種實施例中,權證可以是節(jié)點操作604、工作空間操作606和搜索操作608的訪問點。為了說明,儲存庫622提供節(jié)點操作610、工作空間操作612和搜索操作614。儲存庫624提供節(jié)點操作616、工作空間操作618和搜索操作620。API級對象/接口與它們相應的SPI級對象/接口通信。這樣,對API級對象的操作可以被分送每個儲存庫,使得每個儲存庫可以并行工作以便執(zhí)行所請求的操作。因此,可能花費平均時間M^N來對所有儲存庫依次執(zhí)行的操作在理論上可能只需要時間M,其中N是VCR中儲存庫的數(shù)目。節(jié)點操作604提供VCR中的節(jié)點和節(jié)點屬性的創(chuàng)建、讀取、更新、刪除方法。在這些實施例的方面中,可以基于標識符、VCR中的路徑或通過任何其它適合的相對或絕對引用來操作節(jié)點和屬性。當API節(jié)點操作604接收執(zhí)行動作的請求時,其可以將請求映射到一個或多個SPI節(jié)點才喿作(610、616),其進而使用它們的相關儲存庫實現(xiàn)該請求。這樣,利用該API的應用和庫看到單個VCR而不是各個內(nèi)容儲存庫。顯露在API中的節(jié)點操作功能可以包括下列各項更新給定節(jié)點的屬性和屬性的定義。將給定節(jié)點連同所有其后輩(descendant)—起復制到給定層次中的新位置。在給定父之下創(chuàng)建新內(nèi)容節(jié)點。在給定父之下創(chuàng)建新的層次節(jié)點。對給定節(jié)點執(zhí)行完全層疊刪除(follcascadedelete)。檢索在包括其自身的給定節(jié)點的路徑中的所有節(jié)點。檢索給定父節(jié)點的內(nèi)容節(jié)點子。檢索給定父節(jié)點的層次節(jié)點子?;诠?jié)點的ID檢索對其進行檢索?;诠?jié)點的路徑檢索對其進行檢索。檢索給定層次節(jié)點的子節(jié)點。檢索給定層次節(jié)點的父節(jié)點。檢索具有給定名稱的所有節(jié)點。檢索給定節(jié)點和屬性標識(id)的二進制數(shù)據(jù)。將節(jié)點連同所有其后輩一起移動到該層次中的新位置。重命名給定節(jié)點和隱含地重命名其所有后輩路徑。得到可以被用來在層次上迭代的迭代程序(iterator)對象。在各種實施例中,工作空間操作606顯露用于版本化的服務,包括對檢入/檢出節(jié)點、節(jié)點/屬性鎖定、訪問節(jié)點版本歷史、生命周期操縱、打標簽和作業(yè)(job)的服務。當API工作空間操作606收到執(zhí)行動作的請求時,它可以將該請求映射到一個或多個SPI工作空間操作(612、618),其進而使用它們相關的儲存庫實現(xiàn)該請求。在API中顯露的工作空間4喿作功能可以包括檢入將節(jié)點解鎖并且將節(jié)點連同其工作版本一起保存。檢出鎖定節(jié)點使得只有鎖定其的用戶/進程才可以將其保存或檢入并且創(chuàng)建新的工作版本。復制遞歸地將所公布的源節(jié)點復制到目的地。創(chuàng)建創(chuàng)建新節(jié)點還有其工作版本(如果附著于該節(jié)點的話)。刪除刪除具有給定版本的節(jié)點版本。獲得獲得在給定路徑上的節(jié)點。獲得版本返回給定虛擬節(jié)點的所有版本。保存保存節(jié)點和節(jié)點的工作版本(如果附著于該節(jié)點的話,其是節(jié)點的當前版本)。提交將節(jié)點提交給其生命周期。在各種實施例中,搜索操作608基于一個或多個搜索表達式提供用于在整個VCR上檢索節(jié)點、屬性和/或屬性值的搜索服務。當API搜索操作608收到執(zhí)行動作的請求時,它可以將該請求映射到一個或多個SPI搜索操作(614、620),其進而使用它們相關的儲存庫實現(xiàn)該請求。API搜索操作608將來自每個SPI搜索操作的搜索結果組合進結果集中。在各種實施例中,可以通過對結果集中的項執(zhí)行進一步的搜索來提煉(refme)結果集。搜索表達式可以包括(但不限于)一個或多個邏輯表達式、布爾算子、嵌套表達式、變量、標識符節(jié)點名稱、函數(shù)/方法調(diào)用、遠端過程調(diào)用、數(shù)學函數(shù)、數(shù)學運算符、串算符、圖像算符(imageoperator)和結構化查詢語言(SQL)。搜索表達式還可以包括對自然語言查詢、關鍵字搜索、模糊邏輯、近似(proximity)表達式、通配符表達式和測距(ranging)搜索類型的支持。在各種實施例中,可以根據(jù)對滿足搜索表達式的項起作用的角色/策略來修整(tailor)結果集。在搜索期間或者在收集了結果之后,可以過濾用戶/進程沒有察看權限的那些項在這些實施例的方面中,可以根據(jù)定級(ranking)算法和準則將搜索結果定級。在一個實施例中,定級算法可以根據(jù)結果集中的項目滿足搜索表達式到何種程度將結果集定級。本領域的技術人員將很清楚許多其它定級算法是可能的并且完全落在本公開的范圍和精神之內(nèi)。在各種實施例中,可以對結果集施加多個定級算法。在一個實施例中,可以由用戶/進程來調(diào)整給定定級算法的定級準測。在各種實施例中,作業(yè)提供對節(jié)點集執(zhí)行VCR操作的能力。為了說明,作業(yè)可以被用來檢入和檢出作為組的節(jié)點集,或者將節(jié)點組一起發(fā)送通過生命周期。在實施例的方面中,作業(yè)標識符和/或標簽可以與節(jié)點相關聯(lián)以便指示其包含在特定作業(yè)和/或標簽集中。在一個實施例中,如果作業(yè)變?yōu)榫途w以待批準,則作業(yè)中的所有節(jié)點都將達到這個狀態(tài)。在各種實施例中,標簽可以被用來對儲存庫或節(jié)點組打標記。為了說明,這提供引用(referto)具有不同版本的節(jié)點集的方法。為了進一步說明,標簽可以被用在搜索表達式中。在各種實施例中,可以外部格式導出(export)VCR中的信息。在這些實施例的方面中,外部格式可以是XML或可以保持信息的分層結構的另一種適合的語言/表示(例如,HTML、自然語言、二進制文件)。所有或一些VCR節(jié)點的導出允許VCR的"瞬態(tài)(snapshot)",以便備份VCR、將VCR中的信息運送到另一儲存庫以及在以后的日期重載該節(jié)點。在各種實施例中,將由導出進程導出節(jié)點及其所有子。作為示例,如果選擇導出聯(lián)合根,那么將導出整個VCR。作為進一步的示例,導出進程可以遞歸地遍歷VCR(例如,深度優(yōu)先或寬度優(yōu)先的遍歷),將與被訪問的每個節(jié)點(例如,內(nèi)容、分層和模式節(jié)點)相關聯(lián)的信息串行化。這些實施例的方面具有"預覽"模式,在其中報告將輸出什么信息(例如,節(jié)點、生命周期、角色、策略)。在各種實施例中,導入進程可以通過解串每個節(jié)點(和其它信息)并將其添加至VCR名稱空間中的適當?shù)牡胤剑瑏磉M行與導出進程相反的工作。在另一實施例中,導入進程可以將節(jié)點安置在所選節(jié)點之下而不是安置在它們的原始位置。和導出進程一樣,這些實施例的方面具有"預覽"模式,在其中報告將導入什么信息(例如,節(jié)點、生命周期、角色、策略)。除了節(jié)點屬性以外,各種實施例允許導出和導入與內(nèi)容和模式節(jié)點相關聯(lián)的版本歷史、角色和/或圖7是根據(jù)本發(fā)明的各種實施例的在禁用內(nèi)容服務時內(nèi)容創(chuàng)建的示例性圖示。盡管此圖將組件描繪成在邏輯上是分立的,但是這樣的描繪只是出于說明的目的。本領域的技術人員將很清楚在此圖中描繪的組件可以被任意組合成或被分割成分立的軟件、固件和/或硬件。而且,本領域的技術人員也將很清楚,這樣的組件,不管將它們?nèi)绾谓M合或分割,都可以在相同的計算設備上執(zhí)行,或者可以分布在由一個或多個網(wǎng)絡或其它適合的通信方式連接的不同計算設備上。圖7示出具有兩個整合的儲存庫(714、716)和整合的第三方內(nèi)容管理系統(tǒng)718的VCR700。盡管未繪出,但是每個子系統(tǒng)(714-718)可以實現(xiàn)允許其到VCR的整合的SPI。還圖示了由VCR提供的內(nèi)容服務,包括用戶工作空間管理706、內(nèi)容版本化708和生命周期管理710。除了聯(lián)合之外,VCR提供一個或多個其內(nèi)容服務給沒有這些服務的子系統(tǒng)。作為說明,如果儲存庫W印o/本身不支持版本化,那么VCR可以自動為那個儲存庫中的節(jié)點提供此服務。方框702表示可以用來創(chuàng)建、修改和刪除VCR中的信息的一個或多個內(nèi)容管理工具。這些工具可以利用VCR的內(nèi)容服務。方框704表示可以對儲存庫進行操作而無需內(nèi)容服務的一個或多個工具。作為示例,這些可以包括成批(bulk)內(nèi)容裝入程序、內(nèi)容搜索工具和內(nèi)容標記。內(nèi)容管理器API組件712可以被用來管理VCR和其整合子系統(tǒng)之間的交互。圖7圖示在沒有使能VCR的內(nèi)容服務的情況下的內(nèi)容節(jié)點的創(chuàng)建。方框720表示位于VCR中的/儲存庫1(/印o7)/財政計劃處的、并且存儲在儲存庫iejw/中的名為財政計劃(i^cflP/朋)的內(nèi)容節(jié)點。該節(jié)點還具有默認系統(tǒng)屬性,例如,由誰創(chuàng)建、創(chuàng)建日期、節(jié)點狀態(tài)和節(jié)點類型。節(jié)點類型是被稱為財政計劃類型的才莫式,其具有屬性財政年度(FiscalYear)和類別(Category)。在此實例中,這些屬性已經(jīng)分別被設為2003和"財政(Finance)"。還要注意節(jié)點狀態(tài)是"已公布"。圖8是根據(jù)本發(fā)明的各種實施例的在使能內(nèi)容服務時內(nèi)容創(chuàng)建的示例性圖示。此示例與圖7中的示例類似,只是在VCR中內(nèi)容月1務是使能的。但是使用內(nèi)容管理工具(其利用內(nèi)容服務)來創(chuàng)建相同的內(nèi)容節(jié)點/存儲庫1/財政計劃。像以前那樣,該系統(tǒng)首先在包含系統(tǒng)屬性的iepo/中創(chuàng)建內(nèi)容項。然而,將模式定義的屬性作為節(jié)點的第一版本存儲在VCR中而不是存儲在iepo7中,這是因為iepo7沒有版本化能力。除了版本號之外,現(xiàn)在節(jié)點還包括指示節(jié)點處于哪個生命周期狀態(tài)的生命周期狀態(tài)。在此示例中,節(jié)點的生命周期狀態(tài)是"草稿"。該系統(tǒng)也可以為創(chuàng)建版本1的用戶鎖定版本1并且通過那個用戶的工作空間提供對該節(jié)點的訪問。當用戶將該節(jié)點檢入時,將其提交給其生命周期(如果有的話)。圖9是根據(jù)本發(fā)明的各種實施例的在使能內(nèi)容服務時修改VCR中的節(jié)點的示例性圖示。此圖跟隨以上圖8的討論。在此圖示中,用戶檢出節(jié)點/儲存庫l/財政計劃,其具有這樣的作用在VCR中創(chuàng)建新版本(版本2)、鎖定新版本并且將其指定給該用戶。這里,用戶已經(jīng)將生命周期狀態(tài)改變成"就緒以待批準"。當檢入該節(jié)點時,將其模式定義的屬性保存為版本2。此外,該系統(tǒng)釋放該鎖,并且將該節(jié)點提交給其生命周期。作為說明,這可能必須起這樣的作用,即將該節(jié)點放置到給定角色(例如,公布者角色)的用戶的工作空間中。圖10時根據(jù)本發(fā)明的實施例的在使能內(nèi)容服務時公布VCR中的節(jié)點的示例性圖示。此圖跟隨圖9的討論。在此圖示中,用戶再次檢出節(jié)點/儲存庫l/財政計劃,其具有這樣的作用在VCR中創(chuàng)建新版本(版本3)、鎖定新版本并且將其指定給該用戶。這里,用戶已經(jīng)將生命周期狀態(tài)改變成"已公布"。當檢入該節(jié)點時,將該模式定義的屬性保存為版本3。此外,該系統(tǒng)將該節(jié)點解鎖,并且向儲存庫1公布來自版本3的其模式定義的屬性和節(jié)點類型。圖11是根據(jù)本發(fā)明的各種實施例的在使能內(nèi)容服務時隱退節(jié)點的示例性圖示。跟隨圖10,用戶再次檢出節(jié)點/儲存庫l/財政計劃,其具有這樣的作用消除公布(de-publish)它、在VCR中創(chuàng)建新版本(版本4)、鎖定新版本并且將其指定給該用戶。這里,用戶已經(jīng)將生命周期狀態(tài)改變成"已隱退"。當向回檢入該節(jié)點時,在VCR中將該模式定義的屬性保存為版本4并且將該節(jié)點解鎖。此外,該系統(tǒng)去除(即,消除公布)在儲存庫1中所找到的節(jié)點的模式定義的屬性和其節(jié)點類型。計算機領域中的那些技術人員將很清楚,根據(jù)本公開的教導,可以使用傳統(tǒng)的通用或專用數(shù)字計算機或被編程的微處理器來實現(xiàn)各種實施例。軟件領域的那些技術人員將很清楚,基于本公開的教導,可以由熟練的程序員容易地準備適合的軟件代碼編寫。本領域的那些技術人員將容易明白,也可以通過準備集成電路或通過互連傳統(tǒng)的組件電路的適合的網(wǎng)絡來實現(xiàn)本發(fā)明。各種實施例包括作為存儲介質(媒介)的計算機程序產(chǎn)品,其具有存儲在其上/其中的可以被用來對計算設備編程以執(zhí)行在此給出的任何特征的指令。存儲介質可以包括(但是不限于)任何類型的物理媒介,所述物理媒介包括軟盤、光盤、DVD、CD-ROM、微驅動器、磁光盤、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、快閃存儲設備、磁或光卡、納米系統(tǒng)(包括分子存儲器IC)或適合存儲指令和/或數(shù)據(jù)的任何類型的媒介或設備。各種實施例包括計算機程序產(chǎn)品,其可以通過一個或多個公共和/或私有網(wǎng)絡傳送,其中該傳送包括可以用來對計算設備編程以執(zhí)行在此給出的任何特征的指令。本發(fā)明包括存儲在任何一個計算機可讀介質e某介)上的軟件,其用于控制通用/專用計算機或微處理器,并且用于使計算機或微處理器與人類用戶或利用本發(fā)明的結果的其它機制交互。這樣的軟件可以包括(但不限于)設備驅動程序、操作系統(tǒng)、執(zhí)行環(huán)境/容器和應用。已經(jīng)出于說明和描述的目的提供了本發(fā)明的優(yōu)選實施例的前述描述。沒有打算窮盡或將本發(fā)明限制于所公開的精確形式。本領域的技術從業(yè)者將很清楚許多修改和變化。選擇并描述實施例以便最佳地解釋本發(fā)明地原理和其實際應用,從而使本領域的的其它技術人員理解本發(fā)明、各種實施例和適合于所預期的特定使用的各種修改。意欲使本發(fā)明的范圍由后面的權利要求和它們的等同物來限定。優(yōu)先權要求本申請要求下列申請的優(yōu)先權,因此通過它們的全部引用將它們合并,這些申請為2004年4月13日提交的美國臨時申請第60/561,819號,名稱為SYSTEM發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01550US0);2004年8月10日提交的美國申請第10/915,194號,名稱為SYSTEMANDMETHODFORVIRTUALCONTENTREPOSITORYDEPLOYMENT,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-10550US1);2004年4月13日提交的美國臨時申請第No.60/561,780號,名稱為SYSTEMANDMETHODFORCONTENTVERSIONING,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01533US0);2004年11月1日提交的美國申請第10/910,233號,名稱為SYSTEMANDMETHODFORCONTENTVERSIONTNG,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01533US1);2004年4月13日提交的美國臨時申請第60/561,796號,名稱為SYSTEMANDMETHODFORCONTENTLIFECYCLES,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01534US0);2004年8月4日才是交的美國申請第10/911,099號,名稱為SYSTEMANDMETHODFORCONTENTLIFECYCLES,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01534US1);2004年4月13日提交的美國臨時申請第60/561,783號,名稱為SYSTEMANDMETHODFORCONTENTANDSCHEMAVERSIONG,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01535US0);2004年8月10日提交的美國申請第10/915,033號,名稱為SYSTEMANDMETHODFORCONTENTANDSCHEMAVERSIONING,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01535US1);2004年4月13日提交的美國臨時專利申請第60/561,785號,名稱為明人為RodneyMcCauley等人(代理人案號BEAS-01536US0);2004年11月1日提交的美國專利申請第10/911,287號,名稱為SYSTEMANDMETHODFORCONTENTANDSCHEMALIFECYCLES,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01536US1);2004年4月13日提交的美國臨時專利申請第60/561,778號,名稱為SYSTEMANDMETHODFORVIRTUALCONTENTREPOSITORYENTITLEMENTS,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS--01551US0);2004年8月10日提交的美國專利申請第10/915,008號,名稱為SYSTEM發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01551US1);2004年4月13日提交的美國臨時專利申請第60/561,648號,名稱為SYSTEMANDMETHODFORCONTENTTYPEMANAGEMENT,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01552US0);2004年8月10日提交的美國專利申請第10/915,013號,名稱為SYSTEMANDMETHODFORCONTENTTYPEMANAGEMENT,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01552US1);2004年4月13日提交的美國臨時專利申請第60/561,782號,名稱為SYSTEMANDMETHODFORCUSTOMCONTENTLIFECYCLES,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01553US0);2004年8月10日提交的美國專利申請第10/915,505號,名稱為SYSTEMANDMETHODFORCUSTOMCONTENTLIFECYCLES,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01553US1);2004年4月13日提交的美國臨時專利申請第60/561,759號,名稱為SYSTEMANDMETHODFORCONTENTTYPEVERSIONS,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01554US0);2004年8月10日提交的美國專利申請第10/915,057號,名稱為SYSTEMANDMETHODFORCONTENTTYPEVERSIONS,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01554US1);2004年4月13日提交的美國臨時專利申請第60/561,646號,名稱為INTEGRATION,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01555US0);2004年8月10日提交的美國專利申請第10/915,506號,名稱為SYSTEMANDMETHODFORINFORMATIONLIFECYCLEWORKFLOWINTEGRATION,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS-01555US1);2004年4月13日提交的美國臨時專利申請第60/561,818號,名稱為SYSTEMANDMETHODFORSEARCHINGAVIRTUALCONTENTREPOSITORY,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS--01565US0);2004年8月10日提交的美國專利申請第10/915,504號,名稱為SYSTEM明人為RodneyMcCauley等人(代理人案號BEAS-01565US1);以及2004年8月10日提交的美國專利申請第10/915,521號,名稱為SYSTEMANDMETHODFORPROVIDINGCONTENTSERVICESTOAREPOSITORY,發(fā)明人為RodneyMcCauley等人(代理人案號BEAS—01729US0)。權利要求1.一種向多個儲存庫中的儲存庫提供一個或多個內(nèi)容服務的方法,所述方法包括將多個儲存庫整合到虛擬內(nèi)容儲存庫VCR中;維護涵蓋多個儲存庫的邏輯名稱空間;向儲存庫提供一個或多個內(nèi)容服務;其中一個或多個內(nèi)容服務包括版本化能力和生命周期能力中的至少一個;其中儲存庫存儲內(nèi)容信息和模式信息中的至少一個;以及其中可以通過涵蓋多個儲存庫的邏輯名稱空間訪問內(nèi)容和模式信息。2.如權利要求l所述的方法,還包括維護儲存庫的版本歷史以便跟蹤對內(nèi)容信息和才莫式信息中的至少一個的改變。3.如權利要求2所述的方法,其中可以退回版本歷史。4.如權利要求l所述的方法,還包括根據(jù)生命周期定義轉變內(nèi)容信息通過一組狀態(tài)。5.如權利要求l所述的方法,其中整合包括實現(xiàn)與VCR兼容的服務提供者接口。6.如權利要求l所述的方法,其中名稱空間是分層的。7.—種向多個儲存庫中的儲存庫提供一個或多個內(nèi)容服務的系統(tǒng),所述系統(tǒng)包括虛擬內(nèi)容儲存庫VCR,其包括一個或多個內(nèi)容服務;被整合到VCR中的多個儲存庫;能夠涵蓋多個儲存庫的邏輯名稱空間;其中可以向儲存庫提供一個或多個內(nèi)容服務;其中一個或多個內(nèi)容服務包括版本化能力和生命周期能力中的至少一個;其中儲存庫存儲內(nèi)容信息和模式信息中的至少一個;以及其中可以通過涵蓋多個儲存庫的邏輯名稱空間訪問內(nèi)容和模式信息。8.如權利要求7所述的系統(tǒng),還包括庫的版本歷史,能夠跟蹤對內(nèi)容信息和模式信息中的至少一個的改變。9.如權利要求8所述的系統(tǒng),其中可以退回版本歷史。10.如權利要求7所述的系統(tǒng),還包括生命周期定義,能夠轉變內(nèi)容信息通過一組狀態(tài)。11.如權利要求7所述的系統(tǒng),其中整合包括實現(xiàn)與VCR兼容的服務提供者接口。12.如權利要求7所述的系統(tǒng),其中名稱空間是分層的。13.—種對表示多個內(nèi)容儲存庫的虛擬內(nèi)容儲存庫VCR進行操作的方法,包括創(chuàng)建節(jié)點,其中節(jié)點具有指示該節(jié)點在所述VCR中的位置的標識符;將該節(jié)點與l)屬性和2)模式中的至少一個相關聯(lián);將該節(jié)點存儲在所述VCR中,以及其中所述將該節(jié)點存儲在所述VCR中將導致所迷至少一個屬性和/或模式被存儲在所述多個內(nèi)容儲存庫的一個中。14.如權利要求13所述的方法,其中所述屬性是名稱和最少一個值之間的關聯(lián)。15.如權利要求14所述的方法,其中所述至少一個值可以是文本串、數(shù)字、圖像、音頻/視頻呈現(xiàn)或二進制數(shù)據(jù)。16.如權利要求13所述的方法,其中多個內(nèi)容儲存庫中的每個顯露使其能夠合到VCR中的第一組服務。17.如權利要求13所述的方法,其中模式包括至少一個屬性定義。18.如權利要求13所述的方法,其中節(jié)點可以是按層次與VCR中的其它節(jié)點相關的。19.一種對虛擬內(nèi)容儲存庫VCR進行才喿作的方法,其中VCR具有節(jié)點并且其中所述節(jié)點與信息相關聯(lián),所述方法包括獲得所述節(jié)點,其中所述節(jié)點具有指示在所述VCR中的唯一位置的標識符;對所述節(jié)點執(zhí)行操作,其中所述操作是下列各項中的一個l)刪除所述節(jié)點;2)改變所述節(jié)點在VCR中的位置;3)讀取所述信息;以及4)更新所述化息;其中VCR表示多個內(nèi)容儲存庫;以及其中所述信息包括下列各項中的至少一個l)屬性;以及2)模式。20.如權利要求19所述的方法,其中屬性是名稱和最少一個值之間的關聯(lián)。21.如權利要求19所述的方法,其中多個內(nèi)容儲存庫中的每個顯露使其能夠合到VCR中的第一組服務。22.—種用于將多個內(nèi)容儲存庫整合到虛擬內(nèi)容儲存庫VCR中的方法,包括向所述多個內(nèi)容儲存庫中的每個提供憑證信息;從所述多個內(nèi)容儲存庫中的每個接收授權信息,其中該授權信息指示授權過程是否成功;將所述多個內(nèi)容儲存庫中的其授權信息指示成功授權的每個整合到VCR中;以及其中所述多個內(nèi)容儲存庫中的每個顯露使其能夠合到VCR中的第一組服務。23.如權利要求22所述的方法,其中所述第一組服務接受該憑證信息。24.如權利要求22所述的方法,其中所述第一組服務提供該授權信息。25.如權利要求22所述的方法,其中所述多個內(nèi)容儲存庫中的每個顯露與實現(xiàn)該內(nèi)容儲存庫中信息的模型相關的第二組服務;以及其中該模型與VCR內(nèi)容模型兼容。全文摘要本發(fā)明提供一種向多個儲存庫(714、716、718)中的儲存庫提供一個或多個內(nèi)容服務的系統(tǒng)和方法,所述系統(tǒng)包括虛擬內(nèi)容儲存庫(700),其包括一個或多個內(nèi)容服務(708、710);被整合到該虛擬內(nèi)容儲存庫中的多個儲存庫;能夠涵蓋多個儲存庫的邏輯名稱空間(400)。文檔編號G06F7/00GK101416148SQ200580011175公開日2009年4月22日申請日期2005年4月13日優(yōu)先權日2004年4月13日發(fā)明者亞歷山大·圖圣特,克里斯托弗·E·貝爾斯,布拉德·波斯納,羅德尼·麥考利,詹姆斯·歐文,賈爾皮什·帕塔迪亞申請人:Bea系統(tǒng)公司