TWI498751B - 用於運算環境表示之方法及電腦可讀取儲存裝置 - Google Patents

用於運算環境表示之方法及電腦可讀取儲存裝置 Download PDF

Info

Publication number
TWI498751B
TWI498751B TW098105024A TW98105024A TWI498751B TW I498751 B TWI498751 B TW I498751B TW 098105024 A TW098105024 A TW 098105024A TW 98105024 A TW98105024 A TW 98105024A TW I498751 B TWI498751 B TW I498751B
Authority
TW
Taiwan
Prior art keywords
resource
objects
hierarchy
type
collection
Prior art date
Application number
TW098105024A
Other languages
English (en)
Other versions
TW200941240A (en
Inventor
Dharma Shukla
Ori Amiga
Vijayendra Vasu
Junfeng Zhang
Original Assignee
Microsoft Technology Licensing Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing Llc filed Critical Microsoft Technology Licensing Llc
Publication of TW200941240A publication Critical patent/TW200941240A/zh
Application granted granted Critical
Publication of TWI498751B publication Critical patent/TWI498751B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

用於運算環境表示之方法及電腦可讀取儲存裝置
本發明係關於運算環境表示。
許多運算環境包括由一物件系統集管理之大量不同物件。例如,一運算環境可包括:由一檔案系統管理之一組檔案、由一資料庫系統管理之一或多個資料庫、表示應用程式且由一組件快取管理之一組可執行二進位檔案、由一作業系統之一使用者設定檔組件管理之一組使用者設定檔,以及由資料快取組件管理之各種資料快取,例如由該作業系統之一複本緩衝區管理之一組複製項目、由該作業系統之一復原組件管理之一組復原動作,以及由該作業系統之一項目使用跟蹤組件管理之一組「最近使用」項目。此外,此等物件可在由一或多個使用者操作之複數個裝置之間進行交換,該交換過程係依據一或多個操作(例如,合併兩個物件集之物件同步操作,以及調整一目標物件集以匹配一來源物件集之物件鏡像操作)。如此,經由一物件系統集鬆散組織該等物件,且對其進行聚集,以表示該運算環境。
提供本「發明內容」係為了以一簡化方式介紹一組概念,在下文之「實施方式」中將進一步對其進行描述。本「發明內容」無意於確定所主張標的物之關鍵因素或基本特徵,也無意於用來限制所主張標的物之範圍。
將一運算系統中之物件組織為不相交、鬆散聚集之物件系統集合,可能因此產生幾個問題。舉例而言,可能難以經由各種裝置向使用者呈現一致的運算環境,尤其是當該等裝置之功能變化時(例如,一高效能個人工作站、一基於瀏覽器之公共終端器以及一低效能行動電話裝置)。作為另一實例,在向該等物件實施服務時,例如同步及備份,可能需要與每一物件系統進行交互聯繫,藉以影響受管理物件,在不同物件系統中此種交互聯繫可能不同。作為一第三實例,由於該等管理物件系統之間的協作不完善,所以可能難以找出不同物件集合(例如,組成一應用程式之所有物件)之間的關係。
在表示組成該運算環境之物件時,一種替代方法涉及將該等物件組織於一物件階層中,該階層可由一運算環境主機主控。如果該等物件由一物件系統以統一方式表示且以一致方式進行管理,則可設計一組服務來施用至該運算環境之所有物件。此外,該物件階層可被傳送給各種裝置,以表示同一運算環境(包括相同使用者設定檔、應用程式、資料檔案,等等),每一裝置可採用一致方式呈現該運算環境,但根據該裝置之功能進行訂製(例如,一硬體鍵盤介面,用於從連接至一工作站之鍵盤裝置接收資料輸入,及一觸控螢幕軟體鍵盤介面,用於從一行動電話裝置接收資料輸入)。
本文呈現一此種表示,其中根據一物件階層結構設定一物件階層之結構,該結構定義不同類型之資源集合,例如,應用程式、包括一組活動之活動集合,以及包括一組使用者設定檔之使用者設定檔集合。相對於此等物件之其他表示及組織,根據本文所指明之物件階層結構來組織該等物件,可以提供一些優勢。例如,本文所給出之物件表示可用特定類型之元資料進行標記,此等元資料可類似地與不同物件類型相關聯(例如,應用程式、資料檔案及裝置),以支援域專有元資料。根據本文所述方式組織物件時,還可促進對映不同裝置上之不同物件集,其允許根據不同使用者及裝置對運算環境進行所需調整。藉由本文所指定之物件階層結構可實現此等及其他好處,該運算環境由該物件階層表示、由不同功能之裝置呈現,從而可提供該等好處。
為達成上述及相關目的,以下說明及隨附圖式列出特定說明性態樣及實施方式。其表示可實施一或多種態樣之各種方式,但僅係其中之一少部分。當結合隨附圖式進行考量時,由以下詳細說明可以明瞭本揭示案之其他態樣、優點及新穎特徵。
現在參考該等圖式描述所主張之標的物,其中類似元件符號始終被用於指代類似元件。在以下說明中,出於解釋目的,列出許多特定細節,以提供對所主張標的物之透徹理解。但是應當明瞭,沒有此等特定細節也可實施所主張之標的。在其他實例中,以方塊圖之形式示出習知結構和裝置,以促進描述所主張之標的物。
現代電腦系統包括大量不同物件。許多電腦系統之特徵在於一檔案儲存,其中既包含用於組態該電腦系統之檔案(包括可執行檔案、類別庫、組態資訊集及資源),亦包括由一或多個使用者產生或接收之使用者檔案。許多電腦系統還包括大量組態資訊,該等資訊包含電腦系統硬體及軟體、包括該電腦系統之硬體及裝置、作業系統、殼層使用者介面以及該殼層使用者介面中可用應用程式之組態。還可存在各種使用者設定檔及帳戶,前者包括描述一特定使用者或使用者類別之資訊(名稱、殼層使用者介面喜好設定、主目錄,等等),後者包括描述該使用者或該使用者類別權限之資訊(檔案所有權、讀取/寫入權限、對各種裝置之存取,等等)。受保護安全資訊(例如密碼、憑證、公用/秘密金鑰對及存取控制清單)可被儲存於一安全物件中,藉由該等資訊,該作業系統可執行受控制之存取。可存在一或多個資料快取,例如瀏覽器快取及歷程、應用程式或瀏覽器文字方塊中之最近項目,以及最近使用之檔案及物件清單。各種應用程式可產生應用程式特定或任務特定封存檔案,例如包含各種資料夾及訊息之電子郵件封存檔案,及一共用位址簿,其包含由各系統使用者自各種來源接收之連絡人資訊,其被組織於由使用者定義之群組中。最後,該電腦系統可被組態,以與其他電腦、使用者及裝置交換特定資訊集,例如待同步物件及將根據各種條件(讀取/寫入權限、所有權、配額,等等)准許對其進行存取之物件集。此等物件類型通常係由該電腦系統中之各種管理系統(例如,檔案系統、系統登錄儲存、使用者帳戶管理系統,以及電子郵件系統)以專用方式管理,存取方法或物件組織方式之一致性或標準化程度很低。
將一運算系統中之物件組織為不相交、鬆散聚集之物件系統集合,可能因此產生幾個問題。作為一第一實例,若要呈現及維護包括一致物件集(例如,檔案、應用程式、使用者設定檔、應用程式組態、資料快取,等等)之一致運算環境,可能非常困難,在具有不同功能之裝置上進行呈現及維護時尤其如此,例如個人工作站、公共終端機及行動電話裝置。作為一第二實例,由於不同物件儲存於多個物件系統中,所以向該等物件應用服務之過程可能變得複雜。例如,要找出匹配一特定描述之物件(例如在一特定時間段內最後修改之物件),可能需要進行查詢,在一或多個檔案系統中匹配檔案、在一資料庫系統中匹配資料庫記錄、在一系統登錄匹配登錄機碼、在一組件快取中匹配應用程式、在各種資料快取中匹配資料快取項目,等等。因為此等物件系統經常以非標準方式儲存相關物件,例如使用該等物件屬性之專用參數(例如,經由一檔案系統日志查看檔案記錄,經由一資料專有時間戳記查看資料庫記錄),所以要將一操作應用於每一不同物件系統可能非常困難。作為一第三實例,因為每一物件系統被組態用以管理特定類型之物件,所以關聯及混合物件類型可能非常困難。例如,一應用程式可包含:儲存於一組件快取中之可執行二進位檔案、儲存於一系統登錄中之某些組態資訊、儲存於一檔案系統中之補充檔案(例如各種語言之字典),以及儲存於資料快取中之事件(例如最近編輯之文件)。可能難以聯合各種系統中之此等物件類型,也可能難以一起管理所有此等物件(例如,刪除所有此等物件,以解除安裝該應用程式)。作為一第四實例,該電腦系統之物件集可分散於幾個裝置之間,但由於該等裝置之不同組態、每一裝置之網路功能以及每一裝置用於交換資料之電傳格式不相容(例如,第一裝置可經組態為根據一XML結構交換資料,而一第二裝置可經組態為根據JSON交換資料),因此對該等物件集提供一致存取可能非常複雜。
可設計一種替代方法,其中採用某種方式表示該運算環境,從而可將其傳送給裝置,以根據該裝置之功能進行呈現。該表示包括一組物件,該等物件係根據一物件階層進行組織,且根據一共用文法進行表示。該等物件包括該電腦系統之資料物件,例如由該使用者創建之使用者檔案及資料。該等物件亦包括組成該作業系統組件(例如殼層)之可執行二進位檔案及類別庫,及其中所提供之應用程式。該等物件亦包括指定一運算環境使用者介面之資訊,包括殼層喜好設定(例如,可視主題、應用程式啟動選單及按二下臨限)、使用者帳戶及權限、安全資訊(例如,密碼、安全符記及憑證)、應用程式二進位及組態資訊、使用者資料及元資料(例如,檔案共用資訊)及資料快取(例如,最近使用之檔案清單及瀏覽器歷程)。無須考量此等物件之各種特性及應用,該等物件在該物件階層中以一公共方式表示,且可在該階層中任意組織。因此,本方法中之物件階層以一種公共方式在該物件階層中組成所有此等物件,此種方式不同於包含一組分離資料儲存之上述系統,在上述系統中,每一資料儲存包含一種類型之物件(例如,包含檔案之檔案系統、包含組態資訊之登錄,以及包含瀏覽器歷程之資料快取)。
以此種方式表示之運算環境可被傳送給任意裝置,且以適合於該裝置之功能的方式進行呈現。例如,一工作站可將該資訊呈現為一種穩健的通用運算環境,而一公共工作站可經由一網頁瀏覽器呈現一不同運算環境體驗(例如,作為一將在該使用者會話末期被丟棄之虛擬機器),一行動電話可提供一簡約介面,其可更快速地存取與行動電話相關之資訊(例如,連絡人、行事曆及導航資料)。此外,對該資訊集之更新(例如,喜好設定更改及對其中所包含資料檔案之更新)可被應用於該資訊集之主要來源,從而可傳送至將向其傳送該資訊集之所有其他裝置。此外,可經由該共用資訊集整合共用該運算環境之裝置,使一裝置可與該資訊集中所識別之其他裝置進行交互;例如,儲存於一第一裝置上之資料可由一第二裝置存取,一第一裝置可由一第二裝置經由一通信渠道進行控制。因此,該資訊集可識別共用該運算環境之裝置集合,以及每一裝置之角色、功能及資源,以在潛在大量不同裝置之間提供一積體運算體驗。
第1圖說明一此種方案10,其中該運算環境可由一運算環境主機12主控,該主機12可儲存及管理一物件階層14。該運算環境主機12亦可採用不同方式為各種裝置呈現該物件階層14,該等裝置例如為行動電話裝置16、個人筆記型電腦20及一公共工作站24,還可為具有不同存取權限之不種類型使用者呈現該物件階層14。該運算環境之呈現於是反映了所有裝置上之一致運算環境,該等裝置公開相同應用程式、使用者設定檔、殼層組態、使用者資料物件,等等。因此,一使用者可經由一高效能筆記型電腦存取該運算環境之一全功能版本22,在一低功率行動電話裝置16上存取該運算環境之一精簡版本18,經由一公共終端機24之一網頁瀏覽器26存取該運算環境之一瀏覽器相容及隱私導向版本28。就每一此種裝置支援運算環境呈現之能力而言,可根據每一裝置之能力來調整該物件階層14,從而呈現一致使用者介面及資料集。對運算環境之更新可被傳回該運算環境主機12,且可自動與其他裝置同步。該等各種裝置亦可合作:與其他裝置共用本地儲存之資料,控制其他裝置或者受其他裝置控制。因此,該運算環境可被設計及呈現為一雲運算架構,包含一裝置無關表示(「雲」),其表示為所有裝置(「用戶端」)上之一致呈現,該等裝置構成至該同一運算環境之協作入口網(具有裝置特定屬性)。此外,該運算環境主機12可將服務應用於組成該物件階層14之各種物件,在該物件階層中儲存該等物件所用之共同格式可促進該等服務之一致可用性及應用方式,而無須考量作為其應用目標之物件的特性。
為推動此目標,可設計一物件階層結構,用以採用一特定方式組織該物件階層中之物件。例如,可設計物件且設定其結構,以表示資料物件(如檔案)、使用者及使用者帳戶、裝置及在運算環境中發生之事件,以及衍生、擁有權及其之間的相互關係。相對於其他物件組織方式,此種物件組織方式可提供特定優點及/或減少缺點。相應地,考量到此種物件及運算環境之使用,可設計據以組織該等物件之物件階層結構。例如,可採用以下方式建立安全權限之模型:將各別物件關聯至擁有不同權限集之一或多個使用者帳戶(例如,對一物件擁有讀取/寫入權限之第一使用者帳戶,對該物件擁有唯讀權限之第二使用者帳戶,以及對該物件沒有任何權限之第三使用者帳戶)。該運算環境可經組態用以根據一物件階層結構之結構及語意使用該物件階層之物件,從而允許採用某種方式在複數個裝置上呈現一可部署運算環境,該種方式適合於每一裝置之組態及功能,但在其他方面,所有此種裝置均保持一致。
應瞭解,該物件階層結構之公式化可顯著影響該等裝置及主控該運算環境之伺服器的組態。作為一實例,一裝置可僅請求該運算環境之一部分(例如,一行動電話裝置可請求該物件階層中包含一連絡人資訊集之部分,例如電話號碼及電子郵件位址),該伺服器可僅提供該部分;但是,如果該裝置及該伺服器對不同物件階層結構進行操作,則該請求可能失敗。例如,該裝置可根據一第一物件階層結構請求該物件階層之一特定部分(例如,/Contacts),但該伺服器可根據一第二物件階層結構,將此資訊儲存在該物件階層中之一不同部分(例如,/AddressBook/Contacts),因此,即使該連絡人資訊存在於由該伺服器主控之物件階層中,也可能無法提供被請求資訊。作為一第二實例,該服務器也許能夠根據任意物件階層結構儲存物件階層,但也可能更有利地被組態用以利用該物件階層之組成部分,同時向其提供服務,因此可能希望找出根據一特定物件階層結構定義及組織於該物件階層中之物件。例如,回應一裝置接收該物件階層之請求,該伺服器可嘗試利用儲存於該物件階層中之驗證資訊驗證該裝置。因此,該伺服器可被更容易地組態,以根據一特定物件階層結構主控物件階層,使其還可存取及利用儲存於該物件階層結構中之資訊,同時向其提供相關服務。
考量以上原則,本文呈現一此種物件階層架構,其中以一特定方式定義及相互關聯該等物件,該方式促進該伺服器向該運算環境應用服務,促進將該運算環境部署至裝置,從而採用一種一致但裝置專有方式來呈現該運算環境。本文所述之物件階層結構被呈現為一經定義物件集,每一定義表示該運算環境中一特定類型之資料物件(例如,使用者設定檔、應用程式及裝置),且具有與其相關之特定屬性。該等物件之一部分被定義為專門類型之其他物件,例如一般「人員」物件類型可被擴展,以表示一「使用者」物件類型,其可能是具有某些附加資訊之人員,該等資訊表示該人員在該運算環境中之權限。此外,某些物件可被定義為一或多個其他物件之容器,例如包含一或多個「人員」物件類型之「人員集合」物件類型。此外,本文所呈現之物件階層結構在該物件階層中定義了本文所定義物件之階層組織;即,特定物件類型將被儲存於該物件階層之特定位置,因此,任何在該物件階層中搜尋此等物件之裝置或電腦系統,都可在該物件階層中之一已知、確定位置找到存在於該運算環境中之任意物件。
第2圖說明該物件階層結構之物件類型,以及物件類型之間的擴展相互關係。在此圖中,該物件關係說明物件中的專門化,例如,一「動物」物件類型可被專門化為「哺乳動物」物件類型,其可進一步被專門化為「貓」物件類型。本文討論了該物件階層結構中每一物件之屬性的詳細資訊,但此圖係呈現為資料物件類型之一概觀,其包含於本文呈現之物件階層結構中。
第2圖之物件階層結構物件集30包括一「資源」物件類型32,其表示儲存於該物件階層中之基本資料物件。該「資源」物件類型32表示該物件階層結構中之一可定址物件,用以提供一物件階層中之明顯可定址位置;即,對於該物件階層中之一特定位址,該物件階層中僅有一物件對應於該位置。在該物件階層結構之一些具體實施例中,該資源可僅由一位址確定,而在該物件階層架構之其他具體實施例中,該資源可在複數個位址被確定。但是,在任意此種具體實施例,該物件階層中之單一位址可與至少一物件關聯。
第2圖中之物件階層結構物件集30之「資源」物件類型32用作許多其他物件類型之一基本物件類型。此等物件類型中之一部分對應於一些物件,該等物件有時被設計為習知運算環境中之一或多個檔案。作為一第一實例,該物件階層結構物件集30包括一「核心物件」物件類型34,其係一專門類型之資源,其包括位於一物件階層根節點之物件集。該物件階層結構物件集30亦包括一「應用程式」物件類型36,其係一專門類型之資源,其指示一物件,該物件表示在該運算環境中安裝之應用程式。許多其他物件可與該「應用程式」物件類型相關聯,例如一標題、一應用程式圖示以及一或多個可執行二進位檔案。該物件階層結構物件集30亦包括一「資料項目」物件類型38,其係一專門類型資源,其表示一基元資料單元之容器,例如,應用程式二進位檔案、文件、應用程式組態資訊集、影像,等等。該物件階層結構物件集30亦包括一「新聞項目」物件類型40,其係一專門類型之資料項目物件,其指示該運算環境中一值得注意之事件。
該「資源」物件類型亦可用作其他物件類型之一基本物件類型。作為一實例,該物件階層結構物件集30亦包括一「資料饋送」物件類型42,其係一專門類型資源,其表示相關資料項目之集合,例如,組成一專輯之一組歌曲(例如,MP3物件),或者構成一相片專輯之一組相片影像。該物件階層結構物件集30亦包括一「活動」物件類型44,其係一專門類型資源,表示該運算環境中最近發生之一事件,例如創建一物件、一使用者登入及在該運算環境中添加一裝置。(應當理解,「活動」表示在一運算環境常規過程中發生之低重要性事件,其可能只是暫時受一使用者之關注,例如複製一部分文字,而「新聞項目」表示更重要之事件,其可能受到該使用者之長期關注,例如創建一相片專輯。)該物件階層結構物件集30亦包括一「成員」物件類型46,其係一專門類型資源,表示一核心物件及一使用者之間的關係,該使用者例如經由一擁有權或權限集合與該核心物件相關聯。該物件階層結構物件集30亦包括一「裝置」物件類型48,其係一專門類型資源,表示一種裝置,將授權該物件階層之至少一部分向其傳輸,且授權所表示的運算環境之至少一部分在該裝置上進行呈現。該物件階層結構物件集30亦包括一「對映」物件類型50,其係一專門類型資源,表示一裝置(即一「裝置」物件)及可被傳送至該裝置之一核心物件之間的關係。該物件階層結構物件集30亦包括一「設定檔」物件類型52,其係一專門類型資源,表示該運算環境之至少一部分之一授權使用者的使用者設定檔。此等物件類型係基於該「資源」物件類型32,此等物件類型之物件以一種可定址及可存取方式包含於一物件階層中,該方式類似於更傳統之物件類型,例如文件及影像。
該物件階層結構物件集30還包括未從該「資源」物件類型32專門化之物件類型。此等物件被包含於一物件階層結構中,但可能未被作為符合該物件階層結構30定址模型之可定址項目。相反的,此等物件可包括其他物件之可存取成員,或者該物件階層結構之專門特徵,其可被封裝於該物件階層結構30定址模型外部的物件中。作為一實例,該物件階層結構物件集30包括一「網」物件類型54,其包括有關一完整物件階層之資訊。通常,單一「網」物件可與一特定物件階層相關聯,但在該物件階層結構之其他具體實施例中可包含此關聯方式之變體。該物件階層結構物件集30亦包括一「儲存服務」物件類型56,其表示一儲存裝置,該物件階層之一部分(例如,一或多個核心物件)位於該裝置上。該物件階層結構20亦包括一「資源集合」物件類型58,其表示一特定物件類型之資源集合。例如,一裝置物件可經由一或多個各別對映物件與一或多個核心物件關聯,其可包括將物件與該裝置相對映之資源集合。類似地,該運算環境之使用者設定檔可被表示為一些設定檔物件之資源集合,該等物件與該物件階層之網狀單獨物件相關聯。該物件階層結構20亦包括一「識別身份」物件類型60,其描述一特定使用者,例如向該使用者授予該運算環境中之權限。該物件階層結構20亦包括一「角色」物件類型62,其根據一特定類型之角色(例如,一擁有者、一閱讀者及一貢獻者)來使一成員物件與一核心物件相關聯。
合起來,第2圖所示物件類型包括該物件階層結構之一主要部分,可根據此等互相關物件類型來表示該運算環境之許多物件。考量此等物件類型以及包含此等物件類型之物件的物件階層,第3圖說明該物件階層結構70之結構,其中自一第一物件至一第二物件之單箭頭表示該第一物件至該第二物件之關係。另外,在第3圖中,從一第一物件至一第二物件之雙箭頭表示該第一物件係一或多個物件之一集合,該等物件之類型由該第二物件指示。例如,該網物件72係關於一裝置資源集合84(如該單箭頭所指示),其包含一裝置資源物件86(如該雙箭頭指示)。可以理解,第2圖之物件階層結構物件集30說明物件類型之專門化(例如,一第一物件係第二物 件之一專門化類型),而第3圖之物件階層結構70說明一物件階層中此等物件類型之物件組織(例如,一第一物件係關於一或多個該第二物件)。
第3圖呈現本文所述之一例示性物件階層結構70,其包括一網物件72,在此例示性物件階層結構70中,其包括描述該運算環境之一單獨物件。該網物件72係關於六種類型之物件及物件集合。首先,該網物件72係關於一設定檔物件74,在此例示性物件階層結構70中,其包括一表示該目前使用者之設定檔的單獨物件。該網物件72亦係關於一儲存服務集合76,其包含零個或多個儲存服務物件78,其表示一些不同位置,該物件階層之組成部分可儲存於此等位置。(應當注意,該儲存服務集合76及該儲存服務78均不被稱為「資源」,此係由於此等物件非係基於該「資源」物件類型32。)該網物件72亦係關於一應用程式資源集合80,其包含零個或多個應用程式資源物件82,其表示由該物件階層表示之運算環境中的可用應用程式。該網物件72亦係關於一裝置資源集合84,其包含零個或多個裝置資源物件86,其表示可在其上呈現該運算環境至少一部分之裝置。最後,該網物件72亦係關於一核心物件資源集合92,其包含零個或多個核心資源物件94,包含位於一物件階層之根節點的物件集。
如第3圖之例示性物件階層結構70中之進一步說明,一核心資源物件94係關於四個物件集合。第一,一核心 資源物件94係關於一對映資源集合96,其包含至少零個對映資源物件98。對映資源物件98表示該核心資源物件94與其上可呈現該核心資源物件94之一裝置之關係,;相應地,各別對映資源物件98係關於至少一裝置資源物件86。核心資源物件94亦係關於一活動資源集合100,其包含零個或多個活動資源物件102,表示相對於該核心資源物件94所產生之較不重要事件,例如各種更改。一核心資源物件94亦係關於一成員資源集合104,其包含一或多個成員資源物件106,其表示一些使用者,向該等使用者提供對該核心資源物件94之不同存取位準。各別成員資源物件106係關於一或多個身份識別物件108,其提供一些附加資訊,該資訊係關於由該成員資源物件106所表示之成員。最後,一核心資源物件94亦係關於一資料饋送資源集合110,其包含零個或多個資料饋送資源物件112,表示相關資料項目之各種集合(例如,相關使用者物件之集合,例如一音樂專輯中之歌曲)。一資料饋送資源物件112係各別關於資料項目資源物件116之資料項目資源集合114。一資料饋送資源物件112亦係關於角色物件120之一角色集合118,該角色物件120表示相對於該資料饋送資源物件112向各使用者擴展之存取權限;相應地,該等角色物件120係關於一或多個成員資源物件106,其表示佔用此等角色之使用者。
第3圖之例示性物件階層結構70於是以某種形式呈現第2圖所示物件類型之一例示性組織,以表示構成一典型電腦系統之各種不同資料物件。一物件階層(例如,第1圖之方案10中之例示性物件階層14)可根據該例示性物件階層結構70進行模型化,且可由一伺服器主控(例如,該運算環境主機12),其可將一組服務施用於該物件階層14之物件,以更改及維護該運算環境。該物件階層14亦可被部署至一或多個裝置(例如一行動電話裝置16、一個人筆記型電腦20及一公共工作站24),該等裝置被組態,用以接收根據第3圖例示性物件階層結構70所建模之物件階層,然後以一致方式呈現所表示之運算環境。
應理解,一物件階層結構之公式化可被用以創建一物件階層之實例,其表示一運算環境。相應地,第4圖說明表示一運算環境之例示性方法130,其中該例示性方法130將該運算環境表示為根據一物件階層結構組織之物件階層,例如第3圖之例示性物件階層結構70。第4圖之例示性方法130開始於132,涉及將該運算環境表示134為一物件階層,其包括描述該運算環境之網物件。該網物件又包括至少一設定檔資源物件;儲存服務物件之一儲存服務集合;應用程式資源物件之一應用程式資源集合;裝置資源物件之一裝置資源集合;新聞項目資源物件之新聞項目資源集合;以及核心資源物件之一核心物件資源集合。各別核心資源物件又包括對映資源物件之一對映資源集合,其將該核心物件關聯到至少一裝置物件;活動資源物件之一活動資源集合;成員資源物件之一成員物件資源集合,其將該核心物件關聯到至少一身份識別物件;以及資料饋送資源物件之一資料饋送資源集合。最後,各別資料饋送資源物件包括:資料項目資源物件之資料項目資源集合,以及角色資源物件之角色資源集合,其將該資料饋送資源物件關聯至該核心資源物件之一成員資源物件。藉由以此種方式組織及相互關聯該物件階層之物件,該例示性方法以一種可部署方式表示該運算環境,然後在136處結束。
第5圖說明基於第3圖之例示性物件階層結構70之例示性物件階層140,且利用在第2圖之物件階層結構物件集30中所說明之物件類型。該例示性物件階層140包括一網物件142,其包含表示目前使用者之設定檔資源物件144;表示儲存服務之儲存服務集合146,例示性物件階層140儲存於該等儲存服務上(例如,一運算環境主機及一行動電話裝置);一應用程式資源集合148,表示該運算環境中之可用應用程式集(例如,一行事曆應用程式及一計算機應用程式);一裝置資源集合150,其表示共同包含該運算環境之裝置(例如工作站電腦系統及行動電話裝置);及一新聞項目資源集合152,其描述在該運算環境發生的值得注意的事件(例如,新相片專輯之創建及音樂專輯之添加)。該網物件142亦包含一核心資源物件集合154,其包含表示一組相片專輯之第一核心資源物件156,以及表示一組音樂專輯之第二核心資源物件166。該第一核心資源物件156包含:一活動資源集合,其表示相對於該第一核心資源物件156較不重要之事件;一成員資源集合,其表示一些成員,向該等成員授予了對該第一核心資源物件156之不同存取位準;以及一對映集合,其將該第一核心資源物件156關聯至該等裝置,藉由該等裝置可存取該第一核心資源物件156。該第一核心資源物件156亦包含一資料饋送資源集合158,包括一資料饋送資源物件160,表示該相片專輯集合中之相片專輯。該資料饋送資源物件158又包含:一資料項目資源集合162,包括一相片專輯之相片;及一角色資源集合164,表示相對於該相片專輯之不同成員角色(由一第一成員充任之「擁有者」角色,以及由一第二成員充任之「貢獻者」角色)。類似地,該第二核心資源物件166包含活動、成員、對映及資料饋送等集合,其包括表示一音樂專輯之資料饋送資源物件170,其具有一資料項目資源集合172,表示該音樂專輯中之各歌曲;還包括一角色資源集合174,表示可存取該音樂專輯之成員(包括由一第一成員充任之「擁有者」角色,以及由一第二成員充任之「收聽者」角色)。
在許多態樣中,可採用各種變體實施根據本文討論所設計之物件階層結構(例如第3圖之例示性物件階層結構70)。相對於此等及其他方法之其他變體,一些變體可呈現附加優點及/或減少缺點。為促進此等附加優點及/或減少缺點,可在此等方法之具體實施例(例如第4圖之例示性方法130)中包含此等變體,既可以僅包含此等變體,也可以還包含其他變體。
可在此等方法之實施方式中變化之第二態樣,其係關於一物件階層之物件的儲存方式,該物件階層係根據一物件階層結構組織。本文所述之物件階層結構可實現於物件階層之許多模型中。一些例示性具體實施例說明於第6圖中,每一具體實施例說明一些物件之儲存,該等物件表示:一人員(擁有「名」及「姓」等屬性)、一裝置(擁有「裝置編號」屬性)以及一應用程式(擁有「標題」及「二進位」等屬性,後者包含一可執行二進位檔案之內容)。作為一第一實例180,該物件階層結構可表示為一種物件導向語言(例如C#)中之物件集,其中該等物件係由類別執行個體化,該等類別又被定義為已命名屬性及方法的良好類型化集合。在此模型中,可定義一類別集,可由每一類別執行個體化物件,以表示由該類別建模之物件類型的執行個體。例如,可定義一類別類型,以表示一人員,可將該類別執行個體化為一第一類別執行個體(「人員1」),表示一第一人(“David Smith”);以及一第二類別執行個體(「人員2」),表示一第二人(“John Lee”)。作為一第二實例190,該物件階層結構可被展示為儲存於一資料儲存中之物件集,例如一關係資料庫。每種類型之物件可被儲存於一特定關係表中,該表係根據該物件之屬性設定結構。例如,可設定一表格之結構,以儲存各位人員之表示,該表格可包含一第一記錄(「人員1」),表示一第一人(“David Smith”);以及一第二記錄(「人員2」),表示一第二人(“John Lee”)。作為一第三實例200,該物件階層之物件可根據該物件階層之物件結構來模型化,但可採用一種結構無從驗證之方式進行儲存,其提供一屬性名稱及取值之字典。可利用一元組系統,在此系統中,一任意名稱之物件可被宣告為一任意鍵/值元組集合。例如,人員表示可被儲存為一第一雙元組(「人員1」),表示一第一人(“David Smith”);以及一第二雙元組(「人員2」),表示一第二人(“John Lee”)。此領域之一般技術者可設計一物件階層結構之此等及其他具體實施例,同時實施本文討論之方法。
可在此等方法之實施方式中變化之第二態樣,其係關於該物件階層結構之公式化,其方式能夠促進此等物件類型之可擴展性及/或新物件類型之添加。第2圖中所說明之物件類型可能完全足以表示一運算環境之許多或全部物件。但是,第2圖中所說明之例示性物件階層結構物件集30,並未被呈現為一窮舉清單,列出可在該物件階層結構中定義及整合之物件類型。該物件階層結構之各種具體實施例可包括及定義其他物件類型,作為第2圖物件類型之補充、專門化及/或小更改。另外,該物件階層架構之一些具體實施例可允許在按其組織的物件階層中儲存其他類型之物件。該物件階層結構於是可被設計作為一可延伸物件系統,在此系統中,可根據新物件類型在該物件階層中創建物件,可用新屬性擴充物件類型。作一第一實例,全新類型之物件可由不同使用者設計,並插入該物件階層中。作為一第二實例,使用者可能希望將元資料與物件相關聯,以指示具有一語意關係之物件。此元資料可使用該使用者取值資訊補充該物件階層之物件,可採用一種方式設計該物件階層結構,使該元資料不會干擾一物件階層中之物件表示。
為促進該物件階層結構之擴充性,可根據一可遞迴基本表示格式指定及儲存該物件階層之各別物件,其中可採用一種基本方式表示一物件之組件。例如,可意識到物件通常包含三種類型之資料元件:基元(單一資料單位,例如一個數字或一字元)、記錄(一同操作之單一資料單元集合),及序列(元件之聚集)。一記錄通常表示一元件集,此等元件之功能不可分,共同用作一表示,例如,數字7、4及1776合在一起表示日期「1776年7月4日」;而序列則表示一可分項目集,例如組成一質數子集之2、3、5及7。此外,該文法可被設計為具有遞迴,其可允許特定類型元件之巢狀(例如,序列之序列,或者一記錄包含一序列作為該記錄之一元件)。藉由以此種方式組織物件,該物件階層結構可允許表示習知物件類型之物件(例如第2圖中所示之物件類型),亦允許表示未知物件類型之物件,還可使用新資訊(例如,使用者定義之元資料)擴充習知物件類型。該領域之一般技術者也許能夠設計許多可擴展物件階層結構及格式,同時實施本文所討論之方法。
一可在此等技術之實施方式中變化之第三態樣,係關於定址模型,經由該模型可識別該物件階層之物件。可有利地選擇該定址模型,以反映構成該物件階層之物件的階層安排(即,如果一第一物件按照階層係一第二物件之下屬,則該第一物件之位址按照階層係該第二物件位址之下屬)。亦可有利地選擇該定址模型,為每一位址指定最多一物件,從而使一物件在一特定位址保持可定址狀態,直到及除非該物件變更在該物件階層中之位置,或者被刪除為止。在物件階層結構之一些具體實施例中,可設計該定址模型,使各別物件可在單一位址為可用,因此,在第一位址可用之第一物件實際上不同於在第二位址可用之第二物件。在物件階層結構之其他具體實施例中,可在兩或多個位址存取一物件。作為一實例,一物件在一物件階層中可具有兩個階層位址,亦擁有一全域唯一位址,經由該位址可唯一識別該物件,而不考量其在該物件階層中之位址。例如,可以向該物件階層之物件指派全域惟一識別符(GUID),既可根據該物件階層中之一或多個階層位址存取,亦可根據其GUID以非階層方式存取。因此,在創建時,可為表示John Lee之連絡人資訊的物件指派一GUID 0xF451D3E0,既可經由一階層位置及名稱存取(例如,/Contacts/JohnLee),亦可經由其GUID存取(例如,/GUIDs/F451D3E0)。本領域之一般技藝者可為物件階層結構設計許多定址模型,同時實施本文所討論之方法。
一可能有利之此種定址模型涉及一種階層定址模型,其為一物件階層之各別位址定義至多一種資源物件類型之一物件。此定址模型可被應用於一包含物件類型之物件階層結構,如第2圖例示性物件階層結構物件集30中所示,其中許多物件類型衍生於一基本「資源」物件類型32。由其衍生之任意此種物件可被指派給該物件階層中單一、階層導向之位址;相反,不能透過該定址模型獲取非係衍生於該「資源」物件類型32之物件。更特定言之,該階層定址模型可根據一統一資源識別符(URI)階層定址模型進行定義。URI通常係根據以下語法定義:scheme://authority/path/resource_name其中scheme表示一通信協定(HTTP、FTP、telnet等等),authority表示一伺服器或資料源,path表示由斜線分隔之路徑,其指向一階層中存在被指名資源之節點。一根據物件階層結構(例如第3圖之例示性物件階層結構70)之物件階層中的物件,可採用此種方式定址,例如:http://mycomputer.com/Contacts/JohnLee此定址模型在幾種態樣中可能是有利的。第一,可採用此種方式定址之物件階層可由一公共網站伺服器主控,即使該網站伺服器並非被專門組態用以儲存一物件階層的物件,該物件階層表示一運算環境。第二,以此種方式指定之物件存取可更容易地被網路硬體(例如,防火牆及路由器)處理,該等硬體主要被組態用以處理基於URI之請求。第三,一種可採用此方式定址之物件階層,可根據一代表性狀態轉移(“RESTful”)介面表示,其中,可透過一組受約束之完善定義操作處理該物件階層之物件;例如,常見HTTP方法(PUT、GET、POST及DELETE)可能完全能夠支援公共動詞(創建、讀取、更新及刪除),用於存取表示一運算環境之物件階層的物件。與各種物件階層結構之其他定址模型相比,可以提供其他優點及/或减少其他缺點。
一可在此等方法之實施方式中變化之第四態樣,係關於習知物件類型之組件,該等類型定義於該物件階層結構之中。第2圖所示例示性物件階層結構物件集30既未被呈現為一窮舉清單,列出可於該物件階層結構中定義及整合之所有物件類型,也未被呈現為包含此等物件類型之完整屬性集。第7圖示出一例示性附加物件屬性集210,其包括可與一物件階層結構之物件類型相關聯的附加物件屬性。可選擇此等附加物件屬性(既可以單獨選擇,也可以結合其他附加物件屬性),以進一步定義根據該物件階層結構組織之物件階層物件,相對於一些物件階層結構(其定義具有不同物件屬性集之物件類型),該物件階層結構可具有附加優點及/或減少缺點。
如該例示性附加物件屬性集210所示,一「網」物件類型54可與附加屬性相關聯,該等屬性包含一指定該網位址之自連結物件(例如,定義該網之伺服器或來源的部分URI,例如,http://mycomputer.com),及/或一標題物件,其指定該物件階層之名稱及其所表示之運算環境。「資源」物件類型32及「資源集合」物件類型58均可被關聯大量屬性,包括:一作者集合,其識別該資源或資源集合之作者;一基本位址物件,其為一資源或一資源集合中所包含之項目指定基本位址(例如,基本URI);一類別集合,其指定一些使用者定義的類別,描述該資源或資源集合;一貢獻者集合,其指定對該資源或資源集合之貢獻者;一著作權物件,其確定有關該資源或資源集合之著作權狀態;一識別物件,例如一全域唯一識別符(GUID);一連結集合,其確定與該資源或資源集合相關聯之連結(例如,URL);一自連結物件,其指定該資源或資源物件之一唯一位址(例如,一URI);一摘要物件,其包含該資源或資源集合之一文本摘要;及/或一標題物件,其為該資源或資源集合指定一名稱。
如該例示性附加物件屬性集210之進一步說明,一「核心物件」類型34可與一使用者資料物件相關聯,該使用者資料物件可包含一任意指定之使用者資料集(例如,域專有元資料),其與該核心物件相關聯。「應用程式」物件類型36可與一應用程式識別物件(例如,一應用程式名稱)相關聯,該物件唯一識別該應用程式;一首頁位置物件,其識別該應用程式之一首頁(例如,一網站URL);一已安裝版本位置,其確定該物件階層中應用程式之目前版本(例如,「計算機」版本1.2.1.1600);一資源清單位置物件,其識別該應用程式資源清單之位置(例如,識別該物件階層中一資源物件之URI,或者識別一網頁可存取應用程式資源清單之URL);及/或一資源清單版本物件,其識別在該資源清單位置可用之應用程式資源清單版本。一「資料項目」物件類型38可與一親代識別物件相關聯,其指示該資料項目物件之階層親代;一同步物件,其包含物件同步資訊(例如,一最新物件同步指示器,此資料項目與一運算環境主體最後同步之日期及時間,等等),及/或一使用者資料物件,其包含任意指定之使用者資料集,該使用者資料集與該資料項目相關聯。「資料饋送」物件類型42可與一同步項目集合相關聯,該集合包括:一組與同步相關聯之活動或新聞項目;及/或一資料饋送類型物件,其指示該資料饋送之類型(例如,一影像或聲音集合、一多媒體文件之組件,等等)。
如該例示性附加物件屬性集210中進一步之說明,一「活動」物件類型44可與描述活動類型(例如,資料項目創建、讀取、更新或刪除)之活動類型物件相關聯,及/或定義該活動最大使用壽命之最大年齡物件,超過此壽命之後,該活動可表示一過時事件,該事件已經不再被有用儲存及向使用者呈現。「成員」物件類型46可與一邀請接受指示器物件相關聯,該物件指示一受邀成為一資源或資源集合成員之個人是否已經接收該邀請;一邀請到期指示器物件,其指示成為一資源或資源集合成員之邀請是否已經到期;一擁有者指示器物件,其指示該成員是否為該資源或資源集合之一擁有者;及/或一角色類型物件,其指示該成員在該資源或資源集合中充任之角色類型(例如,作者、讀者,等等)。「裝置」物件類型48可與一裝置類型物件相關聯,該物件描述所表示裝置從屬之一般裝置類別,以及/或者與一裝置線上指示器物件相關聯,該物件指示該裝置目前是否可供目前表示該運算環境之裝置存取。「對映」物件類型50可與一資料饋送對映集合相關聯,其識別特定的資料饋送,其位於被對映至一裝置的核心資源物件中。例如,一裝置可被經由該「對映」物件類型50之物件對映至一核心物件子集,但該對映可被限制於特定資料饋送,其識別於該對映物件之資料饋送對映集合。「設定檔」物件類型52可與一名稱物件相關聯,其表示該使用者之名稱,及/或與一電子郵件位址物件相關聯,其表示該使用者之一電子郵件聯絡位址。最後,「角色」物件類型62可與以下物件相關聯:一創建權限指示器物件、一刪除權限指示器物件、一讀取權限指示器物件及/或一更新權限指示器物件,其確定與該角色相關聯之權限,以及/或者一角色類型物件,其識別該使用者在此角色中所充任之角色類型。
因此,第7圖之例示性附加物件屬性210說明一些物件屬性,其可進一步與一物件階層結構之各種物件類型相關聯(既可以單獨關聯,亦可以組合關聯)。但應當瞭解,該附加物件屬性集210未被呈現為物件屬性之一窮舉清單,此等物件屬性可與此物件階層結構之各種物件類型相關聯,還應瞭解,許多其他物件屬性可作為替代或補充地與各種物件類型相關聯。此領域之一般技術者也許能夠在一物件階層結構之各種習知物件類型定義中包含許多補充或替代性物件屬性,同時實施本文所討論之方法。
本文所討論方法之另一具體實施例涉及一電腦可讀媒體,該媒體包括處理器可執行指令,其被組態用以執行一種方法,該方法根據一物件階層表示一運算環境。第8圖中說明可採用此等方式設計之例示性電腦可讀媒體,其中該實施方式220包括一電腦可讀媒體222(例如,一CD-R、DVD-R或一組磁碟機),電腦可讀資料224被編碼於該媒體上。此電腦可讀資料224又包括一組電腦指令226,其經組態用以根據本文所列之原則操作。在一此種具體實施例220中,該等處理器可執行指令226可被組態用以執行一種方法,其根據一物件階層表示一運算環境,例如第4圖之例示性方法130。本領域之一般技藝者可設計許多此等電腦可讀媒體,其被組態用以根據本文所示方法進行操作。
儘管已經採用結構特徵及/或方法性操作的專用語言描述了本發明,但應理解,於隨附申請專利範圍內限定之本發明不必限制至上文所述之特定特徵或操作。相反,上述特定特徵及操作被作為實施該等申請專利項之實例形式而揭示。
當使用於此申請案中時,「組件」「模組」、「系統」及「介面」等詞意通常是指一電腦相關實體,或者為硬體,或者為硬體與軟體之組合,或者為軟體,或者為執行中之軟體。舉例而言,一組件可包括但不限於運行於一處理器上之處理序、一處理器、一物件、一可執行文件、一執行緒、一程式及/或一電腦。藉由說明之方式,運行於一控制器上之應用程式及該控制器均可以為一組件。一或多個組件可駐存於一處理序/或執行緒中,一組件可位於一電腦及/或分散於兩或多個電腦中。
此外,可以使用標準程式設計及/或工程技術將所申請專利之標的實施為一方法、裝置或製品,以產生軟體、韌體、硬體或其任意組合,以控制一電腦來實施所揭示之標的。本文中所使用之「製品」一詞希望包含可自任意電腦可讀裝置、載體或媒體存取之電腦程式。當然,熟習此項技術者將會認識到在不背離所主張標的物之範圍或精神的情況下,可對此組態進行許多修改。
第9圖及下文之討論簡要、概括性地描述了一種適當運算環境,用以實施本文所列之一或多種裝置之具體實施例。第9圖之操作環境只是一合適操作環境之實例,無意於對該操作環境之應用及功能範圍進行任何限制。實例運算裝置包括,但不限於,個人電腦、伺服器電腦、手持式或膝上型電腦、行動裝置(例如,行動電話、個人數位助理(PDA)、媒體播放器,及類似裝置)、多處理器系統、消費型電子產品、微型電腦、主機電腦、包括任意上述系統或裝置之分散式運算環境,及類似裝置。
可以一或多個運算裝置執行之「電腦可讀指令」一般架構來描述該具體實施例。電腦可讀指令可經由電腦可讀媒體(下文進行討論)散佈。電腦可讀指令可被實施為程式模組,例如,函數、物件、應用程式設計介面(API)、資料結構及類似模組,其可執行特定工作或實施特定抽象資料類型。典型地,該等電腦可讀指令之功能可根據各種環境需要為組合式或分散式。
第9圖說明一系統230之實例,其包括一運算裝置232,被組態用以實施本文所提供之一或多個具體實施例。在一組態中,運算裝置232包含至少一處理單元236及記憶體238。根據運算裝置之確切組態及類型,記憶體238可以是揮發性(例如,隨機存取記憶體)、非揮發性(例如唯讀記憶體、快閃記憶體等),或者其兩者之組合。此組態於第9圖中以虛線234示出。
在其他具體實施例中,裝置232可包含附加特徵及/或功能。例如,裝置232還可包含附加儲存(例如,可抽換及/或不可抽換),該等儲存裝置包含但不限於磁儲存、光儲存,及類似裝置。此附加儲存在第9圖中由儲存器240表示。在一具體實施例中,用以實施本文所提供之一或多種具體實施例之電腦可讀指令可儲存於儲存器240中。儲存器240亦可儲存其他電腦可讀指令,以實施作業系統、應用程式,等等。電腦可讀指令可載入記憶體238中,例如由處理單元236執行。
本文所用「電腦可讀媒體」一詞包括電腦儲存媒體。電腦儲存媒體包括揮發性和非揮發性、可抽換式和不可抽換式媒體,其以任意方法或技術實施,用於儲存諸如電腦可讀指令或其他資料之資訊。記憶體238及儲存器240均係電腦儲存媒體之實例。電腦儲存媒體包含但不限於隨機存取記憶體、唯讀記憶體、電可抹除可程式化唯讀記憶體、快閃記憶體或其他記憶體技術、CD-ROM、通用數位光碟(DVD)或其他光學儲存、磁卡、磁帶、磁片儲存或其他磁儲存裝置,或者可用於儲存所期望資訊及可由裝置232存取之任意其他媒體。任意此種電腦儲存媒體可以是裝置232之一部分。
裝置232亦可包括通信連接246,其允許該裝置232與其他裝置通信。通信連接246可包括但不限於一數據機、網路介面卡(NIC)、一整合網路介面、一射頻發送機/接收機、一紅外埠、一USB連接,或其他用於將該運算裝置232連接至其他運算裝置之介面。通信連接246可包括一有線連接或一無線連接。通信連接246可傳送及/或接收通信媒體。
「電腦可讀媒體」一詞可包括通信媒體。通信媒體通常實現一「調變資料訊號」(例如一載波或其他傳輸機制)之電腦可讀指令或資料結構,且包括任意資訊傳送媒體。「調變資料訊號」一詞可包括一訊號,其一或多個特徵以某種方式設定或變化,以將資訊編碼到該訊號中。
裝置232可包括輸入裝置244,例如鍵盤、滑鼠、輸入筆、語音輸入裝置、觸控輸入裝置、紅外攝影機、視訊輸入裝置及/或任意其他輸入裝置。裝置232中亦可包含輸出裝置242,諸如一或多個顯示器、揚聲器、印表機及/或任意其他輸出裝置。輸入裝置244及輸出裝置242可經由有線連接、無線連接或其任意組合方式連接至裝置232。在一具體實施例中,來自另一運算裝置之輸入裝置或輸出裝置可被用作運算裝置232之輸入裝置244或輸出裝置242。
運算裝置232之組件亦可藉由各種互連(例如匯流排)連接。此等互連可包括周邊組件互連(PCI),例如PCI Express、通用串列匯流排(USB)、firewire(IEEE 1394)、一光學匯流排結構,及類似連接。在另一具體實施例中,運算裝置232之組件可藉由一網路互連。例如,記憶體238可包括位於不同實體位置、由一網路互連之多個實體記憶體單元。
本領域熟習技藝者將認識到用於儲存電腦可讀指令之儲存裝置可被分散在一網路上。例如,可經由網路248存取之運算裝置250可儲存電腦可讀指令,以實施本文所提供之一或多種具體實施例。運算裝置232可存取運算裝置250,且下載部分或全部電腦可讀指令,以進行執行。或者,運算裝置232可根據需要下載該等電腦可讀指令之片斷,或者部分指令可在運算裝置232上執行,而其他部分在運算裝置250上執行。
本文提供具體實施例之各種操作。在一具體實施例中,所描述之一或多種操作可構成儲存於一或多個電腦可讀媒體上之電腦可讀指令,當由一運算裝置執行該等指令時,可使該運算裝置執行所描述之操作。對部分或全部操作進行描述之次序不應被理解為暗指此等操作必須與次序相關。熟習此項技術者應瞭解,替代順序亦可實現本說明書之好處。此外,應理解並非所有操作都必須出現在本文所提供之每一具體實施例中。
此外,「例示性」一詞在此文中用於表示用作一實例、事例或說明。在本文中作為「例示性」進行說明之任意態樣或設計不必被解釋為優於其他態樣或設計。相反地,使用「「例示性」一詞係意欲以具體方式呈現概念。當用於本申請案時,「或」一詞意指包含意義之「或」,而非獨佔性意義之「或」。即,除非另行指明,或者除非從上下文中可清楚瞭解,否則,「X採用A或B」意指任一自然包含性替換。即,如果X採用A;X採用B或者X同時採用A及B,則在任意前述情況下均滿足「X採用A或B」。此外,在本申請案及隨附申請專利範圍中所使用之「一」或「一個」,除非另行指明或者從上下文中清楚地看出係針對單一形式,否則應當被一般性地理解為「一或多個」。
另外,儘管已經針對一或多個實施方式示出及描述了本揭示案,但根據對本說明及隨附圖式之閱讀及理解,其他本領域熟習技藝者可瞭解等價更改及修改。本揭示案包括所有此等修改及更改,且僅受如下申請專利範圍之範圍限制。尤其係針對由上述組件(例如,元件、資源,等等)所執行之各種功能,除非另行指明,用於描述此等組件之術語希望對應於任意執行所述組件之指定功能的組件(例如,其在功能上等價的),即使在結構上與執行本揭示案所示例示性具體實施功能之結構不等價。此外,儘管可能已經僅針對幾種實施方式之一種來揭示一本發明之特定特徵,但此特徵也可根據需要與本發明其他實施方式之一或多個其他特徵結合,其有利於任意既定或特定應用。此外,關於該詳盡說明或申請專利範圍內所使用之「包含」、「擁有」、「具有」等詞,該等術語與「包括」等含義類似。
10...方案
12...主機
14...物件階層
16...行動電話裝置
18...運算環境之一精簡版本
20...個人筆記型電腦
22...運算環境之一全功能版本
24...公共終端機
28...瀏覽器相容及隱私導向版本
30...物件階層結構物件集
32...「資源」物件類型
34...「核心物件」物件類型
36...「應用程式」物件類型
38...「資料項目」物件類型
40...「新聞項目」物件類型
42‧‧‧「資料饋送」物件類型
44‧‧‧「活動」物件類型
46‧‧‧「成員」物件類型
48‧‧‧「裝置」物件類型
50‧‧‧「對映」物件類型
52‧‧‧「設定檔」物件類型
54‧‧‧「網」物件類型
56‧‧‧「儲存服務」物件類型
58‧‧‧「資源集合」物件類型
60‧‧‧「識別身份」物件類型
62‧‧‧「角色」物件類型
70‧‧‧物件階層結構
72‧‧‧網物件
74‧‧‧設定檔物件
76‧‧‧儲存服務集合
78‧‧‧儲存服務物件
80‧‧‧應用程式資源集合
82‧‧‧應用程式資源物件
84‧‧‧裝置資源集合
86‧‧‧裝置資源物件
92‧‧‧核心物件資源集合
94‧‧‧核心資源物件
96‧‧‧對映資源集合
98‧‧‧對映資源物件
100...活動資源集合
102...活動資源物件
106...成員資源物件
108...身份識別物件
110...資料饋送資源集合
112...資料饋送資源物件
114...資料項目資源集合
116...資料項目資源物件
118...角色集合
120...角色物件
130...運算環境之例示性方法
140...例示性物件階層
142...網物件
144...設定檔資源物件
146...儲存服務集合
148...應用程式資源集合
150...裝置資源集合
152...新聞項目資源集合
154...核心資源物件集合
156...第一核心資源物件
158...資料饋送資源物件
162...資料項目資源集合
164...角色資源集合
166...第二核心資源物件
170...資料饋送資源物件
172...資料項目資源集合
174...角色資源集合
180...第一實例
190...第二實例
200...第三實例
210...例示性附加物件屬性集
220...實施方式
222...電腦可讀媒體
224...電腦可讀資料
226...電腦指令
230...系統
232...運算裝置
234...組態
236...中央處理單元
238...記憶體
240...儲存器
242...輸出裝置
244...輸入裝置
246...通信連接
248...網路
250...運算裝置
第1圖說明一運算環境主機與各種運算環境呈現裝置之間的例示性互動。
第2圖說明一例示性物件階層結構物件集。
第3圖說明一例示性物件階層結構。
第4圖係一流程圖,其說明表示一運算環境之例示性方法。
第5圖說明一例示性物件階層。
第6圖說明用於儲存一物件階層中物件之三種例示性儲存方法。
第7圖說明可與一物件階層結構之物件類型相關聯之附加物件屬性集。
第8圖說明一例示性電腦可讀媒體,其包括經組態用以實施本文所列一或多項規定之處理器可執行指令。
第9圖說明一例示性運算環境,可於其中實施本文所列出之一或多種態樣。

Claims (16)

  1. 一種在具有一處理器的一裝置上表示用於機器運算之一運算環境之方法,該方法包括以下步驟:在該處理器上執行指令,該等指令經組態以:產生一物件階層,該物件階層表示該運算環境,該物件階層具有一統一資源識別符階層定址模型,該模型根據一代表性狀態轉移介面,為該物件階層之各別位址定義一資源物件類型之至多一物件,該物件階層包括:描述該運算環境之一網物件,該網物件包括:至少一設定檔資源物件,及包含儲存服務物件之一儲存服務集合,包含應用程式資源物件之一應用程式資源集合,包含裝置資源物件之一裝置資源集合,包含新聞項目資源物件之一新聞項目資源集合,以及包含核心資源物件之一核心物件資源集合,各別核心資源物件包括:包含對映資源物件之一對映資源集合,各別對映資源物件係關於該等裝置資源物件之至少一裝置資源物件; 包含活動資源物件之一活動資源集合;包含成員資源物件之一成員資源集合,各別成員資源物件係關於至少一身份識別物件;以及包含資料饋送資源物件之一資料饋送資源集合,各別資料饋送資源物件包括:包含資料項目資源物件之一資料項目資源集合,以及包含角色資源物件之一角色資源集合,該等角色資源物件將各自所屬之該等資料饋送資源物件關聯至該核心資源物件之一成員資源物件,該設定檔資源物件、應用程式資源物件、裝置資源物件、新聞項目資源物件、核心資源物件、對映資源物件、活動資源物件、成員資源物件、資料饋送資源物件、資料項目資源物件、以及角色資源物件,係基於一資源物件類型,該資源物件類型包括:一作者集合,一基本位址物件,一類別集合,一貢獻者集合,一著作權物件,一識別物件, 一連結集合,一自連結物件,一摘要物件,以及一標題物件;當接收到在該裝置上呈現該運算環境的一請求時,利用該物件階層呈現該運算環境;及當接收到改變該運算環境的一請求時,改變該物件階層的至少一個物件。
  2. 如申請專利範圍第1項所述之方法,其中該等核心資源物件係基於一核心資源物件類型,該核心資源物件類型包括一使用者資料物件。
  3. 如申請專利範圍第1項所述之方法,其中該等應用程式資源物件係基於一應用程式資源物件類型,該應用程式資源物件類型包括:一應用程式識別物件,一首頁位置物件,一已安裝版本物件,一資源清單(manifest)位置物件,以及一資源清單版本物件。
  4. 如申請專利範圍第1項所述之方法,其中該等資料項目資源物件以及新聞項目資源物件係基於一資料項目 資源物件類型,該資料項目資源物件類型包括:一親代識別物件,一同步物件,以及一使用者資料物件。
  5. 如申請專利範圍第1項所述之方法,其中該等資料饋送資源物件係基於一資料饋送資源物件類型,該資料饋送資源物件類型包括:一與同步相關聯之資料項目資源物件之同步項目集合,以及一資料饋送類型物件。
  6. 如申請專利範圍第1項所述之方法,其中該等成員資源物件係基於一成員資源物件類型,該成員資源物件類型包括:一邀請接受指示器物件,一邀請到期指示器物件,一擁有者指示器物件,以及一角色類型物件。
  7. 如申請專利範圍第1項所述之方法,其中該等裝置資源物件係基於一裝置資源物件類型,該裝置資源物件類型包括:一裝置類型物件,以及 一裝置線上指示器物件。
  8. 如申請專利範圍第1項所述之方法,其中該等對映資源物件係基於一對映資源物件類型,該對映資源物件類型包括一資料饋送對映集合。
  9. 如申請專利範圍第1項所述之方法,其中該等角色資源物件係基於一角色資源物件類型,該角色資源物件類型包括:一創建權限指示器物件,一刪除權限指示器物件,一讀取權限指示器物件,一更新權限指示器物件,以及一角色類型物件。
  10. 如申請專利範圍第1項所述之方法,其中該物件階層經組態用以根據一可遞迴基本表示格式來表示物件。
  11. 如申請專利範圍第10項所述之方法,其中該可遞迴基本表示格式包括一可遞迴基元記錄序列。
  12. 如申請專利範圍第1項所述之方法,其中在該裝置上呈現該運算環境包括:當從該裝置接收到指明該物件階層的至少一個物件的一HTTP GET請求時,在對該 HTTP GET請求之一HTTP回應中,傳送該物件階層的該至少一個物件到該裝置;及其中改變該運算環境包括:當從該裝置接收到包括至少一個物件之一HTTP PUT請求時,在該物件階層中儲存該物件;當從該裝置接收到指明該物件階層的至少一個物件的一更新之一HTTP POST請求時,將該更新應用至該物件階層之該至少一個物件;及當從該裝置接收到指明該物件階層的至少一個物件之一HTTP DELETE請求時,將該至少一個物件從該物件階層移出。
  13. 如申請專利範圍第1項所述之方法,其中在該裝置上呈現該運算環境包括:傳送該物件階層的至少一個物件到該裝置。
  14. 如申請專利範圍第13項所述之方法,其中在該裝置上呈現該運算環境包括:呈現基於該裝置的至少一個功能所訂製的該運算環境。
  15. 一種電腦可讀取儲存裝置,其上儲存處理器可執行指令,該等指令當被執行於一裝置之一處理器上時,藉由以下方式表示該裝置之用於機器運算之一運算環境:產生一物件階層,該物件階層表示該運算環境,該 物件階層具有一統一資源識別符階層定址模型,該模型根據一代表性狀態轉移介面,為一物件階層之各別位址定義一資源物件類型之至多一物件,該物件階層包括:描述該運算環境之一網物件,該網物件包括:至少一設定檔資源物件,及包含儲存服務物件之一儲存服務集合,包含應用程式資源物件之一應用程式資源集合,包含裝置資源物件之一裝置資源集合,包含新聞項目資源物件之一新聞項目資源集合,以及包含核心資源物件之一核心物件資源集合,各別核心資源物件包括:包含對映資源物件之一對映資源集合,各別對映資源物件係關於該等裝置資源物件之至少一裝置資源物件;包含活動資源物件之一活動資源集合;包含成員資源物件之一成員資源集合,各別成員資源物件係關於至少一身份識別物件;以及包含資料饋送資源物件之一資料饋送資源集合,各別資料饋送資源物件包括:包含資料項目資源物件之一資料 項目資源集合,以及包含角色資源物件之一角色資源集合,該等角色資源物件將各自所屬之該等資料饋送資源物件關聯至該核心資源物件之一成員資源物件;當接收到在該裝置上呈現該運算環境的一請求時,利用該物件階層呈現該運算環境,該設定檔資源物件、應用程式資源物件、裝置資源物件、新聞項目資源物件、核心資源物件、對映資源物件、活動資源物件、成員資源物件、資料饋送資源物件、資料項目資源物件、以及角色資源物件,係基於一資源物件類型,該資源物件類型包括:一作者集合,一基本位址物件,一類別集合,一貢獻者集合,一著作權物件,一識別物件,一連結集合,一自連結物件,一摘要物件,以及一標題物件;且當接收到改變該運算環境的一請求時,改變該物件階層的至少一個物件。
  16. 一種在具有一處理器的一裝置上表示用於機器運算之一運算環境之方法,該方法包括以下步驟:在該處理器上執行指令,該等指令經組態以:產生一物件階層,該物件階層根據一代表性狀態轉移介面來表示該運算環境,該物件階層係根據一可遞迴基本表示格式而被表示,該可遞迴基本表示格式包括一可遞迴基元記錄序列,該物件階層包括:描述該運算環境之一網物件,該網物件包括:一自連結物件,一標題物件,至少一設定檔資源物件,其包括:一名稱物件,以及一電子郵件位址物件;包含儲存服務物件之一儲存服務集合,包含應用程式資源物件之一應用程式資源集合,各別應用程式資源物件包括:一應用程式識別物件,一首頁位置物件,一已安裝版本物件,一資源清單位置物件,以及一資源清單版本物件; 包含裝置資源物件之一裝置資源集合,各別裝置資源物件包括:一裝置類型物件,以及一裝置線上指示器物件;包含新聞項目資源物件之一新聞項目資源集合,以及包含核心資源物件之一核心物件資源集合,各別核心資源物件包括:一使用者資料物件;包含對映資源物件之一對映資源集合,各別對映資源物件係關於該等裝置資源物件之至少一裝置資源物件,且包括一資料饋送對映集合;包含活動資源物件之一活動資源集合,各別活動資源物件包括:一活動類型物件,以及一最大年齡物件;包含成員資源物件之一成員資源集合,各別成員資源物件係關於至少一身份識別物件,且包括:一邀請接受指示器物件,一邀請到期指示器物件,一擁有者指示器物件,以及一角色類型物件;以及 包含資料饋送資源物件之一資料饋送資源集合,各別資料饋送資源物件包括:包含與同步相關聯之資料項目資源物件之一同步項目集合,一資料饋送類型物件,包含資料項目資源物件之一資料項目資源集合,各別資料項目資源物件包括:一親代識別物件,一同步物件,以及一使用者資料物件;以及包含角色資源物件之一角色資源集合,該等角色資源物件將各自所屬之該等資料饋送資源物件關聯至該核心資源物件之一成員資源物件,各別角色資源物件包括:一創建權限指示器物件,一刪除權限指示器物件,一讀取權限指示器物件,一更新權限指示器物件,以及一角色類型物件;該設定檔資源物件、應用程式資源物件、裝置資源物件、新聞項目資源物件、核心資源物件、對映資源物件、活動資源物件、成員資源物件、資料饋送資源物件、資料項目資源物件、以及角色資源物件,其基於一資源 物件類型而包括:一作者集合,一基本位址物件,一類別集合,一貢獻者集合,一著作權物件,一識別物件,一連結集合,一自連結物件,一摘要物件,以及一標題物件;該應用程式資源集合、裝置資源集合、新聞項目資源集合、核心物件資源集合、對映資源集合、活動資源集合、成員資源集合、資料饋送資源集合、資料項目資源集合,以及角色資源集合,其基於一資源集合物件類型而包括:一作者集合,一基本位置物件,一類別集合,一貢獻者集合,一著作權物件,一識別物件,一連結集合,一自連結物件, 一摘要物件,以及一標題物件;且該物件階層包括一統一資源識別符階層定址模型,該模型為該物件階層之各別位址定義一資源物件類型之至多一物件;當接收到在該裝置上呈現該運算環境的一請求時,利用該物件階層呈現該運算環境;及當接收到改變該運算環境的一請求時,改變該物件階層的至少一個物件。
TW098105024A 2008-03-20 2009-02-17 用於運算環境表示之方法及電腦可讀取儲存裝置 TWI498751B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/052,554 US8484174B2 (en) 2008-03-20 2008-03-20 Computing environment representation

Publications (2)

Publication Number Publication Date
TW200941240A TW200941240A (en) 2009-10-01
TWI498751B true TWI498751B (zh) 2015-09-01

Family

ID=41089915

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098105024A TWI498751B (zh) 2008-03-20 2009-02-17 用於運算環境表示之方法及電腦可讀取儲存裝置

Country Status (7)

Country Link
US (1) US8484174B2 (zh)
EP (1) EP2289004A4 (zh)
JP (1) JP5559140B2 (zh)
KR (1) KR101627873B1 (zh)
CN (1) CN101978369A (zh)
TW (1) TWI498751B (zh)
WO (1) WO2009117201A2 (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9753712B2 (en) 2008-03-20 2017-09-05 Microsoft Technology Licensing, Llc Application management within deployable object hierarchy
US8566362B2 (en) * 2009-01-23 2013-10-22 Nasuni Corporation Method and system for versioned file system using structured data representations
US9037711B2 (en) 2009-12-02 2015-05-19 Metasecure Corporation Policy directed security-centric model driven architecture to secure client and cloud hosted web service enabled processes
US8473595B2 (en) * 2009-12-30 2013-06-25 Bmc Software, Inc. Method and system to automatically adapt web services from one protocol/idiom to another protocol/idiom
US9904733B2 (en) * 2010-01-15 2018-02-27 Microsoft Technology Licensing, Llc Name hierarchies for mapping public names to resources
US20150205489A1 (en) * 2010-05-18 2015-07-23 Google Inc. Browser interface for installed applications
WO2011159842A2 (en) 2010-06-15 2011-12-22 Nimbula, Inc. Virtual computing infrastructure
US10715457B2 (en) 2010-06-15 2020-07-14 Oracle International Corporation Coordination of processes in cloud computing environments
US9021093B2 (en) 2010-08-17 2015-04-28 International Business Machines Corporation Managing and securing manageable resources in stateless web server architecture using servlet filters
US8856260B2 (en) * 2011-06-14 2014-10-07 Microsoft Corporation Providing access to shared state data
US9390255B2 (en) 2011-09-29 2016-07-12 Oracle International Corporation Privileged account manager, dynamic policy engine
US10326708B2 (en) 2012-02-10 2019-06-18 Oracle International Corporation Cloud computing services framework
EP2815346B1 (en) * 2012-02-13 2022-10-26 Oracle International Corporation Coordination of processes in cloud computing environments
US9058471B2 (en) 2012-06-08 2015-06-16 Oracle International Corporation Authorization system for heterogeneous enterprise environments
US9069979B2 (en) 2012-09-07 2015-06-30 Oracle International Corporation LDAP-based multi-tenant in-cloud identity management system
US9276942B2 (en) 2012-09-07 2016-03-01 Oracle International Corporation Multi-tenancy identity management system
US9467355B2 (en) 2012-09-07 2016-10-11 Oracle International Corporation Service association model
US9203866B2 (en) 2012-09-07 2015-12-01 Oracle International Corporation Overage framework for cloud services
US9619545B2 (en) 2013-06-28 2017-04-11 Oracle International Corporation Naïve, client-side sharding with online addition of shards
US9787657B2 (en) 2013-09-19 2017-10-10 Oracle International Corporation Privileged account plug-in framework—usage policies
US9602545B2 (en) 2014-01-13 2017-03-21 Oracle International Corporation Access policy management using identified roles
US10574745B2 (en) * 2015-03-31 2020-02-25 Western Digital Technologies, Inc. Syncing with a local paired device to obtain data from a remote server using point-to-point communication
WO2017100578A1 (en) * 2015-12-10 2017-06-15 Affirmed Networks, Inc. Data driven automated provisioning of telecommunication applications
EP3328016A1 (de) * 2016-11-29 2018-05-30 Siemens Aktiengesellschaft Verfahren zum verbinden von geräten mit der sogenannten cloud, computerprogramm mit einer implementation des verfahrens und verarbeitungseinheit zur ausführung des verfahrens
US20190026360A1 (en) * 2017-07-18 2019-01-24 GM Global Technology Operations LLC Data processing using an enumeration utility
US10479356B1 (en) 2018-08-17 2019-11-19 Lyft, Inc. Road segment similarity determination
US11928557B2 (en) 2019-06-13 2024-03-12 Lyft, Inc. Systems and methods for routing vehicles to capture and evaluate targeted scenarios
US11449475B2 (en) 2019-06-28 2022-09-20 Lyft, Inc. Approaches for encoding environmental information
US10625748B1 (en) 2019-06-28 2020-04-21 Lyft, Inc. Approaches for encoding environmental information
US11157007B2 (en) * 2019-06-28 2021-10-26 Lyft, Inc. Approaches for encoding environmental information
US11788846B2 (en) 2019-09-30 2023-10-17 Lyft, Inc. Mapping and determining scenarios for geographic regions
US12039785B2 (en) 2019-10-23 2024-07-16 Lyft, Inc. Approaches for encoding environmental information
US11816900B2 (en) 2019-10-23 2023-11-14 Lyft, Inc. Approaches for encoding environmental information

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040153568A1 (en) * 2003-01-31 2004-08-05 Yong Boon Ho Method of storing data concerning a computer network
US20060015538A1 (en) * 2004-06-30 2006-01-19 Letourneau Jack J File location naming hierarchy
TW200636580A (en) * 2005-02-18 2006-10-16 Nokia Corp Method for the obtaining of deployment components to electronic devices
TW200712959A (en) * 2005-07-29 2007-04-01 Microsoft Corp Retrieving and persisting objects from/to relational databases

Family Cites Families (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044205A (en) * 1996-02-29 2000-03-28 Intermind Corporation Communications system for transferring information between memories according to processes transferred with the information
US5504852A (en) * 1991-09-09 1996-04-02 Apple Computer, Inc. Method for creating a collection of aliases representing computer system files
US5437025A (en) * 1993-01-26 1995-07-25 International Business Machines Corporation System and method for run time configuration of objects in an object oriented computing environment
US5548726A (en) * 1993-12-17 1996-08-20 Taligeni, Inc. System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node
JPH11504451A (ja) 1995-04-24 1999-04-20 アスペクト・ディベロップメント・インコーポレイテッド データベース構造に適したオブジェクトのモデリング、リレーショナルデータベース構造への翻訳、それらへの流動的なサーチ
US5850090A (en) * 1995-05-24 1998-12-15 Mitsubishi Denki Kabushiki Kaisha Dynamic semiconductor memory device on SOI substrate
US5764543A (en) * 1995-06-16 1998-06-09 I2 Technologies, Inc. Extensible model network representation system for process planning
JP3598183B2 (ja) * 1996-10-16 2004-12-08 株式会社東芝 多次元データ管理方法、多次元データ管理装置、多次元データ管理プログラムを記録した媒体
US6678724B2 (en) * 1997-03-12 2004-01-13 Microsoft Corporation Common namespace for internet and local filesystem objects
US6573907B1 (en) 1997-07-03 2003-06-03 Obvious Technology Network distribution and management of interactive video and multi-media containers
US6105062A (en) * 1998-02-26 2000-08-15 Novell, Inc. Method and system for pruning and grafting trees in a directory service
US6330717B1 (en) * 1998-03-27 2001-12-11 Sony Corporation Of Japan Process and system for developing an application program for a distributed adaptive run-time platform
US6209029B1 (en) * 1998-05-12 2001-03-27 Silverstream Software, Inc. Method and apparatus for accessing data sources in a three tier environment
US6243746B1 (en) * 1998-12-04 2001-06-05 Sun Microsystems, Inc. Method and implementation for using computer network topology objects
JP2000242541A (ja) * 1999-02-24 2000-09-08 Pfu Ltd オブジェクト処理装置及びそのプログラム記憶媒体
US7062532B1 (en) 1999-03-25 2006-06-13 Autodesk, Inc. Method and apparatus for drawing collaboration on a network
US6519679B2 (en) * 1999-06-11 2003-02-11 Dell Usa, L.P. Policy based storage configuration
US6826760B1 (en) * 1999-06-16 2004-11-30 Microsoft Corporation Methods of factoring operating system functions, methods of converting operating systems, and related apparatus
US6594664B1 (en) * 2000-01-04 2003-07-15 International Business Machines Corporation System and method for online/offline uninterrupted updating of rooms in collaboration space
US6732172B1 (en) * 2000-01-04 2004-05-04 International Business Machines Corporation Method and system for providing cross-platform access to an internet user in a heterogeneous network environment
US6546554B1 (en) * 2000-01-21 2003-04-08 Sun Microsystems, Inc. Browser-independent and automatic apparatus and method for receiving, installing and launching applications from a browser on a client computer
US6694336B1 (en) * 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US6934532B2 (en) * 2000-02-09 2005-08-23 Apriva, Inc. Communication systems, components, and methods operative with programmable wireless devices
US6662192B1 (en) * 2000-03-29 2003-12-09 Bizrate.Com System and method for data collection, evaluation, information generation, and presentation
EP1148322A1 (de) * 2000-04-18 2001-10-24 Gretag-Macbeth AG Verfahren zur Erzeugung einer elektronischen Farbinformationsdatei und Verfahren zur Farbkommunikation
US7013340B1 (en) * 2000-05-18 2006-03-14 Microsoft Corporation Postback input handling by server-side control objects
US6685090B2 (en) * 2000-05-24 2004-02-03 Fujitsu Limited Apparatus and method for multi-profile managing and recording medium storing multi-profile managing program
US6611837B2 (en) * 2000-06-05 2003-08-26 International Business Machines Corporation System and method for managing hierarchical objects
US7219304B1 (en) * 2000-06-19 2007-05-15 International Business Machines Corporation System and method for developing and administering web applications and services from a workflow, enterprise, and mail-enabled web application server and platform
US20020138617A1 (en) * 2000-09-06 2002-09-26 Jacob Christfort Providing content from multiple services
US7089295B2 (en) * 2000-09-06 2006-08-08 Oracle International Corporation Customizing content provided by a service
US7836458B1 (en) * 2000-11-02 2010-11-16 Microsoft Corporation Configuration system
US20040006566A1 (en) * 2000-11-07 2004-01-08 Matt Taylor System and method for augmenting knowledge commerce
US6961909B2 (en) 2001-01-05 2005-11-01 Hewlett-Packard Development Company, L.P. System for displaying a hierarchical directory
US20040133606A1 (en) 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
US20020103811A1 (en) 2001-01-26 2002-08-01 Fankhauser Karl Erich Method and apparatus for locating and exchanging clinical information
US7054927B2 (en) 2001-01-29 2006-05-30 Adaptec, Inc. File system metadata describing server directory information
JP2002229902A (ja) 2001-01-31 2002-08-16 Justec:Kk 情報提供方法、情報提供システム、地理情報提供方法、地図情報提供システム、及びコンピュータ読み取り可能なプログラム
WO2002078286A2 (en) * 2001-03-27 2002-10-03 Bea Systems, Inc. System and method for managing objects and resources with access rights embedded in nodes within a hierarchical tree structure
US20030004746A1 (en) * 2001-04-24 2003-01-02 Ali Kheirolomoom Scenario based creation and device agnostic deployment of discrete and networked business services using process-centric assembly and visual configuration of web service components
US7146524B2 (en) 2001-08-03 2006-12-05 Isilon Systems, Inc. Systems and methods for providing a distributed file system incorporating a virtual hot spare
US7685126B2 (en) 2001-08-03 2010-03-23 Isilon Systems, Inc. System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system
US8290762B2 (en) * 2001-08-14 2012-10-16 National Instruments Corporation Graphically configuring program invocation relationships by creating or modifying links among program icons in a configuration diagram
US6907451B1 (en) 2001-09-29 2005-06-14 Siebel Systems, Inc. Method, apparatus, and system for immediate posting of changes in a client server environment
US7117243B2 (en) 2001-10-02 2006-10-03 Citrix Systems, Inc. Methods for distributed program execution with file-type association in a client-server network
US7330872B2 (en) 2001-10-02 2008-02-12 Citrix Systems, Inc. Method for distributed program execution with web-based file-type association
EP2383649A1 (en) 2001-10-02 2011-11-02 Citrix Systems, Inc. Methods for distributed program execution with file-type association in a client-server network
US6952714B2 (en) 2001-10-02 2005-10-04 Citrix Systems, Inc. Method for distributed program execution with server-based file type association
US7284196B2 (en) 2001-10-05 2007-10-16 Vitria Technology, Inc. Vocabulary and syntax based data transformation
JP3857571B2 (ja) * 2001-11-15 2006-12-13 タイコ エレクトロニクス レイケム株式会社 ポリマーptcサーミスタおよび温度センサ
KR100426307B1 (ko) * 2001-12-12 2004-04-08 한국전자통신연구원 에스오에이피-엑스엠엘을 이용한 데이터 액세스 장치 및방법
US7088995B2 (en) * 2001-12-13 2006-08-08 Far Eastone Telecommunications Co., Ltd. Common service platform and software
US7266563B2 (en) 2001-12-28 2007-09-04 Fotomedia Technologies, Llc Specifying, assigning, and maintaining user defined metadata in a network-based photosharing system
WO2003075158A2 (en) * 2002-03-01 2003-09-12 Green Border Technologies Method and system for assured denotation of application semantics
US7552481B2 (en) * 2002-03-18 2009-06-23 Sun Microsystems, Inc. Method of assessing an organization's network identity capability
US6968535B2 (en) * 2002-03-21 2005-11-22 Sun Microsystems, Inc. Service mapping method of enterprise application modeling and development for multi-tier service environments
US7072898B2 (en) * 2002-05-30 2006-07-04 Oracle International Corporation Method and apparatus for exchanging communications between heterogeneous applications
US20040031029A1 (en) * 2002-08-06 2004-02-12 Kyu-Woong Lee Methods and systems for automatically updating software components in a network
US6909721B2 (en) * 2002-10-31 2005-06-21 Nokia Corporation Device detection and service discovery system and method for a mobile ad hoc communications network
JP2004171107A (ja) * 2002-11-18 2004-06-17 Sony Corp ソフトウエア提供システム、ソフトウエア提供装置および方法、記録媒体、並びにプログラム
CA2412383A1 (en) * 2002-11-22 2004-05-22 Ibm Canada Limited-Ibm Canada Limitee Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications
US7613812B2 (en) * 2002-12-04 2009-11-03 Microsoft Corporation Peer-to-peer identity management interfaces and methods
US7386532B2 (en) 2002-12-19 2008-06-10 Mathon Systems, Inc. System and method for managing versions
US7890543B2 (en) * 2003-03-06 2011-02-15 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7099888B2 (en) * 2003-03-26 2006-08-29 Oracle International Corporation Accessing a remotely located nested object
US7203711B2 (en) 2003-05-22 2007-04-10 Einstein's Elephant, Inc. Systems and methods for distributed content storage and management
US7240327B2 (en) * 2003-06-04 2007-07-03 Sap Ag Cross-platform development for devices with heterogeneous capabilities
US20050015430A1 (en) * 2003-06-25 2005-01-20 Rothman Michael A. OS agnostic resource sharing across multiple computing platforms
US8001187B2 (en) * 2003-07-01 2011-08-16 Apple Inc. Peer-to-peer active content sharing
US7594015B2 (en) * 2003-07-28 2009-09-22 Sap Ag Grid organization
US20050060315A1 (en) 2003-09-16 2005-03-17 Aleksey Sanin Metadata database lookup system
US20050060566A1 (en) 2003-09-16 2005-03-17 Chebolu Anil Kumar Online user-access reports with authorization features
EP1665084A1 (en) * 2003-09-17 2006-06-07 Research In Motion Limited System and method for dynamic generation and customization of web service client applications for terminals
US7721254B2 (en) * 2003-10-24 2010-05-18 Microsoft Corporation Programming interface for a computer platform
US20050138156A1 (en) * 2003-12-19 2005-06-23 Alexander Gebhart Grid application customization
WO2005072114A2 (en) 2004-01-19 2005-08-11 Pantero Corporation Enterprise interoperability using shared data services
US20050177600A1 (en) * 2004-02-11 2005-08-11 International Business Machines Corporation Provisioning of services based on declarative descriptions of a resource structure of a service
US20050192962A1 (en) * 2004-02-26 2005-09-01 Patricia Furrer Apparatus, system, method for enabling web-applications to access enterprise managed data
US20050203931A1 (en) * 2004-03-13 2005-09-15 Robert Pingree Metadata management convergence platforms, systems and methods
US20050251812A1 (en) * 2004-04-27 2005-11-10 Convertabase, Inc. Data conversion system, method, and apparatus
US20050251786A1 (en) * 2004-05-07 2005-11-10 International Business Machines Corporation System and method for dynamic software installation instructions
US7650432B2 (en) * 2004-05-20 2010-01-19 Bea Systems, Inc. Occasionally-connected application server
US7730482B2 (en) * 2004-06-08 2010-06-01 Covia Labs, Inc. Method and system for customized programmatic dynamic creation of interoperability content
US20050289454A1 (en) * 2004-06-28 2005-12-29 D & Wayne & Co. Interactive website configuration, display and management application
US8069436B2 (en) * 2004-08-13 2011-11-29 Cypress Semiconductor Corporation Providing hardware independence to automate code generation of processing device firmware
US20060036602A1 (en) 2004-08-13 2006-02-16 Unangst Marc J Distributed object-based storage system that stores virtualization maps in object attributes
US20070038642A1 (en) * 2004-09-15 2007-02-15 Scott Durgin Method for providing extensible software components within a distributed synchronization system
US20070100834A1 (en) 2004-09-15 2007-05-03 John Landry System and method for managing data in a distributed computer system
US7266370B2 (en) * 2004-09-20 2007-09-04 Trilibis Inc. System and method for developing and deploying device independent applications
US20060129972A1 (en) * 2004-11-30 2006-06-15 Tyburski John C Application developer and method for generating platform independent code
US7760746B2 (en) * 2004-11-30 2010-07-20 Computer Associates Think, Inc. Cascading configuration using one or more configuration trees
KR100714683B1 (ko) * 2004-12-24 2007-05-04 삼성전자주식회사 디지털 컨텐츠를 글로벌로 공유하고 거래하는 방법 및시스템
US9535679B2 (en) * 2004-12-28 2017-01-03 International Business Machines Corporation Dynamically optimizing applications within a deployment server
US20070050446A1 (en) * 2005-02-01 2007-03-01 Moore James F Managing network-accessible resources
CA2597752C (en) * 2005-02-22 2012-07-10 Nextair Corporation Determining operational status of a mobile device capable of executing server-side applications
US7680835B2 (en) * 2005-02-28 2010-03-16 Microsoft Corporation Online storage with metadata-based retrieval
US8554916B2 (en) * 2005-04-11 2013-10-08 Accenture Global Services Gmbh Service delivery platform and development of new client business models
US7743373B2 (en) * 2005-05-06 2010-06-22 International Business Machines Corporation Method and apparatus for managing software catalog and providing configuration for installation
US7694287B2 (en) * 2005-06-29 2010-04-06 Visa U.S.A. Schema-based dynamic parse/build engine for parsing multi-format messages
US7577681B1 (en) * 2005-06-29 2009-08-18 Emc Corporation Methods and apparatus for managing contents of a database
US20070028175A1 (en) * 2005-07-29 2007-02-01 Moore Dennis B Grid processing user tools
US20070061349A1 (en) * 2005-09-15 2007-03-15 Microsoft Corporation Hierarchically describing shapes
US20070073770A1 (en) 2005-09-29 2007-03-29 Morris Robert P Methods, systems, and computer program products for resource-to-resource metadata association
US8005879B2 (en) * 2005-11-21 2011-08-23 Sap Ag Service-to-device re-mapping for smart items
EP1955152A1 (en) * 2005-12-01 2008-08-13 Cassatt Corporation Automated deployment and configuration of applications in an autonomically controlled distributed computing system
US8306990B2 (en) 2006-01-10 2012-11-06 Unz.Org Llc Transferring and displaying hierarchical data between databases and electronic documents
CN1801086A (zh) 2006-01-17 2006-07-12 浙江大学 应用于Java操作系统中设备支持的实现方法
JP5483884B2 (ja) 2006-01-17 2014-05-07 キダロ (イスラエル) リミテッド 複数のコンピューティング環境のシームレスな統合
US20070177583A1 (en) 2006-01-31 2007-08-02 Microsoft Corporation Partial message streaming
US7793343B2 (en) * 2006-03-03 2010-09-07 Oracle America, Inc. Method and system for identity management integration
US7483978B2 (en) * 2006-05-15 2009-01-27 Computer Associates Think, Inc. Providing a unified user interface for managing a plurality of heterogeneous computing environments
US7508787B2 (en) * 2006-05-31 2009-03-24 Cisco Technology, Inc. Graphical selection of information display for wireless mesh hierarchies
US8370423B2 (en) 2006-06-16 2013-02-05 Microsoft Corporation Data synchronization and sharing relationships
US7814460B2 (en) * 2006-07-13 2010-10-12 Scriptlogic Corporation Hierarchical modular software packages and associated development tool
US8122111B2 (en) * 2006-07-25 2012-02-21 Network Appliance, Inc. System and method for server configuration control and management
US7822594B2 (en) 2006-08-07 2010-10-26 Voltaire Ltd. Service-oriented infrastructure management
US7739411B2 (en) * 2006-08-11 2010-06-15 Samsung Electronics Co., Ltd. Method and system for content synchronization and detecting synchronization recursion in networks
US7606588B2 (en) * 2006-08-31 2009-10-20 Telefonaktiebolaget Lm Ericsson (Publ) Hierarchical point-to-multipoint group communications between multiple active communication groups
US8683352B2 (en) * 2006-09-05 2014-03-25 International Business Machines Corporation Selectable flattening hierarchical file browser
US7934194B2 (en) * 2006-10-17 2011-04-26 The Mathworks, Inc. User-defined hierarchies of user-defined classes of graphical objects in a graphical modeling environment
US20080249994A1 (en) * 2006-11-28 2008-10-09 Calder Group, Inc. System and process for server side stateless data interchange
US7734717B2 (en) * 2006-12-05 2010-06-08 Nokia Corporation Software distribution via peer-to-peer networks
US7844912B2 (en) * 2006-12-22 2010-11-30 Sap Ag System and method using transformation nodes with enhancement layers
WO2008103608A2 (en) * 2007-02-19 2008-08-28 Ondeego, Inc. Methods and system to create applications and distribute applications to a remote device
US7853669B2 (en) * 2007-05-04 2010-12-14 Microsoft Corporation Mesh-managing data across a distributed set of devices
US8185891B2 (en) * 2007-05-14 2012-05-22 Red Hat, Inc. Methods and systems for provisioning software
US9280402B2 (en) * 2007-12-20 2016-03-08 Sap Se System and method for updating a dual layer browser
US8572033B2 (en) * 2008-03-20 2013-10-29 Microsoft Corporation Computing environment configuration
US9298747B2 (en) * 2008-03-20 2016-03-29 Microsoft Technology Licensing, Llc Deployable, consistent, and extensible computing environment platform

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040153568A1 (en) * 2003-01-31 2004-08-05 Yong Boon Ho Method of storing data concerning a computer network
US20060015538A1 (en) * 2004-06-30 2006-01-19 Letourneau Jack J File location naming hierarchy
TW200636580A (en) * 2005-02-18 2006-10-16 Nokia Corp Method for the obtaining of deployment components to electronic devices
TW200712959A (en) * 2005-07-29 2007-04-01 Microsoft Corp Retrieving and persisting objects from/to relational databases

Also Published As

Publication number Publication date
KR101627873B1 (ko) 2016-06-13
WO2009117201A2 (en) 2009-09-24
CN101978369A (zh) 2011-02-16
WO2009117201A3 (en) 2009-11-19
JP2011515761A (ja) 2011-05-19
US8484174B2 (en) 2013-07-09
KR20100133380A (ko) 2010-12-21
US20090240728A1 (en) 2009-09-24
EP2289004A4 (en) 2015-12-09
EP2289004A2 (en) 2011-03-02
TW200941240A (en) 2009-10-01
JP5559140B2 (ja) 2014-07-23

Similar Documents

Publication Publication Date Title
TWI498751B (zh) 用於運算環境表示之方法及電腦可讀取儲存裝置
CN112654973B (zh) 跨平台集成云内容项的技术
TWI482035B (zh) 運算環境表示
US7660809B2 (en) Using a file server as a central shared database
EP2255295B1 (en) Application management within deployable object hierarchy
US7930629B2 (en) Consolidating local and remote taxonomies
US8176061B2 (en) Tracking digital assets on a distributed network
US9374326B2 (en) Providing information for shared content
US7546297B2 (en) Storage application programming interface
US20080201234A1 (en) Live entities internet store service
JP2020537212A (ja) クライアントデバイスによって実施されるコンテンツ管理システムのワークフロー機能
US10261996B2 (en) Content localization using fallback translations
US9875273B2 (en) Methods and systems for managing configuration settings
KR20100066488A (ko) 메타데이터를 위한 네트워크 레포지토리
JP7374232B2 (ja) コンテキスト付きのコンテンツ・アイテム共有
US11182348B2 (en) Sharing collections with external teams
JP7355964B2 (ja) 外部ロケーションの同期
WO2011015488A1 (en) Service registry policy editing user interface
US11445018B2 (en) Technologies for synchronizing content items across content management systems
US20180189317A1 (en) Accessing network based content items by a mobile device while offline