專利名稱:用于提供文檔內(nèi)容多樣重現(xiàn)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子文檔,尤其涉及一種用于多樣電子文檔的數(shù)據(jù)存儲格式。
背景技術(shù):
當今的計算機用戶有著多種多樣的用來瀏覽電子文檔的工具。桌面電腦、膝上電腦、袖珍電腦以及平板電腦只是用戶用來瀏覽電子文檔的不同類型的設(shè)備中的少數(shù)幾個例子。在這些設(shè)備型號中,每一種都有不同于其它的形式因素,并且都以稍微有些差別的方式顯示文檔。例如,一臺掌上電腦(PDA)的可視區(qū)域就明顯的不同于桌面電腦所采用的顯示器。而與膝上型電腦相比,桌面電腦又或許有著不同的顯示區(qū)域。綜合這些問題,電子文檔以多種不同的格式生成,并各具有不同的瀏覽屬性。
用戶所經(jīng)常面對的一個問題是一個特定的文檔或許可以很好的在一種設(shè)備上顯示,例如膝上型電腦,然而它卻不能在其它設(shè)備上正常顯示,例如在掌上電腦(PDA)上。程序開發(fā)者已經(jīng)嘗試開發(fā)一種文檔格式,使之可以在不同的設(shè)備類型上顯示。例如,一種“可回流”的文檔顯示法,就像HTML,當窗口大小改變時,它被允許在一定程度上調(diào)整大小,而不會引起一系列的對文檔版面的不利影響。然而,使用這種格式,卻經(jīng)常會妨礙文檔作者精密控制此文檔該如何顯示的能力。另外,因為可回流的文檔易于在多種不同的設(shè)備中瀏覽,因此它并不需要在任何一個設(shè)備上提供一個最佳的瀏覽經(jīng)驗。
相反,有些格式允許文檔有著更多的操作來控制文檔如何顯示,而這些格式通常使文檔只能適用于很有限的設(shè)備。例如,一個字處理文檔能以一種視覺上滿意的樣式顯示在桌面電腦上。可是,這個字處理文檔,如果顯示在PDA里,可能就會被壓縮,或者不適當?shù)娘@示。此外,用一個字處理為一種特定大小紙張而創(chuàng)建出來的文檔,像信紙般大小,就可能不能在其它大小如A4的紙上正確打印。
有些文檔格式允許對文檔如何顯示采用嚴格的控制,其本質(zhì)上是將文檔的內(nèi)容制成一幅繪片。這種文檔格式的一個缺點是為了這個文檔能在它將要被顯示的設(shè)備上顯示,整個文檔必須被制作成若干不同的版本以適應這些設(shè)備。另外,固定格式的文檔的內(nèi)容是不可編輯的。
發(fā)明概述本發(fā)明涉及一個用于在一個單一文件內(nèi)提供文檔內(nèi)容多重表達方式的系統(tǒng)和方法。簡要的說,本發(fā)明利用一種復合的文件格式來包含多重的數(shù)據(jù)流,每一重數(shù)據(jù)流就是文檔內(nèi)容的一個重現(xiàn)。其它的被用于單一或多樣重現(xiàn)的資源也被存儲在這個復合文件里。元信息被存儲在復合文件中,描述文檔內(nèi)容的每一個重現(xiàn)的。元信息也可包括這樣的規(guī)則,這些規(guī)則是幫助一種給定的設(shè)備或應用程序識別一個適當?shù)闹噩F(xiàn)的選擇標準。
附圖的簡要說明
圖1是一個說明了可以被用來執(zhí)行本發(fā)明的計算裝置的功能塊框圖。
圖2是一個概述說明了具有一個依照本發(fā)明而構(gòu)造的復合文件的系統(tǒng)的構(gòu)成的功能塊框圖。
圖3是一個樹形層次的圖示,它表示了如圖2所示的復合文件。
圖4是一個可以被包含在一個依據(jù)本發(fā)明所構(gòu)造的復合文件內(nèi)部的信息表格圖,其描述了每一個在這個復合文件內(nèi)部的多樣重現(xiàn)。
圖5是一個依照本發(fā)明的一個實現(xiàn)方法的有著許多流以及一個存放處的復合文件的特定范例的示意圖。
圖6是依照本發(fā)明的另外一個具有許多流的復合文件的范例示意圖。
圖7是一個依照本發(fā)明的邏輯流程圖,它從總體上說明了在一個復合文件內(nèi)部使一個適當?shù)闹噩F(xiàn)適用于一個請求方應用程序的處理過程。
圖8是一個依照本發(fā)明的邏輯流程圖,它概述說明了用來創(chuàng)建一個多樣重現(xiàn)復合文件的處理過程。
優(yōu)選實施例的詳細說明本發(fā)明提供了一種用于提供一個包含相同文檔內(nèi)容多樣顯示法的單一文檔的機制。每一種顯示法都能被最優(yōu)化,以提供在一種特定設(shè)備或應用程序里優(yōu)質(zhì)的顯示。本發(fā)明的機制是優(yōu)選的基于一種復合文檔格式,這種格式允許相同內(nèi)容的多樣重現(xiàn)被存放在一個單一文檔內(nèi)。元信息被包括在這個單一文檔的內(nèi)部,這個文檔描述了每一個多樣重現(xiàn)以及任何能和那些重現(xiàn)一起被使用的可支持的文件。發(fā)明人們已經(jīng)確定了采用對象連接和嵌入法(OLE)的復合文件格式尤其適合本發(fā)明的實現(xiàn)方法。
本發(fā)明的說明首先參考一個說明性的計算環(huán)境范例,本發(fā)明的實施例能在這個環(huán)境里被執(zhí)行。其次,本發(fā)明的一個特定的實現(xiàn)方法的詳細范例將會被說明。關(guān)于某些特定的實現(xiàn)方法的細節(jié),可替換的實現(xiàn)方法也被包括在其中。最后,依照本發(fā)明所構(gòu)建的復合文件的實現(xiàn)方法的范例將會被說明。很清楚,本發(fā)明的實施例不只局限于這里所描述的那些實施例。
本發(fā)明的說明性的計算環(huán)境圖1說明了一個可以被用于本發(fā)明說明性的實現(xiàn)方法的計算裝置。關(guān)于圖1,用以實現(xiàn)本發(fā)明的一個示范性的系統(tǒng)包括一個計算裝置,如計算裝置100。在一個非?;A(chǔ)的構(gòu)造中,計算裝置100通常包括至少一個處理單元102以及系統(tǒng)存儲器104。根據(jù)實際的構(gòu)造和計算裝置的類型,系統(tǒng)存儲器104可以是易失性的(如RAM)、非易失性的(如ROM、閃存等)或這兩種存儲器的結(jié)合。系統(tǒng)存儲器104通常包括一個操作系統(tǒng)105、一個或多個程序模塊106,并可以包括程序數(shù)據(jù)107。這種計算裝置100的基礎(chǔ)構(gòu)造在圖1中通過那些在虛線108內(nèi)的組件而被說明。
計算裝置100可以具有附加的特征或功能性。例如,計算裝置100也可以包括附加的數(shù)據(jù)存儲裝置(可移動的和/或不可移動的),像這樣的,例如,磁盤、光盤或磁帶。這些附加的存儲裝置在圖1中通過可移動的存儲裝置109以及不可移動的存儲裝置110來說明。計算機存儲媒體可包括易失性和非易失性的、可移動的和不可移動的媒體,這些媒體媒體能通過任何用于信息存儲的方法或技術(shù)來實現(xiàn),例如計算機的可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊,或其它數(shù)據(jù)。系統(tǒng)存儲器104,可移動的存儲裝置109和不可移動的存儲裝置110都是計算機存儲媒體的例子。計算機存儲媒體包括,但并不局限于RAM,ROM,EEPROM,閃存或其它記憶存儲技術(shù),CD-ROM,數(shù)據(jù)多用途盤(“DVD”)或其它光儲裝置,磁帶盒,磁帶,磁盤存儲裝置或其它磁存儲裝置,或者其它任何可以被用來存儲所需信息以及可以通過計算裝置100訪問的存儲媒體。任何這樣的計算機存儲媒體可以是裝置100的部件。計算裝置100也可以具有像鍵盤122,鼠標123,筆,語音輸入裝置,觸摸輸入裝置,掃描儀等這樣的輸入裝置112。像顯示屏,揚聲器,打印機等這樣的輸出裝置114都能被包括在內(nèi)。這些裝置在本領(lǐng)域都是眾所周知的,因此沒有必要在這里詳盡的討論。
計算裝置100也可以包含通訊連接116以允許次裝置與其它計算裝置118通訊,如通過一個網(wǎng)絡(luò)。通訊連接116是一個通訊媒體的例子。通訊媒體通??梢酝ㄟ^計算機的可讀指令,數(shù)據(jù)結(jié)構(gòu),程序模塊,或在一個已調(diào)制的數(shù)據(jù)信號里的其它數(shù)據(jù)來實現(xiàn),例如一束載波,或其它的傳輸機制,并包括任何信息傳送媒體。“已調(diào)制的數(shù)據(jù)信號”這個術(shù)語意思是一個具有一個或多個自身特征集合或者以一種為了能在信號中將信息編碼的方式改變的信號。舉個例子,并不限于此,通訊媒體包括有線媒體,如有線網(wǎng)絡(luò)或者直接連線連接;以及無線媒體,如聲控,RF,紅外線以及其它無線媒體。這里所用的術(shù)語計算機可讀取的媒體包括存儲媒體和通訊媒體。
組件的概要論述圖2是一個概述了實現(xiàn)本發(fā)明的一個環(huán)境組成的功能塊框圖。圖示是多個應用程序220,221,222,一個“重現(xiàn)管理器”210,以及一個復合文件201。應用程序220,221,222中的每一個都被配置成用來在一種特別針對此應用程序的格式下操作或顯示一個文檔。例如,應用程序A220可以是一個字處理器等類似的,應用程序B221可以是一個能夠顯示HTML信息的e-maill應用程序,并且應用程序C222可以是一個固定格式的文檔瀏覽器,例如一個圖像瀏覽器等。
復合文件201是一個優(yōu)選的OLE復合文件。OLE文檔模型在本領(lǐng)域是已知的,并且作為一種在一個單一文檔內(nèi)部包含多種完全不同的數(shù)據(jù)類型的機制被廣泛認可的。然而,OLE復合文件按照慣例是用來關(guān)聯(lián)一個具有內(nèi)嵌文件的單一文檔,或者其它也包含在一個OLE復合文件內(nèi)部的支持的內(nèi)容的實體。重要的是,復合文件內(nèi)部的每一個要素都是通過一種能被所創(chuàng)建的應用程序操作的方法存儲的。復合文件201將結(jié)合圖3和圖4,在下面做更加詳細的論述。
簡單的說,復合文件201是一個包括了特定文檔內(nèi)容的多樣顯示法(“重現(xiàn)”)的單一文件。顯示法可以是可見的或別的方式。每一個重現(xiàn)都被作為一種特定裝置類或媒體的“目標”。舉例來說,重現(xiàn)A202可以是一個字處理文檔,重現(xiàn)B203可以是一個可回流的字處理文檔的標識語言版本,以及重現(xiàn)C204可以是一個字處理文檔的固定格式版本。除了多樣重現(xiàn)之外,復合文件201包含了一個存儲器205,用來容納可以被一個或多個多樣重現(xiàn)202、203、204所使用的其它文件或資源。元數(shù)據(jù)207包括了用來描述每一個多樣重現(xiàn)202、203、204的信息,其中包括在存儲器205內(nèi),可被用來與一個特定的重現(xiàn)相關(guān)聯(lián)的那些支持的文件。
每一個重現(xiàn)都包括“內(nèi)容”(如文本和標識字體)以及可以包含一個”資源”的集合(如圖像,字體,等等)。盡管不是必須的,但可以預見的是,多樣重現(xiàn)很可能具有不同的內(nèi)容,因為需要用來在不同設(shè)備上布置內(nèi)容的標識,在不同的重現(xiàn)里總是不同。然而,這些重現(xiàn)經(jīng)常涉及到相同的資源。本發(fā)明的一個方面是每一個共享的資源都只在復合文件201中出現(xiàn)一次。與一些多個部分組成的文檔格式不同的是復合文件201允許一個特定資源的實例被包含在存儲器205的內(nèi)部,并且用來與任意數(shù)目的多樣重現(xiàn)202、203、204相關(guān)聯(lián)。
另外,本發(fā)明相對于其它文檔格式的一個優(yōu)點,是具有在一個單一文檔內(nèi)部,使可編輯的重現(xiàn)(如一個字處理文檔)和一個固定格式的重現(xiàn)(如XAML)相結(jié)合的能力。這些不同的文件類型能夠在一個多樣重現(xiàn)文檔中共存,并且合適的重現(xiàn)會基于多樣的因素而被使用,正如一個軟件在時間消耗或一個用戶意圖上的有效性(例如協(xié)作/編輯文檔相對于打印,等等)。
重現(xiàn)管理器210可以是一個操作系統(tǒng)服務(wù)或功能,以負責使文檔文件對應用程序有效。復合文件201陳列出標準(例如組件對象模型或“COM”)接口從而使每一個重現(xiàn)可以被當作一個整體或單個的流來操作。通過重現(xiàn)管理器210請求對復合文件201的訪問,應用程序220、221和222中的任意一個或者多個可以打開并且編輯復合文件201。基于請求中的應用程序類型或其它的標準,重現(xiàn)管理器210打開復合文件201并返回一個特定的重現(xiàn)的接口到這個請求方應用程序。
圖3是一個以樹形層次表示的復合文件201結(jié)構(gòu)的圖示。復合文件通常被認為是“在一個文件內(nèi)的一個文件系統(tǒng)”。在復合文件201內(nèi)部,是一個“存儲器”的層次結(jié)構(gòu),其類似于一個文件系統(tǒng)內(nèi)的目錄,以及“流”,其類似于一個文件系統(tǒng)內(nèi)的文件。
依照本發(fā)明,每一個重現(xiàn)的內(nèi)容都被放在一個單獨的流或流的集合中。因此,在一種傳統(tǒng)文檔格式下將表示一個完整的文檔文件的數(shù)據(jù)被存儲在復合文件201的一個特定的流中。一個或多個重現(xiàn)涉及的每一個資源,也都被放在一個分離的流中。然而,這些資源也可以集中在一個通用存儲器中。
在這個層次范例的根部301之下是多個流(例如,流302,流304,和流306),以及一個存儲器308。在這范例中,流302包含了第一重現(xiàn)(重現(xiàn)A),流304包含了第二重現(xiàn)(重現(xiàn)B),以及流306包含了第三重現(xiàn)(重現(xiàn)C)。依照這個范例,每一個重現(xiàn)都表示一個文檔的一個不同的外觀顯示法。
一個在這個范例中被稱作“¥x006RenditionList”310的特別的流,包含了關(guān)于在復合文件201內(nèi)每一個重現(xiàn)的元信息。重現(xiàn)列表310包括一個表格312,這個表格描述了在復合文件201內(nèi)部的每一個重現(xiàn)。下面將結(jié)合圖4來具體說明表格312。簡要地說,在復合文件201里,表格312標識了每一個重現(xiàn)的各個成分。
圖4是一個可以被儲存在重現(xiàn)列表310里的信息表格圖示。重現(xiàn)列表310可以用表格401來表示,在表格401里,每一行都與一個重現(xiàn)結(jié)合。在一個實施例中,表格中的列,包括一個重現(xiàn)標識列410,一個文件名列412,一個規(guī)則列414,以及一個說明列416。下面是每一列用途的簡要說明。
重現(xiàn)表格的格式允許在每一個重現(xiàn)里的一個流作為一個“起始流”被指定給一個重現(xiàn)。當那個重現(xiàn)被請求時,起始流將是被呈現(xiàn)的第一流。
關(guān)于規(guī)則信息必須做出特別注意事項。如注釋的那樣,在規(guī)則列里信息的意圖是啟用一個關(guān)于返回哪個重現(xiàn)到一個特定應用程序的決定。因此,規(guī)則信息可以像結(jié)合了一個特定重現(xiàn)的文件的MIME類型一樣簡單,正如文件名列里被識別的第一個文件。在這種情況下,可以遍歷重現(xiàn)列表的方法以搜尋一個與特定的請求中的應用程序兼容的MIME類型。其它可識別的特征也可同樣用作選擇標準,例如邏輯分辨率和幾何形態(tài),色深,人類語言,或者閱讀器圖像能力分類。
可選擇地,在規(guī)則列中包括的選擇標準可以是相對完善的。例如,參考可以被包括在規(guī)則列中,這個規(guī)則列指向在復合文件中或是參與在選擇過程中的其它地方的代碼。另外,在說明每一個重現(xiàn)的規(guī)則列中可以包括更多的復雜信息,這可以通過有效的輔助一個特定的應用程序或適當重現(xiàn)識別的重現(xiàn)管理器210來實現(xiàn)。這些以及其它的可選方法對本領(lǐng)域的技術(shù)人員來說是顯而易見的。
本發(fā)明的特定實施例的論述本發(fā)明的特定實現(xiàn)方法現(xiàn)在將通過參考圖5和圖6的范例來說明,其中圖5和圖6一起說明了怎樣利用本發(fā)明來創(chuàng)建一個復合文件,以結(jié)合一個文檔閱讀器的應用程序類型(圖5)一起使用以及被用做一個字處理應用程序類型。
圖5是一個具有許多流和一個存儲器503的復合文件501的特定例子的圖解。在這個范例中,復合文件501包括相同文檔內(nèi)容的六個不同的重現(xiàn)。一個回流重現(xiàn)505被包括在其中以用來表示文檔的內(nèi)容,在某種意義上它可根據(jù)特定的顯示設(shè)備而調(diào)整大小?;亓髦噩F(xiàn)505包括可能涉及到特定字體506或圖象507的標識語言等。因此,那些字體506或圖象507被存儲在一個或多個包含在存儲器503內(nèi)部的分離的流中。
一個被設(shè)計成用來在一個特定屏幕尺寸中顯示的屏幕尺寸大小的固定重現(xiàn)509也被包括在其中。例如,屏幕尺寸大小的固定重現(xiàn)509可以是在一個具有800×600像素的顯示器中正確顯示的一個固定尺寸??蛇x擇地,屏幕尺寸大小的固定重現(xiàn)509可以為了在一個小的例如袖珍的,手持設(shè)備中(如口袋大小)顯示而調(diào)整大小。
用于特定電腦打印機的兩種重現(xiàn)被包括在其中,并且是固定尺寸大小的。例如,一個信紙大小的重現(xiàn)511包括這個文檔內(nèi)容的一個版本,它是固定格式的并且能在一張信紙大小的紙上正確打印。而一個A4大小的重現(xiàn)513包括這個文檔內(nèi)容的一個版本,它是固定格式的并且能在一張A4大小的紙上正確打印。如提到的,兩個打印機重現(xiàn)也可以參考在存儲器503內(nèi)的資源。
復合文件501可以包括一個文檔內(nèi)容的圖象重現(xiàn)515以及一個文檔內(nèi)容的聽覺表達517。例如,文檔的內(nèi)容可以是一本書的內(nèi)容,在這種情況下,圖象重現(xiàn)515可以是這本書的頁面的照片,以及聽覺表達517可以是一個這本書內(nèi)容的音頻敘述。很清楚,重現(xiàn)并不需要局限于相同內(nèi)容的視覺表示。
圖6是另外一個具有許多流的復合文件601范例的圖示。在這個范例中,復合文件601包括一個字處理流603,一個回流流605,以及一個固定格式流607。在這個情況下,在一個通用資源流609里,字處理流603可以已經(jīng)嵌入存儲在復合文件601里的圖片和字體。用于這個特定范例的重現(xiàn)列表(未示出)因此可以包括允許該資源的兩個參考部分流六或九這樣的特定重現(xiàn)的重現(xiàn)信息。這可以通過當在重現(xiàn)列表里的文件名部分識別文件時使用次流參考來完成。
圖7是通過一個復合文件概述了一個用來使一個文檔的多樣重現(xiàn)有效的處理過程步驟的功能框圖。處理過程700從一個起始塊701開始,包含了相似文檔內(nèi)容多樣表達法的一個復合文件存在于這個起始塊中。
在塊703,收到了一個用來訪問復合文件的請求。這個請求可以識別一個特定的請求中的應用程序并且包括用來確定一個適當?shù)闹噩F(xiàn)的有用信息,例如應用程序支持的特定格式,等等。
在塊705,特定的應用程序類型,以及其它的標準,都在請求中得到識別。任何用來識別適當重現(xiàn)的必要附加信息可以從應用程序或其它資源中被查詢。例如,復合文件所駐留的特定設(shè)備類型(比如一個口袋大小的計算機或一臺桌面電腦)可以被查詢。
在塊707,聯(lián)合復合文件的一個重現(xiàn)列表被查詢以確定適合這個應用程序的重現(xiàn)。正如前面詳細討論的,重現(xiàn)列表可以被查詢以識別一個具有符合這個應用程序的MIME類型的特定重現(xiàn)??蛇x擇地,重現(xiàn)列表可以包括一個規(guī)則或條件集,其可以適用于或比較于這個應用程序所結(jié)合的標準。
在塊709,用于適當重現(xiàn)的一個參考(例如一個接口集)返回到請求中的應用程序。這里,請求的應用程序可以把這個重現(xiàn)當作一個實體來操作。請求中的應用程序通過意圖用于應用程序或特定設(shè)備使用的文檔內(nèi)容的一個表示法而被呈現(xiàn)出來。
圖8是依照本發(fā)明概述構(gòu)建一個多樣重現(xiàn)文件的一個過程的邏輯流程圖。處理過程800開始于起始塊801,起始塊801是一個或多個應用程序已經(jīng)創(chuàng)建文檔內(nèi)容的多樣重現(xiàn),并且準備將這些多樣重現(xiàn)寫入一個復合文件的地方。
在塊803,提出了一個指示來增加到復合文件的一個第一重現(xiàn)。第一重現(xiàn)可以是一個可編輯形式的文檔內(nèi)容的視覺表示,例如一個字處理文檔。同樣的,第一重現(xiàn)可以是文檔內(nèi)容的許多其它表示法的任一形式。
在塊805,關(guān)于第一重現(xiàn)的元數(shù)據(jù)被加到了這個復合文件里。如上所述,元數(shù)據(jù)可以在一個復合文件的重現(xiàn)列表流下駐留。元數(shù)據(jù)描述了第一重現(xiàn),包括任何文件,其可以是第一重現(xiàn)的一部分。元數(shù)據(jù)也可以包括規(guī)則或選擇標準以用來啟用基于一個請求方應用程序的適當重現(xiàn)的選擇。
在塊807,第二重現(xiàn)被加到復合文件里。第二重現(xiàn)也可以是文檔內(nèi)容的一個視覺表示,或者也可以是一些其它的形式,例如一個聽覺表示或者圖像表示。
在塊809,關(guān)于第二重現(xiàn)的元數(shù)據(jù)被加到了這個復合文件里。元數(shù)據(jù)再次描述了第二重現(xiàn),包括包括任何文件,其可以是第一重現(xiàn)的一部分。元數(shù)據(jù)也可以包括規(guī)則或選擇標準以用來啟用基于一個請求方應用程序的適當重現(xiàn)的選擇。
在塊811,通用描述性元數(shù)據(jù)被加到復合文件中,例如關(guān)于文檔作者的信息,或其它關(guān)于文檔或是復合文件的中性重現(xiàn)信息。在這里,復合文件包括兩個完整的重現(xiàn),它們可以或不可以共享資源。這個復合文件現(xiàn)在可以通過一個類似于前面結(jié)合圖7來說明的那個例子的處理過程來操作。
前面的技術(shù)說明、例子以及數(shù)據(jù)提供了一個完整的概念描述以及該發(fā)明的用于說明的實現(xiàn)方式。由于在不偏離本發(fā)明的精神和范圍內(nèi)就可以實現(xiàn)本范圍的許多實施例,因此該發(fā)明存在于下面附加的權(quán)利要求。
權(quán)利要求
1.一種計算機可讀取的媒體,它具有計算機可執(zhí)行的組件,包括包括第一流和第二流的復合文件,第一流包含一文檔的第一重現(xiàn),第二流包含所述文檔的第二重現(xiàn),復合文件進一步包括第三流,它包括描述第一重現(xiàn)和第二重現(xiàn)的信息,該信息我每一個重現(xiàn)包括一個與每個重現(xiàn)相關(guān)聯(lián)的一個起始流標識。
2.如權(quán)利要求1所述的計算機可讀取的媒體,其特征在于,復合文件進一步包括第四流,它包括由第一和第二流共享的資源。
3.如權(quán)利要求1所述的計算機可讀取的媒體,其特征在于,第一重現(xiàn)包含所述文檔的第一視覺表示。
4.如權(quán)利要求3所述的計算機可讀取的媒體,其特征在于,第二重現(xiàn)包含所述文檔的第二視覺表示。
5.如權(quán)利要求1所述的計算機可讀取的媒體,其特征在于,第二重現(xiàn)包含所述文檔的聽覺表示。
6.如權(quán)利要求1所述的計算機可讀取的媒體,其特征在于,所述信息包含多個重現(xiàn)條目,每一個重現(xiàn)條目具有至少一個重現(xiàn)標識符和一個文件標識符,重現(xiàn)標識符起著唯一性地識別重現(xiàn)條目與其相關(guān)聯(lián)的特定重現(xiàn)的作用,文件標識符起著識別每一個與所述特定重現(xiàn)相關(guān)聯(lián)的文件的作用。
7.如權(quán)利要求6所述的計算機可讀取的媒體,其特征在于,每個重現(xiàn)條目進一步包含至少一個規(guī)則條目,它包括可用于確定哪個重現(xiàn)適合于一個特定設(shè)備或應用程序的標準。
8.權(quán)利要求7中的計算機可讀取的媒體,其特征在于,每個重現(xiàn)條目進一步包含至少一個描述條目,它包括與特定重現(xiàn)相關(guān)聯(lián)的人可讀取的信息。
9.一種計算機實現(xiàn)的方法,包含從請求方應用程序接收一個指令,該指令與一文檔的內(nèi)容有關(guān);分析關(guān)于文檔內(nèi)容的多樣重現(xiàn)的元信息以識別一個適當?shù)闹噩F(xiàn);以及使所述適當?shù)闹噩F(xiàn)對請求方應用程序可用。
10.如權(quán)利要求9所述的計算機實現(xiàn)的方法,其特征在于,文檔內(nèi)容的多樣重現(xiàn)被存儲在一個復合文件里。
11.如權(quán)利要求10所述的計算機實現(xiàn)的方法,其特征在于,對元信息的分析包括詢問關(guān)于多樣重現(xiàn)的數(shù)據(jù)以確定用于識別適當重現(xiàn)的選擇標準。
12.如權(quán)利要求11所述的計算機實現(xiàn)的方法,其特征在于,所述選擇標準包含用于多樣重現(xiàn)的每一個的特征。
13.如權(quán)利要求12所述的計算機實現(xiàn)的方法,其特征在于,所述特征包含從一個組里選出的至少一個,這個組包含MIME類型、邏輯分辨率和幾何結(jié)構(gòu)、色深、人類語言、以及閱讀器直觀能力分類。
14.如權(quán)利要求11所述的計算機實現(xiàn)的方法,其特征在于,所述選擇標準包括結(jié)合特定應用程序或設(shè)備使用特定的重現(xiàn)的規(guī)則。
15.如權(quán)利要求9所述的計算機實現(xiàn)的方法,其特征在于,所述多樣重現(xiàn)包括所述文檔內(nèi)容的至少一種視覺表示。
16.如權(quán)利要求15所述的計算機實現(xiàn)的方法,其特征在于,所述多樣重現(xiàn)進一步包含所述文檔內(nèi)容的至少一種其它表示。
17.如權(quán)利要求16所述的計算機實現(xiàn)的方法,其特征在于,所述文檔內(nèi)容的其它表示包括文檔內(nèi)容的聽覺表示。
18.一種以數(shù)據(jù)結(jié)構(gòu)編碼的計算機可讀取的媒體,包含第一流,它包括以第一表示法呈現(xiàn)的文檔內(nèi)容;第二流,它包括以第二表示法呈現(xiàn)的文檔內(nèi)容;存儲器,它包含由文檔內(nèi)容參考的資源;以及一表格,它描述包括第一流和資源的第一重現(xiàn),以及包括第二流和資源的第二重現(xiàn)。
19.如權(quán)利要求18所述的計算機可讀取的媒體,其特征在于,所述表格包括關(guān)于每一個重現(xiàn)的信息,包括用于每個重現(xiàn)的標識符以及與每一個重現(xiàn)相關(guān)聯(lián)的文件列表。
20.如權(quán)利要求19所述的計算機可讀取的媒體,其特征在于,所述表格進一步包括用于使一個特定重現(xiàn)與一個特定應用程序或設(shè)備相關(guān)聯(lián)的選擇標準。
21.如權(quán)利要求18所述的計算機可讀取的媒體,其特征在于,所述數(shù)據(jù)結(jié)構(gòu)進一步包括一個將第一重現(xiàn)當作一個實體來操作的接口。
全文摘要
說明的是提供了一種用于包含相同文檔內(nèi)容的多樣顯示法的單一文檔的機制。每一種顯示法可以被最優(yōu)化以提供在一種特定設(shè)備或應用程序里優(yōu)質(zhì)的顯示形式。本發(fā)明的機制是優(yōu)選的基于一種復合文檔格式,這種格式允許相同內(nèi)容的多樣重現(xiàn)被存放在一個單一文檔內(nèi)。元信息被包括在這個單一文檔的內(nèi)部,這個文檔描述了每一個多樣重現(xiàn)以及任何能和那些重現(xiàn)一起被使用的可支持的文件。發(fā)明人們已經(jīng)確定了采用對象連接和嵌入法(OLE)的復合文件格式尤其適合本發(fā)明的實現(xiàn)方法。
文檔編號G06F17/21GK1669026SQ03802116
公開日2005年9月14日 申請日期2003年5月17日 優(yōu)先權(quán)日2003年5月17日
發(fā)明者D·B·奧恩斯坦, I·森德, J·金, 金玲珈, J·M·卡希爾, K·S·布林特森霍夫 申請人:微軟公司