專(zhuān)利名稱(chēng):用于索引文件并將相關(guān)元數(shù)據(jù)添加到索引和元數(shù)據(jù)數(shù)據(jù)庫(kù)的方法和系統(tǒng)的制作方法
本申請(qǐng)是序列號(hào)為10/877584的美國(guó)專(zhuān)利申請(qǐng)的共同未決申請(qǐng),上述美國(guó)專(zhuān)利申請(qǐng)是2004年6月25日提出的。本申請(qǐng)也要求臨時(shí)專(zhuān)利申請(qǐng)?zhí)枮?0/643087的未決美國(guó)專(zhuān)利申請(qǐng)的優(yōu)先權(quán),上述專(zhuā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)的用戶(hù)產(chǎn)生大量不同類(lèi)型的數(shù)據(jù)文件。舉例而言,數(shù)據(jù)處理系統(tǒng)的典型用戶(hù)可以使用文字處理程序生成文本文件,可以使用圖像處理程序生成圖像文件,該文字處理程序例如微軟公司的Word,該圖像處理程序例如Adobe公司的Photoshop。大量其他類(lèi)型的文件能夠被典型數(shù)據(jù)處理系統(tǒng)的一個(gè)或者多個(gè)用戶(hù)所生成或者改變、編輯以及使用。生成的或者被改變的大量不同類(lèi)型的文件給尋找生成的特定文件的典型用戶(hù)提出挑戰(zhàn)。
現(xiàn)代數(shù)據(jù)處理系統(tǒng)通常包括文件管理系統(tǒng),該文件管理系統(tǒng)允許用戶(hù)將文件放在目錄或者子目錄(例如文件夾)中并且允許用戶(hù)對(duì)文件命名。另外,該文件管理系統(tǒng)通常允許用戶(hù)以搜索文件名、或者生成日期、或者修改日期、或者文件類(lèi)型的方式查找文件。該文件管理系統(tǒng)的一個(gè)示例是Macintosh計(jì)算機(jī)上使用的Finder程序,其由加利福尼亞州庫(kù)珀蒂諾的蘋(píng)果計(jì)算機(jī)公司制造。文件管理系統(tǒng)程序的另一個(gè)示例是在Windows操作系統(tǒng)上使用的Windows Explorer程序,其由華盛頓州雷蒙德的微軟公司制造。Finder程序和Windows Explorer程序都包括查找命令,該查找命令允許用戶(hù)以多種標(biāo)準(zhǔn)查找文件,這些標(biāo)準(zhǔn)包括文件名或者生成日期或者修改日期或者文件類(lèi)型。然而,不論文件的類(lèi)型如何,該查詢(xún)能力對(duì)每一文件搜索相同的信息。如此,舉例而言,MicrosoftWord文件的搜索數(shù)據(jù)和Adobe Photoshop文件的搜索數(shù)據(jù)相同,并且典型地,該數(shù)據(jù)包括文件名、文件類(lèi)型、生成日期、最后修改日期、文件大小和其他特定參數(shù),這些參數(shù)可以由文件管理系統(tǒng)維護(hù)。
現(xiàn)有的特定應(yīng)用程序允許用戶(hù)維持有關(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)文件作者、文檔綜述和多種其他類(lèi)型的信息的信息。當(dāng)用戶(hù)生成文件和用戶(hù)添加附加數(shù)據(jù)或者通過(guò)在MicrosoftWord的菜單選擇器中選擇“屬性表”編輯數(shù)據(jù)的時(shí)候,例如MicrosoftWord的程序可以自動(dòng)生成一些該數(shù)據(jù)。Microsoft Word的屬性表允許用戶(hù)生成特定文件或者文檔的元數(shù)據(jù)。然而,在現(xiàn)有系統(tǒng)中,用戶(hù)不能使用來(lái)自用戶(hù)的一條搜索請(qǐng)求在大量不同應(yīng)用中搜索元數(shù)據(jù)。另外,現(xiàn)有系統(tǒng)能夠執(zhí)行數(shù)據(jù)文件的搜索,但是該搜索也不包括在該文件中搜索元數(shù)據(jù)。
現(xiàn)有系統(tǒng)響應(yīng)設(shè)置、預(yù)定時(shí)間(例如由用戶(hù)設(shè)置)、或者響應(yīng)要求開(kāi)始索引操作的即時(shí)用戶(hù)請(qǐng)求執(zhí)行索引操作。
發(fā)明內(nèi)容
此處描述在數(shù)據(jù)處理系統(tǒng)和數(shù)據(jù)管理系統(tǒng)中管理數(shù)據(jù)的方法。
根據(jù)此處描述的本發(fā)明的一個(gè)方面,示例性方法包括通過(guò)索引軟件組件接收數(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í)間或者用戶(hù)輸入。響應(yīng)探測(cè)用戶(hù)行為,索引操作可以被延遲或者被拖延或者具有降低的處理優(yōu)先權(quán)。該通知可以被輸入到索引操作的隊(duì)列中并且該隊(duì)列可以保存在非易失存儲(chǔ)器上。隊(duì)列的改變會(huì)寫(xiě)入通知的交易日志中。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括確定文件要被索引化到索引數(shù)據(jù)庫(kù)中還是要將元數(shù)據(jù)加入到元數(shù)據(jù)庫(kù)中,將代表文件的條目添加到索引操作(或者元數(shù)據(jù)操作)列表中,以及將列表保存在非易失存儲(chǔ)器上。該方法可以還包括在索引化文件之后(或者在元數(shù)據(jù)操作之后)將條目從列表移除以生成更新列表,和將更新列表保存在非易失存儲(chǔ)器上。該方法還包括將變化輸入到交易日志的列表中。該通知可以來(lái)自操作系統(tǒng)組件,該組件提供通知以響應(yīng)在存儲(chǔ)裝置相對(duì)于文件存儲(chǔ)數(shù)據(jù),該存儲(chǔ)裝置例如非易失存儲(chǔ)器。
根據(jù)本發(fā)明的另一個(gè)方面,一種示例性方法包括監(jiān)測(cè)用戶(hù)對(duì)于數(shù)據(jù)處理系統(tǒng)的使用并且響應(yīng)監(jiān)測(cè)自動(dòng)調(diào)整索引操作和元數(shù)據(jù)處理操作。該索引操作是包括索引文件以生成添加到索引數(shù)據(jù)庫(kù)的入口的典型操作,并且典型地,元數(shù)據(jù)操作涉及針對(duì)文件將元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)。索引操作或者元數(shù)據(jù)操作可以被數(shù)據(jù)處理系統(tǒng)自動(dòng)執(zhí)行以響應(yīng)通知,該通知可以是從操作系統(tǒng)組件傳送到索引軟件組件或者元數(shù)據(jù)軟件組件。典型地,在用戶(hù)對(duì)于數(shù)據(jù)處理系統(tǒng)的使用增長(zhǎ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ù)庫(kù)最后更新的時(shí)間,其中索引數(shù)據(jù)庫(kù)包含來(lái)自存儲(chǔ)在存儲(chǔ)裝置上的文件的內(nèi)容,和確定存儲(chǔ)在存儲(chǔ)裝置上的文件在索引數(shù)據(jù)庫(kù)最后更新的時(shí)間之后是否被修改或者創(chuàng)建,和更新在索引數(shù)據(jù)庫(kù)最后更新的時(shí)間之后被修改或者創(chuàng)建的文件的索引數(shù)據(jù)庫(kù)。該更新可以自動(dòng)發(fā)生無(wú)需用戶(hù)介入。類(lèi)似的方法可以被執(zhí)行以確定是否要更新元數(shù)據(jù)庫(kù)。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括裝配存儲(chǔ)裝置并且自動(dòng)響應(yīng)裝配,確定在存儲(chǔ)裝置上是否索引一個(gè)或者多個(gè)文件。確定是否索引一個(gè)或者多個(gè)文件包括將索引數(shù)據(jù)庫(kù)的最后使用時(shí)間或者最后關(guān)閉時(shí)間與卸載時(shí)間或者存儲(chǔ)裝置的最后寫(xiě)入時(shí)間相比較,并且也可以包括在卸載時(shí)間之后將索引數(shù)據(jù)庫(kù)的最早使用時(shí)間或者最后打開(kāi)時(shí)間與存儲(chǔ)裝置的裝配時(shí)間或者最早寫(xiě)入時(shí)間相比較。典型地,索引數(shù)據(jù)庫(kù)存儲(chǔ)在裝配的存儲(chǔ)裝置上。類(lèi)似方法可以被執(zhí)行以確定是否自動(dòng)響應(yīng)存儲(chǔ)裝置的裝配更新元數(shù)據(jù)庫(kù)。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,示例性方法包括裝配存儲(chǔ)裝置和在裝配之后評(píng)價(jià)是否在存儲(chǔ)裝置上自動(dòng)索引一個(gè)或者多個(gè)文件,該評(píng)價(jià)通過(guò)評(píng)價(jià)自從存儲(chǔ)裝置上的文件的索引數(shù)據(jù)庫(kù)上次被關(guān)閉或者寫(xiě)入之后,存儲(chǔ)裝置上的文件是否被修改或者新文件是否被添加來(lái)實(shí)現(xiàn)。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,處理數(shù)據(jù)的示例性方法包括裝配存儲(chǔ)裝置和自動(dòng)響應(yīng)該裝配,無(wú)需檢查在索引數(shù)據(jù)庫(kù)中索引化的每一文件的記錄,確定是否索引存儲(chǔ)裝置上的一個(gè)或者多個(gè)文件。
前述示例性方法也可以被執(zhí)行以確定來(lái)自新文件或者修改的文件的元數(shù)據(jù)是否需要自動(dòng)添加(例如引入)到元數(shù)據(jù)庫(kù)中。舉例而言,根據(jù)本發(fā)明的該方面的一個(gè)示例性方法包括裝配存儲(chǔ)裝置和自動(dòng)響應(yīng)裝配確定是否從存儲(chǔ)裝置上的一個(gè)或者多個(gè)文件引入元數(shù)據(jù)。
處理數(shù)據(jù)的另一個(gè)示例性方法包括確定來(lái)自文件的元數(shù)據(jù)被引入還是被添加到元數(shù)據(jù)庫(kù);將代表文件的條目添加到引入或者添加元數(shù)據(jù)的列表中,該引入或者添加元數(shù)據(jù)是從文件引入或者添加到元數(shù)據(jù)庫(kù);和將列表保存到非易失存儲(chǔ)器上。列表的變化可以輸入到交易日志中,并且在將文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)之后,列表的條目可以從列表中移除。
根據(jù)此處描述的本發(fā)明的另一個(gè)方面,示例性方法包括監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)用戶(hù)的使用,并且響應(yīng)該監(jiān)測(cè)自動(dòng)調(diào)整引入操作或者添加操作,該操作將元數(shù)據(jù)從文件添加到元數(shù)據(jù)庫(kù)。典型地,元數(shù)據(jù)庫(kù)包含來(lái)自許多不同類(lèi)型文件的元數(shù)據(jù),從而第一類(lèi)型文件的元數(shù)據(jù)的信息類(lèi)型與第二類(lèi)型文件的元數(shù)據(jù)的信息類(lèi)型不同。
本發(fā)明的其他方面包括各種執(zhí)行這些方法的數(shù)據(jù)處理系統(tǒng)和執(zhí)行此處描述的多種方法的一個(gè)或者多個(gè)方法的機(jī)器可讀介質(zhì)。
本發(fā)明將以示例的方式加以闡明,并且不局限于附圖中的特征,在附圖中相同的標(biāo)號(hào)表示同一元件。
圖1是數(shù)據(jù)處理系統(tǒng)的示例性實(shí)施例,其可以是通用計(jì)算機(jī)系統(tǒng)并且其可以根據(jù)此處描述的各種方法中任一方法運(yùn)行。
圖2顯示了根據(jù)本發(fā)明一個(gè)方面的示例性方法的總體示例。
圖3A顯示了特定類(lèi)型文件的特定類(lèi)型元數(shù)據(jù)的內(nèi)容的示例。
圖3B顯示了另一特定類(lèi)型文件的特定類(lèi)型元數(shù)據(jù)的內(nèi)容的另一示例。
圖4顯示了根據(jù)本發(fā)明一個(gè)示例性實(shí)施例的元數(shù)據(jù)管理的架構(gòu)的示例。
圖5是顯示本發(fā)明另一示例性方法的流程圖。
圖6是顯示了根據(jù)本發(fā)明示例性實(shí)施例,使用元數(shù)據(jù)的展開(kāi)文件格式的存儲(chǔ)格式示例。
圖7A-7E顯示了示例性實(shí)施例提供的圖形用戶(hù)界面的次序,該圖形用戶(hù)界面用于實(shí)現(xiàn)數(shù)據(jù)處理系統(tǒng)中的元數(shù)據(jù)和/或其他數(shù)據(jù)的搜索。
圖8A和8B顯示了根據(jù)本發(fā)明示例性實(shí)施例,顯示搜索結(jié)果的兩個(gè)格式示例。
圖9顯示了本發(fā)明用戶(hù)接口的另一個(gè)示例。
圖10顯示了本發(fā)明用戶(hù)接口的另一個(gè)示例。
圖11A-11D依次顯示了本發(fā)明中的另一示例性用戶(hù)接口。
圖12A-12D顯示了本發(fā)明中的用戶(hù)接口的替代性實(shí)施例。
圖13A和13B進(jìn)一步顯示了本發(fā)明中的用戶(hù)接口的替代性實(shí)施例。
圖14A、14B、14C和14D進(jìn)一步顯示了本發(fā)明中的用戶(hù)接口的替代性實(shí)施例。
圖15A、15B、15C和15D顯示了本發(fā)明中的用戶(hù)接口的另一替代性實(shí)施例。
圖16A和16B顯示了本發(fā)明中的用戶(hù)接口的實(shí)施例的特定方面。
圖17顯示了本發(fā)明中的用戶(hù)接口的特定實(shí)施例的一個(gè)方面。
圖18A和18B顯示了本發(fā)明中的用戶(hù)接口的特定實(shí)施例的另一個(gè)方面。
圖19A、19B、19C、19D和19E進(jìn)一步顯示了本發(fā)明中的用戶(hù)接口的示例性實(shí)施例。
圖20是闡明本發(fā)明另一示例性方法的流程圖。
圖21是顯示本發(fā)明另一示例性方法的流程圖。
圖22A、22B、22C和22D闡明顯示裝置的顯示,在該顯示裝置上,圖21所示的方法的一個(gè)實(shí)施例被執(zhí)行。
圖23是流程圖,該流程圖闡明了根據(jù)此處描述的本發(fā)明的特定方面的示例性方法。
圖24是流程圖,該流程圖顯示了示例性方法,在該方法中索引被執(zhí)行以響應(yīng)有關(guān)文件的通知。
圖25是流程圖,該流程圖顯示了根據(jù)本發(fā)明特定方面的另一個(gè)示例性方法。
圖26是流程圖,該流程圖顯示了確定是否要更新數(shù)據(jù)庫(kù)的示例性方法。
圖27是流程圖,該流程圖闡明了確定是否要更新數(shù)據(jù)庫(kù)的示例性方法,該數(shù)據(jù)庫(kù)例如索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)。
圖28是流程圖,該流程圖闡明了確定是否要更新數(shù)據(jù)庫(kù)的示例性方法,該數(shù)據(jù)庫(kù)例如索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)。
具體實(shí)施例方式
本發(fā)明將參考下述大量細(xì)節(jié)進(jìn)行描述,并且附圖會(huì)闡明本發(fā)明。下述描述和附圖是本發(fā)明的闡釋?zhuān)⑶也荒鼙唤忉尀楸景l(fā)明的限制。大量具體細(xì)節(jié)被加以描述從而提供本發(fā)明完整的理解。然而,在特定情況下,公知的或者傳統(tǒng)的細(xì)節(jié)沒(méi)有被加以描述以便于不會(huì)對(duì)本發(fā)明在細(xì)節(jié)上造成不必要的模糊。
該描述包括受到版權(quán)保護(hù)的材料,例如圖形用戶(hù)接口圖像的闡釋。此處,版權(quán)的權(quán)利人對(duì)這些材料保留權(quán)利,包括版權(quán),該權(quán)利人包括本發(fā)明的代理人。因?yàn)閷?zhuān)利文檔或者專(zhuān)利公開(kāi)內(nèi)容顯示在專(zhuān)利商標(biāo)局的文件或者記錄中,所以版權(quán)權(quán)利人不反對(duì)任何人對(duì)于專(zhuān)利文檔或者專(zhuān)利公開(kāi)內(nèi)容的復(fù)制再現(xiàn),但是其他無(wú)論什么都保留所有版權(quán)。蘋(píng)果公司版權(quán)所有,2004。
附圖1顯示了可以由本發(fā)明使用的典型計(jì)算機(jī)系統(tǒng)的示例。請(qǐng)注意附圖1闡釋了計(jì)算機(jī)系統(tǒng)的多個(gè)組件,并不意味著代表組件連接的任何特定架構(gòu)和方式,因?yàn)樵摷?xì)節(jié)與本發(fā)明沒(méi)有密切聯(lián)系。還應(yīng)當(dāng)知道具有較少組件或者可能具有較多組件的網(wǎng)絡(luò)計(jì)算機(jī)和其他數(shù)據(jù)處理系統(tǒng)也可以用于本發(fā)明。舉例而言,附圖1中所示的計(jì)算機(jī)系統(tǒng)可以是由蘋(píng)果計(jì)算機(jī)公司制造的Macintosh計(jì)算機(jī)。
如附圖1所示,計(jì)算機(jī)系統(tǒng)101是數(shù)據(jù)處理系統(tǒng)的一種形式,其包括總線(xiàn)102,總線(xiàn)與微處理器103和ROM(只讀存儲(chǔ)器)107和易失性RAM105和非易失性存儲(chǔ)器106。微處理器103可以是摩托羅拉公司制造的G3或者G4微處理器,或者是一個(gè)或者多個(gè)IBM制造的G5微處理器??偩€(xiàn)102將多個(gè)組件連接在一起,并且也將組件103、107、105和106連接到顯示控制器和顯示裝置104以及例如輸入/輸出(I/O)裝置的外圍裝置上,該輸入/輸出(I/O)裝置可以是鼠標(biāo)、鍵盤(pán)、調(diào)制解調(diào)器、網(wǎng)絡(luò)接口、打印機(jī)以及本領(lǐng)域公知的其他裝置。典型地,輸入/輸出裝置109通過(guò)輸入/輸出控制器108與系統(tǒng)相連。典型地,易失性RAM(隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器)105由動(dòng)態(tài)RAM(DRAM)實(shí)現(xiàn),動(dòng)態(tài)RAM需要持續(xù)供電以更新或者維持存儲(chǔ)器中的數(shù)據(jù)。典型地,海量存儲(chǔ)器106也可以是磁性硬盤(pán)驅(qū)動(dòng)器或者磁性光學(xué)驅(qū)動(dòng)器或者光驅(qū)動(dòng)器或者DVD RAM或者存儲(chǔ)器系統(tǒng)的其他類(lèi)型,該系統(tǒng)甚至在系統(tǒng)切斷電源之后還保持?jǐn)?shù)據(jù)(例如大量數(shù)據(jù))。典型地,盡管不必要,海量存儲(chǔ)器106也可以是隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器。盡管附圖1顯示海量存儲(chǔ)器106是與數(shù)據(jù)處理系統(tǒng)的其他組件直接連接的本地設(shè)備,應(yīng)當(dāng)知道本發(fā)明可以使用與系統(tǒng)距離較遠(yuǎn)的非易失性存儲(chǔ)器,例如與數(shù)據(jù)處理系統(tǒng)通過(guò)網(wǎng)絡(luò)接口相連的網(wǎng)絡(luò)存儲(chǔ)裝置,該網(wǎng)絡(luò)接口例如調(diào)制解調(diào)器或者以太網(wǎng)接口??偩€(xiàn)102可以包括通過(guò)多個(gè)本領(lǐng)域公知的橋連接器、控制器和/或適配器,相互連接的一條或者多條總線(xiàn)。在實(shí)施例中I/O控制器108包括用于控制USB外圍設(shè)備的USB(通用串行總線(xiàn))適配器和用于IEEE1394外圍設(shè)備的IEEE1394控制器。
從該描述可以明顯地得知,本發(fā)明的一些方面可以由軟件實(shí)現(xiàn),至少部分可以由軟件實(shí)現(xiàn)。也就是說(shuō),該技術(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í)施例中,硬連線(xiàn)電路可以與軟件指令結(jié)合應(yīng)用,以實(shí)現(xiàn)本發(fā)明。如此,該技術(shù)并不局限于硬件電路和軟件的任何特定結(jié)合,也不局限于數(shù)據(jù)處理系統(tǒng)執(zhí)行的任何特定指令源。另外,貫穿該描述,各種功能和操作被描述為由軟件代碼執(zhí)行或者由軟件代碼引發(fā)以簡(jiǎn)化該描述。然而,本領(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中的方法可以開(kāi)始于操作201,在該操作中從大量不同應(yīng)用程序中捕捉到元數(shù)據(jù)。捕捉到的元數(shù)據(jù)接著在操作203中由搜索設(shè)備使用,該搜索設(shè)備例如用于搜索的文件管理系統(tǒng)軟件。在步驟205中,該搜索設(shè)備允許元數(shù)據(jù)的搜索在具有捕捉到的元數(shù)據(jù)的所有應(yīng)用程序中進(jìn)行。在步驟207中,該方法也提供搜索引擎的用戶(hù)接口和由搜索引擎得到的搜索結(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中提供的用戶(hù)接口可以有多種不同格式,包括下述一些示例以及傳統(tǒng)的現(xiàn)有的用戶(hù)接口。元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中,該數(shù)據(jù)庫(kù)可以是多種格式中的任一種格式,該格式包括B樹(shù)格式,或者如下所述,根據(jù)本發(fā)明一個(gè)實(shí)施例的展開(kāi)文件格式。
附圖2中的方法可以由不存儲(chǔ)或者提供元數(shù)據(jù)的程序?qū)崿F(xiàn)。在這種情況下,操作系統(tǒng)的一部分實(shí)現(xiàn)從大量不同程序中捕捉元數(shù)據(jù)的功能,盡管該程序沒(méi)有被設(shè)計(jì)以提供或者捕捉元數(shù)據(jù)。對(duì)于允許用戶(hù)針對(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ù)文件類(lèi)型下的兩種不同元數(shù)據(jù)格式。請(qǐng)注意可以在所有的字段上沒(méi)有重疊;換句話(huà)說(shuō),一種類(lèi)型的元數(shù)據(jù)的字段和另一種類(lèi)型的元數(shù)據(jù)的字段完全不同。元數(shù)據(jù)格式301可以用于例如JPEG圖像文件的圖像文件。該元數(shù)據(jù)可以包括一些信息,該信息例如圖像寬度、圖像長(zhǎng)度、圖像色彩空間、每象素的位數(shù)、ISO設(shè)置、閃光燈設(shè)置、照相機(jī)的F/光圈(F/stop)、拍照的照相機(jī)的商標(biāo)、用戶(hù)添加鍵盤(pán)和其他字段,其他字段例如可以唯一識(shí)別特定文件的字段,該識(shí)別在文件的修改中是永久性的。附圖3B所示的元數(shù)據(jù)格式331可以用于例如MP3音樂(lè)文件的音樂(lè)文件。該元數(shù)據(jù)格式中的數(shù)據(jù)可以包括音樂(lè)家標(biāo)識(shí)、音樂(lè)風(fēng)格、唱片名、唱片中的歌曲名或者特定文件的歌曲名、歌曲播放時(shí)間或者特定歌曲的歌曲播放時(shí)間以及其它字段,其他字段例如標(biāo)識(shí)特定MP3文件的永久性文件ID,在該特定MP3文件中元數(shù)據(jù)被捕捉到。其它字段類(lèi)型也可以被使用。下述圖表顯示了多個(gè)字段的示例,該字段可以被用于各種類(lèi)型文件的元數(shù)據(jù)中。
在各種元數(shù)據(jù)類(lèi)型中都有用的一個(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á)到相同或者相類(lèi)似的結(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)圖形用戶(hù)接口軟件405(可以是Finder)、電子郵件軟件407和其他應(yīng)用409。這些應(yīng)用通過(guò)客戶(hù)機(jī)應(yīng)用程序接口411與元數(shù)據(jù)處理軟件401相連接,該客戶(hù)機(jī)應(yīng)用程序接口提供在元數(shù)據(jù)處理軟件401和軟件405、407和409之間傳送數(shù)據(jù)和命令的方法。該命令和數(shù)據(jù)可以包括用戶(hù)指定的搜索參數(shù)以及來(lái)自用戶(hù)的執(zhí)行搜索的命令,該參數(shù)和命令通過(guò)接口411傳送到元數(shù)據(jù)處理軟件401。元數(shù)據(jù)處理軟件401也與輸入端413的集合相連接,該輸入端從各種應(yīng)用中提取數(shù)據(jù)。特別地,在一個(gè)示例性實(shí)施例中,文本輸入端被用于從文字處理或者文本處理文件中提取文本和其他信息,該文字處理或者文本處理程序例如Microsoft Word等。該提取的信息是特定文件的元數(shù)據(jù)。其他類(lèi)型的輸入端從其他類(lèi)型的文件中提取元數(shù)據(jù),該其他類(lèi)型的文件例如圖像文件或者音樂(lè)文件。在該特定實(shí)施例中,特定輸入端基于由應(yīng)用程序產(chǎn)生和修改的文件的類(lèi)型被選擇。舉例而言,如果數(shù)據(jù)文件由PhotoShop創(chuàng)建,則針對(duì)PhotoShop的圖像輸入端被用于通過(guò)元數(shù)據(jù)處理軟件401將元數(shù)據(jù)從PhotoShop數(shù)據(jù)文件輸入到元數(shù)據(jù)庫(kù)415。另一方面,如果數(shù)據(jù)文件是文字處理文檔,則被設(shè)計(jì)用于從文字處理數(shù)據(jù)文檔中提取元數(shù)據(jù)的輸入端被訪(fǎng)問(wèn),以通過(guò)元數(shù)據(jù)處理軟件401從文字處理數(shù)據(jù)文件中提取元數(shù)據(jù)并且將其置于元數(shù)據(jù)庫(kù)415中。典型地,需要許多不同輸入端以處理應(yīng)用于典型的計(jì)算機(jī)系統(tǒng)的許多不同應(yīng)用程序。優(yōu)選地,輸入端413包括大量輸出端,該輸出端能夠?qū)⒂糜谔囟?lèi)型數(shù)據(jù)文件的提取的元數(shù)據(jù)輸出回由特定應(yīng)用程序維護(hù)的屬性表或者其他數(shù)據(jù)組件。舉例而言,應(yīng)用程序可以維護(hù)由程序創(chuàng)建的每一數(shù)據(jù)文件的一些元數(shù)據(jù),但是該元數(shù)據(jù)只是從該類(lèi)型數(shù)據(jù)文件的輸出端提取的元數(shù)據(jù)的子集。在這種情況下,輸出端可以將附加元數(shù)據(jù)輸出回或者簡(jiǎn)單地將元數(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ù)庫(kù)被維持為如下所述的展開(kāi)文件格式,并且文件系統(tǒng)目錄417維護(hù)該展開(kāi)文件格式。展開(kāi)文件格式的一個(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ù)庫(kù)415中較快地檢索信息。
附圖4中的軟件架構(gòu)400還包括基于內(nèi)容查找軟件419,該軟件在操作中與包括文件索引的數(shù)據(jù)庫(kù)421相連接。文件索引代表存儲(chǔ)裝置中數(shù)據(jù)文件的至少一個(gè)子集,并且可以包括一個(gè)特定存儲(chǔ)裝置(一些存儲(chǔ)裝置)中的所有數(shù)據(jù)文件,該存儲(chǔ)裝置例如計(jì)算機(jī)系統(tǒng)的主硬盤(pán)驅(qū)動(dòng)器。文件的索引可以是傳統(tǒng)的每一文檔的內(nèi)容的索引化表示。基于內(nèi)容查找軟件419在內(nèi)容中查找詞匯以察看特定詞匯是否存在于任何索引化的數(shù)據(jù)文件中,該查找通過(guò)查找數(shù)據(jù)庫(kù)421實(shí)現(xiàn)。基于內(nèi)容查找軟件的功能在元數(shù)據(jù)處理軟件401中具有效用,該元數(shù)據(jù)處理軟件對(duì)用戶(hù)具有好處,該好處就是用戶(hù)可以同時(shí)檢索數(shù)據(jù)庫(kù)421中的文件索引(針對(duì)文件中的內(nèi)容)以及要檢索的各種數(shù)據(jù)文件的元數(shù)據(jù)。顯示在附圖4中的該軟件架構(gòu)可以用于執(zhí)行附圖5中所示的方法,或者可替換的軟件架構(gòu)可以用于執(zhí)行附圖5中所示的方法。
附圖5中的方法始于操作501,在該操作中,接收到文件改變的通知。該通知來(lái)自于操作系統(tǒng)內(nèi)核403,其通知元數(shù)據(jù)處理軟件401文件已經(jīng)改變。該通知可以來(lái)自監(jiān)聽(tīng)軟件元件,該元件監(jiān)測(cè)新的或者改變的文件和文件的刪除。該改變可以是新文件的創(chuàng)建或者現(xiàn)有文件的改變或者現(xiàn)有文件的刪除?,F(xiàn)有文件的刪除引發(fā)附圖5中的處理方法的一種特殊情況,并且沒(méi)有顯示在附圖5中。在刪除的情況下,元數(shù)據(jù)處理軟件401通過(guò)使用文件系統(tǒng)目錄417刪除元數(shù)據(jù)庫(kù)415中的元數(shù)據(jù)文件,該元數(shù)據(jù)文件與刪除的文件對(duì)應(yīng)。其他類(lèi)型的操作,例如新文件的創(chuàng)建或者現(xiàn)有文件的改變,引起從操作501到操作503的處理過(guò)程,在該處理過(guò)程中作為通知目標(biāo)的文件類(lèi)型被確定。該文件可以是Acrobat PDF文件或者RTF文字處理文件或者JPEG圖像文件等等。在任何情況下,文件類(lèi)型在操作503中確定。其可以通過(guò)從操作系統(tǒng)內(nèi)核403接收與通知一起的文件類(lèi)型,或者元數(shù)據(jù)處理軟件401可以從文件系統(tǒng)圖形用戶(hù)接口軟件405或者類(lèi)似軟件要求文件類(lèi)型的標(biāo)識(shí),該軟件維護(hù)數(shù)據(jù)文件的信息,例如數(shù)據(jù)文件的生成應(yīng)用或者父應(yīng)用。應(yīng)當(dāng)知道在一個(gè)示例性實(shí)施例中,文件系統(tǒng)圖形用戶(hù)接口軟件405是在Macintosh操作系統(tǒng)上運(yùn)行的Finder程序。在可以替換的實(shí)施例中,文件系統(tǒng)圖形用戶(hù)接口系統(tǒng)可以是運(yùn)行在微軟公司的Windows操作系統(tǒng)上的Windows Explorer。在操作503文件類(lèi)型被確定之后,合適的捕獲軟件(例如輸入端413之一)被啟動(dòng)以確定文件類(lèi)型。輸入端可以是特定應(yīng)用的插件,其生成文件類(lèi)型,有關(guān)該文件類(lèi)型的通知在操作501中被接收。一旦被啟動(dòng),輸入端或者捕獲軟件將合適的元數(shù)據(jù)(針對(duì)特定文件類(lèi)型)輸入到元數(shù)據(jù)庫(kù)中,例如操作507中所示的元數(shù)據(jù)庫(kù)415。接著在操作509中,元數(shù)據(jù)被存儲(chǔ)在數(shù)據(jù)庫(kù)中。在示例性實(shí)施例中,其可以以展開(kāi)文件的形式存儲(chǔ)。接著在操作511中,元數(shù)據(jù)處理軟件401接收搜索參數(shù)的輸入并且執(zhí)行元數(shù)據(jù)庫(kù)的檢索(并且較優(yōu)地,還引發(fā)例如文件索引421的非元數(shù)據(jù)源的檢索),并且使得檢索結(jié)果顯示在用戶(hù)接口上。其可以通過(guò)下述方式得以執(zhí)行,該方式就是在一種應(yīng)用和元數(shù)據(jù)處理軟件401之間通過(guò)接口411交換信息,該應(yīng)用例如軟件405或者軟件407或者其他應(yīng)用409。舉例而言,文件系統(tǒng)軟件405可以表現(xiàn)為圖形用戶(hù)接口,允許用戶(hù)輸入搜索參數(shù)并且允許用戶(hù)啟動(dòng)要執(zhí)行的搜索。該信息通過(guò)接口411傳送到元數(shù)據(jù)處理軟件401,該軟件在元數(shù)據(jù)庫(kù)415中引發(fā)搜索并且也可以在索引文件的數(shù)據(jù)庫(kù)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é)果的用戶(hù)接口的各種示例在此處得以描述,并且顯示在附圖中。
應(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ù)庫(kù),而無(wú)需來(lái)自操作系統(tǒng)內(nèi)核的通知要求或者來(lái)自例如輸入端413的輸入端的干涉。可替換地,不使用操作系統(tǒng)內(nèi)核通知,實(shí)施例可以使用從任一應(yīng)用到元數(shù)據(jù)處理軟件的軟件調(diào)用,該元數(shù)據(jù)處理軟件接收該調(diào)用并且接著響應(yīng)該調(diào)用從每一文件中輸入元數(shù)據(jù)。
如上所述,元數(shù)據(jù)庫(kù)415可以以展開(kāi)文件的形式存儲(chǔ),從而提高大多數(shù)情況下的信息檢索速度。該展開(kāi)文件格式可以認(rèn)為是非-B樹(shù)(non-B tree)、非哈希樹(shù)(non-hash tree)格式,在該格式下,數(shù)據(jù)不是試圖被組織為而是被存儲(chǔ)為數(shù)據(jù)流。每一元數(shù)據(jù)對(duì)象或者元數(shù)據(jù)文件自身包含字段,例如附圖3A和3B中顯示的字段。然而,典型地,從一個(gè)元數(shù)據(jù)文件的一個(gè)字段到下一個(gè)原數(shù)據(jù)文件或者另一個(gè)同一文件類(lèi)型的原數(shù)據(jù)文件的相應(yīng)字段(或者另一字段)沒(méi)有關(guān)系或者引用或者指向。附圖6顯示了元數(shù)據(jù)展開(kāi)文件的布局的實(shí)施例。格式601包括許多元數(shù)據(jù)文件,該元數(shù)據(jù)文件針對(duì)相應(yīng)的許多數(shù)據(jù)文件。如附圖6所示,元數(shù)據(jù)文件603是來(lái)自應(yīng)用A的文件1的元數(shù)據(jù),并且可以被稱(chēng)為元數(shù)據(jù)文件A1。類(lèi)似地,元數(shù)據(jù)文件605是來(lái)自應(yīng)用B的文件1的元數(shù)據(jù),并且可以被稱(chēng)為元數(shù)據(jù)文件B1。典型地,每一該元數(shù)據(jù)文件包括字段,該字段不鏈接到其他字段,并且該字段不會(huì)包含指向其他元數(shù)據(jù)文件的其他字段的引用或者指針。從附圖6中可以看出,附圖6中的元數(shù)據(jù)庫(kù)包括來(lái)自許多不同應(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ù)文件。
軟查詢(xún)語(yǔ)言可以用于以與查詢(xún)語(yǔ)言用于搜索其他數(shù)據(jù)庫(kù)相同的方式搜索元數(shù)據(jù)庫(kù)。如果愿意,每一元數(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)。
用戶(hù)接口方面用于輸入搜索參數(shù)和用于顯示搜索結(jié)果的用戶(hù)接口的各種不同示例在此處得以提供。應(yīng)當(dāng)知道特定實(shí)施例中的一些特征可以與其他實(shí)施例結(jié)合,從而這種結(jié)合產(chǎn)生了混合實(shí)施例。應(yīng)當(dāng)知道,特定特征可以從這些實(shí)施例中移除并且在許多情況下仍然提供充足的功能。
附圖7A顯示了圖形用戶(hù)接口,該圖形用戶(hù)接口是顯示在顯示裝置上的窗口,該顯示裝置與例如計(jì)算機(jī)系統(tǒng)的數(shù)據(jù)處理系統(tǒng)連接。窗口701包含側(cè)邊條,該側(cè)邊條具有兩個(gè)區(qū)域703A和703B,區(qū)域703A是用戶(hù)配置區(qū)域,區(qū)域703B是由數(shù)據(jù)處理系統(tǒng)所指定的。關(guān)于該側(cè)邊條形區(qū)域的更為詳細(xì)的內(nèi)容可以在共同提出的第__號(hào)美國(guó)專(zhuān)利申請(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ū)域顯示用戶(hù)請(qǐng)求的搜索結(jié)果。窗口701還包括搜索參數(shù)菜單條707,該菜單條包括可配置的下拉菜單713、715和717。窗口701還包括文本輸入?yún)^(qū)域709,該區(qū)域允許用戶(hù)輸入作為搜索查詢(xún)或者搜索參數(shù)一部分的文本。按鈕711可以是開(kāi)始搜索按鈕,用戶(hù)可以啟動(dòng)該按鈕以便于基于選擇的搜索參數(shù)開(kāi)始搜索??商娲兀到y(tǒng)一接收任何搜索參數(shù)輸入或者來(lái)自用戶(hù)的搜索查詢(xún)就可以執(zhí)行搜索,而不是等待開(kāi)始搜索的命令。窗口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,其允許用戶(hù)改變顯示裝置上的窗口的大小。窗口701還包括后退按鈕732和前進(jìn)按鈕733,該后退按鈕和前進(jìn)按鈕以與網(wǎng)絡(luò)瀏覽器上的后退按鈕和前進(jìn)按鈕類(lèi)似的方式工作,該網(wǎng)絡(luò)瀏覽器例如因特網(wǎng)瀏覽器(Internet Explorer)或者Safari。窗口701還包括顯示控制器,該控制器包括三個(gè)按鈕,該按鈕用于選擇在顯示區(qū)域705上的三種不同類(lèi)型的內(nèi)容顯示方式。當(dāng)搜索中查找到的內(nèi)容超過(guò)了顯示區(qū)域705的有效顯示面積,滾動(dòng)控制器,例如滾動(dòng)控制器721、722和723顯示在窗口701上。這些可以使用傳統(tǒng)方式實(shí)現(xiàn),例如通過(guò)使用傳統(tǒng)的圖形用戶(hù)接口技術(shù)在滾動(dòng)區(qū)域721A上拖拉滾動(dòng)條721。
文本輸入?yún)^(qū)域709和搜索參數(shù)菜單條的結(jié)合允許用戶(hù)具體化搜索查詢(xún)或者搜索參數(shù)。當(dāng)用戶(hù)激活下拉菜單的時(shí)候,每一個(gè)可配置的下拉菜單展示給用戶(hù)可以選擇的選項(xiàng)列表。如附圖7A所示,用戶(hù)從可配置的下拉菜單713中已經(jīng)做出選擇以指明要搜索的位置,在這種情況下指明搜索將在計(jì)算機(jī)系統(tǒng)的本地磁盤(pán)發(fā)生??膳渲玫南吕藛?15還被用戶(hù)用于指明要搜索的文檔的類(lèi)型,在這種情況下其是由可配置的下拉菜單715指明的圖像文檔,該菜單指明“圖像(images)”是該菜單的選中配置,并且因此是其具體指明的搜索參數(shù)。如附圖7A所示,可配置的下拉菜單717代表增加的搜索參數(shù)下拉菜單。該增加的搜索參數(shù)下拉菜單允許用戶(hù)對(duì)搜索查詢(xún)添加額外的標(biāo)準(zhǔn),以進(jìn)一步限制搜索結(jié)果。在附圖7A顯示的實(shí)施例中,搜索參數(shù)在邏輯上以布爾的形式被加入。因此,如附圖7A所示的狀態(tài)下,被用戶(hù)指明的當(dāng)前搜索參數(shù)在所有本地磁盤(pán)上搜索所有圖像,并且用戶(hù)處于選擇另一個(gè)搜索標(biāo)準(zhǔn)的過(guò)程中間,其通過(guò)選擇添加搜索標(biāo)準(zhǔn)下拉菜單717實(shí)現(xiàn),導(dǎo)致下拉菜單719的顯示,該下拉菜單具有許多可以由用戶(hù)選擇的選項(xiàng)。
附圖7B顯示了在用戶(hù)在下拉菜單719中選擇時(shí)間選項(xiàng)之后的窗口701,因此導(dǎo)致子菜單719A的顯示,該子菜單包括用戶(hù)可以從中選擇的可能的時(shí)間。因此看出用戶(hù)希望將在所有本地磁盤(pán)對(duì)所有圖像的搜索限制在一定時(shí)間期間之內(nèi),該時(shí)間期間通過(guò)在子菜單719A中進(jìn)行選擇被確定。
附圖7C顯示了用戶(hù)在子菜單719A中選擇了特定選項(xiàng)(在該情況下是“上周(past week)”)之后,數(shù)據(jù)處理系統(tǒng)顯示器上的窗口701。如果用戶(hù)接受該選擇,接著附圖7D中所示的顯示導(dǎo)致哪一種可配置的下拉菜單718得以顯示,其展示了最近被創(chuàng)建或者被修改的用戶(hù)選擇的部分搜索標(biāo)準(zhǔn)文件。從附圖7D中可以看出,用戶(hù)可以通過(guò)在附圖7D中顯示的下拉式菜單718A中選擇另一時(shí)間期間的方式,改變從下拉菜單718選出的特定時(shí)間。請(qǐng)注意表示添加搜索參數(shù)菜單的可配置下拉菜單717現(xiàn)在移至可配置下拉菜單718的右側(cè)。用戶(hù)可以通過(guò)點(diǎn)擊或者激活搜索參數(shù)菜單欄707上的可配置下拉菜單717進(jìn)一步添加搜索參數(shù)。如果用戶(hù)決定經(jīng)過(guò)的星期數(shù)是時(shí)間類(lèi)的適當(dāng)搜索標(biāo)準(zhǔn),用戶(hù)可以放棄下拉菜單718A以多種不同方式顯示(例如用戶(hù)可以釋放鼠標(biāo)按鈕,該鼠標(biāo)按鈕被按下以保持下拉菜單718A的顯示)。當(dāng)釋放或者否則解除下拉菜單718A,顯示在附圖7E上的作為結(jié)果的窗口701接著出現(xiàn)。附圖7A-7E中顯示的用戶(hù)接口中具有一些值得注意的方面。搜索參數(shù)和搜索查詢(xún)?cè)谂c搜索結(jié)果的顯示相同的窗口中被實(shí)現(xiàn)。這樣允許用戶(hù)觀(guān)察單一位置或者窗口以理解搜索參數(shù)和搜索參數(shù)如何影響顯示的搜索結(jié)果,并且使得用戶(hù)改變或者提高搜索參數(shù)以獲得一個(gè)或者多個(gè)文件更為容易。該可配置的下拉菜單例如添加搜索參數(shù)下拉菜單,包括分層下拉菜單。其的一個(gè)示例顯示在附圖7B中,在該附圖中從下拉菜單717中選擇的時(shí)間標(biāo)準(zhǔn)引發(fā)另一菜單的顯示,在這種情況下是可由用戶(hù)選擇的子菜單719A的顯示。這允許在保持初始復(fù)雜度(例如無(wú)需子菜單顯示)位于較低水平的情況下多個(gè)搜索參數(shù)得以緊密顯示。附圖7A-7E中示出的用戶(hù)接口的另一個(gè)有用的方面在于具有重新配置以前已經(jīng)配置過(guò)的下拉菜單的能力。因此,舉例而言,可配置下拉菜單713目前指明搜索位置(在該情況下為全部本地磁盤(pán)),然而其可以通過(guò)選擇與可配置下拉菜單713相連的下拉區(qū)域得以改變,導(dǎo)致表明可替換的位置的選項(xiàng)菜單的顯示,該位置可以由用戶(hù)選擇。其也可以在附圖7D中看出,在該圖中最近的選項(xiàng)由用戶(hù)選出(由搜索參數(shù)菜單欄707中的“上周”表明),但是下拉菜單718A所顯示的選項(xiàng)菜單允許用戶(hù)將選擇的時(shí)間從“上周”變?yōu)槠渌麜r(shí)間標(biāo)準(zhǔn)。該用戶(hù)接口的另一個(gè)有用方面是通過(guò)使用添加搜索標(biāo)準(zhǔn)下拉菜單717和選擇新標(biāo)準(zhǔn)的方式添加各種搜索標(biāo)準(zhǔn)的能力。
應(yīng)當(dāng)理解下拉菜單中的各種選項(xiàng)可以依賴(lài)于特定類(lèi)型元數(shù)據(jù)文件中的字段。舉例而言,要搜索的“圖像”的選擇可以導(dǎo)致圖像類(lèi)型文件的元數(shù)據(jù)中提出的各種字段顯示在一個(gè)或者多個(gè)下拉菜單中,允許用戶(hù)在一個(gè)或者多個(gè)該字段中搜索特定類(lèi)型的文件。并不適用于“圖像”類(lèi)型文件的其他字段可以不顯示在該菜單中以減少菜單的復(fù)雜度并且防止用戶(hù)混淆。
本發(fā)明的另一個(gè)特征顯示在附圖7A-7E中。在特定的情況下,側(cè)邊條形區(qū)域703A包括代表著從特定搜索中獲得的搜索結(jié)果的文件夾725的標(biāo)識(shí),該側(cè)邊條形區(qū)域是側(cè)邊條的用戶(hù)可配置部分,搜索結(jié)果可以是靜態(tài)的或者動(dòng)態(tài)的,這是因?yàn)樵谔囟ㄇ闆r下搜索被再次執(zhí)行以基于系統(tǒng)中的當(dāng)前文件獲得結(jié)果。附圖7A-7E中所示的示例中的文件夾725代表十二月10號(hào)完成的本地磁盤(pán)上針對(duì)所有圖像的搜索。通過(guò)在側(cè)邊條形區(qū)域703A選擇該文件夾,用戶(hù)可以引發(fā)顯示區(qū)域705上的搜索結(jié)果的顯示。這樣,通過(guò)將搜索結(jié)果保存在側(cè)邊條形區(qū)域703A的方式,用戶(hù)可以自動(dòng)檢索搜索結(jié)果。使得搜索結(jié)果或者搜索查詢(xún)保存在側(cè)邊條形區(qū)域703A的機(jī)制是選擇添加文件夾按鈕727,該按鈕顯示在窗口701的底部。通過(guò)選擇該按鈕,當(dāng)前的搜索結(jié)果或者搜索查詢(xún)以文件列表和當(dāng)前搜索結(jié)果中檢索到的其他對(duì)象的形式得到保存。在搜索查詢(xún)而不是搜索結(jié)果被保存用以以后使用的情況下,當(dāng)前搜索查詢(xún)被保存以便于以后再次使用從而找到在較晚的時(shí)間與搜索查詢(xún)相匹配的文件。用戶(hù)可以通過(guò)未示出的命令選擇的方式在該兩種功能(保存搜索結(jié)果或者保存搜索查詢(xún))之間選擇。
附圖8A和8B顯示了用戶(hù)接口特征的另一個(gè)方面,其可以應(yīng)用于本發(fā)明的特定實(shí)施例中。附圖8A中的窗口801代表搜索結(jié)果的顯示,該搜索結(jié)果可以作為使用本發(fā)明多個(gè)不同實(shí)施例中的一個(gè)實(shí)施例獲得的結(jié)果。在此情況下該標(biāo)題再現(xiàn)時(shí)間期間,該搜索結(jié)果可以被分類(lèi),這些種類(lèi)通過(guò)標(biāo)題805、807、809和811分離。使用標(biāo)題的該特定劃分通過(guò)用戶(hù)使用日期修改按鈕803被選擇,該選擇通過(guò)用戶(hù)使用位于窗口801頂部的日期修改按鈕803來(lái)選擇標(biāo)題“修改日期(data modified)”實(shí)現(xiàn)。通過(guò)選擇附圖8B所示的位于窗口801A頂部的按鈕802,一個(gè)替代性的選擇使得不同搜索結(jié)果格式現(xiàn)在按標(biāo)題分類(lèi),該標(biāo)題表明文件的類(lèi)型,該文件在搜索中得到檢索并且如附圖8B所示被標(biāo)題815、817、819和821分隔。搜索結(jié)果顯示中這些標(biāo)題的使用允許用戶(hù)快速瀏覽搜索結(jié)果以找到文件。
附圖9顯示了本發(fā)明的另一個(gè)方面,其作為窗口901的一部分在附圖9中得到闡釋。該窗口包括顯示搜索結(jié)果的顯示區(qū)域905,并且該窗口還包括兩個(gè)側(cè)邊條形區(qū)域903A和903B,側(cè)邊條形區(qū)域903A是用戶(hù)配置部分,并且側(cè)邊條形區(qū)域903B是系統(tǒng)控制部分。文件夾添加按鈕927可以由用戶(hù)加以選擇從而使得搜索結(jié)果或者搜索查詢(xún)的額外部分添加到側(cè)邊條的用戶(hù)配置部分。窗口901還包括傳統(tǒng)窗口控制器,例如標(biāo)題欄或區(qū)域929以及觀(guān)察選擇按鈕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,這兩列提供了找到的文件的名稱(chēng)和匹配標(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é)果提供附加信息。特別地,該列包括每一特定類(lèi)型的種類(lèi)或者字段的匹配數(shù)目,以及條目913所表明的總匹配數(shù)目。因此,舉例而言,在評(píng)論字段找到的匹配總數(shù)只有1個(gè),同時(shí)其他字段具有較高的匹配數(shù)目。
附圖10顯示了本發(fā)明具體實(shí)施方式
的其他特定方面。窗口1001是另一個(gè)搜索結(jié)果窗口,該窗口包括各種字段和菜單用于由用戶(hù)選擇各種搜索參數(shù)或者形成搜索查詢(xún)。窗口1001包括可用于顯示搜索結(jié)果的顯示區(qū)域1005和用戶(hù)可配置側(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)窗口。開(kāi)始搜索按鈕1015與文本輸入?yún)^(qū)域1009較近。第一搜索參數(shù)菜單欄1007與第二搜索參數(shù)欄1011臨近顯示。當(dāng)?shù)诙阉鲄?shù)菜單欄1011的兩個(gè)菜單下拉控制器允許用戶(hù)使用下拉菜單1012指明文件類(lèi)型并且允許用戶(hù)使用菜單1013指明文件創(chuàng)建或者最后修改的時(shí)間的時(shí)候,第一搜索參數(shù)搜索欄1007允許用戶(hù)指明特定搜索的位置。
窗口1001包括在分析搜索結(jié)果的時(shí)候非常有用的額外特征。用戶(hù)可以從顯示區(qū)域1005中選擇單個(gè)文件并且將其加入一個(gè)集合中。每一個(gè)文件可以使用特定命令(例如按下鼠標(biāo)右鍵并且從顯示在顯示屏上的菜單中選擇命令,命令可以是“將選擇添加到當(dāng)前組(add selection to currentgroup)”)或者類(lèi)似命令單獨(dú)標(biāo)注。通過(guò)單獨(dú)選擇該文件或者通過(guò)一次選擇文件組,用戶(hù)可以將文件組與選中的組或者“標(biāo)注的(marked)”組關(guān)聯(lián),而且該關(guān)聯(lián)可以用于在組的所有文件中執(zhí)行命令動(dòng)作(例如打印每一文件或者在查看窗口查看每一文件或者將每一文件移至新的或者現(xiàn)有的文件夾,等等)。該標(biāo)注組的標(biāo)識(shí)作為文件夾顯示在用戶(hù)配置區(qū)域1003A。該文件夾的示例是顯示在用戶(hù)配置區(qū)域的文件夾1020。通過(guò)選擇該文件夾(例如通過(guò)將光標(biāo)定位于文件夾1020并且按下以及釋放鼠標(biāo)按鍵或者通過(guò)按下另一鍵),作為選擇的結(jié)果用戶(hù)會(huì)引發(fā)被分在一組或者被標(biāo)注的文件在顯示區(qū)域1005中顯示??商鎿Q地,獨(dú)立窗口可以?xún)H僅顯示被標(biāo)注或者被分組的項(xiàng)目。該關(guān)聯(lián)或者分組可以?xún)H僅是臨時(shí)的(例如他們只是在搜索結(jié)果窗口顯示的時(shí)候存在),或者可以通過(guò)保留分組文件名單并且通過(guò)在用戶(hù)可配置側(cè)邊條(例如側(cè)邊條1003A)中保留文件夾1020或者其他分組標(biāo)識(shí)的方式成為永久的。某些實(shí)施例可以允許同一時(shí)間存在多個(gè)不同的分組,這些分組或聯(lián)合的每個(gè)可以?xún)H僅是臨時(shí)的(例如他們僅在搜索窗口被顯示時(shí)存在),或者他們可以通過(guò)保留已經(jīng)被分組在每個(gè)單獨(dú)的組中的所有文件的列表而被永久保留。應(yīng)當(dāng)知道每一組中的文件可以被不同應(yīng)用創(chuàng)建。如上所述,一個(gè)分組可以被選擇并且接著用戶(hù)選擇在所選擇的組的所有文件中執(zhí)行共同的動(dòng)作(例如打印或者查看或者移動(dòng)或者刪除)的命令。
附圖11A、11B、11C和11D顯示了允許用戶(hù)輸入搜索查詢(xún)或者搜索參數(shù)的可替代的用戶(hù)接口。附圖中所示的該用戶(hù)接口顯示在窗口1101中,該窗口具有用戶(hù)可配置的側(cè)邊條區(qū)域1103A和系統(tǒng)指定側(cè)邊條區(qū)域1103B。窗口1101還包括傳統(tǒng)窗口控制器,例如窗口調(diào)整大小控制器1131,該部件可以在傳統(tǒng)的圖形用戶(hù)接口方式下被拖拽以調(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,也被提供以允許用戶(hù)向后移動(dòng)和向前移動(dòng),該移動(dòng)的方式與網(wǎng)頁(yè)瀏覽器中的后退和前進(jìn)命令類(lèi)似。窗口1101包括搜索參數(shù)菜單欄1111,該搜索參數(shù)菜單欄包括“搜索(search by)”下拉菜單1112和“排序(sort by)”下拉菜單1114?!八阉鳌毕吕藛?112允許用戶(hù)指明特定搜索參數(shù),如圖11B所示,其通過(guò)從一旦被激活即顯示在下拉菜單中的選項(xiàng)中選擇的方式實(shí)現(xiàn)。特別地,下拉菜單1113顯示了當(dāng)“搜索”下拉菜單1112被激活的時(shí)候下拉菜單的示例?!芭判颉毕吕藛?114允許用戶(hù)指明搜索結(jié)果如何顯示在顯示區(qū)域1105中。在附圖11A-11D所示的示例中,用戶(hù)使用“排序”下拉菜單1114選擇“查看日期(date viewed)”標(biāo)準(zhǔn)以基于此排序搜索結(jié)果。應(yīng)當(dāng)注意用戶(hù)可以通過(guò)選擇三個(gè)查看按鈕1137之一改變搜索查詢(xún)結(jié)果的查看類(lèi)型。舉例而言,用戶(hù)可以選擇圖標(biāo)查看在查看按鈕1137中目前被選擇的按鈕,或者用戶(hù)可以選擇列表查看或者列查看。
附圖11B顯示了用戶(hù)激活“搜索”下拉菜單1112后的結(jié)果,其導(dǎo)致菜單1113的顯示,菜單1113包含許多選項(xiàng),用戶(hù)可以從中選擇執(zhí)行搜索的依據(jù)。應(yīng)當(dāng)知道對(duì)于用戶(hù)而言存在大量不同激活“搜索”下拉菜單1112的方式。一種方式包括光標(biāo)的使用,例如由光標(biāo)控制裝置控制的顯示屏上的指針,該光標(biāo)控制裝置例如鼠標(biāo)。光標(biāo)位于與“搜索”菜單標(biāo)題關(guān)聯(lián)的區(qū)域(其是包含“按…搜索的”的搜索參數(shù)菜單條1111中的部分)并且接著用戶(hù)通過(guò)按壓例如鼠標(biāo)按鍵的按鈕表明菜單標(biāo)題的選擇,從而導(dǎo)致下拉菜單出現(xiàn),在這種情況下該下拉菜單即如附圖11B所示的菜單1113。在這一點(diǎn)上,用戶(hù)可以繼續(xù)移動(dòng)光標(biāo)指向菜單中的特定選項(xiàng),例如“時(shí)間(time)”選項(xiàng)。這會(huì)導(dǎo)致子菜單在菜單1113的左側(cè)或者右側(cè)顯示。子菜單可以與子菜單719A或者附圖12A中顯示的菜單1214相類(lèi)似。如果“類(lèi)別(kind)”選項(xiàng)在菜單1113中被選擇,子菜單可以包括不同種類(lèi)文檔的總體列表,例如圖像、照片、電影、文本、音樂(lè)、PDF文檔、電子郵件文檔等等,或者列表可以包括特定程序名稱(chēng)的引用,該程序例如PhotoShop、Director、Excel、Word等等,或者其可以包括總體名稱(chēng)和特定名稱(chēng)的結(jié)合。附圖11C顯示了用戶(hù)從菜單1113中顯示的“類(lèi)別”選項(xiàng)的子菜單中選擇PhotoShop類(lèi)型文檔的結(jié)果。這導(dǎo)致了附圖11C所示的搜索參數(shù)菜單欄1111A的顯示,該菜單欄包括高亮度區(qū)域1111B,該高亮度區(qū)域表明要搜索的PhotoShop類(lèi)型文檔。該搜索參數(shù)菜單欄1111顯示在如圖11C所示的搜索參數(shù)菜單欄1111A的下面。用戶(hù)接著通過(guò)再次使用“搜索”下拉菜單1112或者通過(guò)向文本輸入?yún)^(qū)域1109輸入文本指明附加搜索參數(shù)。舉例而言,從附圖11C所示的窗口1101的狀態(tài),用戶(hù)可以選擇“搜索”下拉菜單1112,使得包含許多選項(xiàng)的菜單得以顯示,該選項(xiàng)例如菜單1113中所示的選項(xiàng)或者例如與PhotoShop文檔相關(guān)的可替換的選項(xiàng)(例如PhotoShop類(lèi)型文檔的元數(shù)據(jù)的各種字段)。包含在PhotoShop類(lèi)型文檔的元數(shù)據(jù)中的這些字段的結(jié)合和其他類(lèi)別的字段(例如時(shí)間、文件大小和其他參數(shù))可以顯示在菜單中,例如通過(guò)選擇“搜索”下拉菜單激活的菜單1113。用戶(hù)可以接著選擇另一個(gè)標(biāo)準(zhǔn),例如時(shí)間標(biāo)準(zhǔn)。在這種情況下,窗口1101顯示允許用戶(hù)指明特定時(shí)間的新搜索參數(shù)菜單欄1115。用戶(hù)可以在菜單欄1115上選擇時(shí)間或者可以通過(guò)選擇標(biāo)題為“時(shí)間”的菜單激活下拉菜單,時(shí)間作為菜單標(biāo)題1116加以顯示。附圖11D中顯示的窗口1101的狀態(tài)可以接著基于用戶(hù)選擇的特定時(shí)間期間,搜索最近30天或者7天或者2天或者當(dāng)天或者任意時(shí)間創(chuàng)建的所有PhotoShop文檔。
附圖12A、12B、12C和12D顯示了用戶(hù)接口的另一個(gè)實(shí)施例,該用戶(hù)接口用于實(shí)現(xiàn)生成搜索元數(shù)據(jù)和其他數(shù)據(jù)的搜索查詢(xún),并且該用戶(hù)接口用于顯示使用搜索查詢(xún)執(zhí)行搜索的結(jié)果。附圖12A-12D中所示的不同實(shí)現(xiàn)方式以列模式顯示用戶(hù)接口的表現(xiàn);其可以通過(guò)說(shuō)明列按鈕的選擇看出,列按鈕是附圖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)用戶(hù)輸入搜索參數(shù)的時(shí)候該結(jié)果將動(dòng)態(tài)顯示,或者該結(jié)果只是在用戶(hù)指令系統(tǒng)執(zhí)行搜索(例如通過(guò)選擇“執(zhí)行搜索(perform search)”命令)之后加以顯示。窗口1201包括傳統(tǒng)窗口控制器,例如調(diào)整大小控制器1231、滾動(dòng)控制器1221、可以用于移動(dòng)窗口的標(biāo)題欄1229、窗口關(guān)閉按鈕、窗口最小化按鈕和各個(gè)窗口調(diào)整大小按鈕1234、1235和1236。窗口1201也包括用戶(hù)可配置側(cè)邊條區(qū)域1203A和系統(tǒng)指定側(cè)邊條區(qū)域1203B。從附圖12A可以看出,通過(guò)在系統(tǒng)指定側(cè)邊條區(qū)域1203B中高亮度顯示“瀏覽(browse)”圖標(biāo)1203C,表明瀏覽器模式被選擇。窗口1201還包括文本輸入?yún)^(qū)域1209,用戶(hù)可以使用該區(qū)域輸入要搜索的文本,并且窗口1201還包括查看選擇按鈕1237。
窗口1201的列1211允許用戶(hù)通過(guò)選擇一個(gè)選項(xiàng)選擇多種搜索參數(shù),該選項(xiàng)依次引發(fā)與選擇的選項(xiàng)相對(duì)應(yīng)的子菜單的顯示。在附圖12A的情況下,用戶(hù)選擇了“類(lèi)別”選項(xiàng)1212并且接著使用子菜單1214從子菜單中選擇“照片”選項(xiàng),導(dǎo)致標(biāo)識(shí)符1213(照片)顯示在“類(lèi)別”選項(xiàng)下面的列1211中,如附圖12A所示。也可以看出用戶(hù)以前在列1211中選擇過(guò)“時(shí)間”選項(xiàng),并且也可以看出當(dāng)“時(shí)間”選項(xiàng)被選擇為“上周”的搜索參數(shù)的時(shí)候,從產(chǎn)生的子菜單中加以選擇。當(dāng)用戶(hù)從所有列1112和顯示的任何對(duì)應(yīng)子菜單中選出多種選項(xiàng)和子選項(xiàng)之后,接著如附圖12B所示的顯示出現(xiàn)。請(qǐng)注意子菜單不再出現(xiàn),用戶(hù)完成各種選項(xiàng)和子選項(xiàng)的選擇,這些選項(xiàng)和子選項(xiàng)使得搜索參數(shù)具體化。附圖12B中的列1211提供給用戶(hù)的反饋,該反饋表明搜索查詢(xún)的精確特性(在這種情況下對(duì)所有照片的搜索追溯到上周),并且與搜索查詢(xún)匹配的結(jié)果現(xiàn)實(shí)在顯示區(qū)域1205上。
附圖12C和12D顯示了替換的實(shí)施例,在該實(shí)施例中子菜單被附加列所代替,在附圖12A和12B中的實(shí)施例中該子菜單顯示在臨時(shí)性基礎(chǔ)之上,該附加列在選擇做出之后不會(huì)消失。尤其是,窗口1251的列1259以與子菜單1214相同的方式運(yùn)行,除了在選擇做出之后(其中在用戶(hù)從子菜單做出選擇之后,子菜單1214被移除出窗口)該列保持在窗口1251之內(nèi)。附圖12D中的窗口1271的列1279與列1259類(lèi)似。窗口1251包括側(cè)邊條,該側(cè)邊條具有用戶(hù)可配置側(cè)邊條形區(qū)域1253A和系統(tǒng)定義側(cè)邊條形區(qū)域1253B。系統(tǒng)指定側(cè)邊條形區(qū)域1253B包括“瀏覽”選擇區(qū)域1254,該區(qū)域具有清除按鈕1258,用戶(hù)可以選擇該按鈕清除當(dāng)前的搜索查詢(xún)。附圖12D中的窗口1271提供清楚搜索查詢(xún)的替代性接口。窗口1271還包括用戶(hù)可配置側(cè)邊條形區(qū)域1273A和系統(tǒng)指定側(cè)邊條形區(qū)域1273B,但是清除按鈕位于列1277的頂部,清除按鈕不是與“搜索”區(qū)域1274在一起。用戶(hù)可以通過(guò)選擇附圖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和用戶(hù)配置部分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é)果。用戶(hù)通過(guò)選擇“隨處(everywhere)”按鈕1317指明搜索在所有位置進(jìn)行。進(jìn)一步,用戶(hù)通過(guò)在下拉菜單1315中選擇“種類(lèi)(kind)”選項(xiàng)和在下拉菜單1319中選擇“任意(any)”選項(xiàng),搜索所有種類(lèi)的文檔。位置部分1307包括“+”按鈕,該按鈕可以用于進(jìn)一步添加搜索參數(shù),并且簡(jiǎn)單地說(shuō),部分1308包括用于分別添加或者刪除搜索參數(shù)的“+”和“-”按鈕。部分1307還包括“保存(save)”按鈕1309,該按鈕使得當(dāng)前搜索查詢(xún)以文件夾的形式保存,該文件夾被添加到用戶(hù)配置部分1303便于以后使用。這將在下面進(jìn)一步描述并且可以被稱(chēng)為“智能文件夾(smart folder)”。在特定實(shí)施例中,顯示在附圖13A和13B中的搜索輸入用戶(hù)接口可以在由圖形用戶(hù)接口文件管理系統(tǒng)控制的每一個(gè)窗口內(nèi)有效,該圖形用戶(hù)接口文件管理系統(tǒng)例如在Macintosh上運(yùn)行的Finder程序或者在微軟Windows操作系統(tǒng)上運(yùn)行的WindowsExplorer。該接口包括文本輸入?yún)^(qū)域1306以及部分1307和1308。
顯示在附圖13B中的窗口1301通過(guò)選擇搜索按鈕1323A顯示了菜單的啟動(dòng),導(dǎo)致具有兩個(gè)輸入部分1323和1325的菜單的顯示。輸入部分1323顯示了最近執(zhí)行的搜索從而用戶(hù)可以?xún)H僅通過(guò)選擇先前搜索就能重新啟動(dòng)先前搜索,并且使得先前搜索再次運(yùn)行。菜單選擇1325允許用戶(hù)清除菜單中最近搜索的列表。
附圖14A、14B和14C顯示了圖像用戶(hù)接口文件系統(tǒng)中另一個(gè)窗口的示例,例如在Macintosh操作系統(tǒng)上運(yùn)行的Finder程序。這些窗口顯示特定搜索的結(jié)果并且也顯示了保存和使用智能文件夾的能力,該智能文件夾保存了先前搜索。附圖14A示出的窗口1401包括顯示區(qū)域1403、用戶(hù)配置區(qū)域1405、智能文件夾1406、系統(tǒng)指定區(qū)域1407、圖標(biāo)查看按鈕1409、列表查看按鈕1410和列查看按鈕1411。窗口1401還包括文本輸入?yún)^(qū)域1415和位置部分1416,該位置部分可以用于指定搜索位置,該部分還包括保存按鈕1417。在部分1416之下的附加部分使得用戶(hù)可以進(jìn)一步說(shuō)明有關(guān)搜索的細(xì)節(jié),在這種情況下指明文檔的類(lèi)型,該文檔是最近一周查看過(guò)的圖像。用戶(hù)在這種情況下通過(guò)下述方式設(shè)定搜索參數(shù),該方式就是從下拉菜單1419中選擇“類(lèi)別”選項(xiàng)和從下拉菜單1420中選擇“圖像”類(lèi)型和從下拉菜單1418中選擇“最近查看”選項(xiàng)和從下拉菜單1422中選擇“本周(this week)”。用戶(hù)還通過(guò)選擇按鈕1421選擇“隨處”從而搜索在與系統(tǒng)相連的所有磁盤(pán)和存儲(chǔ)裝置上執(zhí)行。該結(jié)果顯示在顯示區(qū)域1403上。用戶(hù)接著通過(guò)選擇“保存”按鈕1417存儲(chǔ)搜索查詢(xún),并且可以命名該保存的搜索查詢(xún)?yōu)椤氨局軋D像(this week’s images)”以生成智能文件夾1406,如用戶(hù)配置部分1405所示。這使得用戶(hù)可以在較近的時(shí)間內(nèi)僅僅通過(guò)選擇智能文件夾1406即重復(fù)該搜索,該智能文件夾使得系統(tǒng)再次執(zhí)行新搜索,并且與搜索標(biāo)準(zhǔn)匹配的所有數(shù)據(jù)將在顯示區(qū)域1403中加以顯示。因此,如果從通過(guò)選擇智能文件夾1406執(zhí)行下次搜索起的最近幾周,顯示在附圖14A中的顯示區(qū)域1403的文件中沒(méi)有文件被查看,在幾周之后,通過(guò)選擇智能文件夾1406的搜索的重復(fù)將產(chǎn)生完全不同的列表。
附圖14B顯示了一種方式,在該方式下用戶(hù)可以在由保存的搜索確定的搜索結(jié)果中分類(lèi)或者進(jìn)一步搜索,該保存的搜索例如智能文件夾。在附圖14B的情況下,用戶(hù)選擇了智能文件夾1406并且接著在文本輸入?yún)^(qū)域1415中輸入文字“jpg”1425。這使得系統(tǒng)過(guò)濾或者進(jìn)一步限制智能文件夾1406保存的搜索查詢(xún)獲得的搜索結(jié)果。因此,PhotoShop文件和例如TIF文件和GIF文件的其他文件排除在附圖14B的顯示區(qū)域1403中顯示的搜索結(jié)果之外,因?yàn)橛脩?hù)通過(guò)添加額外的搜索標(biāo)準(zhǔn)排除了這些文件,該搜索標(biāo)準(zhǔn)由文本輸入?yún)^(qū)域1415中的文本1425指明??梢钥闯觥癹pg”文字輸入與其他搜索參數(shù)進(jìn)行邏輯與操作以獲得在顯示區(qū)域1403顯示的搜索結(jié)果。還可以看出用戶(hù)通過(guò)選擇圖標(biāo)查看按鈕1409選擇圖標(biāo)查看。因此,用戶(hù)可能保存搜索查詢(xún)并且隨后使用它,并且進(jìn)一步限制搜索查詢(xún)的結(jié)果,該限制通過(guò)在搜索查詢(xún)的結(jié)果上執(zhí)行搜索以進(jìn)一步限制搜索結(jié)果實(shí)現(xiàn)。
附圖14C展現(xiàn)了窗口1401并且展現(xiàn)了顯示在顯示區(qū)域1403的搜索結(jié)果,在顯示區(qū)域,結(jié)果基于由智能文件夾1406確定的保存的搜索。用戶(hù)通過(guò)選擇下拉區(qū)域1427A使得下拉菜單1427顯示。下拉區(qū)域1427包括用戶(hù)可以選擇的一些選項(xiàng)。這些選項(xiàng)包括隱藏搜索標(biāo)準(zhǔn)或者保存搜索(其與選擇按鈕1417類(lèi)似)或者顯示查看選項(xiàng)或者打開(kāi)選擇文件。舉例而言,這使得用戶(hù)可以隱藏搜索標(biāo)準(zhǔn),因此使得部分1416和其他搜索參數(shù)從窗口1401中移除,該窗口是可移動(dòng)的、可調(diào)整大小的、可最小化的并且可關(guān)閉的窗口。
附圖14D顯示了用戶(hù)接口的示例,該用戶(hù)接口允許用戶(hù)指定例如智能文件夾1406智能文件夾的外觀(guān)。
附圖15A、15B、15C和15D顯示了系統(tǒng)級(jí)搜索輸入用戶(hù)接口和搜索結(jié)果用戶(hù)接口的示例。在一個(gè)特定的示例性實(shí)施例中,這些用戶(hù)接口在整個(gè)系統(tǒng)中針對(duì)所有應(yīng)用都是有效的,這些應(yīng)用在系統(tǒng)和所有文件和元數(shù)據(jù)甚至地址簿程序中的地址簿實(shí)體上運(yùn)行,例如個(gè)人信息管理程序,和日歷程序中的日歷實(shí)體和電子郵件程序中的電子郵件等等。在一個(gè)示例性實(shí)施例中,系統(tǒng)開(kāi)始執(zhí)行搜索并且開(kāi)始作為用戶(hù)鍵入到文本輸入?yún)^(qū)域的文本顯示搜索結(jié)果,該文本輸入?yún)^(qū)域例如文本輸入?yún)^(qū)域1507。該搜索結(jié)果分類(lèi)組織并且顯示在較短的列表中,該列表被有意簡(jiǎn)化以?xún)H提出選定數(shù)量的搜索查詢(xún)的最為相關(guān)(評(píng)估較好的)的匹配項(xiàng)或者命中項(xiàng)。用戶(hù)可以通過(guò)選擇命令要求所有命中項(xiàng)的顯示,該命令例如“全部顯示(show all)”命令1509。附圖15A展示了由數(shù)據(jù)處理系統(tǒng)控制的顯示的一部分。該部分包括菜單欄1502,在菜單欄的遠(yuǎn)端具有搜索菜單命令1505。用戶(hù)可以通過(guò)定位光標(biāo)、使用鼠標(biāo)或者通過(guò)其他方式啟動(dòng)或者選擇命令,來(lái)選擇搜索菜單命令,使用鼠標(biāo)例如將鼠標(biāo)置于搜索菜單命令1505之上。這引發(fā)文本輸入?yún)^(qū)域1507的顯示,用戶(hù)可以向該區(qū)域中輸入文本。在附圖15A顯示的示例中,該圖是顯示的一部分,用戶(hù)輸入文本“shakeit”,引發(fā)搜索結(jié)果區(qū)域的顯示,該區(qū)域直接低于“全部顯示”命令區(qū)域1509,該命令區(qū)域本身直接低于文本輸入?yún)^(qū)域1507??梢钥闯雒谢蛘咂ヅ浔话捶N類(lèi)(“文檔(documents)”和“PDF文檔(PDFdocuments)”)分組,該種類(lèi)顯示為搜索結(jié)果區(qū)域1503的種類(lèi)1511和1513。附圖15B顯示了搜索的另一個(gè)示例。在這種情況下,獲得了大量命中項(xiàng)(392項(xiàng)命中),其中只有少數(shù)顯示在搜索結(jié)果區(qū)域1503中。另外,命中項(xiàng)按照種類(lèi)1511和1513加以組織。每一種類(lèi)在顯示結(jié)果區(qū)域1503上顯示的項(xiàng)目數(shù)這一方面受到限制,以允許同時(shí)在搜索結(jié)果區(qū)域上可以顯示更多的種類(lèi)。舉例而言,在文檔類(lèi)中命中項(xiàng)的數(shù)目會(huì)大大超過(guò)搜索結(jié)果區(qū)域1503中的有效顯示空間,但是該種類(lèi)的命中項(xiàng)被限制在類(lèi)1511的搜索結(jié)果區(qū)域1503的預(yù)定的或者動(dòng)態(tài)確定的實(shí)體數(shù)目以?xún)?nèi)。附加類(lèi),“命中最高項(xiàng)(top hit)”基于得分或者相關(guān)度使用本領(lǐng)域公知的技術(shù)被選出。用戶(hù)可以選擇“全部顯示”命令1509引發(fā)窗口的顯示,該窗口例如顯示在附圖16A中的窗口1601。附圖15C顯示本發(fā)明一個(gè)實(shí)施例的圖形用戶(hù)界面的顯示,該界面包括菜單欄1502和在菜單欄1502上的搜索菜單命令1505。附圖15D顯示了搜索結(jié)果區(qū)域1503的另一個(gè)示例,該區(qū)域在術(shù)語(yǔ)“safari”的搜索輸入到文本輸入?yún)^(qū)域1507之后顯示。從附圖15D中的搜索結(jié)果區(qū)域1503可以看出,搜索結(jié)果再次被分類(lèi)組織。另一個(gè)搜索結(jié)果窗口1520也顯示在附圖15D中的用戶(hù)接口??梢钥闯鰬?yīng)用程序作為搜索結(jié)果的一部分得到檢索,并且用戶(hù)可以通過(guò)從搜索結(jié)果區(qū)域選擇應(yīng)用程序的方式加載任一個(gè)該應(yīng)用程序,從而致使程序加載。
附圖16A和16B顯示了搜索結(jié)果窗口的示例,通過(guò)在附圖15A或者15B中選擇“全部顯示”命令1509,使得該窗口得以顯示??商鎿Q地,該窗口作為用戶(hù)選擇“查找”命令或者其他一些表明該搜索是所期待的命令的結(jié)果顯示。另外,附圖16A和16B所示的窗口1601可以響應(yīng)顯示所有命令的選擇或者響應(yīng)查找命令的選擇加以顯示。窗口1601包括文本輸入?yún)^(qū)域1603、分組菜單選擇區(qū)域1605、分類(lèi)菜單選擇區(qū)域1607和地方菜單選擇區(qū)域1609。分組選擇區(qū)域1605允許用戶(hù)指明在搜索結(jié)果之中項(xiàng)目被相應(yīng)分組的方式。如附圖16A所示的示例中,用戶(hù)從分組菜單選擇區(qū)域1605中選擇“類(lèi)別”選項(xiàng),得到按照文檔或者文件的類(lèi)別或者類(lèi)型分組的或者分類(lèi)的搜索結(jié)果。如附圖16A所示,可以看出文件類(lèi)型包括“html”文件、圖像文件、PDF文件、源代碼文件和其他類(lèi)型文件。通過(guò)在部分之內(nèi)進(jìn)行分組每一類(lèi)型或者種類(lèi)的文檔與其他文檔分離并且通過(guò)標(biāo)題與其他部分分離。因此,標(biāo)題1611、1613、1615、1617、1619、1621和1623指定每一分組并且將一個(gè)分組與其他分組分離。這使得用戶(hù)可以將注意力聚集到根據(jù)文檔類(lèi)型評(píng)價(jià)搜索結(jié)果上。在每一組內(nèi)部,例如文檔組或者文件夾組,用戶(hù)指明項(xiàng)目按照時(shí)間存儲(chǔ),因?yàn)橛脩?hù)在分類(lèi)菜單選擇區(qū)域1607中選擇了日期選項(xiàng)。用戶(hù)還通過(guò)在地方菜單選擇區(qū)域1609中選擇“隨處”指明了所有的存儲(chǔ)位置都被搜索。搜索結(jié)果列表中的每一項(xiàng)包括信息按鈕1627,該按鈕可以被選擇以產(chǎn)生附加信息的顯示,該信息可以從系統(tǒng)中獲得。該附加信息的一個(gè)示例顯示在附圖17中,在該附圖中用戶(hù)從項(xiàng)目1635中選擇信息按鈕1627,導(dǎo)致與該項(xiàng)目相應(yīng)的圖像1636的顯示以及附加信息1637的顯示。類(lèi)似地,用戶(hù)從另一項(xiàng)目1630中選擇了信息按鈕以產(chǎn)生項(xiàng)目1631的圖像以及附加信息1632的顯示。用戶(hù)可以通過(guò)選擇關(guān)閉按鈕1628將附加信息從顯示中移除,該按鈕引發(fā)項(xiàng)目1635的信息的顯示從而恢復(fù)到附圖16A中所示的項(xiàng)目的外觀(guān)。用戶(hù)可以通過(guò)選擇附圖16A中所示的折疊按鈕1614,折疊全組以在該組中隱藏入口或者搜索結(jié)果,從而導(dǎo)致如附圖16B所示的在該組中入口消失。如附圖16B所示,用戶(hù)可以通過(guò)選擇展開(kāi)按鈕1614A使得該項(xiàng)目再次出現(xiàn),從而恢復(fù)到附圖16A所示的項(xiàng)目顯示上。
附圖16A和16B所示的搜索結(jié)果用戶(hù)接口只是展示了該類(lèi)中有限數(shù)量的匹配項(xiàng)或者命中項(xiàng)。在該附圖的特定示例中,只有五個(gè)頂級(jí)(最為相關(guān)的或者排序最高的)命中項(xiàng)得到顯示。這通過(guò)注意在該組每一列表底端的入口可以看出,該入口表明該組中還有多少命中項(xiàng);可以通過(guò)選擇該指示部分這些命中項(xiàng)可以被檢查,該指示部分例如指示部分1612,其使得用于“按鈕(button)”的搜索的文檔種類(lèi)或者類(lèi)別中的所有項(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、分類(lèi)菜單選擇區(qū)域1807和地方菜單選擇區(qū)域1809,其中每一個(gè)區(qū)域分別與附圖16A中的區(qū)域1605、1607和1609以相類(lèi)似的方式發(fā)揮功能。在窗口1801中列表查看中,每一個(gè)項(xiàng)目包括信息按鈕1827,該按鈕允許用戶(hù)獲得超出窗口1801中所示的項(xiàng)目列表的附加信息。窗口1801還包括標(biāo)題1811、1813、1815、1817、1819、1821和1823,其將每一個(gè)項(xiàng)目組與其他組分離,該項(xiàng)目組按照文檔的類(lèi)別或者種類(lèi)分組,并且在每一個(gè)項(xiàng)目組中按照日期排序。折疊按鈕1814對(duì)于每一個(gè)標(biāo)題是有效的。在附圖18A和18B中示出的實(shí)施例顯示了在不同的查看信息的模式之間交換。舉例而言,如附圖18A所示,用戶(hù)可以通過(guò)選擇指示部分1812顯示特定組中的所有命中項(xiàng),該指示部分致使在區(qū)域1818A中在窗口1801中所有圖像文件得以顯示。該窗口是可以滾動(dòng)的,因此允許用戶(hù)可以滾動(dòng)瀏覽所以圖像。用戶(hù)可以恢復(fù)到只顯示五個(gè)最為相關(guān)的圖像的列表的情形,其通過(guò)選擇附圖18B中所示的“顯示前5個(gè)(show top 5)”按鈕1832實(shí)現(xiàn)。另外,用戶(hù)可以在附圖18A和18B所示的圖像部分的列表查看或者圖標(biāo)查看中做出選擇。用戶(hù)可以通過(guò)選擇列表查看按鈕1830選擇列表查看,或者通過(guò)選擇圖標(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)場(chǎng)內(nèi)容調(diào)整大小(Live Content Resizing)”的專(zhuān)利申請(qǐng)中的描述,其能夠現(xiàn)場(chǎng)調(diào)整大小,該專(zhuān)利申請(qǐng)的提交日與本申請(qǐng)相同,并且已經(jīng)轉(zhuǎn)讓給了此處描述的本發(fā)明的受讓人,并且該專(zhuān)利申請(qǐng)?jiān)诖颂幈唤Y(jié)合參考。
附圖19A顯示了搜索結(jié)果窗口的另一個(gè)示例,該窗口與窗口1601類(lèi)似。附圖19A顯示的窗口1901包括文本輸入?yún)^(qū)域1903和分組菜單選擇區(qū)域1905和分類(lèi)菜單選擇區(qū)域1907和地方菜單選擇區(qū)域1908。另外,窗口還包括關(guān)閉按鈕1925和調(diào)整大小控制器1925A。文本被輸入到文本輸入?yún)^(qū)域1903以產(chǎn)生窗口1901所示的搜索結(jié)果。搜索結(jié)果再次按用戶(hù)選擇的種類(lèi)分組,在該情況下該種類(lèi)是人員(people)選項(xiàng)1906。這使得標(biāo)題1911、1913、1915和1917根據(jù)人員的姓名分別顯示組。在每一組中,用戶(hù)選擇按照特定文件或者文檔的日期排序。舉例而言,附圖19A所示的用戶(hù)接口允許用戶(hù)指明個(gè)體的姓名并且允許用戶(hù)按照人員分組以查看兩人之間的通信。附圖19B顯示了另一種方式,在該方式下用戶(hù)以與附圖19A所示的方式不同的方式將文本搜索(“imran”)分組。在附圖19B所示的情況下,用戶(hù)在菜單選擇區(qū)域1905的組中選擇展開(kāi)列表(flat list)并且從分類(lèi)菜單選擇區(qū)域1907中選擇“人員”。窗口1901A的結(jié)果顯示不具有標(biāo)題并且因此顯示為展開(kāi)文件。
附圖19C顯示了另一個(gè)搜索結(jié)果窗口1930的用戶(hù)接口,該窗口包括文本輸入?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。該附加信息可以通過(guò)選擇收縮按鈕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ū)域允許用戶(hù)基于時(shí)間以及輸入到文本輸入?yún)^(qū)域1903的文本指明搜索參數(shù)。從附圖19E所示的示例中可以看出,用戶(hù)決定按類(lèi)對(duì)搜索結(jié)果分組并且在每一組中按照日期排序。標(biāo)題1973、1975、1977和1979的結(jié)果顯示在附圖19E中。
附圖20顯示了操作系統(tǒng)級(jí)菜單以輸入搜索查詢(xún)的示例性方法,例如,如附圖15A或者15B或者15C所示的可以通過(guò)選擇搜索菜單命令1505使用的系統(tǒng)級(jí)菜單。在操作2001中,系統(tǒng)顯示用于輸入搜索查詢(xún)的系統(tǒng)級(jí)菜單。這可以是搜索菜單命令1505。在操作2003中用戶(hù)輸入搜索,并且在搜索查詢(xún)輸入的時(shí)候,在用戶(hù)輸入完搜索查詢(xún)之前,系統(tǒng)開(kāi)始執(zhí)行并且開(kāi)始顯示搜索結(jié)果。這樣當(dāng)用戶(hù)輸入信息之后,提供及時(shí)反饋和用戶(hù)的輸入。在操作2005中,系統(tǒng)在文件、文件的元數(shù)據(jù)、電子郵件程序中的電子郵件、地址簿程序中的地址簿項(xiàng)目、日歷程序中的日歷項(xiàng)目等等中執(zhí)行搜索。在操作2007中,如果具有多于特定數(shù)目的命中項(xiàng),系統(tǒng)接著顯示命中項(xiàng)的縮減(例如不完整)列表。縮減列表的一個(gè)示例顯示在附圖15B中。該列表可以按照相關(guān)度排序并且被分隔成組,該組例如文檔的種類(lèi)或者類(lèi)別。接著,在操作2009中系統(tǒng)接收來(lái)自用戶(hù)的顯示所有命中項(xiàng)的命令,并且在操作2011中系統(tǒng)顯示搜索結(jié)果窗口,例如附圖16A所示的窗口1601。該窗口具有在相同的可關(guān)閉、可調(diào)整大小和可移動(dòng)的窗口中顯示兩種不同類(lèi)型的查看的能力,例如圖標(biāo)查看和列表查看。應(yīng)當(dāng)知道當(dāng)用戶(hù)鍵入的時(shí)候執(zhí)行的搜索和當(dāng)用戶(hù)鍵入的時(shí)候結(jié)果的顯示可以包括元文件的搜索,該元文件由從文件中提取的元數(shù)據(jù)創(chuàng)建,該文件由許多不同類(lèi)型的軟件程序創(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ù)文件、文件夾(例如代表子目錄的圖形用戶(hù)接口)、應(yīng)用程序或者一個(gè)或者多個(gè)這些項(xiàng)目的結(jié)合。該選擇可以由許多傳統(tǒng)方法中的一種方法執(zhí)行,該傳統(tǒng)方法用于選擇許多項(xiàng)目,該傳統(tǒng)方法例如(a)將光標(biāo)單獨(dú)定位在每一項(xiàng)目上(例如通過(guò)鼠標(biāo)的移動(dòng))并且例如單獨(dú)通過(guò)按壓和釋放按鈕表明選擇,例如鼠標(biāo)按鍵;(b)將光標(biāo)指向列表中的第一項(xiàng)目并且表明第一項(xiàng)目的選擇并且將光標(biāo)指向項(xiàng)目表的最后一個(gè)項(xiàng)目并且表明在列表中從第一項(xiàng)目到最后一個(gè)項(xiàng)目的所有項(xiàng)目的選擇;(c)通過(guò)拖拽光標(biāo)的操作畫(huà)出選擇矩形,等等。因此附圖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)操作。舉例而言,用戶(hù)可以選擇多個(gè)項(xiàng)目并且接著命令系統(tǒng)將這些項(xiàng)目從其存在的位置移動(dòng)到新文件夾,該新文件夾在一個(gè)操作中作為移動(dòng)和創(chuàng)建新文件夾命令的結(jié)果被創(chuàng)建。相應(yīng)操作2103中接收的命令,系統(tǒng)使用預(yù)定目錄路徑名或者用戶(hù)指定路徑名創(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ù)定目錄路徑名或者用戶(hù)指定目錄路徑名的新文件夾中。在移動(dòng)操作之中項(xiàng)目被移動(dòng)到新文件夾中,移動(dòng)操作可以?xún)H僅改變與每一個(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)”的一些文件的列表查看。用戶(hù)可以接著使用光標(biāo)2211或者使用其他傳統(tǒng)用戶(hù)接口技術(shù)選擇多個(gè)項(xiàng)目。這可以使用表明多個(gè)項(xiàng)目的選擇的一個(gè)輸入或者多個(gè)輸入完成。附圖22B顯示了用戶(hù)選擇圖標(biāo)2215、2217、2223、2225、2227和窗口2207中“文件B(File B)”的結(jié)果??梢钥闯龉鈽?biāo)2211在操作位置上與圖標(biāo)2225鄰近。接著用戶(hù)在選擇許多項(xiàng)目之后,可以調(diào)用操作2103提及的命令。其的示例顯示在附圖22C中,該圖表示了桌面2101的一部分,如附圖22C所示該部分被指定為2201A。用戶(hù)引發(fā)彈出菜單2230得以顯示,該彈出菜單包括三項(xiàng)2231、2232和2233。選項(xiàng)2231允許用戶(hù)將所有選擇的項(xiàng)目移至回收站(例如刪除它們),同時(shí)選項(xiàng)2232和2233與附圖21中的操作2103中的命令相關(guān)。特別地,選項(xiàng)2232是可由用戶(hù)選擇以產(chǎn)生新文件夾的命令,并且在同樣的操作下,移除已被選入新文件夾的項(xiàng)目。選項(xiàng)2233是在操作中允許用戶(hù)生成新文件夾并且將選中的項(xiàng)目復(fù)制到新文件夾的命令。在附圖22A-22D所示的示例中,用戶(hù)選擇選項(xiàng)2232,從而導(dǎo)致系統(tǒng)產(chǎn)生新的存儲(chǔ)工具,例如具有預(yù)定路徑名(例如“新文件夾(new folder)”)的新文件夾,或者可替代地,具有用戶(hù)指定路徑名的新文件夾。該結(jié)果顯示在附圖22D中,在該附圖中桌面2201現(xiàn)在包括標(biāo)題為新文件夾的新窗口,該窗口代表和顯示新文件夾的內(nèi)容,其也顯示為文件夾2253,該文件夾2253是代表新文件夾的圖形用戶(hù)接口。
應(yīng)當(dāng)知道該方法可以使用各種替代方案。舉例而言,在命令選項(xiàng)2232或者2233被選擇后窗口顯示,并且該窗口詢(xún)問(wèn)新文件夾的名稱(chēng)。在用戶(hù)沒(méi)有輸入新名稱(chēng)的情況下,窗口顯示默認(rèn)名稱(chēng)(例如“新文件夾”)??商娲兀到y(tǒng)可以?xún)H僅給新文件夾或者新存儲(chǔ)工具默認(rèn)路徑名。另外,系統(tǒng)可以在不顯示附圖22D中的新窗口的情況下,僅僅創(chuàng)建新文件夾并且將項(xiàng)目移動(dòng)或者復(fù)制到新文件夾中。
附圖23涉及信息處理的一個(gè)方面,其目的在于更新一個(gè)或者多個(gè)數(shù)據(jù)庫(kù),例如索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)。響應(yīng)用戶(hù)在數(shù)據(jù)處理系統(tǒng)上的行為,一個(gè)或者多個(gè)數(shù)據(jù)庫(kù)的更新被執(zhí)行和控制。典型地,用戶(hù)使用頻度較高的使用將使得系統(tǒng)自動(dòng)調(diào)整索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)更新的數(shù)量,從而用戶(hù)的行為和數(shù)據(jù)處理系統(tǒng)的使用不會(huì)受到一個(gè)或者多個(gè)數(shù)據(jù)庫(kù)上的更新操作的不利的影響。應(yīng)當(dāng)知道,在具體實(shí)施例中,只有一種類(lèi)型的更新,而不是所有類(lèi)型的更新響應(yīng)用戶(hù)行為受到控制;舉例而言,因?yàn)樗饕ǔP枰^高的計(jì)算機(jī)資源,索引可以被控制響應(yīng)用戶(hù)行為,但是元數(shù)據(jù)庫(kù)的操作則不是。操作2301涉及數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用的監(jiān)測(cè)。其可以依賴(lài)數(shù)據(jù)處理系統(tǒng)通過(guò)多種不同方式完成。舉例而言,典型地,使用基于UNIX操作系統(tǒng)的數(shù)據(jù)處理系統(tǒng)包括提供使用的程序的數(shù)量的指示的設(shè)備,該程序相對(duì)于由數(shù)據(jù)處理系統(tǒng)控制或者所有的程序“屬于”用戶(hù),該用戶(hù)可以被稱(chēng)為“根”用戶(hù)。用戶(hù)行為的一個(gè)或者多個(gè)閾值可以被用于確定數(shù)據(jù)處理系統(tǒng)上的用戶(hù)的使用或者行為處于較高層次或者較低層次。舉例而言,如果用戶(hù)沒(méi)有輸入數(shù)據(jù)或者定位光標(biāo),并且用戶(hù)所有的程序沒(méi)有執(zhí)行計(jì)算或者數(shù)據(jù)處理,接著典型地,用戶(hù)行為被認(rèn)為較低。在另一方面,如果用戶(hù)輸入數(shù)據(jù)或者使得數(shù)據(jù)得以輸入或者引發(fā)一個(gè)用戶(hù)程序執(zhí)行復(fù)雜的計(jì)算集合,接著數(shù)據(jù)處理系統(tǒng)通常會(huì)確定系統(tǒng)的用戶(hù)使用較高。操作2303顯示在示例性實(shí)施例中,當(dāng)用戶(hù)的使用處于較高層次的時(shí)候,系統(tǒng)如何響應(yīng)。在這種情況下,數(shù)據(jù)處理系統(tǒng)或者停止元數(shù)據(jù)的索引和/或輸入操作,或者將索引和/或元數(shù)據(jù)軟件設(shè)置為較低優(yōu)先級(jí)(例如,Nice命令被改變),例如對(duì)一個(gè)或者所有索引軟件和元數(shù)據(jù)軟件設(shè)置較低的處理優(yōu)先權(quán)。這使得系統(tǒng)對(duì)于用戶(hù)的程序提供更多的處理時(shí)間,并且對(duì)于索引軟件和/或元數(shù)據(jù)軟件提供較少的處理時(shí)間。該控制類(lèi)型在提供搶先式多任務(wù)的操作系統(tǒng)中有用。典型地,如附圖23所示,數(shù)據(jù)處理系統(tǒng)呈環(huán)路操作,在該環(huán)路中在調(diào)整處理優(yōu)先權(quán)之后,其繼續(xù)監(jiān)測(cè)用戶(hù)的使用。如果系統(tǒng)確定用戶(hù)的使用低于闕值,接著系統(tǒng)給予索引和/或元數(shù)據(jù)軟件較高的處理優(yōu)先權(quán),如操作2305所示,并且返回操作2301的用戶(hù)使用監(jiān)測(cè)中。
附圖24顯示了根據(jù)此處描述的本發(fā)明的另一個(gè)方面的方法。在該方法中,通知用于自動(dòng)引發(fā)索引數(shù)據(jù)庫(kù)的更新。優(yōu)選地,該通知可以輸入到索引隊(duì)列(例如,“即將索引化”序列),并且典型地,該通知不僅僅基于時(shí)間或者僅僅基于用戶(hù)輸入。在操作2403中,通知被自動(dòng)生成以響應(yīng)對(duì)現(xiàn)有文件的改變或保存新創(chuàng)新的文件。例如,操作系統(tǒng)的內(nèi)核可以自動(dòng)地產(chǎn)生通知以響應(yīng)用戶(hù)或者系統(tǒng)啟動(dòng)的保存,例如將文件寫(xiě)入硬盤(pán)。系統(tǒng)自動(dòng)執(zhí)行該保存(例如,特定文字處理程序和其他軟件允許用戶(hù)將自動(dòng)保存操作設(shè)置為在預(yù)定時(shí)間期間經(jīng)過(guò)之后發(fā)生)。被自動(dòng)生成的通知被引入索引軟件組件,其在操作2405中接收通知。優(yōu)選地,該通知被輸入索引隊(duì)列中,該索引隊(duì)列將與附圖25結(jié)合進(jìn)一步討論。在操作2407中,索引軟件執(zhí)行文件的索引化并且將索引數(shù)據(jù)存入到索引數(shù)據(jù)庫(kù)中。該索引響應(yīng)通知,而不是響應(yīng)指定時(shí)間的發(fā)生或者用戶(hù)執(zhí)行索引的命令。進(jìn)一步,通知通過(guò)標(biāo)識(shí)符指明文件。
附圖25顯示了特定示例性方法,該方法使用通知執(zhí)行索引并且還將通知輸入保存到非易失存儲(chǔ)裝置上,例如數(shù)據(jù)處理系統(tǒng)的硬盤(pán)的隊(duì)列(如索引隊(duì)列)。進(jìn)一步,該方法顯示有關(guān)隊(duì)列變化的信息可以被輸入到交易日志中。包含文本建的索引化內(nèi)容和索引隊(duì)列和日志的文件和索引數(shù)據(jù)庫(kù)可以全部存儲(chǔ)在同一個(gè)非易失存儲(chǔ)裝置上。附圖25的該方法也可以對(duì)于通知加以執(zhí)行以更新元數(shù)據(jù)庫(kù)中的元數(shù)據(jù);特定地,在元數(shù)據(jù)庫(kù)中添加元數(shù)據(jù)或者改變?cè)獢?shù)據(jù)的通知可以被加入到隊(duì)列中以更新元數(shù)據(jù),并且該隊(duì)列(例如“元數(shù)據(jù)隊(duì)列”)可以被存儲(chǔ)在非易失存儲(chǔ)器上,并且有關(guān)該隊(duì)列變化的信息可以被輸入到交易日志中。包含文件多元數(shù)據(jù)的文件和元數(shù)據(jù)庫(kù)和元數(shù)據(jù)隊(duì)列和日志可以都存儲(chǔ)在相同的非易失存儲(chǔ)裝置上。典型地,在隊(duì)列變化存儲(chǔ)在非易失存儲(chǔ)器上之前,包括有關(guān)隊(duì)列變化信息的日志被保存在非易失存儲(chǔ)器上。
附圖25的方法可以開(kāi)始于操作2501,在該操作中來(lái)自操作系統(tǒng)內(nèi)核的通知得以接收。該通知表明現(xiàn)有文件被改變或者新文件得以創(chuàng)建。該通知通常包括指明文件的標(biāo)識(shí)符(例如通過(guò)永久的唯一的文件ID號(hào))。在操作2503中,文件標(biāo)識(shí)符被輸入到索引隊(duì)列中并且該隊(duì)列被存儲(chǔ)在例如硬盤(pán)的非易失存儲(chǔ)器上。進(jìn)一步有關(guān)隊(duì)列變化的信息被輸入到交易日志中,該日志由索引軟件或者元數(shù)據(jù)庫(kù)軟件維護(hù)。該日志被設(shè)計(jì)用以在系統(tǒng)崩潰時(shí)保持?jǐn)?shù)據(jù)處理系統(tǒng)的狀態(tài)。實(shí)現(xiàn)日志的現(xiàn)有技術(shù)可以被使用從而保持有關(guān)隊(duì)列的信息。該日志可以以簡(jiǎn)單日志的方式實(shí)現(xiàn),或者實(shí)現(xiàn)為一種日志,該日志由符合“ACID”(自動(dòng)性、一致性、獨(dú)立性和持久性)的記錄加以維護(hù),該記錄與記錄文件系統(tǒng)維持的記錄相似。接著,在操作2505中,索引化針對(duì)在索引隊(duì)列中列出的文件加以執(zhí)行。因?yàn)樗饕浖瓿晌募乃饕僮?,這使得在步驟2507中,文件標(biāo)識(shí)符從來(lái)自索引隊(duì)列的文件中移除,并且引發(fā)在更新隊(duì)列存儲(chǔ)到非易失存儲(chǔ)器上,也引發(fā)有關(guān)隊(duì)列變化的信息輸入到交易日志中。
附圖25顯示具體實(shí)施例的深入方面。特別地,其顯示了通過(guò)索引隊(duì)列和/或元數(shù)據(jù)隊(duì)列的使用,系統(tǒng)如何實(shí)現(xiàn)響應(yīng)增長(zhǎng)的用戶(hù)行為的元數(shù)據(jù)索引或更新的中斷。其顯示在操作2509和2511中,該操作響應(yīng)增長(zhǎng)的用戶(hù)使用實(shí)現(xiàn)用戶(hù)的中斷,并且接著響應(yīng)降低的用戶(hù)使用實(shí)現(xiàn)索引或者元數(shù)據(jù)處理的恢復(fù)。在用戶(hù)積極使用數(shù)據(jù)處理系統(tǒng)的同時(shí)無(wú)需執(zhí)行元數(shù)據(jù)的索引和引入的前提下,該索引隊(duì)列和元數(shù)據(jù)隊(duì)列允許系統(tǒng)跟蹤文件的變化,并且輸入標(biāo)識(shí)索引隊(duì)列和元數(shù)據(jù)隊(duì)列中的文件的信息。
附圖26、27和28有關(guān)此處描述的本發(fā)明的另一個(gè)方面。該方面涉及意圖在并非必然需要在索引數(shù)據(jù)庫(kù)中索引化的或者添加到元數(shù)據(jù)庫(kù)中的每一個(gè)記錄或者文件的檢查的情況下,確定是否更新索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)。
附圖26顯示了確定是否要更新數(shù)據(jù)庫(kù)的示例性方法,該數(shù)據(jù)庫(kù)例如索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)。該方法在存儲(chǔ)裝置可換并且可從數(shù)據(jù)處理系統(tǒng)移動(dòng)到數(shù)據(jù)處理系統(tǒng),該數(shù)據(jù)處理系統(tǒng)例如USB硬盤(pán)驅(qū)動(dòng)器或者USB閃存驅(qū)動(dòng)器或者其他類(lèi)型的可移除存儲(chǔ)裝置或者存儲(chǔ)體。舉例而言,可移除存儲(chǔ)文件在第一數(shù)據(jù)處理系統(tǒng)上被索引化,并且接著可移除存儲(chǔ)裝置從第一數(shù)據(jù)處理系統(tǒng)中移除,并且接到第二數(shù)據(jù)處理系統(tǒng)上,該第二數(shù)據(jù)處理系統(tǒng)并不自動(dòng)執(zhí)行文件內(nèi)容的索引或者將元數(shù)據(jù)從文件添加到(例如引入)元數(shù)據(jù)庫(kù)中。在沒(méi)有更新索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)的情況下存儲(chǔ)體連接到第二數(shù)據(jù)處理系統(tǒng)上的時(shí)候,用戶(hù)可以改變存儲(chǔ)體上的文件。另外,當(dāng)存儲(chǔ)體連接到第二數(shù)據(jù)處理系統(tǒng)上的時(shí)候,用戶(hù)可以創(chuàng)建新文件并且將其存儲(chǔ)在可移除存儲(chǔ)裝置上。在沒(méi)有將該新文件的內(nèi)容添加到索引數(shù)據(jù)庫(kù)并且沒(méi)有將該新文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)的情況下,這也會(huì)發(fā)生。接著,可移除存儲(chǔ)裝置可以從第二處理系統(tǒng)中拆卸,并且再次連接到第一數(shù)據(jù)處理系統(tǒng)。第一數(shù)據(jù)處理系統(tǒng)上的索引軟件和元數(shù)據(jù)軟件旨在判斷存儲(chǔ)在可移除存儲(chǔ)裝置上的索引數(shù)據(jù)庫(kù)和/或元數(shù)據(jù)庫(kù)需要更新。在不可移除的存儲(chǔ)裝置的情況下類(lèi)似的需要也會(huì)出現(xiàn)。舉例而言,用戶(hù)可以通過(guò)一些行為創(chuàng)建和/或改變文件,該行為防止數(shù)據(jù)處理系統(tǒng)獲得必要的處理時(shí)間以索引新的或者改變的文件并且將元數(shù)據(jù)從新的或者改變的文件中引入。在用戶(hù)的行為之后,用戶(hù)指示系統(tǒng)關(guān)閉或者指示系統(tǒng)電源切斷(例如,該系統(tǒng)由電池供電,例如筆記本計(jì)算機(jī)并且電池上留有不足電量,需要筆記本計(jì)算機(jī)盡快關(guān)閉)。
附圖26中的方法開(kāi)始于操作2601,在該操作中,何時(shí)文件系統(tǒng)的索引數(shù)據(jù)庫(kù)為了特定存儲(chǔ)體被最終更新被確定。在操作2603中,在索引數(shù)據(jù)庫(kù)的最后更新時(shí)間之后,是否有文件被更新或者創(chuàng)建被確定。優(yōu)選地,不是使用索引數(shù)據(jù)庫(kù)的最后更新時(shí)間,而是,早于最后更新時(shí)間一段時(shí)間,例如一個(gè)小時(shí)被使用,以補(bǔ)償一個(gè)數(shù)據(jù)處理系統(tǒng)與另一個(gè)數(shù)據(jù)處理系統(tǒng)之間的系統(tǒng)時(shí)鐘差異。接著在操作2605中,數(shù)據(jù)處理系統(tǒng)更新索引數(shù)據(jù)庫(kù),該更新針對(duì)在索引數(shù)據(jù)庫(kù)最后更新時(shí)間之后被更新或者創(chuàng)建的所有文件,或者在早于最后更新時(shí)間一段時(shí)間被使用的情況下,該一段時(shí)間例如一個(gè)小時(shí),索引數(shù)據(jù)庫(kù)將針對(duì)所有在早于索引數(shù)據(jù)庫(kù)最后更新時(shí)間一個(gè)小時(shí)之后被更新或者創(chuàng)建的任何文件,加以更新。附圖26所示的技術(shù)允許根據(jù)基于時(shí)間的比較判斷是否要更新數(shù)據(jù)庫(kù),該比較無(wú)需檢查在索引數(shù)據(jù)庫(kù)中被索引化的每一文件的記錄。附圖26所示的方法的技術(shù)也可以被用于確定是否需要更新元數(shù)據(jù)庫(kù)以從文件添加元數(shù)據(jù),該文件是在元數(shù)據(jù)庫(kù)被最后一次更新的時(shí)間之后被更新或者創(chuàng)建的(或者一段時(shí)間之后,比如說(shuō)一個(gè)小時(shí),早于最后時(shí)間)。
附圖27所示的方法演示了一個(gè)具體示例,該示例有關(guān)如何確定是否更新索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)。附圖27中的方法可以使用時(shí)間比較總體得以執(zhí)行,或者使用附圖28中所示的特定時(shí)間比較得以執(zhí)行。附圖27和28中的方法可以用于確定是否更新保存在存儲(chǔ)體中的索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)或者兩種數(shù)據(jù)庫(kù)。應(yīng)當(dāng)知道,至少在特定實(shí)施例中,被索引化的文件和存儲(chǔ)在元數(shù)據(jù)庫(kù)中的該文件的元數(shù)據(jù)被存儲(chǔ)在相同的裝置上,該裝置也存儲(chǔ)特定索引數(shù)據(jù)庫(kù)和元數(shù)據(jù)庫(kù)。也就是說(shuō),典型地(在這些實(shí)施例中),索引數(shù)據(jù)庫(kù)與被索引化到索引數(shù)據(jù)庫(kù)中的文件沒(méi)有分離,并且類(lèi)似地,典型地(在這些實(shí)施例中),包含元數(shù)據(jù)的文件和元數(shù)據(jù)庫(kù)與該文件之間沒(méi)有分離。在替代性實(shí)施例中,數(shù)據(jù)庫(kù),例如索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù)可以被存儲(chǔ)在與文件分離的存儲(chǔ)介質(zhì)或者存儲(chǔ)裝置上,從該文件中數(shù)據(jù)庫(kù)的數(shù)據(jù)得以獲得。
附圖27所示的方法可以始于操作2701,在該操作中數(shù)據(jù)處理系統(tǒng)完成索引化,并且關(guān)閉索引數(shù)據(jù)庫(kù)和索引隊(duì)列,并且卸下由第一數(shù)據(jù)處理系統(tǒng)索引化(至少部分索引化)的存儲(chǔ)體。優(yōu)選地,第一數(shù)據(jù)處理系統(tǒng)可以在存儲(chǔ)體切斷或者裝配中執(zhí)行附圖28所示的操作2801。該操作包括三個(gè)值,該值是索引數(shù)據(jù)庫(kù)被關(guān)閉的時(shí)間,存儲(chǔ)體上的文件系統(tǒng)被卸載的時(shí)間和在切斷或者卸載時(shí)存儲(chǔ)體的寫(xiě)計(jì)數(shù)。在操作2703中存儲(chǔ)體可以接著用于另一個(gè)數(shù)據(jù)處理系統(tǒng),并且在沒(méi)有更新索引數(shù)據(jù)庫(kù)和/或元數(shù)據(jù)庫(kù)的前提下該文件可能被改變。在數(shù)據(jù)處理系統(tǒng)上沒(méi)有必要的索引軟件和/或元數(shù)據(jù)軟件的數(shù)據(jù)庫(kù)可以被改變。在操作2705中,存儲(chǔ)體再次被裝配到第一數(shù)據(jù)處理系統(tǒng)上。優(yōu)選地,在這一時(shí)間點(diǎn),第一數(shù)據(jù)處理系統(tǒng)可以執(zhí)行操作2803,該操作包括收集三個(gè)值,這三個(gè)值是存儲(chǔ)體的最后裝配時(shí)間、數(shù)據(jù)庫(kù)打開(kāi)時(shí)間和當(dāng)前的寫(xiě)計(jì)數(shù)。其可以從附圖28中看出。接著在操作2707中,第一數(shù)據(jù)處理系統(tǒng)確定在索引數(shù)據(jù)庫(kù)被最后關(guān)閉之后和/或在元數(shù)據(jù)庫(kù)被最后關(guān)閉之后存儲(chǔ)體上是否有文件被改變。附圖28中的操作2805顯示了如何確定是否要更新數(shù)據(jù)庫(kù)的一個(gè)示例。在操作2805中,是否兩個(gè)時(shí)間值TFS和TDS之間的差值小于較小時(shí)間延遲被確定,并且類(lèi)似地,是否兩個(gè)其他時(shí)間值TD0和TFM之間的差值小于另一個(gè)較小時(shí)間延遲(該時(shí)間延遲可以與另一個(gè)時(shí)間延遲在時(shí)間上相同或者不同)被確定。另外,兩個(gè)寫(xiě)計(jì)數(shù)被加以比較以確定它們之間的差值是否小于一個(gè)較小的數(shù)字。如附圖28中的操作2805所示,如果三個(gè)插值小于特定值,則可以確定索引數(shù)據(jù)庫(kù)(和/或元數(shù)據(jù)庫(kù))不需要更新。如果在操作2805中這些比較中的任一比較失敗,接著可以確定數(shù)據(jù)庫(kù),例如索引數(shù)據(jù)庫(kù)或者元數(shù)據(jù)庫(kù),需要更新。甚至當(dāng)存儲(chǔ)體不可移除的時(shí)候,附圖27中的方法仍然有用。數(shù)據(jù)處理系統(tǒng)在例如一個(gè)小時(shí)或者更短時(shí)間的短時(shí)間內(nèi)被反復(fù)打開(kāi)和關(guān)閉通常是事實(shí)。瀏覽文件以確定是否要索引新文件是計(jì)算資源的浪費(fèi)。因此附圖27中的方法意圖在無(wú)需檢查數(shù)據(jù)庫(kù)中每一文件的記錄的情況下,確定數(shù)據(jù)庫(kù)是否需要更新。附圖28中的特定方法意圖驗(yàn)證在索引數(shù)據(jù)庫(kù)關(guān)閉之后沒(méi)有文件得到改變,并且通過(guò)比較一些時(shí)間值而不是比較每一文件的時(shí)間值或者通過(guò)按照時(shí)間排序文件的方式完成這些。
在前述的具體說(shuō)明中,本發(fā)明參考其中的具體示例性實(shí)施例得以描述。明顯地,在不脫離如下面的權(quán)利要求所提出的本發(fā)明的較寬的精神和范圍的前提下,多種改變可以做出。因此,該具體說(shuō)明和附圖被認(rèn)為是釋義性的含義,而非限制性的含義。
權(quán)利要求
1.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括裝配存儲(chǔ)裝置;自動(dòng)響應(yīng)裝配,確定在存儲(chǔ)裝置上是否索引一個(gè)或者多個(gè)文件或者將一個(gè)或者多個(gè)文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)。
2.如權(quán)利要求1所述的方法,其中所述確定步驟包括將索引數(shù)據(jù)庫(kù)的最后使用時(shí)間或者最后關(guān)閉時(shí)間與卸載時(shí)間或者存儲(chǔ)裝置的最后寫(xiě)入時(shí)間相比較,并且還包括在卸載時(shí)間之后將索引數(shù)據(jù)庫(kù)的最早使用時(shí)間或者最后打開(kāi)時(shí)間與存儲(chǔ)裝置的裝配時(shí)間或者最早寫(xiě)入時(shí)間相比較。
3.如權(quán)利要求1所述的方法,其中所述確定步驟包括評(píng)價(jià)自從文件的索引數(shù)據(jù)庫(kù)最后被關(guān)閉之后,存儲(chǔ)裝置上的文件是否被修改過(guò)。
4.如權(quán)利要求3所述的方法,其中所述評(píng)價(jià)步驟包括在不檢查在索引數(shù)據(jù)庫(kù)中索引化的每個(gè)文件的記錄的情況下,執(zhí)行基于時(shí)間的比較。
5.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括裝配存儲(chǔ)裝置;自動(dòng)響應(yīng)裝配,確定在存儲(chǔ)裝置上是否索引一個(gè)或者多個(gè)文件或者將一個(gè)或者多個(gè)文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)。
6.如權(quán)利要求5所述的介質(zhì),其中所述確定步驟包括將索引數(shù)據(jù)庫(kù)的最后使用時(shí)間或者最后關(guān)閉時(shí)間與卸載時(shí)間或者存儲(chǔ)裝置的最后寫(xiě)入時(shí)間相比較,并且還包括在卸載時(shí)間之后將索引數(shù)據(jù)庫(kù)的最早使用時(shí)間或者最后打開(kāi)時(shí)間與存儲(chǔ)裝置的裝配時(shí)間或者最早寫(xiě)入時(shí)間相比較。
7.如權(quán)利要求5所述的介質(zhì),其中所述確定步驟包括評(píng)價(jià)自從文件的索引數(shù)據(jù)庫(kù)最后被關(guān)閉之后,存儲(chǔ)裝置上的文件是否被修改過(guò)。
8.如權(quán)利要求7所述的介質(zhì),其中所述評(píng)價(jià)步驟包括在不檢查在索引數(shù)據(jù)庫(kù)中索引化的每個(gè)文件的記錄的情況下,執(zhí)行基于時(shí)間的比較。
9.一種數(shù)據(jù)處理系統(tǒng),包括用于裝配存儲(chǔ)裝置的部件;用于自動(dòng)響應(yīng)裝配,確定在存儲(chǔ)裝置上是否索引一個(gè)或者多個(gè)文件或者將一個(gè)或者多個(gè)文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)的部件。
10.如權(quán)利要求9所述的系統(tǒng),其中所述確定步驟包括將索引數(shù)據(jù)庫(kù)的最后使用時(shí)間或者最后關(guān)閉時(shí)間與卸載時(shí)間或者存儲(chǔ)裝置的最后寫(xiě)入時(shí)間相比較,并且還包括在卸載時(shí)間之后將索引數(shù)據(jù)庫(kù)的最早使用時(shí)間或者最后打開(kāi)時(shí)間與存儲(chǔ)裝置的裝配時(shí)間或者最早寫(xiě)入時(shí)間相比較。
11.如權(quán)利要求9所述的系統(tǒng),其中所述確定步驟包括評(píng)價(jià)自從文件的索引數(shù)據(jù)庫(kù)最后被關(guān)閉之后,存儲(chǔ)裝置上的文件是否被修改過(guò)。
12.如權(quán)利要求11所述的系統(tǒng),其中所述評(píng)價(jià)步驟包括在不檢查在索引數(shù)據(jù)庫(kù)中索引化的每個(gè)文件的記錄的情況下,執(zhí)行基于時(shí)間的比較。
13.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括裝配存儲(chǔ)裝置;在裝配之后評(píng)價(jià)是否在存儲(chǔ)裝置上針對(duì)一個(gè)或者多個(gè)文件自動(dòng)索引或者更新元數(shù)據(jù)庫(kù),該評(píng)價(jià)通過(guò)評(píng)價(jià)自從存儲(chǔ)裝置上的文件的數(shù)據(jù)庫(kù)上次被關(guān)閉或者寫(xiě)入之后,存儲(chǔ)裝置上的文件是否被修改或者新文件是否被添加來(lái)實(shí)現(xiàn)。
14.如權(quán)利要求13所述的方法,其中所述評(píng)價(jià)步驟包括在不檢查在數(shù)據(jù)庫(kù)中索引化或者更新的每一個(gè)文件的記錄的情況下,執(zhí)行至少一次基于時(shí)間的比較。
15.如權(quán)利要求14所述的方法,其中評(píng)價(jià)還包括寫(xiě)計(jì)數(shù)的比較。
16.如權(quán)利要求13所述的方法,其中存儲(chǔ)裝置是可移除存儲(chǔ)裝置,其在系統(tǒng)中是便攜式的。
17.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括裝配存儲(chǔ)裝置;在裝配之后評(píng)價(jià)是否在存儲(chǔ)裝置上針對(duì)一個(gè)或者多個(gè)文件自動(dòng)索引或者更新元數(shù)據(jù)庫(kù),該評(píng)價(jià)通過(guò)評(píng)價(jià)自從存儲(chǔ)裝置上的文件的數(shù)據(jù)庫(kù)上次被關(guān)閉或者寫(xiě)入之后,存儲(chǔ)裝置上的文件是否被修改或者新文件是否被添加來(lái)實(shí)現(xiàn)。
18.如權(quán)利要求17所述的介質(zhì),其中所述評(píng)價(jià)步驟包括在不檢查在數(shù)據(jù)庫(kù)中索引化或者更新的每一個(gè)文件的記錄的情況下,執(zhí)行至少一次基于時(shí)間的比較。
19.如權(quán)利要求18所述的介質(zhì),其中評(píng)價(jià)還包括寫(xiě)計(jì)數(shù)的比較。
20.如權(quán)利要求17所述的介質(zhì),其中存儲(chǔ)裝置是可移除存儲(chǔ)裝置,其在系統(tǒng)中是便攜式的。
21.一種數(shù)據(jù)處理系統(tǒng),包括用于裝配存儲(chǔ)裝置的部件;用于在裝配之后評(píng)價(jià)是否在存儲(chǔ)裝置上針對(duì)一個(gè)或者多個(gè)文件自動(dòng)索引或者更新元數(shù)據(jù)庫(kù)的部件,該評(píng)價(jià)通過(guò)評(píng)價(jià)自從存儲(chǔ)裝置上的文件的數(shù)據(jù)庫(kù)上次被關(guān)閉或者寫(xiě)入之后,存儲(chǔ)裝置上的文件是否被修改或者新文件是否被添加來(lái)實(shí)現(xiàn)。
22.如權(quán)利要求21所述的系統(tǒng),其中所述評(píng)價(jià)步驟包括在不檢查在數(shù)據(jù)庫(kù)中索引化或者更新的每一個(gè)文件的記錄的情況下,執(zhí)行至少一次基于時(shí)間的比較。
23.如權(quán)利要求22所述的系統(tǒng),其中評(píng)價(jià)還包括寫(xiě)計(jì)數(shù)的比較。
24.如權(quán)利要求21所述的系統(tǒng),其中存儲(chǔ)裝置是可移除存儲(chǔ)裝置,其在系統(tǒng)中是便攜式的。
25.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括裝配存儲(chǔ)裝置;自動(dòng)響應(yīng)裝配,無(wú)需檢查在索引數(shù)據(jù)庫(kù)中被索引化的每一文件或者在元數(shù)據(jù)庫(kù)中具有元數(shù)據(jù)的每一文件的記錄,確定在存儲(chǔ)裝置上是否針對(duì)一個(gè)或者多個(gè)文件索引或者更新元數(shù)據(jù)庫(kù)。
26.如權(quán)利要求25所述的方法,其中所述確定步驟包括在卸載中執(zhí)行至少一個(gè)基于時(shí)間的操作比較,該卸載早于裝載和與裝載同時(shí)或者晚于裝載的操作。
27.如權(quán)利要求25所述的方法,其中所述確定步驟包括寫(xiě)計(jì)數(shù)的比較。
28.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括裝配存儲(chǔ)裝置;自動(dòng)響應(yīng)裝配,無(wú)需檢查在索引數(shù)據(jù)庫(kù)中被索引化的每一文件或者在元數(shù)據(jù)庫(kù)中具有元數(shù)據(jù)的每一文件的記錄,確定在存儲(chǔ)裝置上是否針對(duì)一個(gè)或者多個(gè)文件索引或者更新元數(shù)據(jù)庫(kù)。
29.如權(quán)利要求28所述的介質(zhì),其中所述確定步驟包括在卸載中執(zhí)行至少一個(gè)基于時(shí)間的操作比較,該卸載早于裝載和與裝載同時(shí)或者晚于裝載的操作。
30.如權(quán)利要求28所述的介質(zhì),其中所述確定步驟包括寫(xiě)計(jì)數(shù)的比較。
31.一種數(shù)據(jù)處理包括用于裝配存儲(chǔ)裝置的部件;部件,該部件用于自動(dòng)響應(yīng)裝配,無(wú)需檢查在索引數(shù)據(jù)庫(kù)中被索引化的每一文件或者在元數(shù)據(jù)庫(kù)中具有元數(shù)據(jù)的每一文件的記錄,確定在存儲(chǔ)裝置上是否針對(duì)一個(gè)或者多個(gè)文件索引或者更新元數(shù)據(jù)庫(kù)。
32.如權(quán)利要求31所述的系統(tǒng),其中所述確定步驟包括在卸載中執(zhí)行至少一個(gè)基于時(shí)間的操作比較,該卸載早于裝載和與裝載同時(shí)或者晚于裝載的操作。
33.如權(quán)利要求31所述的系統(tǒng),其中所述確定步驟包括寫(xiě)計(jì)數(shù)的比較。
34.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括由索引軟件組件接收通知,該通知是數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被改變或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建;在現(xiàn)有文件或者新文件上執(zhí)行索引操作以響應(yīng)通知,其中通知包括標(biāo)識(shí)現(xiàn)有文件或者新文件的標(biāo)識(shí)符。
35.如權(quán)利要求34所述的方法,還包括由操作系統(tǒng)生成通知。
36.如權(quán)利要求34所述的方法,其中通知使得代表現(xiàn)有文件或者新文件的入口被添加到用于索引操作的隊(duì)列中,并且該隊(duì)列保存在非易失存儲(chǔ)器中。
37.如權(quán)利要求36所述的方法,其中隊(duì)列的變化被輸入到日志中,并且在隊(duì)列變化保存到非易失存儲(chǔ)器上之前,具有變化的該日志保存在非易失存儲(chǔ)器上。
38.如權(quán)利要求34所述的方法,其中索引操作被延遲或者被拖延以響應(yīng)探測(cè)用戶(hù)行為。
39.如權(quán)利要求34所述的方法,其中索引操作的處理優(yōu)先權(quán)被降低以響應(yīng)探測(cè)用戶(hù)行為。
40.如權(quán)利要求35所述的方法,其中操作系統(tǒng)包括用于管理處理線(xiàn)程或者任務(wù)的內(nèi)核,用于生成圖形的圖形生成組件,用于顯示窗口的窗口組件,用于維持存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置上的文件目錄的文件管理系統(tǒng)。
41.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括由索引軟件組件接收通知,該通知是數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被改變或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建;在現(xiàn)有文件或者新文件上執(zhí)行索引操作以響應(yīng)通知,其中通知包括標(biāo)識(shí)現(xiàn)有文件或者新文件的標(biāo)識(shí)符。
42.如權(quán)利要求41所述的介質(zhì),該方法還包括由操作系統(tǒng)生成通知。
43.如權(quán)利要求41所述的介質(zhì),其中通知使得代表現(xiàn)有文件或者新文件的入口被添加到用于索引操作的隊(duì)列中,并且該隊(duì)列保存在非易失存儲(chǔ)器中。
44.如權(quán)利要求43所述的介質(zhì),其中隊(duì)列的變化被輸入到日志中,并且在隊(duì)列變化保存到非易失存儲(chǔ)器上之前,具有變化的該日志保存在非易失存儲(chǔ)器上。
45.如權(quán)利要求41所述的介質(zhì),其中索引操作被延遲或者被拖延以響應(yīng)探測(cè)用戶(hù)行為。
46.如權(quán)利要求41所述的介質(zhì),索引操作的處理優(yōu)先權(quán)被降低以響應(yīng)探測(cè)用戶(hù)行為。
47.如權(quán)利要求42所述的介質(zhì),其中操作系統(tǒng)包括用于管理處理線(xiàn)程或者任務(wù)的內(nèi)核,用于生成圖形的圖形生成組件,用于顯示窗口的窗口組件,用于維持存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置上的文件目錄的文件管理系統(tǒng)。
48.一種數(shù)據(jù)處理系統(tǒng),包括用于由索引軟件組件接收通知的部件,該通知是數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被改變或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建;用于在現(xiàn)有文件或者新文件上執(zhí)行索引操作以響應(yīng)通知的部件,其中通知包括標(biāo)識(shí)現(xiàn)有文件或者新文件的標(biāo)識(shí)符。
49.如權(quán)利要求48所述的系統(tǒng),還包括由操作系統(tǒng)生成通知的部件。
50.如權(quán)利要求48所述的系統(tǒng),其中通知使得代表現(xiàn)有文件或者新文件的入口被添加到用于索引操作的隊(duì)列中,并且該隊(duì)列保存在非易失存儲(chǔ)器中。
51.如權(quán)利要求50所述的系統(tǒng),其中隊(duì)列的變化被輸入到日志中,并且在隊(duì)列變化保存到非易失存儲(chǔ)器上之前,具有變化的該日志保存在非易失存儲(chǔ)器上。
52.如權(quán)利要求48所述的系統(tǒng),其中索引操作被延遲或者被拖延以響應(yīng)探測(cè)用戶(hù)行為。
53.如權(quán)利要求48所述的系統(tǒng),其中索引操作的處理優(yōu)先權(quán)被降低以響應(yīng)探測(cè)用戶(hù)行為。
54.如權(quán)利要求49所述的系統(tǒng),其中操作系統(tǒng)包括用于管理處理線(xiàn)程或者任務(wù)的內(nèi)核,用于生成圖形的圖形生成組件,用于顯示窗口的窗口組件,用于維持存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置上的文件目錄的文件管理系統(tǒng)。
55.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括由索引軟件組件接收通知,該通知是數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被改變或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建;在現(xiàn)有文件或者新文件上執(zhí)行索引操作以響應(yīng)通知,其中通知并不僅僅基于時(shí)間或者用戶(hù)輸入。
56.如權(quán)利要求55所述的方法,還包括由操作系統(tǒng)生成通知。
57.如權(quán)利要求56所述的方法,其中通知使得代表現(xiàn)有文件的入口被添加到用于索引操作的隊(duì)列中,并且該隊(duì)列保存在非易失存儲(chǔ)器中。
58.如權(quán)利要求57所述的方法,其中隊(duì)列的變化被輸入到日志中,并且在隊(duì)列變化保存到非易失存儲(chǔ)器上之前,具有變化的該日志保存在非易失存儲(chǔ)器上。
59.如權(quán)利要求55所述的方法,其中索引操作被延遲或者被拖延以響應(yīng)探測(cè)用戶(hù)行為。
60.如權(quán)利要求57所述的方法,其中操作系統(tǒng)包括用于管理處理線(xiàn)程或者任務(wù)的內(nèi)核,用于生成圖形的圖形生成組件,用于顯示窗口的窗口組件,用于維持存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置上的文件目錄的文件管理系統(tǒng)。
61.如權(quán)利要求55所述的方法,其中索引操作的處理優(yōu)先權(quán)被降低以響應(yīng)探測(cè)用戶(hù)行為。
62.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括由索引軟件組件接收通知,該通知是數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被改變或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建;在現(xiàn)有文件或者新文件上執(zhí)行索引操作以響應(yīng)通知,其中通知不僅僅基于時(shí)間或者用戶(hù)輸入。
63.如權(quán)利要求62所述的介質(zhì),該方法還包括由操作系統(tǒng)生成通知。
64.如權(quán)利要求63所述的介質(zhì),其中通知使得代表現(xiàn)有文件或者新文件的入口被添加到用于索引操作的隊(duì)列中,并且該隊(duì)列保存在非易失存儲(chǔ)器中。
65.如權(quán)利要求64所述的介質(zhì),其中隊(duì)列的變化被輸入到日志中,并且在隊(duì)列變化保存到非易失存儲(chǔ)器上之前,具有變化的該日志保存在非易失存儲(chǔ)器上。
66.如權(quán)利要求62所述的介質(zhì),其中索引操作被延遲或者被拖延以響應(yīng)探測(cè)用戶(hù)行為。
67.如權(quán)利要求64所述的介質(zhì),其中操作系統(tǒng)包括用于管理處理線(xiàn)程或者任務(wù)的內(nèi)核,用于生成圖形的圖形生成組件,用于顯示窗口的窗口組件,用于維持存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置上的文件目錄的文件管理系統(tǒng)。
68.如權(quán)利要求62所述的介質(zhì),索引操作的處理優(yōu)先權(quán)被降低以響應(yīng)探測(cè)用戶(hù)行為。
69.一種數(shù)據(jù)處理系統(tǒng),包括用于由索引軟件組件接收通知的部件,該通知是數(shù)據(jù)存儲(chǔ)裝置上的現(xiàn)有文件已經(jīng)被改變或者在數(shù)據(jù)存儲(chǔ)裝置上新文件被創(chuàng)建;用于在現(xiàn)有文件或者新文件上執(zhí)行索引操作以響應(yīng)通知的部件,其中通知不僅僅基于時(shí)間或者用戶(hù)輸入。
70.如權(quán)利要求69所述的系統(tǒng),還包括由操作系統(tǒng)生成通知的部件。
71.如權(quán)利要求70所述的系統(tǒng),其中通知使得代表現(xiàn)有文件或者新文件的入口被添加到用于索引操作的隊(duì)列中,并且該隊(duì)列保存在非易失存儲(chǔ)器中。
72.如權(quán)利要求71所述的系統(tǒng),其中隊(duì)列的變化被輸入到日志中,并且在隊(duì)列變化保存到非易失存儲(chǔ)器上之前,具有變化的該日志保存在非易失存儲(chǔ)器上。
73.如權(quán)利要求69所述的系統(tǒng),其中索引操作被延遲或者被拖延以響應(yīng)探測(cè)用戶(hù)行為。
74.如權(quán)利要求71所述的系統(tǒng),其中操作系統(tǒng)包括用于管理處理線(xiàn)程或者任務(wù)的內(nèi)核,用于生成圖形的圖形生成組件,用于顯示窗口的窗口組件,用于維持存儲(chǔ)在數(shù)據(jù)存儲(chǔ)裝置上的文件目錄的文件管理系統(tǒng)。
75.如權(quán)利要求69所述的系統(tǒng),其中索引操作的處理優(yōu)先權(quán)被降低以響應(yīng)探測(cè)用戶(hù)行為。
76.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括確定文件要被索引化到索引數(shù)據(jù)庫(kù)中;將代表文件的入口添加到索引操作列表中;將列表保存到非易失存儲(chǔ)器上。
77.如權(quán)利要求76所述的機(jī)器實(shí)現(xiàn)方法,還包括在索引文件之后將入口從列表高效移除,以創(chuàng)建更新列表;將更新列表存儲(chǔ)在非易失存儲(chǔ)器上。
78.如權(quán)利要求77所述的方法,其中所述確定步驟包括接收文件要被索引化的通知,通知從操作系統(tǒng)組件傳送到索引組件。
79.如權(quán)利要求78所述的方法,其中通知并不僅僅基于時(shí)間或者用戶(hù)輸入,并且交易日志顯示列表變化。
80.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定文件要被索引化到索引數(shù)據(jù)庫(kù)中;將代表文件的入口添加到索引操作列表中;將列表保存到非易失存儲(chǔ)器上。
81.如權(quán)利要求80所述的介質(zhì),該方法還包括在索引文件之后將入口從列表高效移除,以創(chuàng)建更新列表;將更新列表存儲(chǔ)在非易失存儲(chǔ)器上。
82.如權(quán)利要求81所述的介質(zhì),其中所述確定步驟包括接收文件要被索引化的通知,通知從操作系統(tǒng)組件傳送到索引組件。
83.如權(quán)利要求82所述的介質(zhì),其中通知并不僅僅基于時(shí)間或者用戶(hù)輸入,并且交易日志顯示列表變化。
84.一種數(shù)據(jù)處理系統(tǒng),包括用于確定文件要被索引化到索引數(shù)據(jù)庫(kù)中的部件;用于將代表文件的入口添加到索引操作列表中的部件;用于將列表保存到非易失存儲(chǔ)器上的部件。
85.如權(quán)利要求84所述的系統(tǒng),還包括用于在索引文件之后將入口從列表高效移除,以創(chuàng)建更新列表的部件;用于將更新列表存儲(chǔ)在非易失存儲(chǔ)器上的部件。
86.如權(quán)利要求85所述的系統(tǒng),其中所述確定步驟包括接收文件要被索引化的通知,通知從操作系統(tǒng)組件傳送到索引組件。
87.如權(quán)利要求86所述的系統(tǒng),其中通知并不僅僅基于時(shí)間或者用戶(hù)輸入,并且交易日志顯示列表變化。
88.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用;響應(yīng)該監(jiān)測(cè),自動(dòng)調(diào)整索引操作。
89.如權(quán)利要求88所述的方法,其中索引操作由數(shù)據(jù)處理系統(tǒng)自動(dòng)執(zhí)行以響應(yīng)通知,該通知從操作系統(tǒng)組件傳送到文件需要索引化或者重新索引化的索引組件。
90.如權(quán)利要求88所述的方法,其中由于數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用增長(zhǎng),在一定時(shí)間內(nèi)較少的索引操作被執(zhí)行。
91.如權(quán)利要求88所述的方法,其中所述監(jiān)測(cè)步驟包括確定應(yīng)用程序是否使用顯示裝置上的所有有效顯示區(qū)域。
92.如權(quán)利要求88所述的方法,其中所述調(diào)整步驟包括改變索引軟件相對(duì)于數(shù)據(jù)處理系統(tǒng)上的其他軟件的處理優(yōu)先權(quán)。
93.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用;響應(yīng)該監(jiān)測(cè),自動(dòng)調(diào)整索引操作。
94.如權(quán)利要求93所述的介質(zhì),其中索引操作由數(shù)據(jù)處理系統(tǒng)自動(dòng)執(zhí)行以響應(yīng)通知,該通知從操作系統(tǒng)組件傳送到文件需要索引化或者重新索引化的索引組件。
95.如權(quán)利要求93所述的介質(zhì),其中由于數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用增長(zhǎng),在一定時(shí)間內(nèi)較少的索引操作被執(zhí)行。
96.如權(quán)利要求93所述的介質(zhì),其中所述監(jiān)測(cè)步驟包括確定應(yīng)用程序是否使用顯示裝置上的所有有效顯示區(qū)域。
97.如權(quán)利要求93所述的介質(zhì),其中所述調(diào)整步驟包括改變索引軟件相對(duì)于數(shù)據(jù)處理系統(tǒng)上的其他軟件的處理優(yōu)先權(quán)。
98.一種數(shù)據(jù)處理系統(tǒng),包括用于監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用的部件;用于響應(yīng)該監(jiān)測(cè),自動(dòng)調(diào)整索引操作的部件。
99.如權(quán)利要求98所述的系統(tǒng),其中索引操作由數(shù)據(jù)處理系統(tǒng)自動(dòng)執(zhí)行以響應(yīng)通知,該通知從操作系統(tǒng)組件傳送到文件需要索引化或者重新索引化的索引組件。
100.如權(quán)利要求98所述的系統(tǒng),其中由于數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用增長(zhǎng),在一定時(shí)間內(nèi)較少的索引操作被執(zhí)行。
101.如權(quán)利要求98所述的系統(tǒng),其中所述監(jiān)測(cè)步驟包括確定應(yīng)用程序是否使用顯示裝置上的所有有效顯示區(qū)域。
102.如權(quán)利要求98所述的系統(tǒng),其中所述調(diào)整步驟包括改變索引軟件相對(duì)于數(shù)據(jù)處理系統(tǒng)上的其他軟件的處理優(yōu)先權(quán)。
103.一種處理數(shù)據(jù)的機(jī)器實(shí)現(xiàn)方法,該方法包括確定索引數(shù)據(jù)庫(kù)最后更新的時(shí)間,索引數(shù)據(jù)庫(kù)包含來(lái)自存儲(chǔ)在存儲(chǔ)裝置上的文件的內(nèi)容;確定存儲(chǔ)在存儲(chǔ)裝置上的文件在索引數(shù)據(jù)庫(kù)最后更新的時(shí)間之后是否被修改或者創(chuàng)建;更新該時(shí)間之后被修改或者創(chuàng)建的文件的索引數(shù)據(jù)庫(kù)。
104.如權(quán)利要求103所述的方法,其中更新自動(dòng)發(fā)生無(wú)需用戶(hù)介入。
105.如權(quán)利要求104所述的方法,其中確定存儲(chǔ)在存儲(chǔ)裝置上的文件在一定時(shí)間后是否被修改或者創(chuàng)建,還包括確定文件在該時(shí)間之前的預(yù)定時(shí)間期間之后是否被修改或者創(chuàng)建。
106.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定索引數(shù)據(jù)庫(kù)最后更新的時(shí)間,索引數(shù)據(jù)庫(kù)包含來(lái)自存儲(chǔ)在存儲(chǔ)裝置上的文件的內(nèi)容;確定存儲(chǔ)在存儲(chǔ)裝置上的文件在索引數(shù)據(jù)庫(kù)最后更新的時(shí)間之后是否被修改或者創(chuàng)建;更新該時(shí)間之后被修改或者創(chuàng)建的文件的索引數(shù)據(jù)庫(kù)。
107.如權(quán)利要求106所述的介質(zhì),其中更新自動(dòng)發(fā)生無(wú)需用戶(hù)介入。
108.如權(quán)利要求107所述的介質(zhì),其中確定存儲(chǔ)在存儲(chǔ)裝置上的文件在一定時(shí)間后是否被修改或者創(chuàng)建,還包括確定文件在該時(shí)間之前的預(yù)定時(shí)間期間之后是否被修改或者創(chuàng)建。
109.一種數(shù)據(jù)處理系統(tǒng),包括用于確定索引數(shù)據(jù)庫(kù)最后更新的時(shí)間的部件,索引數(shù)據(jù)庫(kù)包含來(lái)自存儲(chǔ)在存儲(chǔ)裝置上的文件的內(nèi)容;用于確定存儲(chǔ)在存儲(chǔ)裝置上的文件在索引數(shù)據(jù)庫(kù)最后更新的時(shí)間之后是否被修改或者創(chuàng)建的部件;用于更新該時(shí)間之后被修改或者創(chuàng)建的文件的索引數(shù)據(jù)庫(kù)的部件。
110.如權(quán)利要求109所述的系統(tǒng),其中更新自動(dòng)發(fā)生無(wú)需用戶(hù)介入。
111.如權(quán)利要求110所述的系統(tǒng),其中確定存儲(chǔ)在存儲(chǔ)裝置上的文件在一定時(shí)間后是否被修改或者創(chuàng)建,還包括確定文件在該時(shí)間之前的預(yù)定時(shí)間期間之后是否被修改或者創(chuàng)建。
112.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定文件具有針對(duì)文件的元數(shù)據(jù),該元數(shù)據(jù)要被添加到元數(shù)據(jù)庫(kù)中;將代表文件的入口添加到元數(shù)據(jù)處理操作列表中;將列表保存在非易失存儲(chǔ)器上。
113.如權(quán)利要求112所述的介質(zhì),該方法還包括在將針對(duì)文件的元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)之后將入口從列表高效移除,以生成更新列表;將更新列表保存到非易失存儲(chǔ)器上。
114.如權(quán)利要求113所述的介質(zhì),其中所述確定步驟包括接收通知,該通知有關(guān)文件是新的還是修改的,該通知從操作系統(tǒng)組件傳送到元數(shù)據(jù)軟件組件。
115.如權(quán)利要求114所述的介質(zhì),其中通知并不僅僅基于時(shí)間或者用戶(hù)輸入,并且交易日志顯示列表變化。
116.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)用戶(hù)的使用;響應(yīng)該監(jiān)測(cè)自動(dòng)調(diào)整元數(shù)據(jù)處理操作。
117.如權(quán)利要求116所述的介質(zhì),其中處理操作由數(shù)據(jù)處理系統(tǒng)自動(dòng)執(zhí)行以響應(yīng)通知,該通知可以是從操作系統(tǒng)組件傳送到元數(shù)據(jù)軟件組件,文件需要元數(shù)據(jù)軟件組件將其元數(shù)據(jù)添加到元數(shù)據(jù)庫(kù)中。
118.如權(quán)利要求116所述的介質(zhì),其中隨著數(shù)據(jù)處理系統(tǒng)的用戶(hù)使用增加,在一段時(shí)間內(nèi)較少的元數(shù)據(jù)處理操作被執(zhí)行。
119.如權(quán)利要求116所述的介質(zhì),其中所述監(jiān)測(cè)步驟包括確定應(yīng)用程序是否使用顯示裝置上的所有有效顯示區(qū)域。
120.如權(quán)利要求116所述的介質(zhì),其中所述調(diào)整步驟包括改變?cè)獢?shù)據(jù)處理軟件相對(duì)于數(shù)據(jù)處理系統(tǒng)上的其他軟件的處理優(yōu)先權(quán)。
121.一種機(jī)器可讀介質(zhì),其提供指令,當(dāng)數(shù)據(jù)處理系統(tǒng)執(zhí)行該指令時(shí),使得數(shù)據(jù)處理系統(tǒng)執(zhí)行數(shù)據(jù)處理方法,該方法包括確定元數(shù)據(jù)庫(kù)最后更新的時(shí)間,元數(shù)據(jù)庫(kù)包含來(lái)自存儲(chǔ)在存儲(chǔ)裝置上的文件的元數(shù)據(jù);確定存儲(chǔ)在存儲(chǔ)裝置上的文件在元數(shù)據(jù)庫(kù)最后更新的時(shí)間之后是否被修改或者創(chuàng)建;更新該時(shí)間之后被修改或者創(chuàng)建的文件的元數(shù)據(jù)庫(kù)。
122.如權(quán)利要求121所述的介質(zhì),其中更新自動(dòng)發(fā)生無(wú)需用戶(hù)介入。
123.如權(quán)利要求122所述的介質(zhì),其中所述確定存儲(chǔ)在存儲(chǔ)裝置上的文件在一定時(shí)間后是否被修改或者創(chuàng)建的步驟,還包括確定文件在該時(shí)間之前的預(yù)定時(shí)間期間之后是否被修改或者創(chuàng)建。
全文摘要
數(shù)據(jù)管理的系統(tǒng)和方法,例如元數(shù)據(jù)或者索引數(shù)據(jù)庫(kù)。在示例性方法中,現(xiàn)有文件被修改或者新文件被創(chuàng)建的通知被索引軟件組件接收,其接著響應(yīng)通知執(zhí)行索引操作,其中通知或者并非僅僅基于時(shí)間或用戶(hù)輸入,或者通知包括標(biāo)識(shí)文件的標(biāo)識(shí)符。數(shù)據(jù)處理系統(tǒng)的其他方法和機(jī)器可讀介質(zhì)也被描述。
文檔編號(hào)G06F17/30GK1961313SQ200580012889
公開(kāi)日2007年5月9日 申請(qǐng)日期2005年6月24日 優(yōu)先權(quán)日2004年6月25日
發(fā)明者楊·阿魯耶, 多米尼克·賈姆保羅, 安德魯·卡羅爾, 史蒂夫·澤勒斯 申請(qǐng)人:蘋(píng)果電腦有限公司