專利名稱:數(shù)據(jù)管理方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)是序列號(hào)為10/877584的美國專利申請(qǐng)的共同未決申請(qǐng),上述美國專利申請(qǐng)是2004年6月25日提出的。本申請(qǐng)也要求臨時(shí)專利申請(qǐng)?zhí)枮?0/643087的未決美國專利申請(qǐng)的優(yōu)先權(quán),上述專利申請(qǐng)是2005年1月7日提出的,該臨時(shí)申請(qǐng)?jiān)诖颂幈蝗拷Y(jié)合加以參考;該申請(qǐng)根據(jù)35U.S.C.§119(e)要求臨時(shí)申請(qǐng)日的利益。此處,本申請(qǐng)根據(jù)35U.S.C.§120要求較早申請(qǐng)日的利益。
背景技術(shù):
現(xiàn)代數(shù)據(jù)處理系統(tǒng),例如通用計(jì)算機(jī)系統(tǒng),允許該系統(tǒng)的用戶產(chǎn)生大量不同類型的數(shù)據(jù)文件。舉例而言,數(shù)據(jù)處理系統(tǒng)的典型用戶可以使用文字處理程序生成文本文件,可以使用圖像處理程序生成圖像文件,該文字處理程序例如微軟公司的Word,該圖像處理程序例如Adobe公司的Photoshop。大量其他類型的文件能夠被典型數(shù)據(jù)處理系統(tǒng)的一個(gè)或者多個(gè)用戶所生成或者改變、編輯以及使用。生成的或者被改變的大量不同類型的文件給尋找生成的特定文件的典型用戶提出挑戰(zhàn)。
現(xiàn)代數(shù)據(jù)處理系統(tǒng)通常包括文件管理系統(tǒng),該文件管理系統(tǒng)允許用戶將文件放在目錄或者子目錄(例如文件夾)中并且允許用戶對(duì)文件命名。另外,該文件管理系統(tǒng)通常允許用戶以搜索文件名、或者生成日期、或者修改日期、或者文件類型的方式查找文件。該文件管理系統(tǒng)的一個(gè)示例是Macintosh計(jì)算機(jī)上使用的Finder程序,其由加利福尼亞州庫珀蒂諾的蘋果計(jì)算機(jī)公司制造。文件管理系統(tǒng)的另一個(gè)示例是在Windows操作系統(tǒng)上使用的Windows Explorer程序,其由華盛頓州雷蒙德的微軟公司制造。Finder程序和Windows Explorer程序都包括查找命令,該查找命令允許用戶以多種標(biāo)準(zhǔn)查找文件,這些標(biāo)準(zhǔn)包括文件名或者生成日期或者修改日期或者文件類型。然而,不論文件的類型如何,該查詢能力在每一文件相同的信息中搜索。如此,舉例而言,Microsoft Word文件的搜索數(shù)據(jù)和Adobe Photoshop文件的搜索數(shù)據(jù)相同,并且典型地,該數(shù)據(jù)包括文件名、文件類型、生成日期、最后修改日期、文件大小和其他特定參數(shù),這些參數(shù)可以由文件管理系統(tǒng)維護(hù)。
現(xiàn)有的特定應(yīng)用程序允許用戶維持有關(guān)特定文件的數(shù)據(jù)。該有關(guān)特定文件的數(shù)據(jù)可以被認(rèn)為是元數(shù)據(jù),因?yàn)樵摂?shù)據(jù)是有關(guān)其他數(shù)據(jù)的數(shù)據(jù)。特定文件的元數(shù)據(jù)包括有關(guān)文件作者、文檔綜述和多種其他類型的信息的信息。當(dāng)用戶生成文件和用戶添加附加數(shù)據(jù)或者通過在MicrosoftWord的菜單選擇器中選擇“屬性表”編輯數(shù)據(jù)的時(shí)候,例如MicrosoftWord的程序可以自動(dòng)生成一些該數(shù)據(jù)。Microsoft Word的屬性表允許用戶生成特定文件或者文檔的元數(shù)據(jù)。然而,在現(xiàn)有系統(tǒng)中,用戶不能使用來自用戶的一條搜索請(qǐng)求在大量不同應(yīng)用中搜索元數(shù)據(jù)。另外,現(xiàn)有系統(tǒng)能夠執(zhí)行數(shù)據(jù)文件的搜索,但是該搜索也不包括在該文件中搜索元數(shù)據(jù)。
在先的現(xiàn)有系統(tǒng)或者基于用戶請(qǐng)求或者基于預(yù)定時(shí)間執(zhí)行用戶文件的全文索引。
發(fā)明內(nèi)容
此處描述在數(shù)據(jù)處理系統(tǒng)和數(shù)據(jù)管理系統(tǒng)中管理數(shù)據(jù)的方法。
根據(jù)此處描述的本發(fā)明的一個(gè)方面,示例性方法包括通過索引軟件組件接收數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被修改或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建的通知,并且響應(yīng)該通知,在現(xiàn)有文件或者新文件上執(zhí)行索引操作。優(yōu)選地,通知包括標(biāo)識(shí)現(xiàn)有文件(或者新文件)的標(biāo)識(shí)符。在另一個(gè)實(shí)施例中,通知并不僅僅基于時(shí)間或者用戶輸入。響應(yīng)探測用戶行為,索引操作可以被延遲或者被拖延或者具有降低的處理優(yōu)先權(quán)。該通知可以被輸入到索引操作的隊(duì)列中并且該隊(duì)列可以保存在非易失存儲(chǔ)器上。隊(duì)列的改變會(huì)寫入通知的交易日志中。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括確定文件要被索引到索引數(shù)據(jù)庫中還是要將元數(shù)據(jù)加入到元數(shù)據(jù)庫中,將代表文件的條目添加到索引操作(或者元數(shù)據(jù)操作)列表中,以及將列表保存在非易失存儲(chǔ)器上。該方法可以還包括在索引文件之后(或者在元數(shù)據(jù)操作之后)將條目從列表移除以生成更新列表,和將更新列表保存在非易失存儲(chǔ)器上。該方法還包括將變化輸入到交易日志的列表中。該通知可以來自操作系統(tǒng)組件,該組件提供通知以響應(yīng)在存儲(chǔ)裝置相對(duì)于文件存儲(chǔ)數(shù)據(jù),該存儲(chǔ)裝置例如非易失存儲(chǔ)器。
根據(jù)本發(fā)明的另一個(gè)方面,一種示例性方法包括監(jiān)測用戶對(duì)于數(shù)據(jù)處理系統(tǒng)的使用并且響應(yīng)監(jiān)測自動(dòng)調(diào)整索引操作和元數(shù)據(jù)處理操作。該索引操作是包括索引文件以生成添加到索引數(shù)據(jù)庫的入口的典型操作,并且典型地,元數(shù)據(jù)操作涉及針對(duì)文件將元數(shù)據(jù)添加到元數(shù)據(jù)庫。索引操作或者元數(shù)據(jù)操作可以被數(shù)據(jù)處理系統(tǒng)自動(dòng)執(zhí)行以響應(yīng)通知,該通知可以是從操作系統(tǒng)組件傳送到索引軟件組件或者元數(shù)據(jù)軟件組件。典型地,在用戶對(duì)于數(shù)據(jù)處理系統(tǒng)的使用增長的時(shí)間,較少的索引操作得以執(zhí)行。索引操作(或者元數(shù)據(jù)操作)的自動(dòng)調(diào)整涉及改變索引軟件(或者元數(shù)據(jù)軟件)相對(duì)于數(shù)據(jù)處理系統(tǒng)執(zhí)行的其他軟件的處理優(yōu)先權(quán)(例如Unix中的“Nice”命令)。索引操作的優(yōu)先權(quán)可以改變或者輸入/輸出(I/O)操作的優(yōu)先權(quán)可以改變或者兩種操作的優(yōu)先權(quán)都可以改變。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括確定索引數(shù)據(jù)庫最后更新的時(shí)間,其中索引數(shù)據(jù)庫包含來自存儲(chǔ)在存儲(chǔ)裝置上的文件的內(nèi)容,和確定存儲(chǔ)在存儲(chǔ)裝置上的文件在索引數(shù)據(jù)庫最后更新的時(shí)間之后是否被修改或者創(chuàng)建,和更新在索引數(shù)據(jù)庫最后更新的時(shí)間之后被修改或者創(chuàng)建的文件的索引數(shù)據(jù)庫。該更新可以自動(dòng)發(fā)生無需用戶介入。類似的方法可以被執(zhí)行以確定是否要更新元數(shù)據(jù)庫。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括裝配存儲(chǔ)裝置并且自動(dòng)響應(yīng)裝配,確定在存儲(chǔ)裝置上是否索引一個(gè)或者多個(gè)文件。確定是否索引一個(gè)或者多個(gè)文件包括將索引數(shù)據(jù)庫的最后使用時(shí)間或者最后關(guān)閉時(shí)間與卸載時(shí)間或者存儲(chǔ)裝置的最后寫入時(shí)間相比較,并且也可以包括在卸載時(shí)間之后將索引數(shù)據(jù)庫的最早使用時(shí)間或者最后打開時(shí)間與存儲(chǔ)裝置的裝配時(shí)間或者最早寫入時(shí)間相比較。典型地,索引數(shù)據(jù)庫存儲(chǔ)在裝配的存儲(chǔ)裝置上。類似方法可以被執(zhí)行以確定是否自動(dòng)響應(yīng)存儲(chǔ)裝置的裝配更新元數(shù)據(jù)庫。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,示例性方法包括裝配存儲(chǔ)裝置和在裝配之后評(píng)價(jià)是否在存儲(chǔ)裝置上自動(dòng)索引一個(gè)或者多個(gè)文件,該評(píng)價(jià)通過評(píng)價(jià)自從存儲(chǔ)裝置上的文件的索引數(shù)據(jù)庫上次被關(guān)閉或者寫入之后,存儲(chǔ)裝置上的文件是否被修改或者新文件是否被添加來實(shí)現(xiàn)。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括裝配存儲(chǔ)裝置和自動(dòng)響應(yīng)該裝配,無需檢查在索引數(shù)據(jù)庫中索引的每一文件的記錄,確定是否索引存儲(chǔ)裝置上的一個(gè)或者多個(gè)文件。
前述示例性方法也可以被執(zhí)行以確定來自新文件或者修改的文件的元數(shù)據(jù)是否需要自動(dòng)添加(例如引入)到元數(shù)據(jù)庫中。舉例而言,根據(jù)本發(fā)明的該方面的一個(gè)示例性方法包括裝配存儲(chǔ)裝置和自動(dòng)響應(yīng)裝配確定是否從存儲(chǔ)裝置上的一個(gè)或者多個(gè)文件引入元數(shù)據(jù)。
處理數(shù)據(jù)的另一個(gè)示例性方法包括確定來自文件的元數(shù)據(jù)被引入還是被添加到元數(shù)據(jù)庫;將代表文件的條目添加到引入或者添加元數(shù)據(jù)的列表中,該引入或者添加元數(shù)據(jù)是從文件引入或者添加到元數(shù)據(jù)庫;和將列表保存到非易失存儲(chǔ)器上。列表的變化可以輸入到交易日志中,并且在將文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫之后,列表的條目可以從列表中移除。
本發(fā)明將以示例的方式加以闡明,并且不局限于附圖中的特征,在附圖中相同的標(biāo)號(hào)表示同一元件。
圖1是數(shù)據(jù)處理系統(tǒng)的示例性實(shí)施例,其可以是通用計(jì)算機(jī)系統(tǒng)并且其可以根據(jù)此處描述的各種方法中任一方法運(yùn)行。
圖2顯示了根據(jù)本發(fā)明一個(gè)方面的示例性方法的總體示例。
圖3A顯示了特定類型文件的特定類型元數(shù)據(jù)的內(nèi)容的示例。
圖3B顯示了另一特定類型文件的特定類型元數(shù)據(jù)的內(nèi)容的另一示例。
圖4顯示了根據(jù)本發(fā)明一個(gè)示例性實(shí)施例的元數(shù)據(jù)管理的架構(gòu)的示例。
圖5是顯示本發(fā)明另一示例性方法的流程圖。
圖6是顯示了根據(jù)本發(fā)明示例性實(shí)施例,使用元數(shù)據(jù)的展開文件格式的存儲(chǔ)格式示例。
圖7A-7E顯示了示例性實(shí)施例提供的圖形用戶界面的次序,該圖形用戶界面用于實(shí)現(xiàn)數(shù)據(jù)處理系統(tǒng)中的元數(shù)據(jù)和/或其他數(shù)據(jù)的搜索。
圖8A和8B顯示了根據(jù)本發(fā)明示例性實(shí)施例,顯示搜索結(jié)果的兩個(gè)格式示例。
圖9顯示了本發(fā)明用戶接口的另一個(gè)示例。
圖10顯示了本發(fā)明用戶接口的另一個(gè)示例。
圖11A-11D依次顯示了本發(fā)明中的另一示例性用戶接口。
圖12A-12D顯示了本發(fā)明中的用戶接口的替代性實(shí)施例。
圖13A和13B進(jìn)一步顯示了本發(fā)明中的用戶接口的替代性實(shí)施例。
圖14A、14B、14C和14D進(jìn)一步顯示了本發(fā)明中的用戶接口的替代性實(shí)施例。
圖15A、15B、15C和15D顯示了本發(fā)明中的用戶接口的另一替代性實(shí)施例。
圖16A和16B顯示了本發(fā)明中的用戶接口的實(shí)施例的特定方面。
圖17顯示了本發(fā)明中的用戶接口的特定實(shí)施例的一個(gè)方面。
圖18A和18B顯示了本發(fā)明中的用戶接口的特定實(shí)施例的另一個(gè)方面。
圖19A、19B、19C、19D和19E進(jìn)一步顯示了本發(fā)明中的用戶接口的示例性實(shí)施例。
圖20是闡明本發(fā)明另一示例性方法的流程圖。
圖21是顯示本發(fā)明另一示例性方法的流程圖。
圖22A、22B、22C和22D闡明顯示裝置的顯示,在該顯示裝置上,圖21所示的方法的一個(gè)實(shí)施例被執(zhí)行。
圖23是流程圖,該流程圖闡明了本發(fā)明示例性實(shí)施例中的方法的結(jié)合。
圖24是流程圖,該流程圖闡明了作為索引過程一部分的文件過濾的示例性方法。
圖25是闡明文件過濾的示例性方法的流程圖。
圖26是流程圖,該流程圖闡明了過濾文件以確定文件元數(shù)據(jù)是否要添加到元數(shù)據(jù)庫的示例性方法。
圖27是流程圖,該流程圖闡明了在索引文件內(nèi)容的過程中的另一個(gè)示例性方法;尤其是在附圖27的方法中,索引的優(yōu)先權(quán)基于多個(gè)文件的位置確定,從而與用戶最為相關(guān)的文件和表現(xiàn)為與用戶最為相關(guān)的文件首先被索引或者相對(duì)于其他文件具有較高的優(yōu)先權(quán)。
圖28是流程圖,該流程圖闡明了本發(fā)明的另一個(gè)示例性方法,在該方法中更新元數(shù)據(jù)庫的通知可以被結(jié)合。
圖29是流程圖,該流程圖闡明了本發(fā)明的另一個(gè)示例性方法,在該方法中通知被結(jié)合。
圖30代表另一個(gè)示例性方法,在該方法中通知被結(jié)合以將通知的第一數(shù)量降低到較小的通知數(shù)量。
具體實(shí)施例方式
本發(fā)明將參考下述大量細(xì)節(jié)進(jìn)行描述,并且附圖會(huì)闡明本發(fā)明。下述描述和附圖是本發(fā)明的闡釋,并且不能被解釋為本發(fā)明的限制。大量具體細(xì)節(jié)被加以描述從而提供本發(fā)明完整的理解。然而,在特定情況下,公知的或者傳統(tǒng)的細(xì)節(jié)沒有被加以描述以便于不會(huì)對(duì)本發(fā)明在細(xì)節(jié)上造成不必要的模糊。
該描述包括受到版權(quán)保護(hù)的材料,例如圖形用戶接口圖像的闡釋。此處,版權(quán)的權(quán)利人對(duì)這些材料保留權(quán)利,包括版權(quán),該權(quán)利人包括本發(fā)明的代理人。因?yàn)閷@臋n或者專利公開內(nèi)容顯示在專利商標(biāo)局的文件或者記錄中,所以版權(quán)權(quán)利人不反對(duì)任何人對(duì)于專利文檔或者專利公開內(nèi)容的復(fù)制再現(xiàn),但是其他無論什么都保留所有版權(quán)。蘋果公司版權(quán)所有,2004。
附圖1顯示了可以由本發(fā)明使用的典型計(jì)算機(jī)系統(tǒng)的示例。請(qǐng)注意附圖1闡釋了計(jì)算機(jī)系統(tǒng)的多個(gè)組件,并不意味著代表組件連接的任何特定架構(gòu)和方式,因?yàn)樵摷?xì)節(jié)與本發(fā)明沒有密切聯(lián)系。還應(yīng)當(dāng)知道具有較少組件或者可能具有較多組件的網(wǎng)絡(luò)計(jì)算機(jī)和其他數(shù)據(jù)處理系統(tǒng)也可以用于本發(fā)明。舉例而言,附圖1中所示的計(jì)算機(jī)系統(tǒng)可以是由蘋果計(jì)算機(jī)公司制造的Macintosh計(jì)算機(jī)。
如附圖1所示,計(jì)算機(jī)系統(tǒng)101是數(shù)據(jù)處理系統(tǒng)的一種形式,其包括總線102,總線與微處理器103和ROM(只讀存儲(chǔ)器)107和易失性RAM105和非易失性存儲(chǔ)器106。微處理器103可以是摩托羅拉公司制造的G3或者G4微處理器,或者是一個(gè)或者多個(gè)IBM制造的G5微處理器。總線102將多個(gè)組件連接在一起,并且也將組件103、107、105和106連接到顯示控制器和顯示裝置104以及例如輸入/輸出(I/O)裝置的外圍裝置上,該輸入/輸出(I/O)裝置可以是鼠標(biāo)、鍵盤、調(diào)制解調(diào)器、網(wǎng)絡(luò)接口、打印機(jī)以及本領(lǐng)域公知的其他裝置。典型地,輸入/輸出裝置109通過輸入/輸出控制器108與系統(tǒng)相連。典型地,易失性RAM(隨機(jī)訪問存儲(chǔ)器)105由動(dòng)態(tài)RAM(DRAM)實(shí)現(xiàn),動(dòng)態(tài)RAM需要持續(xù)供電以更新或者維持存儲(chǔ)器中的數(shù)據(jù)。典型地,海量存儲(chǔ)器106也可以是磁性硬盤驅(qū)動(dòng)器或者磁性光學(xué)驅(qū)動(dòng)器或者光驅(qū)動(dòng)器或者DVD RAM或者存儲(chǔ)器系統(tǒng)的其他類型,該系統(tǒng)甚至在系統(tǒng)切斷電源之后還保持?jǐn)?shù)據(jù)(例如大量數(shù)據(jù))。典型地,盡管不必要,海量存儲(chǔ)器106也可以是隨機(jī)訪問存儲(chǔ)器。盡管附圖1顯示海量存儲(chǔ)器106是與數(shù)據(jù)處理系統(tǒng)的其他組件直接連接的本地設(shè)備,應(yīng)當(dāng)知道本發(fā)明可以使用與系統(tǒng)距離較遠(yuǎn)的非易失性存儲(chǔ)器,例如與數(shù)據(jù)處理系統(tǒng)通過網(wǎng)絡(luò)接口相連的網(wǎng)絡(luò)存儲(chǔ)裝置,該網(wǎng)絡(luò)接口例如調(diào)制解調(diào)器或者以太網(wǎng)接口。總線102可以包括通過多個(gè)本領(lǐng)域公知的橋連接器、控制器和/或適配器,相互連接的一條或者多條總線。在實(shí)施例中I/O控制器108包括用于控制USB外圍設(shè)備的USB(通用串行總線)適配器和用于IEEE1394外圍設(shè)備的IEEE1394控制器。
從該描述可以明顯地得知,本發(fā)明的一些方面可以由軟件實(shí)現(xiàn),至少部分可以由軟件實(shí)現(xiàn)。也就是說,該技術(shù)可以在計(jì)算機(jī)系統(tǒng)或者其他數(shù)據(jù)處理系統(tǒng)中實(shí)現(xiàn),以響應(yīng)例如微處理器的處理器,該技術(shù)執(zhí)行包含在存儲(chǔ)器中的指令序列,該存儲(chǔ)器例如ROM107、RAM105、海量存儲(chǔ)器106或者遠(yuǎn)程存儲(chǔ)裝置。在多個(gè)實(shí)施例中,硬連線電路可以與軟件指令結(jié)合應(yīng)用,以實(shí)現(xiàn)本發(fā)明。如此,該技術(shù)并不局限于硬件電路和軟件的任何特定結(jié)合,也不局限于數(shù)據(jù)處理系統(tǒng)執(zhí)行的任何特定指令源。另外,貫穿該描述,各種功能和操作被描述為由軟件代碼執(zhí)行或者由軟件代碼引發(fā)以簡化該描述。然而,本領(lǐng)域技術(shù)人員可以意識(shí)到該表達(dá)意味著該功能由例如微處理器103的處理器執(zhí)行代碼實(shí)現(xiàn)。
在多個(gè)應(yīng)用程序中元數(shù)據(jù)的獲取和應(yīng)用附圖2顯示了本發(fā)明一個(gè)實(shí)施例的一般示例。在該示例中,捕獲的元數(shù)據(jù)對(duì)于搜索設(shè)備而言是有用的,例如,該搜索設(shè)備是操作系統(tǒng)的組件,其允許在所有捕捉到元數(shù)據(jù)的應(yīng)用程序中同時(shí)搜索所有元數(shù)據(jù)(以及可選擇地,在數(shù)據(jù)文件中的所有非元數(shù)據(jù)中搜索)。附圖2中的方法可以開始于操作201,在該操作中從大量不同應(yīng)用程序中捕捉到元數(shù)據(jù)。捕捉到的元數(shù)據(jù)接著在操作203中由搜索設(shè)備使用,該搜索設(shè)備例如用于搜索的文件管理系統(tǒng)軟件。在步驟205中,該搜索設(shè)備允許元數(shù)據(jù)的搜索在具有捕捉到的元數(shù)據(jù)的所有應(yīng)用程序中進(jìn)行。在步驟207中,該方法也提供搜索引擎的用戶接口和由搜索引擎得到的搜索結(jié)果。存在大量可能的附圖2中的方法的實(shí)現(xiàn)方式。舉例而言,附圖5顯示了附圖2的方法的一個(gè)示例性實(shí)施例的具體實(shí)現(xiàn)??商娲膶?shí)現(xiàn)方式也可以被使用。舉例而言,在可替代的實(shí)現(xiàn)方式中,元數(shù)據(jù)由每一應(yīng)用程序提供到中心源中,該中心源存儲(chǔ)搜索設(shè)備使用的元數(shù)據(jù),并且該中心源由操作系統(tǒng)組件管理,該操作系統(tǒng)組件可能是元數(shù)據(jù)處理軟件。操作207中提供的用戶接口可以有多種不同格式,包括下述一些示例以及傳統(tǒng)的現(xiàn)有的用戶接口。元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫中,該數(shù)據(jù)庫可以是多種格式中的任一種格式,該格式包括B樹格式,或者如下所述,根據(jù)本發(fā)明一個(gè)實(shí)施例的展開文件格式。
附圖2中的方法可以由不存儲(chǔ)或者提供元數(shù)據(jù)的程序?qū)崿F(xiàn)。在這種情況下,操作系統(tǒng)的一部分實(shí)現(xiàn)從大量不同程序中捕捉元數(shù)據(jù)的功能,盡管該程序沒有被設(shè)計(jì)以提供或者捕捉元數(shù)據(jù)。對(duì)于允許用戶針對(duì)特定文檔生成元數(shù)據(jù)的程序而言,本發(fā)明的特定實(shí)施例可以允許將捕捉到的元數(shù)據(jù)輸出回應(yīng)用程序的數(shù)據(jù)文件,該應(yīng)用程序維護(hù)有關(guān)數(shù)據(jù)文件的元數(shù)據(jù)。
附圖2中的方法允許有關(guān)多種不同應(yīng)用程序產(chǎn)生的多種不同文件的信息可由系統(tǒng)級(jí)搜索設(shè)備存取,該存取與現(xiàn)有技術(shù)中的Finder或者Windows Explorer的版本在大量不同應(yīng)用程序中搜索文件名、生成日期等的方式相似。如此,用于由多個(gè)不同應(yīng)用程序產(chǎn)生的多個(gè)不同文件的元數(shù)據(jù)可以由操作系統(tǒng)的擴(kuò)展存取,并且該擴(kuò)展的示例作為元數(shù)據(jù)處理軟件顯示在附圖4中,該元數(shù)據(jù)處理軟件與系統(tǒng)其他部件相互作用,并且在下面將詳細(xì)描述。
附圖3A和3B顯示兩種不同數(shù)據(jù)文件類型下的兩種不同元數(shù)據(jù)格式。請(qǐng)注意可以在所有的字段上沒有重疊;換句話說,一種類型的元數(shù)據(jù)的字段和另一種類型的元數(shù)據(jù)的字段完全不同。元數(shù)據(jù)格式301可以用于例如JPEG圖像文件的圖像文件。該元數(shù)據(jù)可以包括一些信息,該信息例如圖像寬度、圖像長度、圖像色彩空間、每象素的位數(shù)、ISO設(shè)置、閃光燈設(shè)置、照相機(jī)的F/光圈(F/stop)、拍照的照相機(jī)的商標(biāo)、用戶添加鍵盤和其他字段,其他字段例如可以唯一識(shí)別特定文件的字段,該識(shí)別在文件的修改中是永久性的。附圖3B所示的元數(shù)據(jù)格式331可以用于例如MP3音樂文件的音樂文件。該元數(shù)據(jù)格式中的數(shù)據(jù)可以包括音樂家標(biāo)識(shí)、音樂風(fēng)格、唱片名、唱片中的歌曲名或者特定文件的歌曲名、歌曲播放時(shí)間或者特定歌曲的歌曲播放時(shí)間以及其它字段,其他字段例如標(biāo)識(shí)特定MP3文件的永久性文件ID,在該特定MP3文件中元數(shù)據(jù)被捕捉到。其它字段類型也可以被使用。下述圖表顯示了多個(gè)字段的示例,該字段可以被用于各種類型文件的元數(shù)據(jù)中。
在各種元數(shù)據(jù)類型中都有用的一個(gè)特定字段可以是包括插入標(biāo)識(shí)符或者可以用于從數(shù)據(jù)文件捕獲元數(shù)據(jù)和/或?qū)⒃獢?shù)據(jù)輸出回生成應(yīng)用的其他軟件元素。
各種不同軟件架構(gòu)可以用于實(shí)現(xiàn)此處描述的功能和操作。下面的討論提供該架構(gòu)的一個(gè)示例,但是應(yīng)當(dāng)知道替代性的架構(gòu)也可以被使用從而達(dá)到相同或者相類似的結(jié)果。顯示在附圖4中的該軟件架構(gòu)是一個(gè)基于Macintosh操作系統(tǒng)的示例。架構(gòu)400包括元數(shù)據(jù)處理軟件401和操作系統(tǒng)(OS)內(nèi)核403,該操作系統(tǒng)內(nèi)核與元數(shù)據(jù)處理軟件401連接操作用于下述的通知機(jī)制。元數(shù)據(jù)處理軟件401也與其他軟件程序相連接,該軟件程序例如文件系統(tǒng)圖形用戶接口軟件405(可以是Finder)、電子郵件軟件407和其他應(yīng)用409。這些應(yīng)用通過客戶機(jī)應(yīng)用程序接口411與元數(shù)據(jù)處理軟件401相連接,該客戶機(jī)應(yīng)用程序接口提供在元數(shù)據(jù)處理軟件401和軟件405、407和409之間傳送數(shù)據(jù)和命令的方法。該命令和數(shù)據(jù)可以包括用戶指定的搜索參數(shù)以及來自用戶的執(zhí)行搜索的命令,該參數(shù)和命令通過接口411傳送到元數(shù)據(jù)處理軟件401。元數(shù)據(jù)處理軟件401也與輸入端413的集合相連接,該輸入端從各種應(yīng)用中提取數(shù)據(jù)。特別地,在一個(gè)示例性實(shí)施例中,文本輸入端被用于從文字處理或者文本處理文件中提取文本和其他信息,該文字處理或者文本處理程序例如Microsoft Word等。該提取的信息是特定文件的元數(shù)據(jù)。其他類型的輸入端從其他類型的文件中提取元數(shù)據(jù),該其他類型的文件例如圖像文件或者音樂文件。在該特定實(shí)施例中,特定輸入端基于由應(yīng)用程序產(chǎn)生和修改的文件的類型被選擇。舉例而言,如果數(shù)據(jù)文件由PhotoShop創(chuàng)建,則針對(duì)PhotoShop的圖像輸入端被用于通過元數(shù)據(jù)處理軟件401將元數(shù)據(jù)從PhotoShop數(shù)據(jù)文件輸入到元數(shù)據(jù)庫415。另一方面,如果數(shù)據(jù)文件是文字處理文檔,則被設(shè)計(jì)用于從文字處理數(shù)據(jù)文檔中提取元數(shù)據(jù)的輸入端被訪問,以通過元數(shù)據(jù)處理軟件401從文字處理數(shù)據(jù)文件中提取元數(shù)據(jù)并且將其置于元數(shù)據(jù)庫415中。典型地,需要許多不同輸入端以處理應(yīng)用于典型的計(jì)算機(jī)系統(tǒng)的許多不同應(yīng)用程序。優(yōu)選地,輸入端413包括大量輸出端,該輸出端能夠?qū)⒂糜谔囟愋蛿?shù)據(jù)文件的提取的元數(shù)據(jù)輸出回由特定應(yīng)用程序維護(hù)的屬性表或者其他數(shù)據(jù)組件。舉例而言,應(yīng)用程序可以維護(hù)由程序創(chuàng)建的每一數(shù)據(jù)文件的一些元數(shù)據(jù),但是該元數(shù)據(jù)只是從該類型數(shù)據(jù)文件的輸出端提取的元數(shù)據(jù)的子集。在這種情況下,輸出端可以將附加元數(shù)據(jù)輸出回或者簡單地將元數(shù)據(jù)插入到應(yīng)用程序維護(hù)的元數(shù)據(jù)的空白字段中。
軟件架構(gòu)400還包括元數(shù)據(jù)的文件系統(tǒng)目錄417。該文件系統(tǒng)目錄跟蹤數(shù)據(jù)文件和他們的元數(shù)據(jù)之間的關(guān)系,并且跟蹤每一輸入端創(chuàng)建的元數(shù)據(jù)對(duì)象的位置(例如與數(shù)據(jù)文件對(duì)應(yīng)的元數(shù)據(jù)文件,其在該數(shù)據(jù)文件中被提取)。在一個(gè)示例性實(shí)施例中,元數(shù)據(jù)庫被維持為如下所述的展開文件格式,并且文件系統(tǒng)目錄417維護(hù)該展開文件格式。展開文件格式的一個(gè)優(yōu)點(diǎn)在于數(shù)據(jù)作為數(shù)據(jù)字符串被置于存儲(chǔ)裝置上,不論從一個(gè)元數(shù)據(jù)文件(對(duì)應(yīng)特定數(shù)據(jù)文件)到另一個(gè)元數(shù)據(jù)文件(對(duì)應(yīng)另一個(gè)數(shù)據(jù)文件)的字段。數(shù)據(jù)的這一安排經(jīng)常會(huì)導(dǎo)致從元數(shù)據(jù)庫415中較快地檢索信息。
附圖4中的軟件架構(gòu)400還包括基于內(nèi)容查找軟件419,該軟件在操作中與包括文件索引的數(shù)據(jù)庫421相連接。文件索引代表存儲(chǔ)裝置中數(shù)據(jù)文件的至少一個(gè)子集,并且可以包括一個(gè)特定存儲(chǔ)裝置(一些存儲(chǔ)裝置)中的所有數(shù)據(jù)文件,該存儲(chǔ)裝置例如計(jì)算機(jī)系統(tǒng)的主硬盤驅(qū)動(dòng)器。文件的索引可以是傳統(tǒng)的每一文檔的內(nèi)容的索引表示?;趦?nèi)容查找軟件419在內(nèi)容中查找詞匯以察看特定詞匯是否存在于任何索引的數(shù)據(jù)文件中,該查找通過查找數(shù)據(jù)庫421實(shí)現(xiàn)?;趦?nèi)容查找軟件的功能在元數(shù)據(jù)處理軟件401中具有效用,該元數(shù)據(jù)處理軟件對(duì)用戶具有好處,該好處就是用戶可以同時(shí)檢索數(shù)據(jù)庫421中的文件索引(針對(duì)文件中的內(nèi)容)以及要檢索的各種數(shù)據(jù)文件的元數(shù)據(jù)。顯示在附圖4中的該軟件架構(gòu)可以用于執(zhí)行附圖5中所示的方法,或者可替換的軟件架構(gòu)可以用于執(zhí)行附圖5中所示的方法。
附圖5中的方法始于操作501,在該操作中,接收到文件改變的通知。該通知來自于操作系統(tǒng)內(nèi)核403,其通知元數(shù)據(jù)處理軟件401文件已經(jīng)改變。該通知可以來自監(jiān)聽軟件元件,該元件監(jiān)測新的或者改變的文件和文件的刪除。該改變可以是新文件的創(chuàng)建或者現(xiàn)有文件的改變或者現(xiàn)有文件的刪除?,F(xiàn)有文件的刪除引發(fā)附圖5中的處理方法的一種特殊情況,并且沒有顯示在附圖5中。在刪除的情況下,元數(shù)據(jù)處理軟件401通過使用文件系統(tǒng)目錄417刪除元數(shù)據(jù)庫415中的元數(shù)據(jù)文件,該元數(shù)據(jù)文件與刪除的文件對(duì)應(yīng)。其他類型的操作,例如新文件的創(chuàng)建或者現(xiàn)有文件的改變,引起從操作501到操作503的處理過程,在該處理過程中作為通知目標(biāo)的文件類型被確定。該文件可以是Acrobat PDF文件或者RTF文字處理文件或者JPEG圖像文件等等。在任何情況下,文件類型在操作503中確定。其可以通過從操作系統(tǒng)內(nèi)核403接收與通知一起的文件類型,或者元數(shù)據(jù)處理軟件401可以從文件系統(tǒng)圖形用戶接口軟件405或者類似軟件要求文件類型的標(biāo)識(shí),該軟件維護(hù)數(shù)據(jù)文件的信息,例如數(shù)據(jù)文件的生成應(yīng)用或者父應(yīng)用。應(yīng)當(dāng)知道在一個(gè)示例性實(shí)施例中,文件系統(tǒng)圖形用戶接口軟件405是在Macintosh操作系統(tǒng)上運(yùn)行的Finder程序。在可以替換的實(shí)施例中,文件系統(tǒng)圖形用戶接口系統(tǒng)可以是運(yùn)行在微軟公司的Windows操作系統(tǒng)上的Windows Explorer。在操作503文件類型被確定之后,合適的捕獲軟件(例如輸入端413之一)被啟動(dòng)以確定文件類型。輸入端可以是特定應(yīng)用的插件,其生成文件類型,有關(guān)該文件類型的通知在操作501中被接收。一旦被啟動(dòng),輸入端或者捕獲軟件將合適的元數(shù)據(jù)(針對(duì)特定文件類型)輸入到元數(shù)據(jù)庫中,例如操作507中所示的元數(shù)據(jù)庫415。接著在操作509中,元數(shù)據(jù)被存儲(chǔ)在數(shù)據(jù)庫中。在示例性實(shí)施例中,其可以以展開文件的形式存儲(chǔ)。接著在操作511中,元數(shù)據(jù)處理軟件401接收搜索參數(shù)的輸入并且執(zhí)行元數(shù)據(jù)庫的檢索(并且較優(yōu)地,還引發(fā)例如文件索引421的非元數(shù)據(jù)源的檢索),并且使得檢索結(jié)果顯示在用戶接口上。其可以通過下述方式得以執(zhí)行,該方式就是在一種應(yīng)用和元數(shù)據(jù)處理軟件401之間通過接口411交換信息,該應(yīng)用例如軟件405或者軟件407或者其他應(yīng)用409。舉例而言,文件系統(tǒng)軟件405可以表現(xiàn)為圖形用戶接口,允許用戶輸入搜索參數(shù)并且允許用戶啟動(dòng)要執(zhí)行的搜索。該信息通過接口411傳送到元數(shù)據(jù)處理軟件401,該軟件在元數(shù)據(jù)庫415中引發(fā)搜索并且也可以在索引文件的數(shù)據(jù)庫421中引發(fā)搜索從而在被索引的每一數(shù)據(jù)文件中搜索內(nèi)容。該搜索的結(jié)果被元數(shù)據(jù)處理軟件401提供給請(qǐng)求應(yīng)用,在此處給出的示例中該請(qǐng)求應(yīng)用是軟件405,但是應(yīng)當(dāng)知道軟件的其他組件,例如電子郵件軟件407,可以用于接收搜索輸入并且可以用于提供檢索結(jié)果的顯示。用于輸入搜索請(qǐng)求以及用于顯示搜索結(jié)果的用戶接口的各種示例在此處得以描述,并且顯示在附圖中。
應(yīng)當(dāng)知道如果在操作系統(tǒng)內(nèi)核中完成,通知是全局的系統(tǒng)級(jí)的通知處理,從而任何文件的變化會(huì)引起通知發(fā)送到元數(shù)據(jù)處理軟件。還應(yīng)當(dāng)知道,在替換的實(shí)施例中,每一應(yīng)用程序可以自己生成必要的元數(shù)據(jù)并且將元數(shù)據(jù)直接提供給元數(shù)據(jù)庫,而無需來自操作系統(tǒng)內(nèi)核的通知要求或者來自例如輸入端413的輸入端的干涉??商鎿Q地,不使用操作系統(tǒng)內(nèi)核通知,實(shí)施例可以使用從任一應(yīng)用到元數(shù)據(jù)處理軟件的軟件調(diào)用,該元數(shù)據(jù)處理軟件接收該調(diào)用并且接著響應(yīng)該調(diào)用從每一文件中輸入元數(shù)據(jù)。
如上所述,元數(shù)據(jù)庫415可以以展開文件的形式存儲(chǔ),從而提高大多數(shù)情況下的信息檢索速度。該展開文件格式可以認(rèn)為是非-B樹(non-B tree)、非哈希樹(non-hash tree)格式,在該格式下,數(shù)據(jù)不是試圖被組織為而是被存儲(chǔ)為數(shù)據(jù)流。每一元數(shù)據(jù)對(duì)象或者元數(shù)據(jù)文件自身包含字段,例如附圖3A和3B中顯示的字段。然而,典型地,從一個(gè)元數(shù)據(jù)文件的一個(gè)字段到下一個(gè)原數(shù)據(jù)文件或者另一個(gè)同一文件類型的原數(shù)據(jù)文件的相應(yīng)字段(或者另一字段)沒有關(guān)系或者引用或者指向。附圖6顯示了元數(shù)據(jù)展開文件的布局的實(shí)施例。格式601包括許多元數(shù)據(jù)文件,該元數(shù)據(jù)文件針對(duì)相應(yīng)的許多數(shù)據(jù)文件。如附圖6所示,元數(shù)據(jù)文件603是來自應(yīng)用A的文件1的元數(shù)據(jù),并且可以被稱為元數(shù)據(jù)文件A1。類似地,元數(shù)據(jù)文件605是來自應(yīng)用B的文件1的元數(shù)據(jù),并且可以被稱為元數(shù)據(jù)文件B1。典型地,每一該元數(shù)據(jù)文件包括字段,該字段不鏈接到其他字段,并且該字段不會(huì)包含指向其他元數(shù)據(jù)文件的其他字段的引用或者指針。從附圖6中可以看出,附圖6中的元數(shù)據(jù)庫包括來自許多不同應(yīng)用(應(yīng)用A、B和C)的元數(shù)據(jù)文件和由該應(yīng)用創(chuàng)建的不同文件。元數(shù)據(jù)文件607、609、611和617是附圖6中顯示的應(yīng)用A、B和C創(chuàng)建的附加元數(shù)據(jù)文件。
軟查詢語言可以用于以與查詢語言用于搜索其他數(shù)據(jù)庫相同的方式搜索元數(shù)據(jù)庫。如果愿意,每一元數(shù)據(jù)文件中的數(shù)據(jù)可以被打包甚至被壓縮。如上所述,在特定實(shí)施例中,每一元數(shù)據(jù)文件包括永久性標(biāo)識(shí)符,該標(biāo)識(shí)符唯一表示相應(yīng)的數(shù)據(jù)文件。甚至如果文件名改變或者文件被修改,該標(biāo)識(shí)符仍保持相同。這是實(shí)現(xiàn)了特定數(shù)據(jù)文件和元數(shù)據(jù)的永久性關(guān)聯(lián)。
用戶接口方面用于輸入搜索參數(shù)和用于顯示搜索結(jié)果的用戶接口的各種不同示例在此處得以提供。應(yīng)當(dāng)知道特定實(shí)施例中的一些特征可以與其他實(shí)施例結(jié)合,從而這種結(jié)合產(chǎn)生了混合實(shí)施例。應(yīng)當(dāng)知道,特定特征可以從這些實(shí)施例中移除并且在許多情況下仍然提供充足的功能。
附圖7A顯示了圖形用戶接口,該圖形用戶接口是顯示在顯示裝置上的窗口,該顯示裝置與例如計(jì)算機(jī)系統(tǒng)的數(shù)據(jù)處理系統(tǒng)連接。窗口701包含側(cè)邊條,該側(cè)邊條具有兩個(gè)區(qū)域703A和703B,區(qū)域703A是用戶配置區(qū)域,區(qū)域703B是由數(shù)據(jù)處理系統(tǒng)所指定的。關(guān)于該側(cè)邊條形區(qū)域的更為詳細(xì)的內(nèi)容可以在共同提出的第__號(hào)美國專利申請(qǐng)中找到,該申請(qǐng)是2004年6月22日提出的,并且題目為“Methods and Apparatusesfor operating a Data Processing System”,發(fā)明者是Donald Lindsay和Bas Ording,代理摘要號(hào)為04860.P3306。窗口701也包括顯示區(qū)域705,在這種情況下,該顯示區(qū)域顯示用戶請(qǐng)求的搜索結(jié)果。窗口701還包括搜索參數(shù)菜單條707,該菜單條包括可配置的下拉菜單713、715和717。窗口701還包括文本輸入?yún)^(qū)域709,該區(qū)域允許用戶輸入作為搜索查詢或者搜索參數(shù)一部分的文本。按鈕711可以是開始搜索按鈕,用戶可以啟動(dòng)該按鈕以便于基于選擇的搜索參數(shù)開始搜索??商娲?,系統(tǒng)一接收任何搜索參數(shù)輸入或者來自用戶的搜索查詢就可以執(zhí)行搜索,而不是等待開始搜索的命令。窗口701還可以包括標(biāo)題欄729,該標(biāo)題欄可以用于與光標(biāo)控制裝置一起在桌面上移動(dòng)窗口,該移動(dòng)以傳統(tǒng)的方式實(shí)現(xiàn),該桌面顯示在顯示裝置上。窗口701還包括關(guān)閉按鈕734、最小化按鈕735和調(diào)整大小按鈕736,這些按鈕分別用于將窗口關(guān)閉或者將窗口最小化或者調(diào)整窗口大小。窗口701還包括調(diào)整大小控制器731,其允許用戶改變顯示裝置上的窗口的大小。窗口701還包括后退按鈕732和前進(jìn)按鈕733,該后退按鈕和前進(jìn)按鈕以與網(wǎng)絡(luò)瀏覽器上的后退按鈕和前進(jìn)按鈕類似的方式工作,該網(wǎng)絡(luò)瀏覽器例如因特網(wǎng)瀏覽器(Internet Explorer)或者Safari。窗口701還包括顯示控制器,該控制器包括三個(gè)按鈕,該按鈕用于選擇在顯示區(qū)域705上的三種不同類型的內(nèi)容顯示方式。當(dāng)搜索中查找到的內(nèi)容超過了顯示區(qū)域705的有效顯示面積,滾動(dòng)控制器,例如滾動(dòng)控制器721、722和723顯示在窗口701上。這些可以使用傳統(tǒng)方式實(shí)現(xiàn),例如通過使用傳統(tǒng)的圖形用戶接口技術(shù)在滾動(dòng)區(qū)域721A上拖拉滾動(dòng)條721。
文本輸入?yún)^(qū)域709和搜索參數(shù)菜單條的結(jié)合允許用戶具體化搜索查詢或者搜索參數(shù)。當(dāng)用戶激活下拉菜單的時(shí)候,每一個(gè)可配置的下拉菜單展示給用戶可以選擇的選項(xiàng)列表。如附圖7A所示,用戶從可配置的下拉菜單713中已經(jīng)做出選擇以指明要搜索的位置,在這種情況下指明搜索將在計(jì)算機(jī)系統(tǒng)的本地磁盤發(fā)生??膳渲玫南吕藛?15還被用戶用于指明要搜索的文檔的類型,在這種情況下其是由可配置的下拉菜單715指明的圖像文檔,該菜單指明“圖像(images)”是該菜單的選中配置,并且因此是其具體指明的搜索參數(shù)。如附圖7A所示,可配置的下拉菜單717代表增加的搜索參數(shù)下拉菜單。該增加的搜索參數(shù)下拉菜單允許用戶對(duì)搜索查詢添加額外的標(biāo)準(zhǔn),以進(jìn)一步限制搜索結(jié)果。在附圖7A顯示的實(shí)施例中,搜索參數(shù)在邏輯上以布爾的形式被加入。因此,如附圖7A所示的狀態(tài)下,被用戶指明的當(dāng)前搜索參數(shù)在所有本地磁盤上搜索所有圖像,并且用戶處于選擇另一個(gè)搜索標(biāo)準(zhǔn)的過程中間,其通過選擇添加搜索標(biāo)準(zhǔn)下拉菜單717實(shí)現(xiàn),導(dǎo)致下拉菜單719的顯示,該下拉菜單具有許多可以由用戶選擇的選項(xiàng)。
附圖7B顯示了在用戶在下拉菜單719中選擇時(shí)間選項(xiàng)之后的窗口701,因此導(dǎo)致子菜單719A的顯示,該子菜單包括用戶可以從中選擇的可能的時(shí)間。因此看出用戶希望將在所有本地磁盤對(duì)所有圖像的搜索限制在一定時(shí)間期間之內(nèi),該時(shí)間期間通過在子菜單719A中進(jìn)行選擇被確定。
附圖7C顯示了用戶在子菜單719A中選擇了特定選項(xiàng)(在該情況下是“上周(past week)”)之后,數(shù)據(jù)處理系統(tǒng)顯示器上的窗口701。如果用戶接受該選擇,接著附圖7D中所示的顯示導(dǎo)致哪一種可配置的下拉菜單718得以顯示,其展示了最近被創(chuàng)建或者被修改的用戶選擇的部分搜索標(biāo)準(zhǔn)文件。從附圖7D中可以看出,用戶可以通過在附圖7D中顯示的下拉式菜單718A中選擇另一時(shí)間期間的方式,改變從下拉菜單718選出的特定時(shí)間。請(qǐng)注意表示添加搜索參數(shù)菜單的可配置下拉菜單717現(xiàn)在移至可配置下拉菜單718的右側(cè)。用戶可以通過點(diǎn)擊或者激活搜索參數(shù)菜單欄707上的可配置下拉菜單717進(jìn)一步添加搜索參數(shù)。如果用戶決定經(jīng)過的星期數(shù)是時(shí)間類的適當(dāng)搜索標(biāo)準(zhǔn),用戶可以放棄下拉菜單718A以多種不同方式顯示(例如用戶可以釋放鼠標(biāo)按鈕,該鼠標(biāo)按鈕被按下以保持下拉菜單718A的顯示)。當(dāng)釋放或者否則解除下拉菜單718A,顯示在附圖7E上的作為結(jié)果的窗口701接著出現(xiàn)。附圖7A-7E中顯示的用戶接口中具有一些值得注意的方面。搜索參數(shù)和搜索查詢在與搜索結(jié)果的顯示相同的窗口中被實(shí)現(xiàn)。這樣允許用戶觀察單一位置或者窗口以理解搜索參數(shù)和搜索參數(shù)如何影響顯示的搜索結(jié)果,并且使得用戶改變或者提高搜索參數(shù)以獲得一個(gè)或者多個(gè)文件更為容易。該可配置的下拉菜單例如添加搜索參數(shù)下拉菜單,包括分層下拉菜單。其的一個(gè)示例顯示在附圖7B中,在該附圖中從下拉菜單717中選擇的時(shí)間標(biāo)準(zhǔn)引發(fā)另一菜單的顯示,在這種情況下是可由用戶選擇的子菜單719A的顯示。這允許在保持初始復(fù)雜度(例如無需子菜單顯示)位于較低水平的情況下多個(gè)搜索參數(shù)得以緊密顯示。附圖7A-7E中示出的用戶接口的另一個(gè)有用的方面在于具有重新配置以前已經(jīng)配置過的下拉菜單的能力。因此,舉例而言,可配置下拉菜單713目前指明搜索位置(在該情況下為全部本地磁盤),然而其可以通過選擇與可配置下拉菜單713相連的下拉區(qū)域得以改變,導(dǎo)致表明可替換的位置的選項(xiàng)菜單的顯示,該位置可以由用戶選擇。其也可以在附圖7D中看出,在該圖中最近的選項(xiàng)由用戶選出(由搜索參數(shù)菜單欄707中的“上周”表明),但是下拉菜單718A所顯示的選項(xiàng)菜單允許用戶將選擇的時(shí)間從“上周”變?yōu)槠渌麜r(shí)間標(biāo)準(zhǔn)。該用戶接口的另一個(gè)有用方面是通過使用添加搜索標(biāo)準(zhǔn)下拉菜單717和選擇新標(biāo)準(zhǔn)的方式添加各種搜索標(biāo)準(zhǔn)的能力。
應(yīng)當(dāng)理解下拉菜單中的各種選項(xiàng)可以依賴于特定類型元數(shù)據(jù)文件中的字段。舉例而言,要搜索的“圖像”的選擇可以導(dǎo)致圖像類型文件的元數(shù)據(jù)中提出的各種字段顯示在一個(gè)或者多個(gè)下拉菜單中,允許用戶在一個(gè)或者多個(gè)該字段中搜索特定類型的文件。并不適用于“圖像”類型文件的其他字段可以不顯示在該菜單中以減少菜單的復(fù)雜度并且防止用戶混淆。
本發(fā)明的另一個(gè)特征顯示在附圖7A-7E中。在特定的情況下,側(cè)邊條形區(qū)域703A包括代表著從特定搜索中獲得的搜索結(jié)果的文件夾725的標(biāo)識(shí),該側(cè)邊條形區(qū)域是側(cè)邊條的用戶可配置部分,搜索結(jié)果可以是靜態(tài)的或者動(dòng)態(tài)的,這是因?yàn)樵谔囟ㄇ闆r下搜索被再次執(zhí)行以基于系統(tǒng)中的當(dāng)前文件獲得結(jié)果。附圖7A-7E中所示的示例中的文件夾725代表十二月10號(hào)完成的本地磁盤上針對(duì)所有圖像的搜索。通過在側(cè)邊條形區(qū)域703A選擇該文件夾,用戶可以引發(fā)顯示區(qū)域705上的搜索結(jié)果的顯示。這樣,通過將搜索結(jié)果保存在側(cè)邊條形區(qū)域703A的方式,用戶可以自動(dòng)檢索搜索結(jié)果。使得搜索結(jié)果或者搜索查詢保存在側(cè)邊條形區(qū)域703A的機(jī)制是選擇添加文件夾按鈕727,該按鈕顯示在窗口701的底部。通過選擇該按鈕,當(dāng)前的搜索結(jié)果或者搜索查詢以文件列表和當(dāng)前搜索結(jié)果中檢索到的其他對(duì)象的形式得到保存。在搜索查詢而不是搜索結(jié)果被保存用以以后使用的情況下,當(dāng)前搜索查詢被保存以便于以后再次使用從而找到在較晚的時(shí)間與搜索查詢相匹配的文件。用戶可以通過未示出的命令選擇的方式在該兩種功能(保存搜索結(jié)果或者保存搜索查詢)之間選擇。
附圖8A和8B顯示了用戶接口特征的另一個(gè)方面,其可以應(yīng)用于本發(fā)明的特定實(shí)施例中。附圖8A中的窗口801代表搜索結(jié)果的顯示,該搜索結(jié)果可以作為使用本發(fā)明多個(gè)不同實(shí)施例中的一個(gè)實(shí)施例獲得的結(jié)果。在此情況下該標(biāo)題再現(xiàn)時(shí)間期間,該搜索結(jié)果可以被分類,這些種類通過標(biāo)題805、807、809和811分離。使用標(biāo)題的該特定劃分通過用戶使用日期修改按鈕803被選擇,該選擇通過用戶使用位于窗口801頂部的日期修改按鈕803來選擇標(biāo)題“修改日期(data modified)”實(shí)現(xiàn)。通過選擇附圖8B所示的位于窗口801A頂部的按鈕802,一個(gè)替代性的選擇使得不同搜索結(jié)果格式現(xiàn)在按標(biāo)題分類,該標(biāo)題表明文件的類型,該文件在搜索中得到檢索并且如附圖8B所示被標(biāo)題815、817、819和821分隔。搜索結(jié)果顯示中這些標(biāo)題的使用允許用戶快速瀏覽搜索結(jié)果以找到文件。
附圖9顯示了本發(fā)明的另一個(gè)方面,其作為窗口901的一部分在附圖9中得到闡釋。該窗口包括顯示搜索結(jié)果的顯示區(qū)域905,并且該窗口還包括兩個(gè)側(cè)邊條形區(qū)域903A和903B,側(cè)邊條形區(qū)域903A是用戶配置部分,并且側(cè)邊條形區(qū)域903B是系統(tǒng)控制部分。文件夾添加按鈕927可以由用戶加以選擇從而使得搜索結(jié)果或者搜索查詢的額外部分添加到側(cè)邊條的用戶配置部分。窗口901還包括傳統(tǒng)窗口控制器,例如標(biāo)題欄或區(qū)域929以及觀察選擇按鈕937還有分別為最大化按鈕、最小化按鈕和調(diào)整大小按鈕934,935和936,該標(biāo)題欄區(qū)域可以用于在顯示屏上移動(dòng)窗口。窗口901顯示了特定風(fēng)格,在該風(fēng)格下基于文本搜索的結(jié)果得到顯示。文本輸入?yún)^(qū)域909用于輸入要搜索的文本。該文本可以用于在元數(shù)據(jù)文件或者索引文件或者二者的結(jié)合中搜索。顯示區(qū)域905顯示文本搜索結(jié)果,并且至少包括兩列917和919,這兩列提供了找到的文件的名稱和匹配標(biāo)準(zhǔn)。如列919所示,匹配標(biāo)準(zhǔn)可以是作者字段或者文件名或者關(guān)鍵字或者評(píng)論或者包含在已搜索的元數(shù)據(jù)中的其他數(shù)據(jù)字段。列921顯示了找到的文本,該文本與鍵入到文本輸入?yún)^(qū)域909的搜索參數(shù)匹配。另一列911相對(duì)于搜索結(jié)果提供附加信息。特別地,該列包括每一特定類型的種類或者字段的匹配數(shù)目,以及條目913所表明的總匹配數(shù)目。因此,舉例而言,在評(píng)論字段找到的匹配總數(shù)只有1個(gè),同時(shí)其他字段具有較高的匹配數(shù)目。
附圖10顯示了本發(fā)明具體實(shí)施方式
的其他特定方面。窗口1001是另一個(gè)搜索結(jié)果窗口,該窗口包括各種字段和菜單用于由用戶選擇各種搜索參數(shù)或者形成搜索查詢。窗口1001包括可用于顯示搜索結(jié)果的顯示區(qū)域1005和用戶可配置側(cè)邊條形區(qū)域1003A和系統(tǒng)指定側(cè)邊條形區(qū)域1003B。另外,窗口1001包括例如控制器1021和1022和1021A的傳統(tǒng)滾動(dòng)控制器。窗口還包括例如標(biāo)題欄1029和顯示控制按鈕1037和最大化、最小化和調(diào)整大小按鈕1034、1035和1036的傳統(tǒng)控制器,該標(biāo)題欄可以用于移動(dòng)窗口。開始搜索按鈕1015與文本輸入?yún)^(qū)域1009較近。第一搜索參數(shù)菜單欄1007與第二搜索參數(shù)欄1011臨近顯示。當(dāng)?shù)诙阉鲄?shù)菜單欄1011的兩個(gè)菜單下拉控制器允許用戶使用下拉菜單1012指明文件類型并且允許用戶使用菜單1013指明文件創(chuàng)建或者最后修改的時(shí)間的時(shí)候,第一搜索參數(shù)搜索欄1007允許用戶指明特定搜索的位置。
窗口1001包括在分析搜索結(jié)果的時(shí)候非常有用的額外特征。用戶可以從顯示區(qū)域1005中選擇單個(gè)文件并且將其加入一個(gè)集合中。每一個(gè)文件可以使用特定命令(例如按下鼠標(biāo)右鍵并且從顯示在顯示屏上的菜單中選擇命令,命令可以是“將選擇添加到當(dāng)前組(add selection to currentgroup)”)或者類似命令單獨(dú)標(biāo)注。通過單獨(dú)選擇該文件或者通過一次選擇文件組,用戶可以將文件組與選中的組或者“標(biāo)注的(marked)”組關(guān)聯(lián),而且該關(guān)聯(lián)可以用于在組的所有文件中執(zhí)行命令動(dòng)作(例如打印每一文件或者在查看窗口查看每一文件或者將每一文件移至新的或者現(xiàn)有的文件夾,等等)。該標(biāo)注組的標(biāo)識(shí)作為文件夾顯示在用戶配置區(qū)域1003A。該文件夾的示例是顯示在用戶配置區(qū)域的文件夾1020。通過選擇該文件夾(例如通過將光標(biāo)定位于文件夾1020并且按下以及釋放鼠標(biāo)按鍵或者通過按下另一鍵),作為選擇的結(jié)果用戶會(huì)引發(fā)被分在一組或者被標(biāo)注的文件在顯示區(qū)域1005中顯示。可替換地,獨(dú)立窗口可以僅僅顯示被標(biāo)注或者被分組的項(xiàng)目。該關(guān)聯(lián)或者分組可以僅僅是臨時(shí)的(例如他們只是在搜索結(jié)果窗口顯示的時(shí)候存在),或者可以通過保留分組文件名單并且通過在用戶可配置側(cè)邊條(例如側(cè)邊條1003A)中保留文件夾1020或者其他分組標(biāo)識(shí)的方式成為永久的。某些實(shí)施例可以允許同一時(shí)間存在多個(gè)不同的分組,這些分組或聯(lián)合的每個(gè)可以僅僅是臨時(shí)的(例如他們僅在搜索窗口被顯示時(shí)存在),或者他們可以通過保留已經(jīng)被分組在每個(gè)單獨(dú)的組中的所有文件的列表而被永久保留。應(yīng)當(dāng)知道每一組中的文件可以被不同應(yīng)用創(chuàng)建。如上所述,一個(gè)分組可以被選擇并且接著用戶選擇在所選擇的組的所有文件中執(zhí)行共同的動(dòng)作(例如打印或者查看或者移動(dòng)或者刪除)的命令。
附圖11A、11B、11C和11D顯示了允許用戶輸入搜索查詢或者搜索參數(shù)的可替代的用戶接口。附圖中所示的該用戶接口顯示在窗口1101中,該窗口具有用戶可配置的側(cè)邊條區(qū)域1103A和系統(tǒng)指定側(cè)邊條區(qū)域1103B。窗口1101還包括傳統(tǒng)窗口控制器,例如窗口調(diào)整大小控制器1131,該部件可以在傳統(tǒng)的圖形用戶接口方式下被拖拽以調(diào)整窗體大小,并且該窗體還包括滾動(dòng)控制器,例如控制器1121、1122和1123。舉例而言,滾動(dòng)控制器1121可以在滾動(dòng)區(qū)域1121A中被拖拽,或者鼠標(biāo)或其他輸入裝置上的滾輪可以用于引發(fā)顯示區(qū)域1105內(nèi)的滾動(dòng)。進(jìn)一步,傳統(tǒng)窗口控制器包括標(biāo)題欄1129,該標(biāo)題欄可以用于在桌面上移動(dòng)窗口,其顯示在計(jì)算機(jī)系統(tǒng)的顯示裝置上。并且該窗口還包括查看按鈕1137以及關(guān)閉、最小化和調(diào)整大小按鈕1134、1135和1136。后退和前進(jìn)按鈕,例如后退按鈕1132,也被提供以允許用戶向后移動(dòng)和向前移動(dòng),該移動(dòng)的方式與網(wǎng)頁瀏覽器中的后退和前進(jìn)命令類似。窗口1101包括搜索參數(shù)菜單欄1111,該搜索參數(shù)菜單欄包括“搜索(search by)”下拉菜單1112和“排序(sort by)”下拉菜單1114?!八阉鳌毕吕藛?112允許用戶指明特定搜索參數(shù),如圖11B所示,其通過從一旦被激活即顯示在下拉菜單中的選項(xiàng)中選擇的方式實(shí)現(xiàn)。特別地,下拉菜單1113顯示了當(dāng)“搜索”下拉菜單1112被激活的時(shí)候下拉菜單的示例?!芭判颉毕吕藛?114允許用戶指明搜索結(jié)果如何顯示在顯示區(qū)域1105中。在附圖11A-11D所示的示例中,用戶使用“排序”下拉菜單1114選擇“查看日期(date viewed)”標(biāo)準(zhǔn)以基于此排序搜索結(jié)果。應(yīng)當(dāng)注意用戶可以通過選擇三個(gè)查看按鈕1137之一改變搜索查詢結(jié)果的查看類型。舉例而言,用戶可以選擇圖標(biāo)查看在查看按鈕1137中目前被選擇的按鈕,或者用戶可以選擇列表查看或者列查看。
附圖11B顯示了用戶激活“搜索”下拉菜單1112后的結(jié)果,其導(dǎo)致菜單1113的顯示,菜單1113包含許多選項(xiàng),用戶可以從中選擇執(zhí)行搜索的依據(jù)。應(yīng)當(dāng)知道對(duì)于用戶而言存在大量不同激活“搜索”下拉菜單1112的方式。一種方式包括光標(biāo)的使用,例如由光標(biāo)控制裝置控制的顯示屏上的指針,該光標(biāo)控制裝置例如鼠標(biāo)。光標(biāo)位于與“搜索”菜單標(biāo)題關(guān)聯(lián)的區(qū)域(其是包含“按...搜索的”的搜索參數(shù)菜單條1111中的部分)并且接著用戶通過按壓例如鼠標(biāo)按鍵的按鈕表明菜單標(biāo)題的選擇,從而導(dǎo)致下拉菜單出現(xiàn),在這種情況下該下拉菜單即如附圖11B所示的菜單1113。在這一點(diǎn)上,用戶可以繼續(xù)移動(dòng)光標(biāo)指向菜單中的特定選項(xiàng),例如“時(shí)間(time)”選項(xiàng)。這會(huì)導(dǎo)致子菜單在菜單1113的左側(cè)或者右側(cè)顯示。子菜單可以與子菜單719A或者附圖12A中顯示的菜單1214相類似。如果“類別(kind)”選項(xiàng)在菜單1113中被選擇,子菜單可以包括不同種類文檔的總體列表,例如圖像、照片、電影、文本、音樂、PDF文檔、電子郵件文檔等等,或者列表可以包括特定程序名稱的引用,該程序例如PhotoShop、Director、Excel、Word等等,或者其可以包括總體名稱和特定名稱的結(jié)合。附圖11C顯示了用戶從菜單1113中顯示的“類別”選項(xiàng)的子菜單中選擇PhotoShop類型文檔的結(jié)果。這導(dǎo)致了附圖11C所示的搜索參數(shù)菜單欄1111A的顯示,該菜單欄包括高亮度區(qū)域1111B,該高亮度區(qū)域表明要搜索的PhotoShop類型文檔。該搜索參數(shù)菜單欄1111顯示在如圖11C所示的搜索參數(shù)菜單欄1111A的下面。用戶接著通過再次使用“搜索”下拉菜單1112或者通過向文本輸入?yún)^(qū)域1109輸入文本指明附加搜索參數(shù)。舉例而言,從附圖11C所示的窗口1101的狀態(tài),用戶可以選擇“搜索”下拉菜單1112,使得包含許多選項(xiàng)的菜單得以顯示,該選項(xiàng)例如菜單1113中所示的選項(xiàng)或者例如與PhotoShop文檔相關(guān)的可替換的選項(xiàng)(例如PhotoShop類型文檔的元數(shù)據(jù)的各種字段)。包含在PhotoShop類型文檔的元數(shù)據(jù)中的這些字段的結(jié)合和其他類別的字段(例如時(shí)間、文件大小和其他參數(shù))可以顯示在菜單中,例如通過選擇“搜索”下拉菜單激活的菜單1113。用戶可以接著選擇另一個(gè)標(biāo)準(zhǔn),例如時(shí)間標(biāo)準(zhǔn)。在這種情況下,窗口1101顯示允許用戶指明特定時(shí)間的新搜索參數(shù)菜單欄1115。用戶可以在菜單欄1115上選擇時(shí)間或者可以通過選擇標(biāo)題為“時(shí)間”的菜單激活下拉菜單,時(shí)間作為菜單標(biāo)題1116加以顯示。附圖11D中顯示的窗口1101的狀態(tài)可以接著基于用戶選擇的特定時(shí)間期間,搜索最近30天或者7天或者2天或者當(dāng)天或者任意時(shí)間創(chuàng)建的所有PhotoShop文檔。
附圖12A、12B、12C和12D顯示了用戶接口的另一個(gè)實(shí)施例,該用戶接口用于實(shí)現(xiàn)生成搜索元數(shù)據(jù)和其他數(shù)據(jù)的搜索查詢,并且該用戶接口用于顯示使用搜索查詢執(zhí)行搜索的結(jié)果。附圖12A-12D中所示的不同實(shí)現(xiàn)方式以列模式顯示用戶接口的表現(xiàn);其可以通過說明列按鈕的選擇看出,列按鈕是附圖12A中所示的查看按鈕1237中的最右側(cè)的按鈕。窗口1201具有兩列1211和顯示區(qū)域1205,同時(shí)附圖12C中的窗口1251具有三列,這三列是列1257、1259和顯示區(qū)域1255,并且窗口1271具有三列,這三列是列1277、1279和顯示區(qū)域1275。
附圖12A和12B中所示的窗口1201包括顯示搜索結(jié)果的顯示區(qū)域1205;當(dāng)用戶輸入搜索參數(shù)的時(shí)候該結(jié)果將動(dòng)態(tài)顯示,或者該結(jié)果只是在用戶指令系統(tǒng)執(zhí)行搜索(例如通過選擇“執(zhí)行搜索(pertorm search)”命令)之后加以顯示。窗口1201包括傳統(tǒng)窗口控制器,例如調(diào)整大小控制器1231、滾動(dòng)控制器1221、可以用于移動(dòng)窗口的標(biāo)題欄1229、窗口關(guān)閉按鈕、窗口最小化按鈕和各個(gè)窗口調(diào)整大小按鈕1234、1235和1236。窗口1201也包括用戶可配置側(cè)邊條區(qū)域1203A和系統(tǒng)指定側(cè)邊條區(qū)域1203B。從附圖12A可以看出,通過在系統(tǒng)指定側(cè)邊條區(qū)域1203B中高亮度顯示“瀏覽(browse)”圖標(biāo)1203C,表明瀏覽器模式被選擇。窗口1201還包括文本輸入?yún)^(qū)域1209,用戶可以使用該區(qū)域輸入要搜索的文本,并且窗口1201還包括查看選擇按鈕1237。
窗口1201的列1211允許用戶通過選擇一個(gè)選項(xiàng)選擇多種搜索參數(shù),該選項(xiàng)依次引發(fā)與選擇的選項(xiàng)相對(duì)應(yīng)的子菜單的顯示。在附圖12A的情況下,用戶選擇了“類別”選項(xiàng)1212并且接著使用子菜單1214從子菜單中選擇“照片”選項(xiàng),導(dǎo)致標(biāo)識(shí)符1213(照片)顯示在“類別”選項(xiàng)下面的列1211中,如附圖12A所示。也可以看出用戶以前在列1211中選擇過“時(shí)間”選項(xiàng),并且也可以看出當(dāng)“時(shí)間”選項(xiàng)被選擇為“上周”的搜索參數(shù)的時(shí)候,從產(chǎn)生的子菜單中加以選擇。當(dāng)用戶從所有列1112和顯示的任何對(duì)應(yīng)子菜單中選出多種選項(xiàng)和子選項(xiàng)之后,接著如附圖12B所示的顯示出現(xiàn)。請(qǐng)注意子菜單不再出現(xiàn),用戶完成各種選項(xiàng)和子選項(xiàng)的選擇,這些選項(xiàng)和子選項(xiàng)使得搜索參數(shù)具體化。附圖12B中的列1211提供給用戶的反饋,該反饋表明搜索查詢的精確特性(在這種情況下對(duì)所有照片的搜索追溯到上周),并且與搜索查詢匹配的結(jié)果現(xiàn)實(shí)在顯示區(qū)域1205上。
附圖12C和12D顯示了替換的實(shí)施例,在該實(shí)施例中子菜單被附加列所代替,在附圖12A和12B中的實(shí)施例中該子菜單顯示在臨時(shí)性基礎(chǔ)之上,該附加列在選擇做出之后不會(huì)消失。尤其是,窗口1251的列1259以與子菜單1214相同的方式運(yùn)行,除了在選擇做出之后(其中在用戶從子菜單做出選擇之后,子菜單1214被移除出窗口)該列保持在窗口1251之內(nèi)。附圖12D中的窗口1271的列1279與列1259類似。窗口1251包括側(cè)邊條,該側(cè)邊條具有用戶可配置側(cè)邊條形區(qū)域1253A和系統(tǒng)定義側(cè)邊條形區(qū)域1253B。系統(tǒng)指定側(cè)邊條形區(qū)域1253B包括“瀏覽”選擇區(qū)域1254,該區(qū)域具有清除按鈕1258,用戶可以選擇該按鈕清除當(dāng)前的搜索查詢。附圖12D中的窗口1271提供清楚搜索查詢的替代性接口。窗口1271還包括用戶可配置側(cè)邊條形區(qū)域1273A和系統(tǒng)指定側(cè)邊條形區(qū)域1273B,但是清除按鈕位于列1277的頂部,清除按鈕不是與“搜索”區(qū)域1274在一起。用戶可以通過選擇附圖12D所示的按鈕1283清除當(dāng)前搜索參數(shù)。
附圖13A顯示了窗口1301的另一實(shí)施例,該窗口在顯示區(qū)域1302中顯示搜索結(jié)果。窗口1301是可以被關(guān)閉、可以最小化、可以調(diào)整大小并且可以被移動(dòng)的窗口,具有調(diào)整大小控制器1310、用于移動(dòng)窗體的標(biāo)題欄1305、文本輸入?yún)^(qū)域1306和用戶配置部分1303、以及系統(tǒng)指定部分1304。窗口1301還包括選擇各種查看方式的按鈕,該查看方式包括圖標(biāo)查看、列表查看和列查看。目前,列表查看按鈕1316被選擇,導(dǎo)致搜索結(jié)果以列表查看的方式顯示在顯示區(qū)域1302中??梢钥闯鑫谋?“按鈕(button)”)被輸入到文本輸入?yún)^(qū)域1306并且這使得系統(tǒng)能夠響應(yīng)展示在顯示區(qū)域1302中的搜索結(jié)果。用戶通過選擇“隨處(everywhere)”按鈕1317指明搜索在所有位置進(jìn)行。進(jìn)一步,用戶通過在下拉菜單1315中選擇“種類(kind)”選項(xiàng)和在下拉菜單1319中選擇“任意(any)”選項(xiàng),搜索所有種類的文檔。位置部分1307包括“+”按鈕,該按鈕可以用于進(jìn)一步添加搜索參數(shù),并且簡單地說,部分1308包括用于分別添加或者刪除搜索參數(shù)的“+”和“-”按鈕。部分1307還包括“保存(save)”按鈕1309,該按鈕使得當(dāng)前搜索查詢以文件夾的形式保存,該文件夾被添加到用戶配置部分1303便于以后使用。這將在下面進(jìn)一步描述并且可以被稱為“智能文件夾(smart folder)”。在特定實(shí)施例中,顯示在附圖13A和13B中的搜索輸入用戶接口可以在由圖形用戶接口文件管理系統(tǒng)控制的每一個(gè)窗口內(nèi)有效,該圖形用戶接口文件管理系統(tǒng)例如在Macintosh上運(yùn)行的Finder程序或者在微軟Windows操作系統(tǒng)上運(yùn)行的WindowsExplorer。該接口包括文本輸入?yún)^(qū)域1306以及部分1307和1308。
顯示在附圖13B中的窗口1301通過選擇搜索按鈕1323A顯示了菜單的啟動(dòng),導(dǎo)致具有兩個(gè)輸入部分1323和1325的菜單的顯示。輸入部分1323顯示了最近執(zhí)行的搜索從而用戶可以僅僅通過選擇先前搜索就能重新啟動(dòng)先前搜索,并且使得先前搜索再次運(yùn)行。菜單選擇1325允許用戶清除菜單中最近搜索的列表。
附圖14A、14B和14C顯示了圖像用戶接口文件系統(tǒng)中另一個(gè)窗口的示例,例如在Macintosh操作系統(tǒng)上運(yùn)行的Finder程序。這些窗口顯示特定搜索的結(jié)果并且也顯示了保存和使用智能文件夾的能力,該智能文件夾保存了先前搜索。附圖14A示出的窗口1401包括顯示區(qū)域1403、用戶配置區(qū)域1405、智能文件夾1406、系統(tǒng)指定區(qū)域1407、圖標(biāo)查看按鈕1409、列表查看按鈕1410和列查看按鈕1411。窗口1401還包括文本輸入?yún)^(qū)域1415和位置部分1416,該位置部分可以用于指定搜索位置,該部分還包括保存按鈕1417。在部分1416之下的附加部分使得用戶可以進(jìn)一步說明有關(guān)搜索的細(xì)節(jié),在這種情況下指明文檔的類型,該文檔是最近一周查看過的圖像。用戶在這種情況下通過下述方式設(shè)定搜索參數(shù),該方式就是從下拉菜單1419中選擇“類別”選項(xiàng)和從下拉菜單1420中選擇“圖像”類型和從下拉菜單1418中選擇“最近查看”選項(xiàng)和從下拉菜單1422中選擇“本周(this week)”。用戶還通過選擇按鈕1421選擇“隨處”從而搜索在與系統(tǒng)相連的所有磁盤和存儲(chǔ)裝置上執(zhí)行。該結(jié)果顯示在顯示區(qū)域1403上。用戶接著通過選擇“保存”按鈕1417存儲(chǔ)搜索查詢,并且可以命名該保存的搜索查詢?yōu)椤氨局軋D像(this week’s images)”以生成智能文件夾1406,如用戶配置部分1405所示。這使得用戶可以在較近的時(shí)間內(nèi)僅僅通過選擇智能文件夾1406即重復(fù)該搜索,該智能文件夾使得系統(tǒng)再次執(zhí)行新搜索,并且與搜索標(biāo)準(zhǔn)匹配的所有數(shù)據(jù)將在顯示區(qū)域1403中加以顯示。因此,如果從通過選擇智能文件夾1406執(zhí)行下次搜索起的最近幾周,顯示在附圖14A中的顯示區(qū)域1403的文件中沒有文件被查看,在幾周之后,通過選擇智能文件夾1406的搜索的重復(fù)將產(chǎn)生完全不同的列表。
附圖14B顯示了一種方式,在該方式下用戶可以在由保存的搜索確定的搜索結(jié)果中分類或者進(jìn)一步搜索,該保存的搜索例如智能文件夾。在附圖14B的情況下,用戶選擇了智能文件夾1406并且接著在文本輸入?yún)^(qū)域1415中輸入文字“jpg”1425。這使得系統(tǒng)過濾或者進(jìn)一步限制智能文件夾1406保存的搜索查詢獲得的搜索結(jié)果。因此,PhotoShop文件和例如TIF文件和GIF文件的其他文件排除在附圖14B的顯示區(qū)域1403中顯示的搜索結(jié)果之外,因?yàn)橛脩敉ㄟ^添加額外的搜索標(biāo)準(zhǔn)排除了這些文件,該搜索標(biāo)準(zhǔn)由文本輸入?yún)^(qū)域1415中的文本1425指明??梢钥闯觥癹pg”文字輸入與其他搜索參數(shù)進(jìn)行邏輯與操作以獲得在顯示區(qū)域1403顯示的搜索結(jié)果。還可以看出用戶通過選擇圖標(biāo)查看按鈕1409選擇圖標(biāo)查看。因此,用戶可能保存搜索查詢并且隨后使用它,并且進(jìn)一步限制搜索查詢的結(jié)果,該限制通過在搜索查詢的結(jié)果上執(zhí)行搜索以進(jìn)一步限制搜索結(jié)果實(shí)現(xiàn)。
附圖14C展現(xiàn)了窗口1401并且展現(xiàn)了顯示在顯示區(qū)域1403的搜索結(jié)果,在顯示區(qū)域,結(jié)果基于由智能文件夾1406確定的保存的搜索。用戶通過選擇下拉區(qū)域1427A使得下拉菜單1427顯示。下拉區(qū)域1427包括用戶可以選擇的一些選項(xiàng)。這些選項(xiàng)包括隱藏搜索標(biāo)準(zhǔn)或者保存搜索(其與選擇按鈕1417類似)或者顯示查看選項(xiàng)或者打開選擇文件。舉例而言,這使得用戶可以隱藏搜索標(biāo)準(zhǔn),因此使得部分1416和其他搜索參數(shù)從窗口1401中移除,該窗口是可移動(dòng)的、可調(diào)整大小的、可最小化的并且可關(guān)閉的窗口。
附圖14D顯示了用戶接口的示例,該用戶接口允許用戶指定例如智能文件夾1406智能文件夾的外觀。
附圖15A、15B、15C和15D顯示了系統(tǒng)級(jí)搜索輸入用戶接口和搜索結(jié)果用戶接口的示例。在一個(gè)特定的示例性實(shí)施例中,這些用戶接口在整個(gè)系統(tǒng)中針對(duì)所有應(yīng)用都是有效的,這些應(yīng)用在系統(tǒng)和所有文件和元數(shù)據(jù)甚至地址簿程序中的地址簿實(shí)體上運(yùn)行,例如個(gè)人信息管理程序,和日歷程序中的日歷實(shí)體和電子郵件程序中的電子郵件等等。在一個(gè)示例性實(shí)施例中,系統(tǒng)開始執(zhí)行搜索并且開始作為用戶鍵入到文本輸入?yún)^(qū)域的文本顯示搜索結(jié)果,該文本輸入?yún)^(qū)域例如文本輸入?yún)^(qū)域1507。該搜索結(jié)果分類組織并且顯示在較短的列表中,該列表被有意簡化以僅提出選定數(shù)量的搜索查詢的最為相關(guān)(評(píng)估較好的)的匹配項(xiàng)或者命中項(xiàng)。用戶可以通過選擇命令要求所有命中項(xiàng)的顯示,該命令例如“全部顯示(show all)”命令1509。附圖15A展示了由數(shù)據(jù)處理系統(tǒng)控制的顯示的一部分。該部分包括菜單欄1502,在菜單欄的遠(yuǎn)端具有搜索菜單命令1505。用戶可以通過定位光標(biāo)、使用鼠標(biāo)或者通過其他方式啟動(dòng)或者選擇命令,來選擇搜索菜單命令,使用鼠標(biāo)例如將鼠標(biāo)置于搜索菜單命令1505之上。這引發(fā)文本輸入?yún)^(qū)域1507的顯示,用戶可以向該區(qū)域中輸入文本。在附圖15A顯示的示例中,該圖是顯示的一部分,用戶輸入文本“shakeit”,引發(fā)搜索結(jié)果區(qū)域的顯示,該區(qū)域直接低于“全部顯示”命令區(qū)域1509,該命令區(qū)域本身直接低于文本輸入?yún)^(qū)域1507??梢钥闯雒谢蛘咂ヅ浔话捶N類(“文檔(documents)”和“PDF文檔(PDFdocuments)”)分組,該種類顯示為搜索結(jié)果區(qū)域1503的種類1511和1513。附圖15B顯示了搜索的另一個(gè)示例。在這種情況下,獲得了大量命中項(xiàng)(392項(xiàng)命中),其中只有少數(shù)顯示在搜索結(jié)果區(qū)域1503中。另外,命中項(xiàng)按照種類1511和1513加以組織。每一種類在顯示結(jié)果區(qū)域1503上顯示的項(xiàng)目數(shù)這一方面受到限制,以允許同時(shí)在搜索結(jié)果區(qū)域上可以顯示更多的種類。舉例而言,在文檔類中命中項(xiàng)的數(shù)目會(huì)大大超過搜索結(jié)果區(qū)域1503中的有效顯示空間,但是該種類的命中項(xiàng)被限制在類1511的搜索結(jié)果區(qū)域1503的預(yù)定的或者動(dòng)態(tài)確定的實(shí)體數(shù)目以內(nèi)。附加類,“命中最高項(xiàng)(top hit)”基于得分或者相關(guān)度使用本領(lǐng)域公知的技術(shù)被選出。用戶可以選擇“全部顯示”命令1509引發(fā)窗口的顯示,該窗口例如顯示在附圖16A中的窗口1601。附圖15C顯示本發(fā)明一個(gè)實(shí)施例的圖形用戶界面的顯示,該界面包括菜單欄1502和在菜單欄1502上的搜索菜單命令1505。附圖15D顯示了搜索結(jié)果區(qū)域1503的另一個(gè)示例,該區(qū)域在術(shù)語“safari”的搜索輸入到文本輸入?yún)^(qū)域1507之后顯示。從附圖15D中的搜索結(jié)果區(qū)域1503可以看出,搜索結(jié)果再次被分類組織。另一個(gè)搜索結(jié)果窗口1520也顯示在附圖15D中的用戶接口。可以看出應(yīng)用程序作為搜索結(jié)果的一部分得到檢索,并且用戶可以通過從搜索結(jié)果區(qū)域選擇應(yīng)用程序的方式加載任一個(gè)該應(yīng)用程序,從而致使程序加載。
附圖16A和16B顯示了搜索結(jié)果窗口的示例,通過在附圖15A或者15B中選擇“全部顯示”命令1509,使得該窗口得以顯示??商鎿Q地,該窗口作為用戶選擇“查找”命令或者其他一些表明該搜索是所期待的命令的結(jié)果顯示。另外,附圖16A和16B所示的窗口1601可以響應(yīng)顯示所有命令的選擇或者響應(yīng)查找命令的選擇加以顯示。窗口1601包括文本輸入?yún)^(qū)域1603、分組菜單選擇區(qū)域1605、分類菜單選擇區(qū)域1607和地方菜單選擇區(qū)域1609。分組選擇區(qū)域1605允許用戶指明在搜索結(jié)果之中項(xiàng)目被相應(yīng)分組的方式。如附圖16A所示的示例中,用戶從分組菜單選擇區(qū)域1605中選擇“類別”選項(xiàng),得到按照文檔或者文件的類別或者類型分組的或者分類的搜索結(jié)果。如附圖16A所示,可以看出文件類型包括“html”文件、圖像文件、PDF文件、源代碼文件和其他類型文件。通過在部分之內(nèi)進(jìn)行分組每一類型或者種類的文檔與其他文檔分離并且通過標(biāo)題與其他部分分離。因此,標(biāo)題1611、1613、1615、1617、1619、1621和1623指定每一分組并且將一個(gè)分組與其他分組分離。這使得用戶可以將注意力聚集到根據(jù)文檔類型評(píng)價(jià)搜索結(jié)果上。在每一組內(nèi)部,例如文檔組或者文件夾組,用戶指明項(xiàng)目按照時(shí)間存儲(chǔ),因?yàn)橛脩粼诜诸惒藛芜x擇區(qū)域1607中選擇了日期選項(xiàng)。用戶還通過在地方菜單選擇區(qū)域1609中選擇“隨處”指明了所有的存儲(chǔ)位置都被搜索。搜索結(jié)果列表中的每一項(xiàng)包括信息按鈕1627,該按鈕可以被選擇以產(chǎn)生附加信息的顯示,該信息可以從系統(tǒng)中獲得。該附加信息的一個(gè)示例顯示在附圖17中,在該附圖中用戶從項(xiàng)目1635中選擇信息按鈕1627,導(dǎo)致與該項(xiàng)目相應(yīng)的圖像1636的顯示以及附加信息1637的顯示。類似地,用戶從另一項(xiàng)目1630中選擇了信息按鈕以產(chǎn)生項(xiàng)目1631的圖像以及附加信息1632的顯示。用戶可以通過選擇關(guān)閉按鈕1628將附加信息從顯示中移除,該按鈕引發(fā)項(xiàng)目1635的信息的顯示從而恢復(fù)到附圖16A中所示的項(xiàng)目的外觀。用戶可以通過選擇附圖16A中所示的折疊按鈕1614,折疊全組以在該組中隱藏入口或者搜索結(jié)果,從而導(dǎo)致如附圖16B所示的在該組中入口消失。如附圖16B所示,用戶可以通過選擇展開按鈕1614A使得該項(xiàng)目再次出現(xiàn),從而恢復(fù)到附圖16A所示的項(xiàng)目顯示上。
附圖16A和16B所示的搜索結(jié)果用戶接口只是展示了該類中有限數(shù)量的匹配項(xiàng)或者命中項(xiàng)。在該附圖的特定示例中,只有五個(gè)頂級(jí)(最為相關(guān)的或者排序最高的)命中項(xiàng)得到顯示。這通過注意在該組每一列表底端的入口可以看出,該入口表明該組中還有多少命中項(xiàng);可以通過選擇該指示部分這些命中項(xiàng)可以被檢查,該指示部分例如指示部分1612,其使得用于“按鈕(button)”的搜索的文檔種類或者類別中的所有項(xiàng)目得以顯示,該“按鈕”被輸入到文本輸入?yún)^(qū)域1603。該行為的進(jìn)一步的示例在下面描述并且與附圖18A和18B一起顯示。應(yīng)當(dāng)知道窗口1601是可以關(guān)閉并且可以調(diào)整大小并且可以移動(dòng)的窗口,并包括關(guān)閉按鈕和調(diào)整大小控制器1625A。
附圖18A和18B闡釋了與窗口1601非常相似的另一個(gè)窗口1801。窗口1801包括文本輸入?yún)^(qū)域1803、分組菜單選擇區(qū)域1805、分類菜單選擇區(qū)域1807和地方菜單選擇區(qū)域1809,其中每一個(gè)區(qū)域分別與附圖16A中的區(qū)域1605、1607和1609以相類似的方式發(fā)揮功能。在窗口1801中列表查看中,每一個(gè)項(xiàng)目包括信息按鈕1827,該按鈕允許用戶獲得超出窗口1801中所示的項(xiàng)目列表的附加信息。窗口1801還包括標(biāo)題1811、1813、1815、1817、1819、1821和1823,其將每一個(gè)項(xiàng)目組與其他組分離,該項(xiàng)目組按照文檔的類別或者種類分組,并且在每一個(gè)項(xiàng)目組中按照日期排序。折疊按鈕1814對(duì)于每一個(gè)標(biāo)題是有效的。在附圖18A和18B中示出的實(shí)施例顯示了在不同的查看信息的模式之間交換。舉例而言,如附圖18A所示,用戶可以通過選擇指示部分1812顯示特定組中的所有命中項(xiàng),該指示部分致使在區(qū)域1818A中在窗口1801中所有圖像文件得以顯示。該窗口是可以滾動(dòng)的,因此允許用戶可以滾動(dòng)瀏覽所以圖像。用戶可以恢復(fù)到只顯示五個(gè)最為相關(guān)的圖像的列表的情形,其通過選擇附圖18B中所示的“顯示前5個(gè)(show top 5)”按鈕1832實(shí)現(xiàn)。另外,用戶可以在附圖18A和18B所示的圖像部分的列表查看或者圖標(biāo)查看中做出選擇。用戶可以通過選擇列表查看按鈕1830選擇列表查看,或者通過選擇圖標(biāo)查看按鈕1831選擇圖標(biāo)查看。在附圖16A中,圖像組的列表查看被示出;并且在附圖18A和18B中,圖像組的圖標(biāo)查看被示出??梢钥闯鲈趩蝹€(gè)、可移動(dòng)、可調(diào)整大小、可關(guān)閉的搜索結(jié)果窗口中,具有兩種不同查看方式(例如列表查看和圖標(biāo)查看),該兩種查看方式同時(shí)顯示在窗口中。舉例而言,在附圖18A和18B中,標(biāo)題1819下的PDF文檔以列表查看顯示,同時(shí)標(biāo)題1817下的圖形以圖表查看顯示。從附圖18A和18B中可以看出,每一圖像以預(yù)覽的方式顯示,如發(fā)明人SteveJobs、Steve Lemay、Jessica Kahn、Sarah Wilkin、David Hyatt、Jens Alfke、Wayne Loofbourrow和Bertrand Serlet提出的題目為“現(xiàn)場內(nèi)容調(diào)整大小(Live Content Resizing)”的專利申請(qǐng)中的描述,其能夠現(xiàn)場調(diào)整大小,該專利申請(qǐng)的提交日與本申請(qǐng)相同,并且已經(jīng)轉(zhuǎn)讓給了此處描述的本發(fā)明的受讓人,并且該專利申請(qǐng)?jiān)诖颂幈唤Y(jié)合參考。
附圖19A顯示了搜索結(jié)果窗口的另一個(gè)示例,該窗口與窗口1601類似。附圖19A顯示的窗口1901包括文本輸入?yún)^(qū)域1903和分組菜單選擇區(qū)域1905和分類菜單選擇區(qū)域1907和地方菜單選擇區(qū)域1908。另外,窗口還包括關(guān)閉按鈕1925和調(diào)整大小控制器1925A。文本被輸入到文本輸入?yún)^(qū)域1903以產(chǎn)生窗口1901所示的搜索結(jié)果。搜索結(jié)果再次按用戶選擇的種類分組,在該情況下該種類是人員(people)選項(xiàng)1906。這使得標(biāo)題1911、1913、1915和1917根據(jù)人員的姓名分別顯示組。在每一組中,用戶選擇按照特定文件或者文檔的日期排序。舉例而言,附圖19A所示的用戶接口允許用戶指明個(gè)體的姓名并且允許用戶按照人員分組以查看兩人之間的通信。附圖19B顯示了另一種方式,在該方式下用戶以與附圖19A所示的方式不同的方式將文本搜索(“imran”)分組。在附圖19B所示的情況下,用戶在菜單選擇區(qū)域1905的組中選擇展開列表(flat list)并且從分類菜單選擇區(qū)域1907中選擇“人員”。窗口1901A的結(jié)果顯示不具有標(biāo)題并且因此顯示為展開文件。
附圖19C顯示了另一個(gè)搜索結(jié)果窗口1930的用戶接口,該窗口包括文本輸入?yún)^(qū)域1903和選擇區(qū)域1905、1907和1908以及滾動(dòng)控制器1926。顯示在窗口1930中的結(jié)果按照日期分組并且在每一分組中按照日期排序。因此,標(biāo)題1932、1934、1936、1938和1940指明時(shí)間期間,該時(shí)間期間例如文檔最后修改的時(shí)間(例如今天最后修改、或者昨天、或者上周)。在搜索結(jié)果窗口1930中的顯示還有信息按鈕1942,該按鈕可以被選擇用于揭示更多的信息,該信息例如在今天組下的條目中顯示的圖標(biāo)1945和附加信息1946。該附加信息可以通過選擇收縮按鈕1944移除。
附圖19D顯示了搜索結(jié)果窗口1950,在該窗口中針對(duì)文本字符串“te”的搜索被按照日期分組,但是該搜索被限制在菜單選擇區(qū)域1908指明的“home”文件夾。如附圖19D所示,時(shí)間特定標(biāo)題1952、1954、1956和1958在組中將項(xiàng)目與其他組分離。
附圖19E顯示了搜索結(jié)果窗口的替代性實(shí)施例。在該實(shí)施例下,窗口1970包括與窗口1901相似的元素;例如選擇區(qū)域1905、1907,和滾動(dòng)控制器1926以及關(guān)閉按鈕1925和調(diào)整大小控制器1925A。搜索結(jié)果窗口1970還包括“何時(shí)(when)”菜單選擇區(qū)域1972,該區(qū)域允許用戶基于時(shí)間以及輸入到文本輸入?yún)^(qū)域1903的文本指明搜索參數(shù)。從附圖19E所示的示例中可以看出,用戶決定按類對(duì)搜索結(jié)果分組并且在每一組中按照日期排序。標(biāo)題1973、1975、1977和1979的結(jié)果顯示在附圖19E中。
附圖20顯示了操作系統(tǒng)級(jí)菜單以輸入搜索查詢的示例性方法,例如,如附圖15A或者15B或者15C所示的可以通過選擇搜索菜單命令1505使用的系統(tǒng)級(jí)菜單。在操作2001中,系統(tǒng)顯示用于輸入搜索查詢的系統(tǒng)級(jí)菜單。這可以是搜索菜單命令1505。在操作2003中用戶輸入搜索,并且在搜索查詢輸入的時(shí)候,在用戶輸入完搜索查詢之前,系統(tǒng)開始執(zhí)行并且開始顯示搜索結(jié)果。這樣當(dāng)用戶輸入信息之后,提供及時(shí)反饋和用戶的輸入。在操作2005中,系統(tǒng)在文件、文件的元數(shù)據(jù)、電子郵件程序中的電子郵件、地址簿程序中的地址簿項(xiàng)目、日歷程序中的日歷項(xiàng)目等等中執(zhí)行搜索。在操作2007中,如果具有多于特定數(shù)目的命中項(xiàng),系統(tǒng)接著顯示命中項(xiàng)的縮減(例如不完整)列表??s減列表的一個(gè)示例顯示在附圖15B中。該列表可以按照相關(guān)度排序并且被分隔成組,該組例如文檔的種類或者類別。接著,在操作2009中系統(tǒng)接收來自用戶的顯示所有命中項(xiàng)的命令,并且在操作2011中系統(tǒng)顯示搜索結(jié)果窗口,例如附圖16A所示的窗口1601。該窗口具有在相同的可關(guān)閉、可調(diào)整大小和可移動(dòng)的窗口中顯示兩種不同類型的查看的能力,例如圖標(biāo)查看和列表查看。應(yīng)當(dāng)知道當(dāng)用戶鍵入的時(shí)候執(zhí)行的搜索和當(dāng)用戶鍵入的時(shí)候結(jié)果的顯示可以包括元文件的搜索,該元文件由從文件中提取的元數(shù)據(jù)創(chuàng)建,該文件由許多不同類型的軟件程序創(chuàng)建。
在描述本發(fā)明的另一個(gè)方面的時(shí)候,附圖21和22A、22B、22C和22D現(xiàn)在被提及。該方面涉及選擇文件組的方法,例如獨(dú)立數(shù)據(jù)文件組。在該方面的示例性方法中,數(shù)據(jù)處理系統(tǒng)接收許多項(xiàng)目的選擇,該項(xiàng)目例如數(shù)據(jù)文件、文件夾(例如代表子目錄的圖形用戶接口)、應(yīng)用程序或者一個(gè)或者多個(gè)這些項(xiàng)目的結(jié)合。該選擇可以由許多傳統(tǒng)方法中的一種方法執(zhí)行,該傳統(tǒng)方法用于選擇許多項(xiàng)目,該傳統(tǒng)方法例如(a)將光標(biāo)單獨(dú)定位在每一項(xiàng)目上(例如通過鼠標(biāo)的移動(dòng))并且例如單獨(dú)通過按壓和釋放按鈕表明選擇,例如鼠標(biāo)按鍵;(b)將光標(biāo)指向列表中的第一項(xiàng)目并且表明第一項(xiàng)目的選擇并且將光標(biāo)指向項(xiàng)目表的最后一個(gè)項(xiàng)目并且表明在列表中從第一項(xiàng)目到最后一個(gè)項(xiàng)目的所有項(xiàng)目的選擇;(c)通過拖拽光標(biāo)的操作畫出選擇矩形,等等。因此附圖21中所示的操作2101接收一個(gè)或者多個(gè)輸入,該輸入表明多個(gè)項(xiàng)目的選擇。操作2103中系統(tǒng)接收命令,該命令即要求新的存儲(chǔ)工具(例如文件夾)的創(chuàng)建,還要求具有新的存儲(chǔ)工具的許多項(xiàng)目的附屬操作。盡管操作2103在操作2101之后展示,但是在特定實(shí)施例中操作2103可以在操作2101之前。操作2103的附屬操作可以是復(fù)制或者移動(dòng)操作。舉例而言,用戶可以選擇多個(gè)項(xiàng)目并且接著命令系統(tǒng)將這些項(xiàng)目從其存在的位置移動(dòng)到新文件夾,該新文件夾在一個(gè)操作中作為移動(dòng)和創(chuàng)建新文件夾命令的結(jié)果被創(chuàng)建。相應(yīng)操作2103中接收的命令,系統(tǒng)使用預(yù)定目錄路徑名或者用戶指定路徑名創(chuàng)建新的存儲(chǔ)工具,例如新文件夾,該系統(tǒng)進(jìn)一步將選擇的許多項(xiàng)目與新的存儲(chǔ)工具關(guān)聯(lián)。該關(guān)聯(lián)可以是移動(dòng)或者復(fù)制操作。典型地,復(fù)制操作包括對(duì)每一個(gè)選擇的項(xiàng)目復(fù)制并且將項(xiàng)目存儲(chǔ)在路徑名下,其表現(xiàn)為項(xiàng)目存儲(chǔ)在具有預(yù)定目錄路徑名或者用戶指定目錄路徑名的新文件夾中。在移動(dòng)操作之中項(xiàng)目被移動(dòng)到新文件夾中,移動(dòng)操作可以僅僅改變與每一個(gè)選擇的項(xiàng)目關(guān)聯(lián)的路徑名(而不是復(fù)制該項(xiàng)目),改變的路徑名將影響選擇的項(xiàng)目的新文件系統(tǒng)的位置(例如在新文件夾的子目錄中)。
附圖22A-22D顯示了附圖21中的方法的一個(gè)示例。顯示裝置上的桌面2201得以顯示,該桌面包括許多窗口,也在桌面上包括圖標(biāo)2227。光標(biāo)2211也顯示在桌面上。窗口2203、2205和2207每一個(gè)都包含許多顯示為圖標(biāo)的項(xiàng)目。特別地,窗口2203包括由圖標(biāo)2215代表的數(shù)據(jù)文件,該數(shù)據(jù)文件在由圖標(biāo)2217代表的文件夾(例如文件存儲(chǔ)系統(tǒng)中的子目錄的圖形表示)之中。窗口2205包括程序圖標(biāo)2223和文檔圖標(biāo)2219和另一個(gè)文檔圖標(biāo)2225和文件夾圖標(biāo)2221。窗口2207顯示了包含“文件B(File B)”的一些文件的列表查看。用戶可以接著使用光標(biāo)2211或者使用其他傳統(tǒng)用戶接口技術(shù)選擇多個(gè)項(xiàng)目。這可以使用表明多個(gè)項(xiàng)目的選擇的一個(gè)輸入或者多個(gè)輸入完成。附圖22B顯示了用戶選擇圖標(biāo)2215、2217、2223、2225、2227和窗口2207中“文件B(File B)”的結(jié)果??梢钥闯龉鈽?biāo)2211在操作位置上與圖標(biāo)2225鄰近。接著用戶在選擇許多項(xiàng)目之后,可以調(diào)用操作2103提及的命令。其的示例顯示在附圖22C中,該圖表示了桌面2101的一部分,如附圖22C所示該部分被指定為2201A。用戶引發(fā)彈出菜單2230得以顯示,該彈出菜單包括三項(xiàng)2231、2232和2233。選項(xiàng)2231允許用戶將所有選擇的項(xiàng)目移至回收站(例如刪除它們),同時(shí)選項(xiàng)2232和2233與附圖21中的操作2103中的命令相關(guān)。特別地,選項(xiàng)2232是可由用戶選擇以產(chǎn)生新文件夾的命令,并且在同樣的操作下,移除已被選入新文件夾的項(xiàng)目。選項(xiàng)2233是在操作中允許用戶生成新文件夾并且將選中的項(xiàng)目復(fù)制到新文件夾的命令。在附圖22A-22D所示的示例中,用戶選擇選項(xiàng)2232,從而導(dǎo)致系統(tǒng)產(chǎn)生新的存儲(chǔ)工具,例如具有預(yù)定路徑名(例如“新文件夾(new folder)”)的新文件夾,或者可替代地,具有用戶指定路徑名的新文件夾。該結(jié)果顯示在附圖22D中,在該附圖中桌面2201現(xiàn)在包括標(biāo)題為新文件夾的新窗口,該窗口代表和顯示新文件夾的內(nèi)容,其也顯示為文件夾2253,該文件夾2253是代表新文件夾的圖形用戶接口。
應(yīng)當(dāng)知道該方法可以使用各種替代方案。舉例而言,在命令選項(xiàng)2232或者2233被選擇后窗口顯示,并且該窗口詢問新文件夾的名稱。在用戶沒有輸入新名稱的情況下,窗口顯示默認(rèn)名稱(例如“新文件夾”)??商娲?,系統(tǒng)可以僅僅給新文件夾或者新存儲(chǔ)工具默認(rèn)路徑名。另外,系統(tǒng)可以在不顯示附圖22D中的新窗口的情況下,僅僅創(chuàng)建新文件夾并且將項(xiàng)目移動(dòng)或者復(fù)制到新文件夾中。
經(jīng)過計(jì)算來看,數(shù)據(jù)處理系統(tǒng)中的用戶文件的全文內(nèi)容索引是耗時(shí)的。舉例而言,為了創(chuàng)建代表已被索引的文件全文的索引數(shù)據(jù)庫的目的,用戶文件的全文內(nèi)容索引會(huì)花費(fèi)可觀的時(shí)間消耗以及在例如數(shù)據(jù)處理系統(tǒng)的硬盤的存儲(chǔ)裝置上讀寫數(shù)據(jù)會(huì)花費(fèi)可觀的存儲(chǔ)輸入/輸出(I/O)時(shí)間。這會(huì)影響當(dāng)系統(tǒng)自動(dòng)索引用戶文件的時(shí)候意圖使用系統(tǒng)的用戶。類似地,將來自用戶文件的元數(shù)據(jù)引入到元數(shù)據(jù)庫也會(huì)花費(fèi)可觀的時(shí)間消耗以及可觀的存儲(chǔ)輸入/輸出(I/O)時(shí)間。一些目錄和文件是用戶不感興趣的,因此該目錄和文件的索引或者引入經(jīng)??梢员苊?。避免一個(gè)文件或者整個(gè)目錄的文件的索引和/或引入可以在數(shù)據(jù)處理系統(tǒng)中潛在地節(jié)省可觀的處理負(fù)擔(dān)。進(jìn)一步,一些具有引入或者索引需要的操作是多余的,并且因此可能避免這些操作的額外工作。此處描述的技術(shù)可以單獨(dú)使用或者與技術(shù)結(jié)合。兩項(xiàng)或者多項(xiàng)此處描述的技術(shù)的結(jié)合可以一起使用以降低執(zhí)行用戶文件索引所需的計(jì)算時(shí)間量和I/O時(shí)間量,并且一起使用以將元數(shù)據(jù)從用戶文件添加(例如引入)到元數(shù)據(jù)庫,上述技術(shù)的結(jié)合包括過濾、通過結(jié)合機(jī)制以及通過建立瀏覽順序降低通知的數(shù)量,其可以參考“探測點(diǎn)(probe points)”的使用。這些技術(shù)對(duì)于可換體尤其有用。可換體可以被認(rèn)為是存儲(chǔ)體,該存儲(chǔ)體易于和第一數(shù)據(jù)處理系統(tǒng)(例如第一計(jì)算機(jī))電連接,并且其在連接到第一數(shù)據(jù)處理系統(tǒng)的時(shí)候可以用于從存儲(chǔ)體中讀取數(shù)據(jù)和/或向存儲(chǔ)體寫入數(shù)據(jù),并且接著可以容易地和第一數(shù)據(jù)處理系統(tǒng)電斷開并且和第二數(shù)據(jù)處理系統(tǒng)電連接以在與第二數(shù)據(jù)處理系統(tǒng)電連接的時(shí)候也向存儲(chǔ)體讀取和寫入數(shù)據(jù)。USB閃存驅(qū)動(dòng)器和USB、總線源硬盤驅(qū)動(dòng)器是可換體的示例。本發(fā)明的方法可以在非可換存儲(chǔ)體(例如需要打開計(jì)算機(jī)系統(tǒng)機(jī)箱才能移除存儲(chǔ)體的存儲(chǔ)體)和可換存儲(chǔ)體上都可以實(shí)現(xiàn)。
附圖23展示了結(jié)合使用探測點(diǎn)、通知的過濾和結(jié)合的方法的示例。應(yīng)當(dāng)知道數(shù)據(jù)處理系統(tǒng)的使用中通常有兩個(gè)不同的方面;尤其是沒有索引的或者需要重新索引的存儲(chǔ)體(可以是可換存儲(chǔ)體)需要相當(dāng)多的行為,該行為包括瀏覽文件以索引和文件的索引。另一個(gè)方面涉及與用戶對(duì)于現(xiàn)有文件的改變,該現(xiàn)有文件已經(jīng)被索引或者被分別引入索引數(shù)據(jù)庫或者元數(shù)據(jù)庫。該改變將致使做出通知,用于引發(fā)元數(shù)據(jù)庫中的元數(shù)據(jù)(針對(duì)已經(jīng)改變的文件)更新,并且用于引發(fā)索引數(shù)據(jù)庫的更新。應(yīng)當(dāng)知道附圖23顯示了操作的特定次序但是在替代性實(shí)施例中也可以利用其他次序。在操作2301,系統(tǒng)確定用于索引的文件瀏覽順序。典型地,該順序?qū)εc用戶最為相關(guān)的位置賦予最高的優(yōu)先權(quán),例如用戶的主文件夾或者所有用戶的主文件夾,接著文檔文件夾,并且接著桌面,并且接著是由一個(gè)或者多個(gè)用戶創(chuàng)建的其他文件夾。典型地,最低優(yōu)先權(quán)的位置是操作系統(tǒng)目錄,例如文件夾,該目錄一般情況下不會(huì)包括用戶創(chuàng)建的數(shù)據(jù)或者對(duì)用戶有用的數(shù)據(jù)。在文件中該順序可以基于數(shù)據(jù)所表明的用戶的興趣,并且該順序可以基于用戶訪問的頻度和最近性,該順序或者附加于位置或者作為使用位置的替代,該數(shù)據(jù)例如記錄(例如通過記錄路徑名)用戶查看或者以其他方式訪問過的文件或者目錄,正常地,用戶不可見的系統(tǒng)文件不包含在該順序中;不可見的文件或者目錄被標(biāo)注從而它們不會(huì)以正常的文件查看方式向用戶顯示,該方式例如Macintosh 10.3的Finder。在正常的情況下,在操作2301中確定的該順序會(huì)指明文件瀏覽的順序從而確定是否有任何需要索引的文件。在瀏覽以發(fā)現(xiàn)需要索引的文件的過程中,規(guī)則被用于過濾文件以確定其是否需要索引。操作2303闡明了該規(guī)則用于確定文件是否需要索引。在特定示例性實(shí)施例中,回收站中的文件或者臨時(shí)目錄中的文件不被索引,因?yàn)橛脩魧?duì)它們不感興趣,該臨時(shí)目錄例如程序或者操作系統(tǒng)創(chuàng)建的用以存儲(chǔ)臨時(shí)文件的目錄,該臨時(shí)文件將被系統(tǒng)和這應(yīng)用程序自動(dòng)刪除。另外,“不可見(invisible)”文件和操作系統(tǒng)文件不會(huì)正常索引。使用該規(guī)則的一項(xiàng)技術(shù)在于瀏覽文件的路徑名以確定該文件是否為系統(tǒng)文件或者是否位于臨時(shí)文件目錄或者是否位于回收站。
附圖23提出的技術(shù)的結(jié)合還包括通知的結(jié)合,該通知用于引發(fā)元數(shù)據(jù)庫和/或索引數(shù)據(jù)庫的更新。典型的情況下,通知的結(jié)合涉及將第一集合的通知結(jié)合為較小集合的通知,該較小集合的通知可以是單獨(dú)的復(fù)合的通知。這顯示在操作2305上,在該操作中例如來在操作系統(tǒng)內(nèi)核的通知的通知被結(jié)合為較小數(shù)量的通知。另外如操作2305所示,使用上述規(guī)則或者較優(yōu)地使用分離規(guī)則,通知本身被過濾;該分離規(guī)則與用于過濾的規(guī)則不同以瀏覽和索引文件的全文。典型地,將一些通知結(jié)合為較小數(shù)目的通知,例如一條通知源自十條通知,將提高數(shù)據(jù)處理系統(tǒng)的性能。在通知被結(jié)合和過濾之后并且在根據(jù)特定順序的文件瀏覽被執(zhí)行之后,接著操作2307被執(zhí)行,在該操作中過濾過的文件的全文內(nèi)容索引被執(zhí)行以生成或者添加到文件的索引數(shù)據(jù)庫(代表文件的全文內(nèi)容),并且來自文件的元數(shù)據(jù)從文件引入,其導(dǎo)致通知生成以更新數(shù)據(jù)庫。應(yīng)當(dāng)理解其發(fā)生用以確定是否有文件需要索引的瀏覽也倒是元數(shù)據(jù)從瀏覽的文件進(jìn)入元數(shù)據(jù)庫。舉例而言,如果可移除存儲(chǔ)裝置,例如可移除硬盤,首先連接到具有此處功能的數(shù)據(jù)處理裝置,該數(shù)據(jù)處理裝置可以瀏覽硬盤以確定沒有索引的文件和來自文件的沒有引入元數(shù)據(jù)庫的元數(shù)據(jù)。因此,在硬盤上的文件瀏覽導(dǎo)致元數(shù)據(jù)從文件引入元數(shù)據(jù)庫以及文件全文內(nèi)容索引,以生成代表索引文件全文內(nèi)容的索引數(shù)據(jù)庫。應(yīng)當(dāng)知道在可替換實(shí)施例中,過濾、結(jié)合和確定瀏覽順序的子集而不是操作的全集可以被使用。舉例而言,可替換實(shí)施例可以使用過濾和結(jié)合而不使用探測點(diǎn)(其為用于確定瀏覽順序的示例性實(shí)施例)。
附圖24顯示了此處描述的本發(fā)明的一個(gè)方面的示例性實(shí)施例。該實(shí)施例使用過濾器以確定文件是否應(yīng)該索引從而生成已被索引的文件內(nèi)容的索引數(shù)據(jù)庫。該特定方法可以獨(dú)立于此處描述的其他方法執(zhí)行,或者與一個(gè)或者多個(gè)其他方法結(jié)合執(zhí)行,例如附圖26中的通知的過濾。操作2401確定是否目錄中的所有文件和/或目錄中的特定文件應(yīng)當(dāng)被索引。存在許多技術(shù)可以被用于完成該項(xiàng)判斷。舉例而言,文件的路徑名可以與預(yù)定路徑名比較以確定文件是否存儲(chǔ)在操作系統(tǒng)目錄或者存儲(chǔ)在臨時(shí)目錄或者回收站目錄。如果在操作2401中確定文件應(yīng)當(dāng)被索引,接著確定文件被過濾“加入”,其意味著在操作2403中文件將被索引并且在操作2405中索引的結(jié)果將被添加到索引數(shù)據(jù)庫中。
附圖25是示例性方法,該方法提供有關(guān)過濾可能如何執(zhí)行的更為具體的示例?;诖鎯?chǔ)體類型的默認(rèn)的規(guī)則,以及任選的用戶提供的規(guī)則被用于構(gòu)建過濾機(jī)(其可以由軟件實(shí)現(xiàn))。用于引導(dǎo)存儲(chǔ)體的默認(rèn)規(guī)則與用于普通盤或者特定盤的默認(rèn)規(guī)則不同,例如iPod裝置。過濾器旨在從不同存儲(chǔ)體中確定用戶根目錄的位置,從而正確的過濾被使用。過濾器甚至企圖正確地映射別名和鏈接以在無法處理的磁盤上找到用戶根目錄,并且在那種情況下使用正確的過濾規(guī)則。過濾機(jī)可以被認(rèn)為是字節(jié)碼的一種形式,其由作為備選文件的評(píng)價(jià)的一部分的程序解釋。備選文件以路徑的形式被提出,并且在路徑被瀏覽的時(shí)候字節(jié)碼被解釋,并且有關(guān)哪一個(gè)規(guī)則適合該路徑的決定被做出。該路徑被逐字檢查直到整個(gè)路徑匹配或者具有不匹配之處。結(jié)果將是最后與該路徑完全匹配的元素定義的結(jié)果。如果結(jié)果沒有定義為部分路徑,結(jié)果將繼承自該路徑最近定義的結(jié)果。來自該過程的結(jié)果正常地被過濾加入(指該文件應(yīng)當(dāng)被索引或者來自文件的元數(shù)據(jù)應(yīng)當(dāng)被引入)或者過濾排出,意味著該文件不應(yīng)當(dāng)被索引和/或來自文件的元數(shù)據(jù)不應(yīng)當(dāng)引入元數(shù)據(jù)庫。可替代地,來自該過程的結(jié)果可以是過濾加入或者過濾排出的嘗試性的決定,最終決定被延遲。在初始結(jié)果之后繼續(xù)過濾執(zhí)行。舉例而言,如果確定路徑式用戶根目錄,則被設(shè)計(jì)用于用戶根目錄的更為具體化的過濾機(jī)被用于在用戶根目錄過濾文件。
附圖25中示例性方法開始于操作2501,在該操作中包含不應(yīng)當(dāng)被索引的文件的路徑名被確定。路徑名的確定可以用于特定類型的存儲(chǔ)體,例如用于引導(dǎo)存儲(chǔ)體而不用于非引導(dǎo)存儲(chǔ)體,因?yàn)閮煞N存儲(chǔ)體的路徑名類型不同。舉例而言,典型地,引導(dǎo)存儲(chǔ)體包括操作系統(tǒng)文件,為了引導(dǎo)數(shù)據(jù)處理系統(tǒng)這些文件是需要的,而非引導(dǎo)存儲(chǔ)體不包括這些文件。因此,根據(jù)存儲(chǔ)體類型在操作2501中確定的路徑名不同。在操作2501的示例中,不應(yīng)當(dāng)被索引的文件包括不可見文件、操作系統(tǒng)文件、回收站中的文件和由數(shù)據(jù)處理系統(tǒng)自動(dòng)創(chuàng)建的臨時(shí)文件夾中的文件。在操作2503中針對(duì)給定類型的存儲(chǔ)體,規(guī)則接著被創(chuàng)建。這些規(guī)則被用于過濾以確定文件是否應(yīng)當(dāng)索引或者是否有元數(shù)據(jù)引入元數(shù)據(jù)庫。規(guī)則的子集存在于特定目錄中,例如上述用戶根目錄。在操作2505中該文件被使用規(guī)則加以瀏覽。優(yōu)選地,瀏覽可以以由此處討論的探測點(diǎn)指明的順序進(jìn)行。在操作2507中,基于規(guī)則確定文件是否要被索引和/或是否具有引入到元數(shù)據(jù)庫中的元數(shù)據(jù)。如操作2507所示,如果文件被索引,接著文件標(biāo)識(shí)符被加入到存儲(chǔ)在非易失存儲(chǔ)器上的“將被索引(to be indexed)”隊(duì)列中,該文件標(biāo)識(shí)符例如持久性的、唯一的標(biāo)識(shí)號(hào)。優(yōu)選地,交易日志可以被用于非易失存儲(chǔ)系統(tǒng)上以創(chuàng)建在非易失存儲(chǔ)系統(tǒng)上將事項(xiàng)寫入“將被索引”隊(duì)列的日志。在這種方式下,隊(duì)列在日志的使用過程中得到保持,該日志保持將事項(xiàng)寫入存儲(chǔ)在非易失存儲(chǔ)器上的隊(duì)列的記錄。典型地,非易失存儲(chǔ)器是被索引的存儲(chǔ)體,例如硬盤或者可移除硬盤。交易日志可以作為簡單交易日志被實(shí)現(xiàn),無需使用日志文件系統(tǒng);或者交易日志可以作為日志文件系統(tǒng)中的日志記錄被實(shí)現(xiàn),該交易符合ACID(自動(dòng)性、一致性、獨(dú)立性和持久性)。
附圖26顯示示例性方法,在該方法中過濾器被使用以確定來自文件的元數(shù)據(jù)是否要輸入到元數(shù)據(jù)庫。應(yīng)當(dāng)知道該方法可以相對(duì)于此處描述的其他方法獨(dú)立執(zhí)行并且與此處描述的其他方法分別執(zhí)行或者可以與其他方法結(jié)合使用,該其他方法例如用于索引操作的文件過濾,其示例顯示在附圖24中。操作2601涉及接收文件通知,例如被修改的現(xiàn)存文件或者被創(chuàng)建的新文件。在操作2603中如何過濾通知被確定。特別地,過濾規(guī)則用于確定是要將文件過濾“加入”還是要將文件過濾“排出”。如果文件要被過濾加入,接著來自文件的元數(shù)據(jù)被引入元數(shù)據(jù)庫,并且如果文件要被過濾排出,接著來自文件的元數(shù)據(jù)不會(huì)被引入元數(shù)據(jù)庫。操作2605顯示,如果過濾器確定文件的元數(shù)據(jù)要被引入,接著數(shù)據(jù)被引入到元數(shù)據(jù)庫。在操作2603中用于過濾的規(guī)則可以與在操作2505中用于過濾的規(guī)則相類似。
附圖27顯示了使用探測點(diǎn)的示例性方法,該探測點(diǎn)確定瀏覽位置的次序以確定是否具有要索引的文件和/或確定是否具有需要將其元數(shù)據(jù)引入元數(shù)據(jù)庫中的文件。附圖27的方法可以獨(dú)立于此處描述的其他方法執(zhí)行,或者與一個(gè)或者多個(gè)其他方法結(jié)合執(zhí)行。操作2701包括在存儲(chǔ)裝置的位置上設(shè)定優(yōu)先權(quán)。該優(yōu)先權(quán)指明瀏覽用于索引的文件或者用于從元數(shù)據(jù)庫中引入元數(shù)據(jù)的文件或者用戶索引和引入的結(jié)合的文件的順序。該位置的示例被描述并且包括用戶根目錄,用戶在根目錄和桌面之外創(chuàng)建文件夾。操作2703顯示了系統(tǒng)根據(jù)順序?yàn)g覽位置以確定文件是否要索引或者文件是否要將其元數(shù)據(jù)引入元數(shù)據(jù)庫或者文件是否需要索引和引入的結(jié)合。在示例性實(shí)施例中,該順序首先指明用戶的主文件夾,并且接著指明用戶在主文件夾之外創(chuàng)建的文件夾,并且接著指明桌面,并且接著指明其他位置,該其他位置例如其他用戶創(chuàng)建的文件夾。附圖27中的操作2705展示了當(dāng)瀏覽揭示要索引的文件(或者要將其元數(shù)據(jù)引入元數(shù)據(jù)庫中的文件)的時(shí)候,文件被加入到“即將”索引的序列(和/或元數(shù)據(jù)引入隊(duì)列)中,該序列是先進(jìn)先出的緩沖器(FIFO buffer)。典型地,附圖27中所示的被稱為“探測點(diǎn)”的使用包括最終探測點(diǎn),在典型的情況下最終探測點(diǎn)是所有瀏覽和索引的捕獲,其瀏覽和索引所有部分而不是從磁盤或者存儲(chǔ)體的根目錄開始。隨著存儲(chǔ)體剩余部分被瀏覽,最終探測點(diǎn)意圖捕獲沒有被索引的部分。當(dāng)瀏覽進(jìn)行到被較早探測點(diǎn)覆蓋的位置時(shí),過濾操作可以告知瀏覽器該部分被過濾,并且因?yàn)槠涫禽^高優(yōu)先權(quán)的探測點(diǎn),可以知道無需對(duì)該位置重新瀏覽。
應(yīng)當(dāng)知道此處描述的過濾技術(shù)也可以作為插件使用,其可以由另一個(gè)程序使用。
盡管過濾提供一種降低索引或者將文件分別引入索引數(shù)據(jù)庫或者元數(shù)據(jù)庫的影響的方法,但是其他技術(shù)也可以被使用,該技術(shù)例如通知的結(jié)合。附圖28、29和30涉及多個(gè)實(shí)施例,在這些實(shí)施例中通知被結(jié)合。由于有時(shí)具有一系列操作,該一系列操作中的操作單獨(dú)需要從文件將元數(shù)據(jù)引入元數(shù)據(jù)庫,結(jié)合是有用的。如果簡單地完成,由于連續(xù)的操作從同一文件中重復(fù)引入元數(shù)據(jù),將會(huì)導(dǎo)致大量的工作。當(dāng)將索引文件加入到索引數(shù)據(jù)庫的時(shí)候,通知的結(jié)合也可以被使用。
附圖28顯示了根據(jù)特定實(shí)施例的具體示例,在該示例中通知被結(jié)合。該總體示例涉及具有一個(gè)或者多個(gè)相關(guān)對(duì)象組的情況,該對(duì)象組例如文件包,典型地,文件包是作為一個(gè)單獨(dú)文件展現(xiàn)給用戶的文件的等級(jí)體系,例如為Macintosh 10.3操作系統(tǒng)所寫的應(yīng)用程序。在操作2803中,下述操作被確定,即一組相關(guān)對(duì)象被存儲(chǔ)到存儲(chǔ)介質(zhì)上,該對(duì)象例如文件包。舉例而言,包被復(fù)制到存儲(chǔ)介質(zhì)上從而產(chǎn)生包的復(fù)數(shù)個(gè)復(fù)制本,潛在地位于不同位置而不是位于文件包的原始位置。在操作2805中,例如單個(gè)通知的一組通知被做出以引發(fā)元數(shù)據(jù)庫的更新,并且作為響應(yīng),在操作2807中,在接收了通知組之后,元數(shù)據(jù)庫被更新,該通知組可以使一個(gè)或者多個(gè)通知,但是低于如果沒有通知結(jié)合的情況下通知的總數(shù)。
典型的通知包括作為通知主題的文件的標(biāo)識(shí)符和在文件和其他有關(guān)數(shù)據(jù)上操作的標(biāo)識(shí)符,例如如果操作是重命名操作則在重命名之前的文件名和在重命名之后的文件名,或者如果操作是許可變化,變化之前和變化之后的信息指定許可。文件的標(biāo)識(shí)符可以是文件的路徑名和/或持久性、唯一文件標(biāo)識(shí)數(shù)或者特征集合。
附圖29顯示了當(dāng)操作在一組相關(guān)對(duì)象上執(zhí)行的時(shí)候,結(jié)合通知的更為詳細(xì)的示例,該相關(guān)對(duì)象例如文件包(相關(guān)對(duì)象的其他示例包括有關(guān)復(fù)制文件整個(gè)體系或者基于索引或者元數(shù)據(jù)隊(duì)列中的事件的結(jié)合)。操作2901確定例如復(fù)制操作的操作在包上執(zhí)行。舉例而言,其可以通過使用軟件組件而發(fā)生,該軟件組件被稱為Launch Services,指明被復(fù)制的文件是文件包的一部分。來自操作系統(tǒng)有關(guān)第一文件的通知也可以包括該文件是包的一部分的標(biāo)識(shí),或者替代性地,作為元數(shù)據(jù)庫一部分的軟件結(jié)合單元需要Launch Services識(shí)別文件是否是包的一部分。在操作2903中,來自包上操作的第一通知被添加到軟件結(jié)合單元的緩存中。該緩存延遲將通知添加到引入隊(duì)列,例如“將被引入”隊(duì)列。結(jié)合單元的緩存單元可以在到達(dá)時(shí)記憶每一個(gè)通知,并且可以不管通知的數(shù)量而結(jié)合進(jìn)程中的任意兩個(gè)通知。在另一方面,在不同的實(shí)施例中,部分緩存僅僅記憶到達(dá)緩存的文件的有限子集,并且依靠該位置暫時(shí)的本地化在非常小的存儲(chǔ)和計(jì)算的投入的情況下獲得全緩存的最大利益。在操作2905中結(jié)合單元在包的操作中持續(xù)獲得的進(jìn)一步的通知(舉例而言,當(dāng)包中的每一個(gè)文件被復(fù)制的時(shí)候,結(jié)合單元獲得另外的通知),并且結(jié)合單元放棄進(jìn)一步的通知,因?yàn)樗麄兪且恍┫嗤陌?。一旦沒有了獲取包的通知成為可能,接著單獨(dú)的通知(或者少于通知總數(shù)的一組通知)被推向輸入端以使得元數(shù)據(jù)輸入到元數(shù)據(jù)庫。操作2907代表一種確定不再有通知到達(dá)的方式。在一段時(shí)間之后,如操作2907所示,第一通知被添加到“即將輸入”隊(duì)列中。第一通知表明包的全部內(nèi)容,通過如操作2909一樣處理通知的方式該包可以接著被引入以更新元數(shù)據(jù)庫。時(shí)間期間可以是短期時(shí)間,例如不到一秒(a fraction of a second)。確定何時(shí)沒有進(jìn)一步的通知的替代性技術(shù)可能是當(dāng)通知緩存沒有溢出的時(shí)候。在這種情況下,該項(xiàng)目的最后通知從緩存中取出以為新的元素騰出空間,并且如果另一個(gè)通知沒有到達(dá),與該通知為列表中的第一個(gè)通知一樣被處理。
對(duì)于單獨(dú)文件的通知的結(jié)合可以根據(jù)本發(fā)明的特定實(shí)施例執(zhí)行,該文件不是包的一部分或者相關(guān)對(duì)象組。附圖30演示對(duì)于單獨(dú)文件執(zhí)行通知的結(jié)合的示例性方法??傊瑢?duì)于單獨(dú)文件而言,第一通知之后繼續(xù)通知的可能性相對(duì)較低,從而通知可以盡快被直接置于輸入隊(duì)列中。優(yōu)選地,如附圖30所示,其通過結(jié)合單元的緩存單元。如果在原始通知被從隊(duì)列中取出并且輸入之前類似的通知到達(dá),接著結(jié)合單元宣布新的通知是多余的并且將其刪除。其效果就是在原始通知被從隊(duì)列中取出之前發(fā)生的所有通知被壓縮到一個(gè)單獨(dú)的通知中??商娲兀淇梢詨嚎s到通知的集合中,該通知的集合比原始通知組可能的情況小。如果通知已經(jīng)從隊(duì)列中取出,深層的通知以輕微不同的模式被結(jié)合,該模式被稱為“書檔模式(bookend mode)”。如果第一輸入已經(jīng)在第一文件中發(fā)生,接著繼續(xù)通知到達(dá)太遲而不能與在先的通知結(jié)合。在書檔模式下,最后的通知被保存,該通知跟隨在從隊(duì)列中取出的通知,然而所有該文件的進(jìn)一步的通知被丟棄直到變得可能沒有進(jìn)一步的通知得以接收。這種情況下,最后的通知傳送給元數(shù)據(jù)輸入端,該通知是被接收或者最后被保存的通知。效果是將系列的通知書檔化為通知的較小集合,例如開始一個(gè)單獨(dú)的通知和最終一個(gè)單獨(dú)的通知。附圖30代表針對(duì)單獨(dú)文件結(jié)合通知的示例性方法。該方法還可以用于結(jié)合通知以更新文件內(nèi)容的索引數(shù)據(jù)庫。
在操作3001中,第一通知被接收,該第一通知是文件“ABC.txt”已被修改。較優(yōu)地,在操作3003中該通知被加入到結(jié)合單元的緩存中,并且接著在操作3005中通知被加入到“即將引入”隊(duì)列。在操作3007中第二通知被接收,該第二通知是文件ABC.txt已被修改。該通知可以響應(yīng)用戶在較短時(shí)間第二次選擇“保存(save)”命令。舉例而言,用戶可以通過在第一時(shí)刻保存文件引發(fā)第一通知,并且接著在第一保存命令由用戶引發(fā)的時(shí)刻起三秒鐘內(nèi)引發(fā)保存命令發(fā)生。響應(yīng)接收第二通知,系統(tǒng)在操作3009中確定文件ABC.txt的第一通知是否已經(jīng)從隊(duì)列中取出并且引入。如果沒有,接著第二通知被丟棄,并且否則處理進(jìn)入操作3011。如果第一通知已經(jīng)從隊(duì)列中取出并且引入,接著第二通知被保存在隊(duì)列中并且處理進(jìn)入操作3011。操作3011旨在確定何時(shí)文件的下一個(gè)通知很可能是最后一個(gè)。當(dāng)探測到創(chuàng)建文件的程序在退出或者保存發(fā)生的時(shí)候,或者通過等待一段時(shí)間,其可能發(fā)生。所有在最后的通知被丟棄之前到達(dá)的通知和最后的通知被添加到“即將引入”隊(duì)列。接著在操作3013中,最后期望的通知被從隊(duì)列中取出,該通知因此導(dǎo)致ABC.txt文件中的變化引入到元數(shù)據(jù)庫中。在替代性實(shí)施例中,數(shù)據(jù)將從至少一些(或者全部)丟棄的通知中保留,并且該數(shù)據(jù)會(huì)被檢查以確定是否索引該文件和何時(shí)索引該文件(或者文件組)。
在前述的具體說明中,本發(fā)明參考其中的具體示例性實(shí)施例得以描述。明顯地,在不脫離如下面的權(quán)利要求所提出的本發(fā)明的較寬的精神和范圍的前提下,多種改變可以做出。因此,該具體說明和附圖被認(rèn)為是釋義性的含義,而非限制性的含義。
權(quán)利要求
1.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括將通知結(jié)合到復(fù)合通知中,以更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫;在接收復(fù)合通知后,更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
2.如權(quán)利要求1所述的方法,其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
3.如權(quán)利要求2所述的方法,進(jìn)一步包括在結(jié)合通知之前過濾通知,其中防止被索引的文件的通知更新元數(shù)據(jù)庫。
4.如權(quán)利要求3所述的方法,其中過濾是基于文件的文件路徑名和許多預(yù)定路徑名進(jìn)行的。
5.如權(quán)利要求1所述的方法,其中每一個(gè)通知表明存儲(chǔ)裝置上的文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
6.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括將通知結(jié)合到復(fù)合通知中,以更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫;在接收復(fù)合通知后,更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
7.如權(quán)利要求6所述的介質(zhì),其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
8.如權(quán)利要求7所述的介質(zhì),該方法進(jìn)一步包括在結(jié)合通知之前過濾通知,其中防止被索引的文件的通知更新元數(shù)據(jù)庫。
9.如權(quán)利要求8所述的介質(zhì),其中過濾是基于文件的文件路徑名和許多預(yù)定路徑名進(jìn)行的。
10.如權(quán)利要求6所述的介質(zhì),其中每一個(gè)通知表明存儲(chǔ)裝置上的文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
11.一種數(shù)據(jù)處理系統(tǒng),包括用于將通知結(jié)合到復(fù)合通知中,以更新元數(shù)據(jù)庫的部件;用于在接收復(fù)合通知后,更新元數(shù)據(jù)庫的部件。
12.如權(quán)利要求11所述的系統(tǒng),其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
13.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括在結(jié)合通知之前過濾通知的部件,其中防止未被索引的文件的通知更新元數(shù)據(jù)庫。
14.如權(quán)利要求13所述的系統(tǒng),其中過濾是基于文件的文件路徑名和許多預(yù)定路徑名進(jìn)行的。
15.如權(quán)利要求11所述的系統(tǒng),其中每一個(gè)通知表明存儲(chǔ)裝置上的文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
16.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括將通知的第一集合分組為通知的第二集合,以更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫;在接收通知的第二集合之后更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
17.如權(quán)利要求16所述的方法,其中第二集合比第一集合較小,第一集合至少具有兩個(gè)通知,第二集合至少具有兩個(gè)或者少于兩個(gè)通知。
18.如權(quán)利要求16所述的方法,其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
19.如權(quán)利要求16所述的方法,其中分組響應(yīng)于對(duì)通知的第一集合標(biāo)識(shí)的文件是包的一部分的判斷。
20.如權(quán)利要求16所述的方法,其中每一個(gè)通知表明存儲(chǔ)裝置上的文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
21.如權(quán)利要求16所述的方法,進(jìn)一步包括在對(duì)通知分組之前過濾通知的第一集合,其中防止未被索引的文件的通知更新元數(shù)據(jù)庫。
22.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括將通知的第一集合處理為通知的第二集合,以更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫;在接收通知的第二集合之后更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
23.如權(quán)利要求22所述的介質(zhì),其中第二集合比第一集合較小,第一集合至少具有兩個(gè)通知,第二集合至少具有兩個(gè)或者少于兩個(gè)通知,并且其中的處理包括分組。
24.如權(quán)利要求22所述的介質(zhì),其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
25.如權(quán)利要求22所述的介質(zhì),其中處理響應(yīng)于對(duì)由通知的第一集合標(biāo)識(shí)的文件是包的一部分的判斷。
26.如權(quán)利要求22所述的介質(zhì),其中每一個(gè)通知表明存儲(chǔ)裝置上的文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
27.如權(quán)利要求22所述的介質(zhì),該方法進(jìn)一步包括在對(duì)通知分組之前過濾通知的第一集合,其中防止未被索引的文件的通知更新元數(shù)據(jù)庫。
28.一種數(shù)據(jù)處理系統(tǒng),包括用于將通知的第一集合處理為通知的第二集合,以更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫的部件;用于在接收通知的第二集合之后更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫的部件。
29.如權(quán)利要求28所述的系統(tǒng),其中第二集合比第一集合較小,第一集合至少具有兩個(gè)通知,第二集合至少具有兩個(gè)或者少于兩個(gè)通知。
30.如權(quán)利要求28所述的系統(tǒng),其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
31.如權(quán)利要求28所述的系統(tǒng),其中分組響應(yīng)于對(duì)由通知的第一集合標(biāo)識(shí)的文件是包的一部分的判斷。
32.如權(quán)利要求28所述的系統(tǒng),其中每一個(gè)通知表明存儲(chǔ)裝置上的文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
33.如權(quán)利要求28所述的系統(tǒng),進(jìn)一步包括用于在對(duì)通知分組之前過濾通知的第一集合的部件,其中防止未被索引的文件的通知更新元數(shù)據(jù)庫。
34.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括確定相關(guān)對(duì)象組存儲(chǔ)在存儲(chǔ)介質(zhì)上;響應(yīng)該確定,生成用于更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫的通知的集合;在接收通知集合之后,更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
35.如權(quán)利要求34所述的方法,其中通知的集合只有一個(gè)通知,并且該通知表明存儲(chǔ)裝置上文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
36.如權(quán)利要求34所述的方法,其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
37.如權(quán)利要求34所述的方法,其中相關(guān)對(duì)象的組是由用戶作為一個(gè)單元加以操作的軟件組件包。
38.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定相關(guān)對(duì)象組存儲(chǔ)在存儲(chǔ)介質(zhì)上;響應(yīng)該確定,生成用于更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫的通知的集合;在接收通知集合之后,更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
39.如權(quán)利要求38所述的介質(zhì),其中通知的集合只有一個(gè)通知,并且該通知表明存儲(chǔ)裝置上文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
40.如權(quán)利要求38所述的介質(zhì),其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
41.如權(quán)利要求38所述的介質(zhì),其中相關(guān)對(duì)象的組是由用戶作為一個(gè)單元加以操作的軟件組件包。
42.一種數(shù)據(jù)處理系統(tǒng),包括用于確定相關(guān)對(duì)象組存儲(chǔ)在存儲(chǔ)介質(zhì)上的部件;用于響應(yīng)該確定,生成用于更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫的通知的集合的部件;在接收通知集合之后,更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫。
43.如權(quán)利要求42所述的系統(tǒng),其中通知的集合只有一個(gè)通知,并且該通知表明存儲(chǔ)裝置上文件的創(chuàng)建或者改變,并且所述通知由操作系統(tǒng)組件提供。
44.如權(quán)利要求42所述的系統(tǒng),其中在元數(shù)據(jù)庫中,第一類型文件的元數(shù)據(jù)中的信息類型與第二類型文件的元數(shù)據(jù)中的信息類型不同。
45.如權(quán)利要求42所述的系統(tǒng),其中相關(guān)對(duì)象的組是由用戶作為一個(gè)單元加以操作的軟件組件包。
46.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括在存儲(chǔ)裝置的邏輯位置上確定順序,該順序表明瀏覽在存儲(chǔ)裝置上被索引的文件的次序,或者表明瀏覽具有要加入到元數(shù)據(jù)庫的元數(shù)據(jù)的文件的次序,該次序基于位于邏輯位置上的用戶文檔的相似度;在邏輯位置上瀏覽以確定文件是否需要被索引,或者確定文件是否具有要加入到元數(shù)據(jù)庫的元數(shù)據(jù)。
47.如權(quán)利要求46所述的方法,進(jìn)一步包括索引要被索引的文件的全文內(nèi)容。
48.如權(quán)利要求47所述的方法,其中索引依順序執(zhí)行。
49.如權(quán)利要求46所述的方法,其中該順序指明了次序,該次序包括用戶主文件夾和桌面,并且其中該次序至少部分是預(yù)定的。
50.如權(quán)利要求46所述的方法,其中邏輯位置由文件目錄中的路徑名指明,并且其中系統(tǒng)記錄用戶訪問的路徑名以確定相似度。
51.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括在存儲(chǔ)裝置的邏輯位置上確定順序,該順序表明瀏覽在存儲(chǔ)裝置上要被索引的文件的次序,或者表明瀏覽具有要加入到元數(shù)據(jù)庫的元數(shù)據(jù)的文件的次序,該次序基于位于邏輯位置上的用戶文檔的相似度;在邏輯位置上瀏覽以確定文件是否要被索引,或者確定文件是否具有要加入到元數(shù)據(jù)庫的元數(shù)據(jù)。
52.如權(quán)利要求51所述的介質(zhì),該方法進(jìn)一步包括索引要被索引的文件的全文內(nèi)容。
53.如權(quán)利要求52所述的介質(zhì),其中索引依順序執(zhí)行。
54.如權(quán)利要求51所述的介質(zhì),其中該順序指明了次序,該次序包括用戶主文件夾和桌面,并且其中該次序至少部分是預(yù)定的。
55.如權(quán)利要求51所述的介質(zhì),其中邏輯位置由文件目錄中的路徑名指明,并且其中系統(tǒng)記錄用戶訪問的路徑名以確定相似度。
56.一種數(shù)據(jù)處理系統(tǒng),包括在存儲(chǔ)裝置的邏輯位置上確定順序,該順序表明瀏覽在存儲(chǔ)裝置上被索引的文件的次序,或者表明瀏覽具有要加入到元數(shù)據(jù)庫的元數(shù)據(jù)的文件的次序,該次序基于位于邏輯位置上的用戶文檔的相似度;在邏輯位置上瀏覽以確定文件是否需要索引,或者確定文件是否具有要加入到元數(shù)據(jù)庫的元數(shù)據(jù)。
57.如權(quán)利要求56所述的系統(tǒng),進(jìn)一步包括索引要被索引的文件的全文內(nèi)容的部件。
58.如權(quán)利要求57所述的系統(tǒng),其中索引依順序執(zhí)行。
59.如權(quán)利要求56所述的系統(tǒng),其中該順序指明了次序,該次序包括用戶主文件夾和桌面,并且其中該次序至少部分是預(yù)定的。
60.如權(quán)利要求56所述的系統(tǒng),其中邏輯位置由文件目錄中的路徑名指明,并且其中系統(tǒng)記錄用戶訪問的路徑名以確定相似度。
61.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括確定是否基于文件的文件路徑名和許多預(yù)定路徑名索引文件;索引文件以響應(yīng)對(duì)于要被索引的文件的確定。
62.如權(quán)利要求61所述的方法,其中預(yù)定目錄中的文件不被索引。
63.如權(quán)利要求62所述的方法,其中預(yù)定目錄至少部分被許多預(yù)定路徑名指明,并且預(yù)定目錄包括臨時(shí)目錄和操作系統(tǒng)目錄。
64.如權(quán)利要求61所述的方法,其中至少基于文件路徑名的一部分確定。
65.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定是否基于文件的文件路徑名和許多預(yù)定路徑名索引文件;索引文件以響應(yīng)對(duì)于要被索引的文件的確定。
66.如權(quán)利要求65所述的介質(zhì),其中預(yù)定目錄中的文件不被索引。
67.如權(quán)利要求66所述的介質(zhì),其中預(yù)定目錄至少部分被許多預(yù)定路徑名指明,并且預(yù)定目錄包括臨時(shí)目錄和操作系統(tǒng)目錄。
68.如權(quán)利要求65所述的介質(zhì),其中至少基于文件路徑名的一部分確定。
69.一種數(shù)據(jù)處理系統(tǒng),包括用于確定是否基于文件的文件路徑名和許多預(yù)定路徑名索引文件的部件;索引文件以響應(yīng)對(duì)于要被索引的文件的確定。
70.如權(quán)利要求69所述的系統(tǒng),其中預(yù)定目錄中的文件不被索引。
71.如權(quán)利要求70所述的系統(tǒng),其中預(yù)定目錄至少部分被許多預(yù)定路徑名指明,并且預(yù)定目錄包括臨時(shí)目錄和操作系統(tǒng)目錄。
72.如權(quán)利要求69所述的方法,其中至少基于文件路徑名的一部分進(jìn)行所述確定。
73.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定是否要基于文件的文件路徑名和許多預(yù)定路徑名將來自文件的元數(shù)據(jù)加入到元數(shù)據(jù)庫中;響應(yīng)該確定,將文件的元數(shù)據(jù)加入到元數(shù)據(jù)庫中。
74.如權(quán)利要求65所述的介質(zhì),其中至少部分基于文件路徑名的一部分進(jìn)行所述確定。
75.如權(quán)利要求66所述的介質(zhì),其中預(yù)定目錄至少部分被許多預(yù)定路徑名指明,并且預(yù)定目錄包括臨時(shí)目錄和操作系統(tǒng)目錄。
76.如權(quán)利要求65所述的介質(zhì),其中至少基于文件路徑名的一部分進(jìn)行所述確定。
77.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括將通知結(jié)合到復(fù)合通知中以更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫,同時(shí)丟棄至少一個(gè)通知;將已被丟棄的至少一個(gè)通知中的數(shù)據(jù)保留。
78.如權(quán)利要求77所述的方法,其中所述數(shù)據(jù)被用于確定是否和/或何時(shí)執(zhí)行所述更新。
全文摘要
數(shù)據(jù)管理的系統(tǒng)和方法,例如元數(shù)據(jù)或者文件內(nèi)容索引。在示例性方法中,更新元數(shù)據(jù)庫或者索引數(shù)據(jù)庫的通知結(jié)合在組合通知中。根據(jù)另一方面,存儲(chǔ)裝置的邏輯位置順序被確定以指明索引的文件的瀏覽的次序。根據(jù)另一個(gè)方面,該方法包括確定是否基于文件的路徑名相對(duì)于許多預(yù)定路徑名索引文件。
文檔編號(hào)G06F7/00GK1947120SQ200580012956
公開日2007年4月11日 申請(qǐng)日期2005年6月24日 優(yōu)先權(quán)日2004年6月25日
發(fā)明者楊·阿魯耶, 多米尼克·賈姆保羅, 安德魯·卡羅爾 申請(qǐng)人:蘋果電腦有限公司