TWI450107B - 用於網路資料使用平臺之方法及電腦可讀儲存媒體 - Google Patents

用於網路資料使用平臺之方法及電腦可讀儲存媒體 Download PDF

Info

Publication number
TWI450107B
TWI450107B TW097103777A TW97103777A TWI450107B TW I450107 B TWI450107 B TW I450107B TW 097103777 A TW097103777 A TW 097103777A TW 97103777 A TW97103777 A TW 97103777A TW I450107 B TWI450107 B TW I450107B
Authority
TW
Taiwan
Prior art keywords
network
data
network data
layer
computing device
Prior art date
Application number
TW097103777A
Other languages
English (en)
Other versions
TW200846952A (en
Inventor
Jane T Kim
Walter Vonkoch
Sean O Lyndersay
Miladin Pavlicic
Warren Stevens
Original Assignee
Microsoft Corp
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 Corp filed Critical Microsoft Corp
Publication of TW200846952A publication Critical patent/TW200846952A/zh
Application granted granted Critical
Publication of TWI450107B publication Critical patent/TWI450107B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Communication Control (AREA)

Description

用於網路資料使用平臺之方法及電腦可讀儲存媒體
本發明係關於網路資料使用平臺。
網際網路及全球資訊網(網路)正日益成為我們日常生活中不可分割的一部分,用於工作、娛樂、研究、等等。當前,使用者可使用一網路瀏覽器存取各種網頁,並從此等網頁獲得資料,諸如藉由從此等網頁手動複製文字,或有時儲存來自此等網頁之影像或甚至儲存整個網頁等方式。但是,目前尚無簡便方式可供其他應用程式存取從此等網頁獲得之資料。因此,若存在簡便方式可供存取來自網頁之資料以便不同應用程式使用,則將很有益。
本發明內容簡要介紹了選取的一組概念,以下在實施方式中會對其做進一步描述。本發明內容無意於識別所主張之主體的關鍵功能或基本功能,亦非意欲用於限制該所主張之主體之範圍。
根據該網路資料使用平臺之一或更多態樣,在一計算裝置之上產生一物件模型,該物件模型包含表示在一資料儲存層中各網路資料之物件。亦接收來自在該計算裝置上執行之應用程式之請求。該等所接收之請求係在該網路資料上執行一動作之請求,並執行該被請求之動作。
根據該網路資料使用平臺之一或更多態樣,在一計算裝置上實現一應用程式編程介面(API)層。該API層允許在 該計算裝置上執行之本機應用程式存取在一資料儲存層中之網路資料。該API層更允許在某些其他計算裝置上執行之一(或若干)遠程應用程式存取在該資料儲存層中之網路資料。
根據該網路資料使用平臺之一或更多態樣,網頁儲存於一網路資料儲存區中。該等網頁中某些網頁包含結構化資料,而其他網頁不包含結構化資料。產生一物件模型,該物件模型具有表示此等網頁之不同物件。允許一網路瀏覽器經由該物件模型存取該網路資料儲存區,且至少部分地基於該等網頁產生一使用者介面。
在此討論一網路資料使用平臺。該平臺包含一引擎層、一資料儲存層,及一應用程式編程介面(API)層。該引擎層獲得網路資料並將其提供至該資料儲存層進行儲存。網路資料之變更亦可藉由該引擎層偵測並被識別到該資料儲存層。該資料儲存層儲存該網路資料,且更儲存該網路資料作為其一組成部分之集合的指示器。該API層提供一介面,允許在與該平臺相同之計算裝置上執行之應用程式,以及在其他計算裝置上執行之應用程式,存取及使用來自該資料儲存層之網路資料。
第1圖說明根據一或更多具體實施例之一實例系統100,其中可使用該網路資料使用平臺。系統100包含一計算裝置102,該計算裝置可經由一網路106與多個(x)遠程裝置104(1)…104(x)通信。網路106可係任何各種網路, 包含網際網路、一本機區域網路、其他公用和/或專用網路及其組合,等等。
計算裝置102可為任何各種不同之計算裝置,諸如一桌上型電腦、手持式電腦、膝上型電腦、伺服器電腦、汽車電腦、行動電話、個人數位助理(PDA)、遊戲主機,等等。計算裝置102包含一網路資料平臺108,該網路資料平臺儲存網路資料,並允許應用程式存取該儲存網路資料。舉例而言,該儲存網路資料包含網頁、網頁集合之指示等等,如以下更詳盡之討論。該儲存網路資料可藉由平臺108自一或更多遠程裝置104(1)…104(x)獲得。此外,可存取該儲存網路資料之該等應用程式包含在一或更多遠程裝置104(1)…104(x)上執行之應用程式,以及在計算裝置102上執行之應用程式。
遠程裝置104(1)…104(x)一般地係伺服器電腦,但或者可為類似於計算裝置102之任何各種不同的計算裝置。遠程裝置104(1)…104(x)可儲存藉由網路資料平臺108擷取及儲存之網路資料。此外,遠程裝置104(1)…104(x)可執行存取及利用藉由網路資料平臺108儲存之網路資料的應用程式。某些遠程裝置104(1)…104(x)可儲存網路資料,以供網路資料平臺108擷取,而其他可執行應用程式以存取藉由網路資料平臺108儲存之網路資料。或者,相同遠程裝置104可儲存網路資料以供網路資料平臺108擷取,以及執行一或若干應用程式以存取藉由網路資料平臺108儲存之網路資料。
一或更多遠程裝置104(1)…104(x)儲存網頁110。在該等網頁110中之資料藉由網路資料平臺108獲得,且儲存為網路資料。一或更多網頁110可每一包含一或更多片段之結構化資料。結構化資料係以一被該資料之一用戶所習知及期望格式之資料,該用戶一般地係一網路瀏覽器或一行為(一對結構化資料使用方式之說明,如以下更詳盡之討論)。結構化資料可依據習知的結構化資料標準被格式化,習知的結構化資料標準諸如可延伸標記語言(XML)或超文件標示語言(HTML)格式。或者,結構化資料可依據其他公用和/或專用標準被格式化。無論使用何種用於結構化資料之格式,此格式為網路資料平臺108所習知,以便平臺108使用該結構化資料,如以下更詳盡之討論。構成一段結構化資料之資料的數量及種類可有所不同,且作為資料類型之一部分被界定。
不同片段之結構化資料可為不同的資料類型,亦被稱作結構化資料類型。可使用各種不同的資料類型,諸如一聯絡人類型、一事件類型、一行事曆類型、一產品類型、一圖片類型、一音樂類型、一旅行類型、一網頁類型、一地理位置類型,等等。可界定一資料類型以包含在不同特性或欄位中之任何種類的資料,諸如一日期、一時間、對映座標、一名稱、一電話號碼、一位址、一產品說明、一目的名稱、一價格,等等。此外,在特定具體實施例中,整個網頁110可被視為一類型之結構化資料。
一特定片段之結構化資料之結構化資料類型可以不同 方式進行識別。在特定具體實施例中,該結構化資料本身指示該資料類型。舉例而言,可使用不同HTML標籤識別不同的結構化資料類型,或該結構化資料本身之一特性或參數可識別該結構化資料類型。作為替代或者此外,該結構化資料可以不同方式進行識別,諸如藉由使用在該頁110中之標頭資訊,或在頁110中或與頁110相關聯之其他元資料。
第2圖說明根據一或更多具體實施例之一實例網頁200,其包含結構化資料。網頁200包含一行事曆事件202以及其他文字204及影像206。在此特定實施例中,行事曆事件202具有三個欄位或特性-一位置欄位及兩個日期欄位。舉例而言,此等欄位在該頁的HTML208中藉由適當的HTML標籤來說明,諸如藉由所圖解說明之<div class="lcprop_location"/>及<div class="lcprop_date">標籤。在第2圖之範例中,該HTML標籤<div class="lcdata_calendar">係一行事曆事件結構化資料類型,其被用戶視作結構化資料。
返回第1圖,若該網頁說明確實具有結構化資料,則結構化資料之一指示器與該頁一起被呈現給該使用者。儘管指示器或者可接受不同形式(例如,該指示器可為一音響指示器),但是此指示器一般地係一視覺化指示器,諸如一圖示。在特定具體實施例中,一圖示或其他視覺化指示器被顯示在來自該頁之結構化資料之顯示旁或其附近處。舉例而言,若該結構化資料係一事件,則該圖示將被顯示 在該事件之日期及時間之顯示附近。在特定具體實施例中,無論何時向該使用者顯示一帶有結構化資料之頁,該指示器即被呈現給該使用者。在其他具體實施例中,無論何時該使用者使用一遊標控制裝置將一指標懸停在該頁上之一位置附近(如該頁說明中所界定,諸如在該結構化資料本身內)至少一臨限時間量,該指示器即被呈現給該使用者。
在一或更多具體實施例中,該瀏覽器可以不同方式來呈現該指示器,且無需變更該頁說明本身(例如,描述該頁之HTML編碼)以便呈現該指示器。舉例而言,在向該使用者顯示一圖示作為結構化資料之指示器的情況下,該瀏覽器可將該圖示呈現為於該網頁上之一重疊(overlay)。因此,無需修改該頁之HTML編碼即可顯示此圖示。在不同具體實施例中,可改變該圖示之位置。舉例而言,該瀏覽器可分析該頁以識別一空白空間(例如,存在很少或無文字、連結、圖形,或影像之一空間),該圖示將放置於其中。該瀏覽器可嘗試將該圖示定位於對應於該結構化資料之資料的顯示附近(例如,若該結構化資料描述一事件,則該瀏覽器可嘗試將該圖示定位於該事件之一說明之顯示附近)。藉由另一範例之方式,該圖示可始終顯示於該顯示器之一特定部分中(例如,顯示該頁之視窗的右上角)。藉由又一範例之方式,該圖示之位置可藉由該結構化資料本身識別(例如,該結構化資料可包含一表示該圖示應被放置之位置的指示),諸如此類。
除向該使用者顯示該結構化資料之指示器之外,在一或更多具體實施例中,亦可視需要向該使用者顯示該結構化資料之內容之一預覽。舉例而言,此預覽可在一疊加於該頁之顯示上之獨立插圖(callout)或視窗中,且可顯示該結構化資料之至少某些內容。在此預覽中顯示之內容量可有所不同,且可藉由該頁之設計者確定(例如,可在該結構化資料本身中指定顯示為預覽之內容)、或者藉由該瀏覽器確定(例如,基於在其中顯示該瀏覽器之視窗的大小、該插圖之大小、內容之數量,等等)。或者,此預覽根本不能顯示,或此預覽不能顯示直至在一使用者選擇該指示器之後為止。
若一網頁具有結構化資料,可(但是無須)作為該網頁之一部分向該使用者顯示該結構化資料本身。舉例而言,若該結構化資料包含各種特性(例如,一事件(諸如一講演)之日期、時間,及地理位置),則該網頁可使用與該結構化資料分離之HTML編碼,在網頁的各部分中顯示此等特性。在此類情況中,該結構化資料包含於該網頁之該HTML中,但是不向該使用者顯示。或者,可作為該網頁之一部分向該使用者顯示該結構化資料,或如上所述,可顯示該結構化資料之一預覽。
此外,在一或更多具體實施例中,選項被呈現給該使用者,用以收集及/或預訂結構化資料。收集結構化資料指維護該結構化資料之一複本,以便該計算裝置102之該使用者可存取該結構化資料,甚至在計算裝置102離線時(例 如,計算裝置102未連接至網路,或當該網頁所擷取自之該遠程裝置104臨時不可使用)時,仍可存取。在一或更多具體實施例中,僅儲存該結構化資料,以回應對該收集選項之選擇,儘管在替代具體實施例中,可儲存整個網頁。
預訂結構化資料指請求對該結構化資料之更新。當該使用者預訂該結構化資料之變更時,網路資料平臺108在規則或不規則之間隔中存取一網頁,以獲取該網頁(或者僅來自該網頁之結構化資料)之一更新版本。此更新版本一般地係從與該結構化資料所原始擷取自之網頁相同之網頁接收,但是另一選擇為亦可從另一網頁,如以下更詳盡之討論。該網路資料平臺亦可比較該網頁之更新版本與該網頁之一先前儲存之版本,及通知該使用者該網頁及/或在該網頁中之結構化資料的任何變更。
該收集及/或預訂選項可被呈現給該使用者,且藉由該使用者以任何各種方式進行選擇。舉例而言,該使用者可選擇一螢幕按鈕、從一下拉式選單選擇一選項、在資料輸入欄位中輸入文字,經由一麥克風輸入一語音命令,等等。在一或更多具體實施例中,該收集及/或預訂選項可藉由該使用者在與該結構化資料一起之一預覽視窗中選擇一螢幕按鈕,來進行選擇。
此外,可使用行為來利用結構化資料。行為係對該結構化資料之一使用方式的說明,一般地係為計算裝置102之使用者提供一服務。儘管另一選擇為一行為可以不同方式實施(諸如以韌體及/或硬體形式),一行為一般地以藉 由計算裝置102執行之軟體指令及資料或編碼之形式駐留。每一行為與一或更多結構化資料類型相關聯。一與一特定結構化資料類型相關聯之行為瞭解如何使用該資料類型。舉例而言,一特定片段之結構化資料可為一事件資料類型,且該特定片段可包含一事件(例如,一音樂會、一電影、一會議,等)之一日期、時間及說明。一與該事件資料類型相關聯之行事曆行為瞭解如何從該事件提取該特定日期、時間及說明,及與一行事曆程式互動,以向對於該特定日期及時間具有該特定說明之該使用者的行事曆添加一事件。
在一或更多具體實施例中,單獨行為被程式化或另外經配置,以知道如何與一或更多本機應用程式及/或一或更多遠程應用程式互動。舉例而言,一行為可知道如何與Microsoft® Outlook®通信及協作用戶端互動;另一行為可知道如何與GoogleTM 行事曆互動;另一行為可知道如何與另一專有行事歷程式互動;另一行為可知道如何與一電子相簿程式互動;等等。
在一或更多具體實施例中,行為可安裝在計算裝置102上。一般地,一使用者裝置102可使用一網路瀏覽器導航至一特定網頁110,該網頁允許安裝一行為。此類網頁110包含可下載及作為行為執行之指令及資料,或者包含一至此等指令及資料之連結。在計算裝置102上安裝該行為,指將該行為之該等指令及資料下載至計算裝置102,及根據需要配置計算裝置102,以便計算裝置102可 執行該等指令及資料。允許安裝該行為之網頁可(但無須)包含結構化資料。
除作為一行為安裝方式導航至網頁之外,可以其他方式在計算裝置102上安裝行為。即,可使用任何各種不同技術將行為安裝在計算裝置102上,該等技術通常可用於將指令及資料傳送至一計算裝置。舉例而言,一含有一或更多行為之該等指令及資料之檔案可經由一可移除儲存裝置(諸如一光碟、磁碟、快閃記憶體裝置,等等)、經由網路106、經由至另一計算裝置之一有線或無線連接等等,被傳送至計算裝置102。藉由另一範例之方式,可在計算裝置102上預安裝一或更多行為,以便當他或她第一次使用計算裝置102時,該行為立即對使用者可用。作為替代或者此外,當在計算裝置102上安裝一應用程式時,可在計算裝置102上安裝一或更多行為,諸如此類。
第3圖說明根據一或更多具體實施例之一實例網路資料平臺300。網路資料平臺300在一計算裝置上實現,且可為在第1圖之計算裝置102上實現之網路資料平臺108。平臺300一般地係在單一計算裝置上實現,但是另一選擇為可跨多個計算裝置實現。
網路資料平臺300使用網路資料。大體上,網路資料一般地指在網路上可用的資料。舉例而言,網路資料可包含網頁、網頁之特定部分、網頁集合之指示、注釋,等等。在一或更多具體實施例中,該網路資料之格式為HTML格式,儘管另一選擇為可使用其他標記語言格式或其他格 式。平臺300可視需要變更該網路資料之格式,以便在藉由平臺300獲得該網路資料之後進行儲存。
網路資料平臺300包含一引擎層302、一資料儲存層304,及一API層306。平臺300亦可包含一行為儲存層340。大體上,引擎層302獲得網路資料308並向資料儲存層304提供該資料以便儲存。亦可藉由引擎層302偵測先前獲得之網路資料308之變更並向資料儲存層304標識。資料儲存層304儲存該網路資料,且更儲存該網路資料作為其一組成部分之集合的指示器。資料儲存層304亦可儲存有關該網路資料或集合的注釋。API層306提供一介面,其允許在與該平臺相同之計算裝置上執行之本機應用程式310,以及在其他計算裝置上執行之遠程應用程式312,從資料儲存層304存取及使用該網路資料。
在操作期間,網路資料308被添加至資料儲存層304。可從各種不同來源獲得網路資料308。一般地,藉由一網路瀏覽器初始擷取至少某些網路資料308。該網路瀏覽器可是一本機應用程式310,其經由API層306與資料儲存層304結合。或者,該網路瀏覽器可經由引擎層302將該網路資料傳送至資料儲存層304。使用該網路瀏覽器,該使用者可瀏覽或另外導航至一特定網頁,導致該網路瀏覽器將網頁顯示給該使用者。然後,該使用者可請求將該網頁添加至他或她的資料儲存區。為回應此請求,該網頁變成添加至資料儲存層304之網路資料。將該網頁添加至該使用者之資料儲存區的請求可接受各種不同形式,諸如將 該網頁添加至該使用者之最愛網頁或收藏網頁之清單之請求、收集一網頁及/或預訂在該網頁上之結構化資料之請求、儲存該網頁之一複本以供離線使用之請求,等等。或者,當該使用者使用該網路瀏覽器導航至一特定網頁時,該網頁可被自動添加至資料儲存層304。
此外,至少某些網路資料308一般地係在擷取已經預訂之更新網頁之處理期間獲得。此網路資料308藉由引擎層302擷取並被提供至資料儲存層304。或者,網路資料308可以其他方式被擷取,諸如接收含有該網路資料之一檔案,其經由一可移除儲存裝置(諸如一光碟、磁碟、快閃記憶體裝置,等等)、經由第1圖之網路106、經由至另一計算裝置之一有線或無線連接等等被傳送至計算裝置102。藉由另一範例之方式,網路資料可包含在資料儲存區304中作為計算裝置102之一安裝或創建處理之一部分,以便當他或她第一次使用計算裝置102時,該使用者可立即使用該網路資料。藉由再一範例之方式,當一應用程式310被安裝在計算裝置102上時,網路資料可包含在資料儲存層304中,等等。藉由又一範例之方式,一應用程式可創建諸如結構化資料之網路資料,且將該網路資料儲存到資料儲存層304中。可以各種方式創建此網路資料,諸如藉由轉換一檔案、從零開始產生該資料,等等。
資料儲存層304儲存該網路資料。資料儲存層304包含一或更多項目314、一或更多注釋316,及一或更多集合318。資料儲存層儲存網路資料及關聯資料(視需要),如 以下更詳盡之討論。該資料儲存區可在各種位置中實現,諸如在一本機儲存裝置上(例如,與實施平臺300相同之計算裝置之一部分)、在一遠程儲存裝置上(例如,遠離實現平臺300之裝置的另一計算裝置之一部分)、在一可移除儲存裝置上(例如,一快閃記憶體裝置、一碟等),等等。
每一項目314表示至一網頁之一連結,且因此對應一網頁或與一網頁相關聯。一項目314可包含該網頁之資料(例如,該頁的HTML編碼),或者包含一連結,該連結指向該網頁之某些或所有資料位於資料儲存層304中之位置。某些網頁可包含結構化資料,而其他網頁可不包含結構化資料。對於包含結構化資料之網頁,該相應項目314可視需要識別該結構化資料,以允許輕鬆擷取該結構化資料。除該該網頁之資料外,在項目314中亦包含描述該連結之各種元資料。表I描述在一或更多具體實施例中,在每一項目314中維護之範例元資料。
每一注釋316是與一項目314相關聯,且可從項目314代表之網頁所獲得自之相同來源獲得。每一注釋316可為一單一注釋,或者可為與該項目314相關聯之一組注釋。每一注釋包含各種資訊,其描述藉由項目314代表之網頁,但是一般地不顯示為該網頁之一部分。
每一集合318識別分組在一起之一或更多項目314。該分組一般地係藉由一網路瀏覽器執行,儘管其或者可藉 由另一應用程式310執行。在一或更多具體實施例中,根據在所連結至之網頁內之結構化資料的資料類型自動分配該分組。在此等具體實施例中,所有具有相同資料類型之結構化資料的網頁被一起分組在相同集合中。此外或者另一選擇為,該分組可藉由一使用者分配。在此等具體實施例中,該使用者能夠識別集合之名稱或其他識別符,及根據他或她的希望將特定項目指派到特定集合。此指派可在該等網頁獲得時執行,及/或在其他時間(例如,經由該網路瀏覽器或另一應用程式310)執行。
此外,一或更多應用程式310及/或312可向資料儲存層304註冊,以便獲知對資料儲存層304之變更之通知。資料儲存層304通知此等應用程式310及/或312一項目314、注釋316、及/或集合318之變更。在一或更多具體實施例中,應用程式310及/或312可向資料儲存層304註冊,以接收項目314變更之通知。資料儲存層304維護一記錄,該記錄是註冊應用程式310及/或312以接收通知之記錄,且無論何時一項目314存在一變更,通知此等應用程式310及/或312之每一者。一般地,將項目314之任何變更通知註冊的應用程式,包含任何項目之元資料之變更、任何項目的添加、任何項目的刪除,及添加至該項目之任何新的注釋。或者,可註冊一應用程式以接收僅項目314特定部分之變更之通知(例如,僅該結構化資料或一旗標之一變更,等等),或一特定項目314之變更之通知。此外或者另一選擇為,一應用程式亦可註冊一集合318之 一或更多變更、一注釋316之變更,具有一特定資料類型結構化資料之項目314之變更,等等。
此外,在一或更多具體實施例中,利用一執行平臺300之作業系統之一事件通知組件輔助該註冊及通知。在此等具體實施例中,應用程式310及/或312可向作業系統之一事件通知組件註冊,致使無論何時藉由該事件通知組件接收一該應用程式已註冊之事件,該事件通知組件通知該等應用程式310及/或312。應用程式310及/或312為項目變更事件而註冊,且資料儲存層304通知該事件通知組件任何項目變更。反過來,該作業系統之事件通知組件為該已註冊應用程式310及/或312觸發事件(或另外向其發出一通知),以通知他們項目之變更。
平臺300亦可選擇性地包含一行為儲存層340,其中儲存一或更多行為342。每一行為342係該結構化資料之一使用方式之一說明,一般地係為實現平臺300之該計算裝置之使用者提供一服務,如上所述。當一行為被安裝在一實現平臺300之計算裝置上時,維護與該行為相關聯之結構化資料之一記錄。此記錄可在行為儲存層340中、在資料儲存層304中、或者在某些獨立儲存層中(未顯示)維護。
引擎層302獲得網路資料308,並向資料儲存層304提供該資料以便儲存。先前獲得之網路資料308的變更亦可藉由引擎層302偵測,且該變更之網路資料儲存於資料 儲存層304中。此外,引擎層302可將該等變更通知資料儲存層304及/或平臺300之其他組件。識別一網頁之變更及儲存一網頁之該變更版本之處理亦被稱作更新該網頁。
引擎層302包含一下載引擎322、一清除器模組324,及一合併處理模組326。下載引擎322獲得藉由項目314識別之網頁的更新版本。下載引擎322一般地下載該經識別的網頁,儘管另一選擇為若僅該網頁之一部分被更新(例如,僅在該網頁上之結構化資料),則僅需擷取該網頁之該部分。下載引擎322可獲得藉由項目314代表之所有網頁的更新版本,或者僅獲得其更新已經藉由該使用者請求之此等網頁之更新版本(例如,藉由預訂在該網頁上之結構化資料,或另外請求更新)。可在該相應項目314之元資料中維護是否已經為一特定網頁請求更新之一指示(例如,如以上參照表I所討論之該等旗標之一者)。針對下載引擎322要獲得所代表網頁之更新版本的每一項目314,該項目314識別對該網頁之更新應所擷取自之位置(例如,如以上所討論之該來源URL)。
大體上,該網頁之一新版本藉由下載引擎322接收為網路資料308,且藉由清除器模組324清除以移除任何潛在惡意內容。然後合併處理模組326,比較該已清除之網頁與一先前儲存於資料儲存層304中之版本,以確定該網頁之新近接收版本與該網頁中之先前儲存版本之間是否存在任何差異。若該網頁存在任何變更,則合併處理模組326,在資料儲存層304中儲存該新近接收之網頁,且通知 資料儲存層304及/或API層306該網頁已變更。在一或更多具體實施例中,合併處理模組326通知層304及/或層306該網頁之任何變更,而在其他具體實施例中,合併處理模組326僅通知層304及/或層306在該網頁上之結構化資料之變更。在另一具體實施例中,合併處理模組326通知層304及/或層306關於該網頁之任何變更,且更通知層304及/或層306任何該等變更是否為結構化資料之變更。
更新一項目要多頻繁的程度可有所不同。在特定具體實施例中,該項目本身包含一識別其更新之頻率之特性(例如,以上參照表1所討論之該等旗標之一者)。在其他具體實施例中,其他機制被用於決定該頻率,諸如一使用者可輸入他或她希望該更新發生之頻率、特定頻率可與不同結構化資料類型相關聯,等等。該更新可以規則間隔(例如、每天一次、每小時一次、每五分鐘一次,等等)執行,或以不規則間隔(例如,每天一次直至在該項目中識別之一特定時間及日期,在與在該項目中識別之相同日期每小時一次,及在與在該項目中識別之相同日期且在緊接在該項目中識別之某一時間之前一小時內每五分鐘一次)執行。
清除器(sanitizer)模組324接受藉由下載引擎322擷取之網頁,且識別在該網頁上之任何潛在惡意內容。清除器模組324移除任何此類被識別的內容,導致一已清除之網頁,使已清除之網頁可供合併處理模組326使用。清除器模組324可操縱以任何各種習知方式偵測潛在惡意內容,諸如檢查特定標籤、使用特定演算法、搜尋特定型樣,等 等。
合併處理模組326比較該已清除之網頁與先前儲存於資料儲存層304中之網頁。基於此比較,檢查是否存在任何該網頁之變更。該網頁之一變更可係在該網頁中添加某些資料或其他內容或編碼、從該網頁刪除某些資料或其他內容或編碼,及/或修改在該網頁中之資料或其他內容或編碼。或者,合併處理模組326可僅比較該已清除之網頁之一部分(例如,在該已清除之網頁中的結構化資料)與之先前儲存於資料儲存層304中之該網頁的一部分(例如,在該網頁中之結構化資料)。
若不存在該網頁之變更,則合併處理模組326需在此時對此項目不採取其他動作。或者,合併處理模組326可更新該項目314之元資料,以反映一更新已被執行,但是未偵測到該網頁之變更。
但是,若該網頁已有變更,則在資料儲存層304中之先前儲存之網頁被該新近接收之網頁替代。使用該網頁之新版本替換該網頁之舊版本的操作可藉由合併處理模組326執行,或者可藉由資料儲存層304之一控制組件執行。當一項目314已變更時,藉由引擎層302通知資料儲存層304該變更。在一或更多具體實施例中,資料儲存層304提供一介面,該介面可存取引擎層302及允許引擎層302在資料儲存層304中儲存網頁,及亦允許引擎層302通知資料儲存層304一網頁之任何變更。
一網頁之變更一般地係藉由引擎層302識別,如上所 述。此外,一注釋之變更一般地係以一類似方式識別,因該等注釋藉由下載引擎322與該網頁一起獲得。然而,一集合318或行為之變更一般地可藉由一應用程式310進行。此等變更在該變更進行時藉由資料儲存層偵測,且通知註冊之應用程式此類變更,其類似於一網頁之該等變更的通知,如上所述。舉例而言,假定一應用程式310藉由調用一對應於該集合之物件之一方法變更一集合318(以下將更詳盡討論該物件模型)。此被調用方法之一部分處理係通知資料儲存層304該集合318之變更,一般地識別該特定集合318及所做之變更。
API層306提供一介面,其允許在與該平臺相同之計算裝置上執行之本機應用程式310,以及在其他計算裝置上執行之遠程應用程式312,從資料儲存層304存取及使用該網路資料。API層306包含一物件模型330及一同步協定模組332。本機應用程式310包含一網路瀏覽器應用程式,以及添加至該網路瀏覽器應用程式之任何延伸。延伸可藉由另一應用程式310或312或藉由一網頁被添加至一網路瀏覽器應用程式,以延伸該網路瀏覽器之功能。此外,本機應用程式310可為任何各種類型之應用程式,諸如文字處理應用程式、試算表應用程式、遊戲、資料庫,等等。類似地,遠程應用程式312可為任何各種類型之應用程式,諸如文字處理應用程式、對映或方向應用程式、遊戲,等等。
物件模型330係一基於在資料儲存層304中之資料的 物件模型。物件模型330包含表示項目314、注釋316、及資料儲存層304之集合318的不同物件。該等物件包含對應於作為項目314、注釋316、及集合318儲存之資料的各種屬性。舉例而言,一表示一項目314之物件可包含一具有該網頁之資料的特性(例如,該頁的HTML編碼),以及以上參考表I所述之每種類型元資料之其他屬性。
此外,在其中該網頁包含結構化資料之具體實施例中,該結構化資料本身可為一項目物件之不同屬性。舉例而言,假定一網頁包含一聯絡人結構化資料類型,其具有一名稱及一電話號碼作為結構化資料。此網頁儲存為一項目314,且在物件模型330中之一相應物件所包含之屬性係該聯絡人名稱及聯絡人電話號碼。
除屬性之外,在物件模型330中之每一物件可包含允許一應用程式310與該物件互動之不同方法。此類方法之範例包含:一產生方法、一讀取方法、一編輯方法、一刪除方法,及一列舉方法。一產生方法允許物件被產生及藉由一應用程式310使用資料填充,且對應資料被儲存於資料儲存層304中。一讀取方法允許藉由一應用程式310擷取該物件之屬性。一編輯方法允許藉由一應用程式310變更該物件之屬性,且此類變更儲存於資料儲存層304中。 一刪除方法允許該物件被刪除,且從資料儲存層304刪除該對應資料。一列舉方法允許向一應用程式310識別該物件之該等方法及/或屬性。
此外,在API層306中之一行為物件模型亦包含表示 行為342之不同物件,且允許應用程式310與該等物件互動。此物件模型可被包含為物件模型330或者在層306中之另一物件模型之一部分。表示行為342之該等物件包含對應於該等行為342之各種屬性。舉例而言,表示一特定行為342之一物件可包含一特性具有一表示在何處儲存將被執行以進行該行為之編碼的識別符(或者該編碼可被包含為該物件之一部分)。該物件亦可包含有關該行為302之元資料,諸如該行為之來源之一識別符、藉由該行為所提供之該等服務之一識別符、與該行為相關聯之該結構化資料類型之一識別符,等等。
在該行為物件模型中之每一物件亦包含允許一應用程式310與該物件互動之不同方法。此類方法之範例包含:一調用方法、一藉由類型列舉行為方法、一讀取方法、一添加方法,及一刪除方法。一調用方法允許一應用程式310調用藉由該物件代表之行為。當藉由該物件代表之行為被調用時,執行藉由該物件代表之行為的編碼。一讀取方法允許藉由一應用程式310擷取該物件之屬性。一添加方法允許將一行為添加至行為儲存區340,且將一表示該行為之物件添加至該行為物件模型。一刪除方法允許從行為儲存區340刪除一行為,及從該行為物件模型刪除表示該行為之物件。
一藉由類型列舉行為方法允許向一應用程式310識別與一特定結構化資料類型相關聯之該等不同行為。此列舉可以不同方式完成,諸如藉由在該行為物件模型中具有一 維護此資訊之其他物件(此其他物件之一種之方法可被該應用程式310直接調用、或者可被藉由應用程式310調用之另一物件之方法調用)、藉由存取儲存於行為儲存層340中之此類關聯之一記錄(例如,每次一行為被添加或一關聯被變更時更新哪一個)、藉由讓在該行為物件模型中之該等物件彼此查詢與其相關聯之結構化資料類型,等等。此列舉可以不同方式完成,諸如藉由在該行為物件模型中具有一維護此資訊之其他物件(此其他物件之一種方法可被該應用程式310直接調用、或者可被藉由應用程式310調用之另一物件之方法調用)、藉由存取儲存於行為儲存層340中之該等行為之一記錄(例如,每次一行為被添加或刪除時更新哪一個)、藉由讓在該行為物件模型中之該等物件彼此查詢其所代表之該等行為,等等。
同步協定模組332允許遠程應用程式312維護與在資料儲存層304中之資料同步的資料。在一或更多具體實施例中,每一希望接收事件通知之遠程應用程式312將此希望之一指示發送至模組332。此外,一遠程應用程式312可註冊資料儲存層304之變更通知,或者模組332可代表一應用程式312註冊通知。無論應用程式312或模組332中之何者註冊通知,同步協定模組332將接收該等通知。模組332維護該等通知之一記錄,直至下一次其與該遠程應用程式312通信,在此時模組332將其已接收及維護之所有該等通知發送至遠程應用程式312。模組332亦可將來自資料儲存層304之對應變更資料發送至遠程應用程式 312,或者等待遠程應用程式312請求該資料。
在一遠程應用程式312與同步模組332之間的通信可藉由該應用程式312及/或該模組332啟動。在一或更多具體實施例中,一應用程式312啟動該通信,其係藉由針對該模組332已代表其接收之通知,向模組332發送(例如,通過第1圖之網路106)一請求。在其他具體實施例中,應用程式312向模組332提供一指示,表示如何將通知傳送到該應用程式312,且模組332維護此指示。舉例而言,此指示可為一URL,其在接收到該應用程式312之一通知時被存取。藉由模組332代表該應用程式312接收之通知以藉由給予模組332之指示界定無論何種方式(及使用無論何種頻率),被傳送至該應用程式312。
通過傳送至遠程應用程式312之該資料儲存層304的該等變更之通信,允許遠程應用程式312在資料儲存層304中保留其自己的該網路資料複本,且此外允許遠程應用程式312保持其網路資料複本與在網路資料儲存層304中之網路資料同步。應注意,當一遠程應用程式312初始希望獲得該網路資料之變更通知時,所有在資料儲存層304中之網路資料可被視為已變更,因為該遠程應用程式312尚未接收任何該資料。在此類情況中,一般地將在資料儲存層304中之當前網路資料傳送至該遠程應用程式312。
此外,在一或更多具體實施例中,網頁能夠經由一網路瀏覽器應用程式310存取資料儲存層304。在該等具體實施例中,物件模型330允許一網路瀏覽器應用程式310 顯示一網頁以存取物件模型330。以此方式,網頁能夠存取及利用在資料儲存層304中之資料及在行為儲存層340中之該等行為,而無需安裝如一應用程式310之一應用程式。
此外,API層306可控制對在資料儲存層304及/或行為儲存層340中之API及/或不同網路資料之存取。藉由控制此類存取,不同網頁及/或網站可被限於不同功能及/或網路資料。藉由範例之方式,API可被分隔成不同功能,諸如讀取功能及編寫功能。不同網頁及/或網站可被允許存取該編寫功能,而其他網頁及/或網站僅被允許存取該讀取功能。藉由另一範例之方式,特定網頁及/或網站可被限於僅存取一特定一或更多項目314、一特定一或更多集合318,等等。對特定網頁及/或網站之該特定存取允許可藉由實現平臺300之計算裝置的使用者識別,藉此允許該使用者控制對他或她的網路資料之存取。
此外,在一或更多具體實施例中,API層306包含一網路資料選擇器控制模組,該網路資料選擇器控制模組顯示一使用者介面控制,該使用者介面控制允許一使用者選擇特定網路資料。該使用者介面控制顯示在資料儲存層304中至少某些該各種網路資料之識別符,且允許一本機應用程式310之使用者選擇特定網路資料,以便對其執行一動作。舉例而言,若一本機應用程式310正在顯示有關集合之資訊,該應用程式310可向該使用者顯示一控制,其列出來自資料儲存層304之該等集合的識別符。這允許 該使用者輕鬆選擇他或她希望已顯示哪一(些)集合。藉由另一範例之方式,若一本機應用程式310正在顯示有關一特定結構化資料類型之資訊(例如、行事曆事件、位置,等),該應用程式310可向該使用者顯示一控制,其列出來自資料儲存層304之該類型的不同結構化資料之識別符。這允許該使用者輕鬆選擇他或她希望已顯示哪一(些)段結構化資料。當該應用程式接收到一作用於網路資料之請求時,顯示該使用者介面控制。該使用者可以任何各種方式請求作用於網路資料,諸如選擇一螢幕按鈕、從一下拉式選單選擇一項目、請求執行一應用程式,等等。
第4圖說明根據一或更多具體實施例之一實例使用者介面,其顯示一使用者介面控制。在第4圖中,圖解說明一應用程式視窗400,其包含一標題402及各種文字404及影像406。視窗400亦包含一使用者介面控制408,其列出該使用者可選擇之不同網路資料。在該圖解說明範例中,控制408顯示項之集合,儘管應瞭解可作為替代顯示項本身或其他網路資料。基於藉由該應用程式產生視窗400提供之該特定功能,在介面控制408中顯示之該特定網路資料可有所不同。
該使用者可以各種不同方式從控制408選擇一特定集合。在一或更多具體實施例中,該使用者將一指標或遊標410導航至在控制408中之該識別符上,並按一下在一遊標控制裝置上(例如,一滑鼠)之一按鈕,以選擇該識別符。然後,藉由該應用程式以該應用程式執行以操縱之無 論何種方式作用於該識別集合。
第5圖係一流程圖,其圖解說明根據一或更多具體實施例之一實例處理500,該實例處理500用於從一資料儲存層存取網路資料。處理500藉由一計算裝置執行,諸如第1圖中之計算裝置102,且可以軟體、韌體、硬體或其組合之形式實現。在特定具體實施例中,處理500係藉由第3圖之網路資料平臺300實現。
最初,獲得網路資料(動作502)。舉例而言,該網路資料指網頁、網頁集合之指示、行為、注釋,等等。可以各種不同方式獲得該網路資料。舉例而言,網路資料可藉由該使用者使用一網路瀏覽器導航至一網頁、通過網際網路或其他網路接收一檔案、從一可移除儲存裝置接收一檔案等等而獲得。此外,某些網路資料,諸如注釋及集合指示,可藉由從實現處理500之該裝置之一使用者接收文字、字元、選定圖示、或其他(例如,音響)輸入而獲得。
所獲得之網路資料儲存在一網路資料儲存區中(動作504)。舉例而言,此網路資料儲存區係第3圖之該資料儲存層304。在一或更多具體實施例中,在動作504中儲存在動作502中獲得之任何網路資料。在其他具體實施例中,接收到一來自該使用者之儲存該網路資料的請求,且僅儲存所請求之資料。
產生一表示在該網路資料儲存區中之網路資料的物件模型(動作506)。在動作506中產生之此物件模型包含多個物件,每一物件表示來自該網路資料儲存區之一段網路 資料(例如,每一物件表示一項目、一集合,或一注釋)。在一或更多具體實施例中,在動作506中產生該該物件模型係第3圖之物件模型330。在一或更多具體實施例中,亦在動作506中產生一表示來自該行為儲存區之該等行為的物件模型。
具有該物件模型後,可自一應用程式接收一請求,以對該網路資料執行一動作(動作508)。在一或更多具體實施例中,此請求係一來自在與實現處理500相同之計算裝置上執行之一本機應用程式的請求。如上所述,遠程應用程式可被通知該網路資料之變更,且可維護其自己的網路資料複本,允許此類遠程應用程式存取其自己的網路資料複本,以對該資料執行一動作。
在該網路資料上執行之該動作可係任何各種動作,且一般地係藉由在該物件模型中之該等物件公開為方法之該等動作。舉例而言,這包含藉由表示集合、項目、注釋,及行為之物件公開的方法。該請求被調用在該物件模型中之該物件之相應方法的應用程式接收。
執行該被請求之動作(動作510),且處理500返回動作506。若該動作導致對該物件模型之任何變更,則該變更實質上導致併入該變更之一新產生的物件模型。但應瞭解,無需重新產生該物件模型中未變更之該等部分。
除從應用程式接收請求之外,亦可接收網路資料之更新(動作512)。該等更新係對比較該先前儲存的網路資料與該網路資料之新的版本所導致之網路資料之變更。一般 地,該等更新接收自第3圖之引擎層302。所接收之更新資料儲存於網路資料儲存區(514)中,且產生一新物件模型,其表示此變更之資料(動作506)。應瞭解,在動作506中不重新產生該物件模型未變更之該等部分。此變更資料之通知亦可被傳送至一或更多應用程式,如本文中所討論。
第6圖係一流程圖,圖解說明根據一或更多具體實施例之一實例處理600,其用於更新在一資料儲存層中之網路資料。處理600係藉由一計算裝置執行,諸如藉由第1圖之計算裝置102,且可以軟體、韌體、硬體或其組合等形式實現。在特定具體實施例中,處理600係藉由第3圖中之網路資料平臺300實現。
處理600針對每一網頁在每次要檢查更新時執行。一網頁之更新頻率可有所不同。在特定具體實施例中,對應於儲存於該資料儲存層中之網頁的項目,包含識別該網頁之更新頻率的元資料。在其他具體實施例中,其他機制被用於決定該頻率,諸如一使用者可輸入他或她希望該更新發生之頻率、特定頻率可與不同網頁或具有特定類型結構化資料之網頁相關聯,等等。該檢查可以規則間隔(例,每天一次、每小時一次、每五分鐘一次,等等)進行,或以可隨時間變化之不規則間隔進行。
最初,擷取一要檢查更新之網頁之一新版本(動作602)。舉例而言,該新的版本所擷取自之位置,在對應於儲存於該資料儲存層中之該網頁的該項目之元資料中識別。
然後,將該網頁之新的版本與在該資料儲存區中該網頁之該先前儲存的版本比較(動作604)。根據該比較,檢查是否存在任何該網頁之變更(動作606)。該網頁之一改變可係在該網頁中添加某些資料、從該網頁刪除某些資料,及/或修改在該網頁中之資料。儘管參考該網頁之變更檢查討論了處理600,但或者在處理600中可檢查及更新僅該網頁之一部分(例如,在該網頁上之結構化資料)的變更。
若該結構化資料無變更,則處理600視需要在對應於該資料儲存層中之該網頁之該項目的元資料中,記錄該更新檢查之日期及時間(動作608)。此日期及時間可係在動作602中擷取該網頁之新的版本的日期及時間、在動作604中進行比較的日期及時間,等等。此外,動作608可能不執行。無論是否執行動作608,此網頁之更新處理600在此時即告完成(動作610)。此外,該資料儲存層通知已註冊對該網頁之變更之網路資料變更通知的任何應用程式(動作616)。
返回動作606,若存在該網頁之變更,則在該資料儲存區中之該網頁被在動作602中所擷取之網頁的版本替代(動作612)。該資料儲存層亦通知該結構化資料之變更(動作614)。該資料儲存層可藉由一外顯變更命令或指示器被通知該變更,或者可隱含地藉由被更新之該網頁而被通知該變更。
該更新檢查之日期及時間亦記錄(動作618)在對應 於在該資料儲存層中之該網頁的該項目的元資料中。此日期及時間可係在動作602中擷取該網頁之新的版本的日期及時間、在動作604中進行比較的日期及時間,等等。然後,對此網頁之該更新處理600在此時即告完成(動作610)。
第7圖說明根據一或更多具體實施例之一實例計算裝置700,其可經配置以實現該網路資料使用平臺。舉例而言,計算裝置700可係第1圖之計算裝置102,且可舉例而言,實現第3圖之平臺300。
計算裝置700包含一或更多處理器或處理單元702、一或更多電腦可讀媒體704(其可包含一或更多記憶體及/或儲存組件706)、一或更多輸入/輸出(I/O)裝置708,及一匯流排710(該匯流排允許該等各種組件及裝置彼此通信)。電腦可讀媒體704及/或I/O設備708可被包含為計算裝置700之一部分,或者可耦接至計算裝置700。匯流排710表示一或更多任何多種類型之匯流排結構,包含一記憶體匯流排或記憶體控制器、一周邊匯流排、一加速圖形埠,及一使用任何各種匯流排架構之處理器或本機匯流排。匯流排710可包含有線及/或無線匯流排。
記憶體/儲存組件706表示一或更多電腦儲存媒體。組件706可包含揮發性媒體(諸如隨機存取記憶體(RAM))及/或非揮發性媒體(諸如唯讀記憶體(ROM)、快閃記憶體、光碟、磁碟,等等)。組件706可包含固定媒體(例如,隨機存取記憶體、ROM、一固定硬驅動機等)以及可移除 媒體(例如,一快閃記憶體驅動機、一可移除硬驅動機、一光碟,等等)。
一或更多輸入/輸出裝置708允許一使用者向計算裝置700輸入命令及資訊,且亦允許向該使用者及/或其他組件或裝置呈現資訊。輸入裝置之範例包含一鍵盤、一遊標控制裝置(例如,一滑鼠)、一麥克風、一掃瞄器,等等。輸出裝置之範例包含一顯示裝置(例如,一監視器或投影機)、揚聲器、一印表機、一網路卡,等等。
在本文中可在軟體或程式模組之一般上下文中描述各種技術。大體上,軟體包含執行特定任務或實現特定抽象資料類型之常式、程式、物件、組件、資料結構,等等。該等模組及技術之一具體實施例可儲存在某些形式之電腦可讀媒體上,或通過該電腦可讀媒體進行傳輸。電腦可讀媒體可係藉由一計算裝置可存取之任何可用媒體或媒體。藉由範例而非限制之方式,電腦可讀媒體可包括“電腦儲存媒體”及“通信媒體”。
“電腦儲存媒體”包含以任何方法或技術實現之揮發性及非揮發性、可移除及非可移除媒體,以用於儲存諸如電腦可讀指令、資料結構、程式模組,或其他資料等資訊。電腦儲存媒體包含但是並不限於,隨機存取記憶體、唯讀記憶體、電子可抹除可程式化唯讀記憶體、快閃記憶體或其他記憶體技術,唯讀光碟機、通用數位光碟(DVD)或其他光儲存,磁磁卡、磁帶、磁碟儲存或其他磁儲存裝置,或可用於儲存所需資訊且可藉由一電腦存取之任何其他媒 體。
“通信媒體”一般地包含電腦可讀指令、資料結構、程式模組,或以一調變資料信號形式之其他資料,諸如載波或其他傳輸機制。通信媒體亦包含任何資訊提供媒體。該術語“調變資料信號”指一信號,其以如此一方式設定或變更其一或更多特性,以便在該信號中編碼資訊。藉由範例而非限制之方式,通信媒體包含諸如一有線網路或直接連線的連接之有線媒體,及諸如聲頻、射頻、紅外,及其他無線媒體之無線媒體。任何上述組合亦包含在電腦可讀媒體之範圍內。
儘管已經採用結構特徵及/或方法性操作的專用語言描述了本發明,但應瞭解,於隨附申請專利範圍內限定之本發明不必限制於上文所述之特定特徵或操作。相反,上述特定特徵及操作被作為實施該等申請專利範圍之實例形式而揭示。
100‧‧‧系統
104(1)‧‧‧遠程裝置
104(x)‧‧‧遠程裝置
110‧‧‧網頁
106‧‧‧網路
102‧‧‧計算裝置
108‧‧‧網路資料平臺
300‧‧‧網路資料平臺
310‧‧‧本機應用程式
312‧‧‧遠程應用程式
330‧‧‧物件模型
306‧‧‧API層
332‧‧‧同步協定模組
340‧‧‧行為儲存層
342‧‧‧行為
304‧‧‧資料儲存層
318‧‧‧集合
316‧‧‧注釋
314‧‧‧項目
302‧‧‧引擎層
322‧‧‧下載引擎
324‧‧‧清除器模組
326‧‧‧合併處理模組
308‧‧‧網路資料
702‧‧‧處理器
704‧‧‧電腦可讀媒體
706‧‧‧記憶體/儲存區
710‧‧‧匯流排
708‧‧‧I/O裝置
在該等圖式中,從始至終皆使用相同符號來引用類似元件。
第1圖說明根據一或更多具體實施例之實例系統,在該系統中可使用該網路資料使用平臺。
第2圖說明根據一或更多具體實施例之一實例網頁,該網頁包含結構化資料。
第3圖說明根據一或更多具體實施例之一實例網路資料平臺。
第4圖說明根據一或更多具體實施例之一實例使用者介面,其顯示一使用者介面控制。
第5圖係根據一或更多具體實施例之一流程圖,其圖解說明用於從一資料儲存層存取網路資料之一實例處理。
第6圖係根據一或更多具體實施例之一流程圖,其圖解說明用於更新在一資料儲存層中之網路資料之一實例處理。
第7圖說明根據一或更多具體實施例之一實例計算裝置,該計算裝置可經配置以實現該網路資料使用平臺。
100‧‧‧系統
104(1)‧‧‧遠程裝置
104(x)‧‧‧遠程裝置
110‧‧‧網頁
106‧‧‧網路
102‧‧‧計算裝置
108‧‧‧網路資料平臺

Claims (20)

  1. 一種在一計算裝置中實現之方法,該計算裝置具有一網路資料平臺,該網路資料平臺包含一引擎層、一資料儲存層、一行為儲存層及一應用程式介面(API)層,該方法包括以下步驟:經由該引擎層識別網路資料,呈現在經由該計算裝置存取之一或更多個網頁之頁面說明之中之該網路資料係為可收集;經由該引擎層從經由該計算裝置存取之該一或更多個網頁之該等頁面說明收集該網路資料,以儲存在藉由該計算裝置實現之該資料儲存層中,該網路資料之至少一些經配置為一結構資料格式,並與儲存於該行為儲存層之行為相關聯,該等行為可由該計算裝置執行以啟動互動以利用對應之應用程式來使用經收集之該網路資料;產生一物件模型以說明經收集之該網路資料,該物件模型具有複數個物件,該等複數個物件表示並啟動對該網路資料之存取,該網路資料儲存於在該計算裝置之該資料儲存層中,該物件模型之該等複數個物件經排列以表示經收集之該網路資料之項目、集合及特性;經由該應用程式介面(API)層接觸一API,以啟動複數個應用程式之互動,該等複數個應用程式與儲存在該資料儲存層中之該網路資料在該計算裝置上執行,儲存在該資料儲存層中之該網路資料包含至少調用該等行為;提供通知至該等複數個應用程式之一或更多者,以回 應識別該網路資料之一變更;從在該計算裝置上執行之該等複數個應用程式接收請求,以對該網路資料執行一動作,該等請求經由調用該等複數個物件之一或更多個方法而被接收;及對該網路資料執行請求之該動作。
  2. 如申請專利範圍第1項所述之方法,該方法更包括以下步驟:從在另一計算裝置上執行之一遠程應用程式接收一其他請求,以存取該網路資料;允許該遠程應用程式存取該網路資料。
  3. 如申請專利範圍第1項所述之方法,其中提供通知至該等複數個應用程式之一或更多者之步驟更包括以下步驟:識別該網路資料之一變更;及通知該等複數個應用程式及一或更多者關於該網路資料之經識別之該變更。
  4. 如申請專利範圍第1項所述之方法,該方法更包括以下步驟:顯示一使用者介面控制,該使用者介面控制允許該等複數個應用程式之一使用者能選擇在該資料儲存層中之特定網路資料。
  5. 如申請專利範圍第1項所述之方法,該方法更包括以下步驟:檢查是否已做出該網路資料之一變更;及若已做出該變更,則通知該等複數個應用程式之一或更多者關於該網路資料之該變更。
  6. 如申請專利範圍第1項所述之方法,其中該等複數個應用程式包含一網路瀏覽器及一或更多個其他應用程式。
  7. 如申請專利範圍第1項所述之方法,其中該網路資料包括複數個網頁,其中該資料儲存層將該等複數個網頁之每一網頁儲存為一項目,其中該資料儲存層更儲存複數個集合,且其中該等複數個集合之每一集合識別一或更多個項目。
  8. 一種於其上儲存指令之電腦可讀儲存媒體,當藉由一計算裝置之一或更多個處理器執行該等指令時,致使該一或更多個處理器實現一網路資料平臺,該網路資料平臺包含一引擎層、一資料儲存層、一行為儲存層及一API層,該網路資料平臺經配置以:經由該引擎層識別網路資料,呈現在經由該計算裝置存取之一或更多個網頁之頁面說明之中之該網路資料係為可收集;經由該引擎層從該一或更多個網頁之該等頁面說明收 集經識別之該網路資料;根據一物件模型將該網路資料儲存在該計算裝置之該資料儲存層中,該物件模型定義經儲存之該網路資料之項目、集合及特性,該資料儲存層經配置以儲存從多個來源收集之網路資料,從多個來源收集之網路資料包含至少經由該計算裝置存取之該一或更多個網頁與該計算裝置之一或更多個本機應用程式;經由該資料儲存層提供通知至一或更多個應用程式,以回應識別該網路資料之一變更;實現該應用程式介面層以:經由該行為儲存層接觸一或更多個行為,該一或更多個行為係可執行以允許在該計算裝置上執行之一或更多個本機應用程式存取並使用經收集並在該資料儲存層中儲存之該網路資料;及經由該行為儲存層接觸一或更多個行為,該一或更多個行為係可執行以允許在一或更多個其他計算裝置上執行之一或更多個遠程應用程式存取並使用在該資料儲存層中之該網路資料,該網路資料之至少一些係自動地收集,以回應該計算裝置之一瀏覽器至該一或更多個網頁之導航。
  9. 如申請專利範圍第8項所述之電腦可讀儲存媒體,其中該一或更多個本機應用程式包含一網路瀏覽器及網路瀏覽器延伸。
  10. 如申請專利範圍第8項所述之電腦可讀儲存媒體,其中該等指令更致使該一或更多個處理器實現該引擎層,以藉由比較該網路資料與自擷取該網路資料更新之一或更多個來源位置所獲得之資料,來偵測該網路資料之變更,且將該網路資料之該等變更儲存在該資料儲存層中。
  11. 如申請專利範圍第10項所述之電腦可讀儲存媒體,其中當已偵測到該網路資料之一變更時,該資料儲存層觸發一事件,該事件通知該一或更多個本機應用程式及該一或更多個遠程應用程式,已偵測到該網路資料之該變更。
  12. 如申請專利範圍第11項所述之電腦可讀儲存媒體,其中該應用程式編程介面層包括一同步協定模組,用以接收該事件、維護該網路資料之該變更之一記錄,及將該變更傳送至該一或更多個遠程應用程式。
  13. 如申請專利範圍第8項所述之電腦可讀儲存媒體,其中該等指令更致使該一或更多個處理器使用該計算裝置之一資料儲存區裝置實現該資料儲存層。
  14. 如申請專利範圍第8項所述之電腦可讀儲存媒體,其中該應用程式編程介面層包含一同步協定模組,該同步協定模組代表該一或更多個遠程應用程式存取在該資料儲存層 中之該網路資料。
  15. 一種於其上儲存指令之電腦可讀儲存媒體,當藉由一計算裝置之一或更多個處理器執行該等指令時,致使該一或更多個處理器實現一網路資料平臺,該網路資料平臺包含一引擎層、一資料儲存層、一行為儲存層及一API層,該網路資料平臺經配置以:經由該引擎層偵測網路資料,該網路資料包含在由該計算裝置存取之一或更多個網頁相關聯之頁面說明之中,並經配置以收集並儲存於該資料儲存層之一網路資料儲存區中;回應於該網路資料之偵測,顯示一使用者介面控制,該使用者介面控制可選擇以致使該網路資料之儲存,該網路資料係在該網路資料儲存區中之該一或更多個網頁之該等頁面說明中偵測;回應於該使用者介面控制之選擇,將該網路資料儲存在該資料儲存層之該網路資料儲存區中,該網路資料包含多種不同資料類型之結構化資料,該結構化資料係與儲存於該行為儲存層之對應行為相關聯,並可由該計算裝置執行以啟動互動來根據該等不同資料類型而以特定方式用對應之應用程式來使用收集之該網路資料;經由該資料儲存層提供通知至一或更多個應用程式,以回應識別該網路資料之一變更;產生一物件模型,該物件模型具有複數個物件,該等 複數個物件表示來自該一或更多個網頁之該網路資料,以表示該網路資料之項目、集合及特性;及經由該API層允許在該計算裝置上執行之一網路瀏覽器以及在該計算裝置上執行之一或更多個其他應用程式兩者,經由該物件模型存取該網路資料儲存區,及至少部分地基於帶有結構化資料之該一或更多個網頁之該一或更多個網頁而產生一使用者介面,該網路資料調用該等行為以針對該使用者介面擷取並使用該結構化資料。
  16. 如申請專利範圍第15項所述之電腦可讀儲存媒體,其中允許該網路瀏覽器及該一或更多個其他應用程式經由該物件模型存取該網路資料儲存區之步驟,係允許該網路瀏覽器及該一或更多個其他應用程式藉由調用該等複數個物件之一或更多個方法去存取該網路資料儲存區。
  17. 如申請專利範圍第15項所述之電腦可讀儲存媒體,其中該等指令更致使該一或更多個處理器允許該網路瀏覽器及該一或更多個應用程式兩者列舉哪些行為被儲存於該計算裝置之該行為儲存層中。
  18. 如申請專利範圍第17項所述之電腦可讀儲存媒體,其中該等行為僅係與一特定結構化資料類型相關聯之行為。
  19. 如申請專利範圍第15項所述之電腦可讀儲存媒體,其 中該等指令更致使該一或更多個處理器允許該網路瀏覽器及該一或更多個應用程式兩者調用儲存於該計算裝置之該行為儲存層中之一行為。
  20. 如申請專利範圍第15項所述之電腦可讀儲存媒體,其中該等指令更致使該一或更多個處理器顯示一使用者介面控制,該使用者介面控制允許該計算裝置之一使用者從該網路資料儲存區中之該一或更多個網頁中選擇一特定片段之結構化資料,該網路資料儲存區係由該網路瀏覽器或該一或更多個其他應用程式所存取。
TW097103777A 2007-02-12 2008-01-31 用於網路資料使用平臺之方法及電腦可讀儲存媒體 TWI450107B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/705,286 US7917507B2 (en) 2007-02-12 2007-02-12 Web data usage platform

Publications (2)

Publication Number Publication Date
TW200846952A TW200846952A (en) 2008-12-01
TWI450107B true TWI450107B (zh) 2014-08-21

Family

ID=39686752

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097103777A TWI450107B (zh) 2007-02-12 2008-01-31 用於網路資料使用平臺之方法及電腦可讀儲存媒體

Country Status (8)

Country Link
US (2) US7917507B2 (zh)
EP (1) EP2122561B1 (zh)
JP (1) JP5075920B2 (zh)
CN (1) CN101611422B (zh)
AU (1) AU2008216396B2 (zh)
CL (1) CL2008000425A1 (zh)
TW (1) TWI450107B (zh)
WO (1) WO2008100881A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8429185B2 (en) 2007-02-12 2013-04-23 Microsoft Corporation Using structured data for online research
US7917507B2 (en) 2007-02-12 2011-03-29 Microsoft Corporation Web data usage platform
US8156201B2 (en) 2007-02-20 2012-04-10 Microsoft Corporation Unifying discoverability of a website's services
JP4465631B2 (ja) * 2007-05-10 2010-05-19 ソニー株式会社 ナビゲーション装置及びナビゲーション装置における位置登録方法
US8146110B2 (en) 2007-12-10 2012-03-27 Microsoft Corporation Service platform for in-context results
US20090228804A1 (en) * 2008-03-05 2009-09-10 Microsoft Corporation Service Preview And Access From an Application Page
US8631340B2 (en) * 2008-06-25 2014-01-14 Microsoft Corporation Tab management in a user interface window
US9396281B2 (en) * 2008-08-13 2016-07-19 Microsoft Technology Licensing, Llc Activities operating on structured data
US8208160B2 (en) * 2008-08-27 2012-06-26 Hewlett-Packard Development Company, L.P. System and method for printing a user guide for a product
US8700750B2 (en) * 2009-01-16 2014-04-15 Microsoft Corporation Web deployment functions and interfaces
US8555187B2 (en) * 2010-02-16 2013-10-08 Google Inc. Server-based data sharing in computer applications using a clipboard
US20120117118A1 (en) * 2010-11-10 2012-05-10 Sony Corporation Search and deep linking in internet-enabled tv
US9329851B2 (en) * 2011-09-09 2016-05-03 Microsoft Technology Licensing, Llc Browser-based discovery and application switching
US9177077B2 (en) * 2012-04-13 2015-11-03 Apple Inc. Method for improving backward/forward performance between certain types of dynamic web pages
US9262593B2 (en) 2012-06-25 2016-02-16 Microsoft Technology Licensing, Llc Client services for web-based applications
US10733358B2 (en) * 2012-09-17 2020-08-04 Salesforce.Com, Inc. Method and system for site migration
EP2920711A4 (en) * 2012-11-14 2016-06-29 Hewlett Packard Entpr Dev L P UPDATING STATISTICS IN DISTRIBUTED DATA BASES
CN103024013A (zh) * 2012-12-03 2013-04-03 百度在线网络技术(北京)有限公司 差异化的传输方法、系统和装置
KR20140114645A (ko) * 2013-03-19 2014-09-29 삼성전자주식회사 하이퍼링크의 미리 보기 화면 표시 방법 및 그 장치
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US11895138B1 (en) * 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10389795B2 (en) * 2015-10-09 2019-08-20 Microsoft Technology Licensing, Llc Distributed extension execution in computing systems
US10262006B2 (en) 2016-04-29 2019-04-16 Microsoft Technology Licensing, Llc Contextually triggered entry point
CN108255489B (zh) * 2018-01-12 2021-05-25 北京三快在线科技有限公司 前端界面代码生成方法、装置、电子设备及存储介质
US11657144B2 (en) * 2019-11-08 2023-05-23 Vmware, Inc. Security-enhanced file open and download
US11250015B2 (en) 2020-02-07 2022-02-15 Coupang Corp. Systems and methods for low-latency aggregated-data provision
US11461428B2 (en) 2020-06-08 2022-10-04 Dropbox, Inc. Intelligently generating and managing third-party sources within a contextual hub

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040002988A1 (en) * 2002-06-26 2004-01-01 Praveen Seshadri System and method for modeling subscriptions and subscribers as data
US20050102292A1 (en) * 2000-09-28 2005-05-12 Pablo Tamayo Enterprise web mining system and method
TW200522631A (en) * 2003-09-29 2005-07-01 Realm Systems Inc Mobility device platform
TWI240181B (en) * 1999-07-15 2005-09-21 Ibm User control of web browser user data

Family Cites Families (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799268A (en) * 1994-09-28 1998-08-25 Apple Computer, Inc. Method for extracting knowledge from online documentation and creating a glossary, index, help database or the like
US5842203A (en) * 1995-12-01 1998-11-24 International Business Machines Corporation Method and system for performing non-boolean search queries in a graphical user interface
US5913214A (en) * 1996-05-30 1999-06-15 Massachusetts Inst Technology Data extraction from world wide web pages
US5935210A (en) * 1996-11-27 1999-08-10 Microsoft Corporation Mapping the structure of a collection of computer resources
US6125384A (en) * 1996-12-23 2000-09-26 International Business Machines Corporation Computer apparatus and method for communicating between software applications and computers on the world-wide web
US6282548B1 (en) * 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US6298401B1 (en) * 1997-08-11 2001-10-02 Seagate Technology Llc Object oriented storage device having a disc drive controller providing an interface exposing methods which are invoked to access objects stored in a storage media
US6081263A (en) * 1997-10-23 2000-06-27 Sony Corporation System and method of a user configurable display of information resources
US6128624A (en) * 1997-11-12 2000-10-03 Ncr Corporation Collection and integration of internet and electronic commerce data in a database during web browsing
US6151584A (en) * 1997-11-20 2000-11-21 Ncr Corporation Computer architecture and method for validating and collecting and metadata and data about the internet and electronic commerce environments (data discoverer)
US7003528B2 (en) * 1998-02-13 2006-02-21 3565 Acquisition, Llc Method and system for web management
US6237030B1 (en) 1998-06-30 2001-05-22 International Business Machines Corporation Method for extracting hyperlinks from a display document and automatically retrieving and displaying multiple subordinate documents of the display document
JP2000047789A (ja) 1998-07-30 2000-02-18 Canon Inc 画像処理装置および画像処理方法
US6772139B1 (en) * 1998-10-05 2004-08-03 Smith, Iii Julius O. Method and apparatus for facilitating use of hypertext links on the world wide web
US6842782B1 (en) * 1998-12-08 2005-01-11 Yodlee.Com, Inc. Method and apparatus for tracking functional states of a web-site and reporting results to web developers
US6725425B1 (en) 1998-12-08 2004-04-20 Yodlee.Com Method and apparatus for retrieving information from semi-structured, web-based data sources
US6363376B1 (en) * 1999-08-02 2002-03-26 Individual Software, Inc. Method and system for querying and posting to multiple career websites on the internet from a single interface
US6449739B1 (en) * 1999-09-01 2002-09-10 Mercury Interactive Corporation Post-deployment monitoring of server performance
US6370541B1 (en) * 1999-09-21 2002-04-09 International Business Machines Corporation Design and implementation of a client/server framework for federated multi-search and update across heterogeneous datastores
US6546393B1 (en) 1999-10-07 2003-04-08 Clickmarks, Inc. System method and article of manufacture for dynamically user-generated internet search directory based on prioritized server-sided user bookmarks
JP2001184354A (ja) 1999-12-22 2001-07-06 Fujitsu Fip Corp 情報閲覧補助装置並びに情報閲覧補助プログラムを記録した記録媒体
US7082436B1 (en) * 2000-01-05 2006-07-25 Nugenesis Technologies Corporation Storing and retrieving the visual form of data
US20010011275A1 (en) * 2000-01-31 2001-08-02 Benjamin Lin Distributive web page management system
EP1364308A2 (en) * 2000-02-24 2003-11-26 Findbase, L.L.C. Method and system for extracting, analyzing, storing, comparing and reporting on data stored in web and/or other network repositories and apparatus to detect, prevent and obfuscate information removal from information servers
GB0006991D0 (en) 2000-03-22 2000-05-10 Dynamic Internet Limited Search systems
US7003517B1 (en) * 2000-05-24 2006-02-21 Inetprofit, Inc. Web-based system and method for archiving and searching participant-based internet text sources for customer lead data
US7076521B2 (en) 2000-06-26 2006-07-11 Vertical Computer Systems, Inc. Web-based collaborative data collection system
US6785666B1 (en) * 2000-07-11 2004-08-31 Revenue Science, Inc. Method and system for parsing navigation information
US6591266B1 (en) * 2000-07-14 2003-07-08 Nec Corporation System and method for intelligent caching and refresh of dynamically generated and static web content
US6948134B2 (en) * 2000-07-21 2005-09-20 Microsoft Corporation Integrated method for creating a refreshable Web Query
WO2002014991A2 (en) * 2000-08-11 2002-02-21 Incanta, Inc. Resource distribution in network environment
GB0023570D0 (en) * 2000-09-26 2000-11-08 Volantis Systems Ltd Web server
US7324965B2 (en) 2000-10-27 2008-01-29 Microsoft Corporation Wish list
US7188081B1 (en) 2000-10-30 2007-03-06 Microsoft Corporation Electronic shopping basket
US7669051B2 (en) * 2000-11-13 2010-02-23 DigitalDoors, Inc. Data security system and method with multiple independent levels of security
US7133908B1 (en) * 2000-11-24 2006-11-07 Xerox Corporation Metrics and status presentation system and method using persistent template-driven web objects
US6944830B2 (en) * 2000-12-21 2005-09-13 Xerox Corporation System and method for browsing hierarchically based node-link structures based on an estimated degree of interest
US7017123B2 (en) * 2000-12-27 2006-03-21 National Instruments Corporation Graphical user interface including palette windows with an improved search function
US7089237B2 (en) 2001-01-26 2006-08-08 Google, Inc. Interface and system for providing persistent contextual relevance for commerce activities in a networked environment
US6768994B1 (en) * 2001-02-23 2004-07-27 Trimble Navigation Limited Web based data mining and location data reporting and system
US20040205076A1 (en) * 2001-03-06 2004-10-14 International Business Machines Corporation System and method to automate the management of hypertext link information in a Web site
JP2002297486A (ja) * 2001-03-29 2002-10-11 Sanyo Electric Co Ltd 情報提供サーバおよび情報提供方法
US6980984B1 (en) * 2001-05-16 2005-12-27 Kanisa, Inc. Content provider systems and methods using structured data
US20020184095A1 (en) * 2001-06-05 2002-12-05 Certra, Inc. Automatic building and categorization of favorites in an internet browser
CA2353682A1 (en) * 2001-07-23 2003-01-23 Ibm Canada Limited-Ibm Canada Limitee Link management of document structures
US6990494B2 (en) * 2001-07-27 2006-01-24 International Business Machines Corporation Identifying links of interest in a web page
JP2003058576A (ja) 2001-08-17 2003-02-28 Hitachi Software Eng Co Ltd Webページの表示制御方法およびプログラム
US20030040921A1 (en) * 2001-08-22 2003-02-27 Hughes Larry James Method and system of online data collection
US7330872B2 (en) * 2001-10-02 2008-02-12 Citrix Systems, Inc. Method for distributed program execution with web-based file-type association
WO2004002044A2 (en) * 2002-02-01 2003-12-31 John Fairweather A system for exchanging binary data
US6873984B1 (en) * 2002-02-20 2005-03-29 Oracle International Corporation Data mining recommendation web beans and JSP tag libraries
US6993534B2 (en) 2002-05-08 2006-01-31 International Business Machines Corporation Data store for knowledge-based data mining system
US7010526B2 (en) * 2002-05-08 2006-03-07 International Business Machines Corporation Knowledge-based data mining system
US20060190561A1 (en) * 2002-06-19 2006-08-24 Watchfire Corporation Method and system for obtaining script related information for website crawling
US20040205514A1 (en) 2002-06-28 2004-10-14 Microsoft Corporation Hyperlink preview utility and method
JP2004038572A (ja) 2002-07-03 2004-02-05 Fujitsu Ltd 情報閲覧表示プログラム、方法、および装置
JP3944014B2 (ja) * 2002-07-09 2007-07-11 株式会社東芝 文書編集方法、文書編集システム及び文書処理プログラム
US7020667B2 (en) * 2002-07-18 2006-03-28 International Business Machines Corporation System and method for data retrieval and collection in a structured format
US6945458B1 (en) * 2002-07-29 2005-09-20 Bowe Bell + Howell Postage Systems Company Data collection and maintenance database method and apparatus
US7467391B2 (en) * 2002-10-30 2008-12-16 International Business Machines Corporation Allowing client applications to programmatically access web sites
US20060041830A1 (en) 2002-12-31 2006-02-23 Christopher Bohn Method and apparatus for organizing internet information for dissemination to others, collaboration on that information with others, enabling self-publishing of online content and associating it with digital media, enabling contextual search results triggered by playing of digital media
US20040162895A1 (en) * 2003-02-19 2004-08-19 B2B Booster, Inc. Web site management with electronic storefront and page categorization
US7146356B2 (en) 2003-03-21 2006-12-05 International Business Machines Corporation Real-time aggregation of unstructured data into structured data for SQL processing by a relational database engine
US7325202B2 (en) * 2003-03-31 2008-01-29 Sun Microsystems, Inc. Method and system for selectively retrieving updated information from one or more websites
ATE354134T1 (de) 2003-08-28 2007-03-15 Accenture Global Services Gmbh Erfassung, zusammenstellung und/oder visualisierung von strukturellen merkmalen von architekturen
JP2005107699A (ja) * 2003-09-29 2005-04-21 Hitachi Software Eng Co Ltd スクリプトを含むWebコンテンツのWebサービスへの変換方法及びシステム
US7457872B2 (en) * 2003-10-15 2008-11-25 Microsoft Corporation On-line service/application monitoring and reporting system
US7080104B2 (en) * 2003-11-07 2006-07-18 Plaxo, Inc. Synchronization and merge engines
JP2005173823A (ja) 2003-12-09 2005-06-30 Canon Inc Webアプリケーション及びそのデータ共有方法、並びにプログラム
US7640322B2 (en) * 2004-02-26 2009-12-29 Truefire, Inc. Systems and methods for producing, managing, delivering, retrieving, and/or tracking permission based communications
US20050216528A1 (en) * 2004-03-12 2005-09-29 Onfolio, Inc. Sharing collection-file contents
US20050216825A1 (en) * 2004-03-12 2005-09-29 Onfolio, Inc. Local storage of script-containing content
US20050216886A1 (en) * 2004-03-12 2005-09-29 Onfolio, Inc. Editing multi-layer documents
WO2005091175A1 (en) 2004-03-15 2005-09-29 Yahoo! Inc. Search systems and methods with integration of user annotations
US7685273B1 (en) * 2004-03-31 2010-03-23 Compuware Corporation Methods and apparatus for collecting and displaying performance metrics from a web site
US7249135B2 (en) * 2004-05-14 2007-07-24 Microsoft Corporation Method and system for schema matching of web databases
JP2005332163A (ja) * 2004-05-19 2005-12-02 Oki Electric Ind Co Ltd 情報更新検知システム
JP2006031666A (ja) 2004-06-17 2006-02-02 Epson Avasys Corp 電子文書閲覧システム
US7865511B2 (en) * 2004-06-25 2011-01-04 Apple Inc. News feed browser
US20060155764A1 (en) 2004-08-27 2006-07-13 Peng Tao Personal online information management system
US7493301B2 (en) 2004-09-10 2009-02-17 Suggestica, Inc. Creating and sharing collections of links for conducting a search directed by a hierarchy-free set of topics, and a user interface therefor
US7321889B2 (en) * 2004-09-10 2008-01-22 Suggestica, Inc. Authoring and managing personalized searchable link collections
US20070100834A1 (en) * 2004-09-15 2007-05-03 John Landry System and method for managing data in a distributed computer system
US20060085492A1 (en) * 2004-10-14 2006-04-20 Singh Arun K System and method for modifying process navigation
US20060095345A1 (en) * 2004-10-28 2006-05-04 Microsoft Corporation System and method for an online catalog system having integrated search and browse capability
US20060143568A1 (en) * 2004-11-10 2006-06-29 Scott Milener Method and apparatus for enhanced browsing
US7725449B2 (en) 2004-12-02 2010-05-25 Microsoft Corporation System and method for customization of search results
US7640488B2 (en) * 2004-12-04 2009-12-29 International Business Machines Corporation System, method, and service for using a focused random walk to produce samples on a topic from a collection of hyper-linked pages
US20060179418A1 (en) * 2005-02-08 2006-08-10 Pasadero, Inc. Research protocol toolkit
US7702675B1 (en) * 2005-08-03 2010-04-20 Aol Inc. Automated categorization of RSS feeds using standardized directory structures
US20070050703A1 (en) * 2005-08-26 2007-03-01 Pierre Lebel Methods, systems and computer program products for analyzing a hypertext markup language (HTML) document
US20070174324A1 (en) * 2006-01-12 2007-07-26 Palapudi Sriram M Mechanism to trap obsolete web page references and auto-correct invalid web page references
US8214360B2 (en) * 2006-04-06 2012-07-03 International Business Machines Corporation Browser context based search disambiguation using existing category taxonomy
US20070250514A1 (en) * 2006-04-25 2007-10-25 Saeed Rajput Browsing and monitoring the web through learning and ingemination
US20080104034A1 (en) * 2006-05-26 2008-05-01 Stewart Jeffrey A Method For Scoring Changes to a Webpage
US7917507B2 (en) 2007-02-12 2011-03-29 Microsoft Corporation Web data usage platform
US8429185B2 (en) 2007-02-12 2013-04-23 Microsoft Corporation Using structured data for online research

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI240181B (en) * 1999-07-15 2005-09-21 Ibm User control of web browser user data
US20050102292A1 (en) * 2000-09-28 2005-05-12 Pablo Tamayo Enterprise web mining system and method
US20040002988A1 (en) * 2002-06-26 2004-01-01 Praveen Seshadri System and method for modeling subscriptions and subscribers as data
TW200522631A (en) * 2003-09-29 2005-07-01 Realm Systems Inc Mobility device platform

Also Published As

Publication number Publication date
WO2008100881A1 (en) 2008-08-21
US20080195628A1 (en) 2008-08-14
EP2122561A4 (en) 2010-01-27
EP2122561A1 (en) 2009-11-25
AU2008216396A1 (en) 2008-08-21
EP2122561B1 (en) 2017-05-03
TW200846952A (en) 2008-12-01
US7917507B2 (en) 2011-03-29
AU2008216396B2 (en) 2012-01-19
CN101611422B (zh) 2013-03-13
CL2008000425A1 (es) 2008-11-07
JP5075920B2 (ja) 2012-11-21
US20110173636A1 (en) 2011-07-14
JP2010521721A (ja) 2010-06-24
US8595259B2 (en) 2013-11-26
CN101611422A (zh) 2009-12-23

Similar Documents

Publication Publication Date Title
TWI450107B (zh) 用於網路資料使用平臺之方法及電腦可讀儲存媒體
RU2464639C2 (ru) Управление ссылками на web-страницы, использующие структурированные данные
US7519573B2 (en) System and method for clipping, repurposing, and augmenting document content
US20140282371A1 (en) Systems and methods for creating or updating an application using a pre-existing application
US7406664B1 (en) System for integrating HTML Web site views into application file dialogs
JP2009301532A (ja) データを取り込み、整理し、共有するためのシステムおよび方法
JP2012128878A (ja) コンピュータプラットフォームのプログラミングインターフェース
US8706778B2 (en) Methods and systems for an action-based interface for files and other assets
US20030177202A1 (en) Method and apparatus for executing an instruction in a web page
AU2011305936B2 (en) Web page behavior enhancement controls
US20080168087A1 (en) System and Method for Managing Location-Independent Objects
US20120159376A1 (en) Editing data records associated with static images
US20070055928A1 (en) User workflow lists to organize multimedia files
JP3990579B2 (ja) アイコン利用方法及びアイコン利用装置
JP4024835B2 (ja) アイコン管理方法、アイコン利用方法及びアイコン利用プログラム
JP2024022404A (ja) ファイル関連情報の管理方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees