專利名稱:通過聽覺表示html數(shù)據(jù)頁(yè)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及環(huán)球網(wǎng),更具體地說涉及借助聲音傳遞以HTML編碼的網(wǎng)頁(yè)的內(nèi)容。
環(huán)球網(wǎng)是數(shù)據(jù)頁(yè)的國(guó)際集合。每個(gè)數(shù)據(jù)頁(yè)使用超文本標(biāo)記語(yǔ)言(HTML)寫成。利用HTML編碼的文件包括純文本和標(biāo)記文本,后者通常被稱為“標(biāo)記”。HTML文件中的標(biāo)記并不顯示給該文件的瀏覽者;標(biāo)記表示關(guān)于該文件的元信息,例如與其它HTML頁(yè)的鏈接,與文件的鏈接,或者該HTML頁(yè)的特殊部分,例如主體文本或標(biāo)題文本。通常以不同的顏色,字體或格式顯示特殊文本,以便向?yàn)g覽者突出顯示該特殊文本。
由于媒體的視覺本性,對(duì)于視覺受損的個(gè)人來(lái)說,環(huán)球網(wǎng)帶來(lái)特殊的問題。此外,不僅視覺受損的個(gè)人不能瀏覽由HTML頁(yè)顯示的內(nèi)容,而且表現(xiàn)可視數(shù)據(jù),以便視覺受損個(gè)人獲得這些可視數(shù)據(jù)的常規(guī)方式也不能容納HTML頁(yè)通常存在的一組豐富的嵌入功能性。
于是本發(fā)明的目的是提供一種使視覺受損個(gè)人能夠訪問HTML頁(yè)的方法和設(shè)備。
本發(fā)明的另一目的是提供一種利用聲音數(shù)據(jù),而不是視覺數(shù)據(jù)表現(xiàn)HTML頁(yè)的內(nèi)容的方法和設(shè)備。
上面陳述的目的,以及本發(fā)明的其它目的和優(yōu)點(diǎn)是由下面描述的本發(fā)明實(shí)施例實(shí)現(xiàn)的。
本發(fā)明以音頻信息的線性流的形式向使用者呈現(xiàn)HTML文件。避免了文件的視覺表現(xiàn)采用的在頁(yè)面上把文本分成多行。這不同于稱為“屏幕閱讀器”的現(xiàn)有系統(tǒng),該現(xiàn)有系統(tǒng)使用合成的語(yǔ)音輸出在計(jì)算機(jī)屏幕上顯示信息。這種屏幕閱讀器取決于文件的屏幕布局,并且要求使用者熟悉并按照該布局,以在文件內(nèi)進(jìn)行瀏覽。本發(fā)明避免了屏幕的視覺隱喻,并且以當(dāng)大聲閱讀時(shí),使文件發(fā)聲的方式表現(xiàn)文件,而不是以視覺顯現(xiàn)文件的方式表現(xiàn)文件。即,本發(fā)明以線性方式向使用者呈現(xiàn)文件,然而允許使用者在任意時(shí)刻跳以該文件內(nèi)的其它章節(jié)或段落。使用者通過使用文件的語(yǔ)義內(nèi)容,而不是文件的視覺布局與文件相互作用。
本發(fā)明和瀏覽器應(yīng)用程序,即用于視覺顯示HTML文件的應(yīng)用程序一道工作,以便通過聽覺,而不是通過視覺向計(jì)算機(jī)使用者表現(xiàn)HTML文件。本發(fā)明對(duì)HTML文件進(jìn)行語(yǔ)法分析,使標(biāo)記和內(nèi)容與聽覺顯示的各種元素相聯(lián)系,并使用機(jī)器產(chǎn)生的語(yǔ)音聲和非語(yǔ)音聲的組合,通過聽覺向使用者表現(xiàn)文件。合成語(yǔ)音被用于大聲讀出文本內(nèi)容,非語(yǔ)音聲被用于表現(xiàn)由標(biāo)記表示的文件特征。例如,標(biāo)題,目錄及超文本鏈接均可由獨(dú)特的非語(yǔ)音聲表示,該非語(yǔ)音聲告知使用者,他們聽到的語(yǔ)音分別是標(biāo)題,目錄或超鏈接部分。這樣,可利用語(yǔ)音合成器大聲地讀出HTML頁(yè),并利用非語(yǔ)音聲同時(shí)或基本同時(shí)地通過聽覺顯示嵌入的HTML標(biāo)記,以指示特殊文本的存在??蓪?duì)特定的HTML標(biāo)記賦予聲音,并由發(fā)聲引擎管理。一種這樣的發(fā)聲引擎是同時(shí)待審的申請(qǐng),序列號(hào)08/956238(申請(qǐng)日1997年10月22日)中描述的聽覺顯示管理程序(Auditory Display Manager)(ADM),該專利申請(qǐng)的內(nèi)容作為參考包含于此。
本發(fā)明還允許使用者控制文件的呈現(xiàn)。使用者可以開始和停止文件的閱讀;按照文件的短語(yǔ),句子或標(biāo)記章節(jié)向前或向后跳轉(zhuǎn);在文件內(nèi)搜索文本;及執(zhí)行其它瀏覽操作。使用者還可通過熱鏈接到達(dá)其它文件,改變文件的閱讀速度,或者調(diào)節(jié)輸出音量。所有這些操作可通過按壓數(shù)字小鍵盤上的按鍵實(shí)現(xiàn),以致可通過電話機(jī)使用本發(fā)明,或者不能有效使用指示器的視覺受損計(jì)算機(jī)用戶也可使用本發(fā)明。
本發(fā)明的一個(gè)方面涉及一種通過聽覺表現(xiàn)HTML文件的方法。該方法包括下述步驟向在頁(yè)面中遇到的HTML標(biāo)記類型分配獨(dú)特聲音;在HTML頁(yè)面內(nèi)一遇到該類型的HTML標(biāo)記,就產(chǎn)生相關(guān)的聲音;另外還產(chǎn)生表示在該HTML頁(yè)面中遇到的文本的語(yǔ)音。語(yǔ)音和非語(yǔ)音聲可基本同時(shí)地產(chǎn)生,以使代表特殊類型標(biāo)記,例如和另一HTML頁(yè)面的鏈接的文本,和另一聲音,例如嗡嗡聲或周期性的滴答聲一起被大聲讀出。
本發(fā)明的另一方面涉及一種通過聽覺表現(xiàn)HTML文件的系統(tǒng)。在本發(fā)明的這一方面,從瀏覽應(yīng)用程序接收文件。但是,如上所述,這種瀏覽器通常只是通過視覺呈現(xiàn)HTML文件,并僅僅使用聲音播放也可獲自于環(huán)球網(wǎng)的錄音音頻文件。本發(fā)明的系統(tǒng)包括語(yǔ)法分析器和閱讀器。語(yǔ)法分析器接收HTML頁(yè),并輸出代表接收的HTML頁(yè)的樹形數(shù)據(jù)結(jié)構(gòu)。閱讀器使用該樹形數(shù)據(jù)結(jié)構(gòu),產(chǎn)生表現(xiàn)該HTML頁(yè)中所含的文本和標(biāo)記的聲音。在一些實(shí)施例中,閱讀器通過執(zhí)行樹形數(shù)據(jù)結(jié)構(gòu)的深度優(yōu)先遍歷,產(chǎn)生上述聲音。
本發(fā)明的另一方面還涉及一種具有嵌入其中的計(jì)算機(jī)可讀程序的產(chǎn)品。該產(chǎn)品包括向在頁(yè)面中遇到的HTML標(biāo)記分配獨(dú)特聲音的計(jì)算機(jī)可讀程序,一遇到該HTML標(biāo)記,就產(chǎn)生所分配聲音的計(jì)算機(jī)可讀程序,及產(chǎn)生代表在HTML頁(yè)中遇到的文本的語(yǔ)音的計(jì)算機(jī)可讀程序。
為了更好地理解本發(fā)明,以及本發(fā)明的其它目的,請(qǐng)參考附圖及下面的詳細(xì)說明,本發(fā)明的范圍將由附加的權(quán)利要求限定。
圖1是發(fā)聲設(shè)備的方框圖;圖2是初始化發(fā)聲設(shè)備所采取的步驟的流程圖。
在整個(gè)說明書內(nèi),術(shù)語(yǔ)“發(fā)聲(sonify)”用作表示大聲地閱讀HTML頁(yè),同時(shí)包括識(shí)別HTML頁(yè)中嵌入的HTML標(biāo)記的聽覺提示的動(dòng)詞?,F(xiàn)在參見圖1,HTML頁(yè)發(fā)聲(sonification)設(shè)備10包括語(yǔ)法分析器12,閱讀器14和導(dǎo)航器16。語(yǔ)法分析器12確定要被發(fā)聲的HTML文件的結(jié)構(gòu),閱讀器14對(duì)HTML文件發(fā)聲,并使語(yǔ)音聲和非語(yǔ)音聲同步,導(dǎo)航器16接受來(lái)自使用者的輸入,該輸入使使用者能夠選擇要被發(fā)聲的HTML文件部分。下面將更詳細(xì)地說明語(yǔ)法分析器12,閱讀器14和導(dǎo)航器16的操作。
現(xiàn)在參考圖2,發(fā)聲設(shè)備10初始化各個(gè)組件,以便建立與發(fā)聲引擎(圖1中未表示)和語(yǔ)音合成器的連接。初始化階段包括下述四部分建立與瀏覽器應(yīng)用程序的連接,瀏覽器應(yīng)用程序向本發(fā)明提供HTML文件(步驟210);建立與發(fā)聲引擎的連接(步驟212);確定非語(yǔ)音聲和發(fā)聲引擎內(nèi)非語(yǔ)音聲被使用的條件(步驟214);獲取默認(rèn)的HTML文件(步驟216)。
建立與瀏覽器應(yīng)用程序的連接(步驟210)將根據(jù)將與之建立連接的瀏覽器而發(fā)生變化。一般來(lái)說,必須提供一些選擇瀏覽器應(yīng)用程序的工具,確定用于借助HTML文件的統(tǒng)一資源定位器(URL)請(qǐng)求HTML文件,并接受返回的HTML文件的界面。例如,如果發(fā)聲設(shè)備10打算和NETSCAPE NAVIGATOR(California,Mountain View的Netscape Communication有限公司生產(chǎn)的瀏覽器應(yīng)用程序)一道工作,則可以與該瀏覽器連接的插入模塊形式提供發(fā)聲設(shè)備10?;蛘?,如果發(fā)聲設(shè)備10打算與INTERNET EXPLORER(Washington,Redmond的Microsoft公司生產(chǎn)的瀏覽器應(yīng)用程序)一道工作,則可以設(shè)計(jì)成與INTERNET EXPLORER相互作用的插入式應(yīng)用程序的形式提供發(fā)聲設(shè)備10。
建立與發(fā)聲引擎的連接(步驟212)通常僅僅需要啟動(dòng)該引擎。對(duì)于其中以軟件模塊形式提供發(fā)聲引擎的實(shí)施例來(lái)說,為了實(shí)現(xiàn)這一點(diǎn),應(yīng)使用操作系統(tǒng)提供的任何工具調(diào)用該軟件模塊?;蛘撸绻怨碳蛴布问教峁┌l(fā)聲引擎,則可利用用于和硬件或固件通信的常規(guī)技術(shù)啟動(dòng)該發(fā)聲引擎,例如,向信號(hào)線施加電壓,以指示服務(wù)中斷請(qǐng)求的存在,或者通過向寄存器寫入指示請(qǐng)求發(fā)聲引擎進(jìn)行服務(wù)的預(yù)定數(shù)據(jù)值。一旦被連接,則發(fā)聲引擎的初始化函數(shù)被調(diào)用,該初始化函數(shù)使發(fā)聲引擎分配實(shí)現(xiàn)其功能所需的資源。這通常包括音頻輸出裝置,及在某些實(shí)施例中,音頻混音器的分配。
一旦已建立與發(fā)聲引擎的連接,必須使聲音與發(fā)聲設(shè)備10希望發(fā)聲引擎發(fā)聲的不同事件和對(duì)象相聯(lián)系(步驟214)。例如,可把聽覺圖標(biāo)分配給HTML標(biāo)記,HTML標(biāo)記之間的過渡,及錯(cuò)誤事件。聽覺圖標(biāo)是用于唯一地識(shí)別這些事件和對(duì)象的聲音。發(fā)聲引擎可通過讀取列舉各個(gè)HTML標(biāo)記,及當(dāng)HTML閱讀器進(jìn)入,離開或者在每個(gè)標(biāo)記內(nèi)時(shí),將執(zhí)行的動(dòng)作的文件,實(shí)現(xiàn)這一點(diǎn)。在一個(gè)實(shí)施例中,發(fā)聲引擎讀取包括當(dāng)對(duì)HTML文件發(fā)聲時(shí)可能遇到的各個(gè)HTML標(biāo)記和事件的文件。在另一實(shí)施例中,發(fā)聲引擎提供允許向新近遇到的標(biāo)記或事件分配聽覺圖標(biāo)的機(jī)制。在該實(shí)施例中,聽覺圖標(biāo)的分配可自動(dòng)進(jìn)行,或者需要使用者提示。
通過向提供HTML文件的軟件模塊請(qǐng)求默認(rèn)HTML文件,例如“主頁(yè)”結(jié)束初始化(步驟216)。如果主頁(yè)存在,則把主頁(yè)傳到發(fā)聲設(shè)備10,以便由發(fā)聲設(shè)備10對(duì)主頁(yè)發(fā)聲。如果不存在主頁(yè),發(fā)聲設(shè)備10等待使用者輸入。
操作中,當(dāng)遇到HTML標(biāo)記時(shí),根據(jù)該HTML標(biāo)記的類型,設(shè)備10指示發(fā)聲引擎產(chǎn)生或停止聲音數(shù)據(jù)(步驟218),并且當(dāng)遇到文本時(shí),指示語(yǔ)音合成器產(chǎn)生語(yǔ)音數(shù)據(jù)(步驟220)。
語(yǔ)法分析器參見圖1,語(yǔ)法分析器12對(duì)從瀏覽器應(yīng)用程序,或者其它一些能夠提供HTML文件的應(yīng)用程序接收的HTML進(jìn)行語(yǔ)法分析,使之成為樹形數(shù)據(jù)結(jié)構(gòu)。本領(lǐng)域中的普通技術(shù)人員易于理解對(duì)文件進(jìn)行語(yǔ)法分析,以產(chǎn)生樹形數(shù)據(jù)結(jié)構(gòu)的一般性過程。
在一個(gè)實(shí)施例中,語(yǔ)法分析器12產(chǎn)生一個(gè)樹形數(shù)據(jù)結(jié)構(gòu),其每一節(jié)點(diǎn)代表一個(gè)HTML標(biāo)記,這些標(biāo)記的后裔構(gòu)成該標(biāo)記內(nèi)的文本的部分。在本實(shí)施例中,使各個(gè)標(biāo)記的屬性和數(shù)值與代表該標(biāo)記的節(jié)點(diǎn)相連。各個(gè)節(jié)點(diǎn)的父節(jié)點(diǎn)代表封閉由該節(jié)點(diǎn)代表的標(biāo)記的HTML標(biāo)記。各個(gè)節(jié)點(diǎn)的子節(jié)點(diǎn)代表由該節(jié)點(diǎn)代表的標(biāo)記封閉的HTML標(biāo)記。字符數(shù)據(jù),即HTML標(biāo)記之間文件的文本部分,以樹形結(jié)構(gòu)的葉節(jié)點(diǎn)形式表示。以句子為界,可把字符數(shù)據(jù)分成樹形結(jié)構(gòu)的多個(gè)節(jié)點(diǎn),并且可把太長(zhǎng)的句子進(jìn)一步分成多個(gè)節(jié)點(diǎn),以免使任意單個(gè)節(jié)點(diǎn)含有大量的文本。
語(yǔ)法分析器12可把它產(chǎn)生的樹形數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)在便利的存儲(chǔ)元件中,語(yǔ)法分析器12和閱讀器14均可訪問該存儲(chǔ)元件?;蛘?,語(yǔ)法分析器可把該樹形數(shù)據(jù)結(jié)構(gòu)直接傳給閱讀器14。
閱讀器在獲得HTML文件,并由語(yǔ)法分析器12對(duì)該HTML進(jìn)行語(yǔ)法分析之后,閱讀器14讀取該樹形數(shù)據(jù)結(jié)構(gòu),以便對(duì)該樹形數(shù)據(jù)結(jié)構(gòu)代表的HTML數(shù)據(jù)頁(yè)發(fā)聲。在一些實(shí)施例中,閱讀器14訪問含有該樹形數(shù)據(jù)結(jié)構(gòu)的獨(dú)立存儲(chǔ)元件,而在其它實(shí)施例中,閱讀器14提供存儲(chǔ)元件,樹形數(shù)據(jù)結(jié)構(gòu)被存儲(chǔ)在該存儲(chǔ)元件。閱讀器14遍歷該樹形數(shù)據(jù)結(jié)構(gòu),利用語(yǔ)音合成器以口語(yǔ)形式表示遇到的文本,并利用非語(yǔ)音聲表示HTML標(biāo)記。在一些實(shí)施例中,閱讀器14配合獨(dú)立的語(yǔ)音合成模塊,以表示文本。閱讀器14與發(fā)聲引擎連系,以便產(chǎn)生表示必須被發(fā)聲的HTML標(biāo)記和事件的非語(yǔ)音聲。
通過進(jìn)行語(yǔ)法分析后的HTML文件樹的深度優(yōu)先遍歷,讀取HTML文件。這種遍歷相應(yīng)于直線讀取未經(jīng)語(yǔ)法分析的HTML文件,如同其作者編寫該HTML文件一樣。當(dāng)進(jìn)入該樹形數(shù)據(jù)結(jié)構(gòu)的每個(gè)節(jié)點(diǎn)時(shí),閱讀器14檢查該節(jié)點(diǎn)的類型。如果該節(jié)點(diǎn)含有字符數(shù)據(jù),則在語(yǔ)音合成器內(nèi)使字符數(shù)據(jù)的文本排隊(duì),以便說出該字符數(shù)據(jù)文本。如果該節(jié)點(diǎn)含有HTML標(biāo)記,則在發(fā)聲引擎內(nèi)使該標(biāo)記的元素名字,或標(biāo)號(hào)排隊(duì),以便由初始化過程中與該標(biāo)記相聯(lián)系的聲音表示該HTML標(biāo)記。與節(jié)點(diǎn)的類型無(wú)關(guān),借助語(yǔ)音合成器使標(biāo)志排隊(duì),以便如下所述使這兩個(gè)輸出流同步。當(dāng)離開樹形數(shù)據(jù)結(jié)構(gòu)的各個(gè)節(jié)點(diǎn)時(shí),閱讀器向發(fā)聲引擎發(fā)送元素名字或HTML標(biāo)記,以便同樣能夠以聲音表示該標(biāo)記的結(jié)束。
當(dāng)其遍歷樹形數(shù)據(jù)結(jié)構(gòu)時(shí),閱讀器保持兩個(gè)指針。指針是該樹形數(shù)據(jù)結(jié)構(gòu)內(nèi)特定位置或節(jié)點(diǎn)的基準(zhǔn)。第一指針表示語(yǔ)法分析后的HTML文件樹內(nèi)當(dāng)前正被發(fā)聲的位置,第一指針被稱為“讀取指針”。第二指針代表在語(yǔ)音合成器或發(fā)聲引擎中接下來(lái)被排隊(duì)的位置,并被稱為“排隊(duì)指針”。這兩個(gè)指針之間的文件部分是已被排隊(duì)供閱讀,但是還未被發(fā)聲的部分。需要時(shí),可使用其它指針代表樹形數(shù)據(jù)結(jié)構(gòu)內(nèi)的其它位置或節(jié)點(diǎn),例如當(dāng)搜索該文件,尋找特定的文本串或HTML標(biāo)記時(shí)。指針可用于交互式控制正被大聲閱讀的HTML文件的位置。
HTML文件中指針的使用使得閱讀器能夠遵循個(gè)人閱讀文本的方式在整個(gè)文件內(nèi)直線移動(dòng)。這不同于HTML文件的視覺表現(xiàn),HTML文件的視覺表現(xiàn)提供整個(gè)頁(yè)面,并允許使用者水平或垂直卷動(dòng)該頁(yè)面,但是不提供以閱讀方式遍歷該HTML文件的手段。指針的使用向本發(fā)明提供了直線閱讀該文件,并允許使用者如下所述在文件內(nèi)瀏覽。
當(dāng)發(fā)聲設(shè)備10開始向使用者讀出HTML文件的過程時(shí),一開始,兩個(gè)指針都位于該HTML文件的起點(diǎn)。即,指針都位于語(yǔ)法分析后的HTML文件樹的根節(jié)點(diǎn)。發(fā)聲設(shè)備10如上所述對(duì)來(lái)自該語(yǔ)法分析樹的數(shù)據(jù)排隊(duì)。當(dāng)該樹的各個(gè)節(jié)點(diǎn)被排隊(duì)時(shí),排隊(duì)指針在樹內(nèi)移動(dòng),以便該指針總是指向接下來(lái)要排隊(duì)的節(jié)點(diǎn)。當(dāng)首先對(duì)HTML文件進(jìn)行語(yǔ)法分析,并將其提供給閱讀器時(shí),指針被置于語(yǔ)法分析樹結(jié)構(gòu)的頂部,并且隨著指針在該樹內(nèi)移動(dòng),整個(gè)HTML文件從開始到結(jié)尾被讀出。當(dāng)?shù)竭_(dá)該HTML文件的結(jié)尾時(shí),系統(tǒng)將停止閱讀,并等待來(lái)自使用者的輸入。如果正在閱讀HTML文件時(shí),接收到使用者的輸入,則閱讀器14立即停止閱讀,處理該輸入(該輸入可能改變當(dāng)前的閱讀位置),隨后再開始閱讀,除非該輸入指示閱讀器停止閱讀。
使在語(yǔ)音合成器中和文本一起被排隊(duì)的標(biāo)志HTML樹中的位置相聯(lián)系。每個(gè)標(biāo)志含有獨(dú)特的識(shí)別符,該識(shí)別符與標(biāo)志排隊(duì)時(shí),排隊(duì)指針的位置相聯(lián)系。當(dāng)合成器閱讀在其中排隊(duì)的文本時(shí),當(dāng)其遇到與文本一道被排隊(duì)的標(biāo)志時(shí),合成器通知閱讀器14。閱讀器14查找相關(guān)的指針位置,并把讀取指針移到該位置。這樣,使讀取指針與已被語(yǔ)音合成器讀出的文本保持同步。
當(dāng)系統(tǒng)處于使數(shù)據(jù)排隊(duì)進(jìn)入語(yǔ)音合成器和發(fā)聲引擎的過程中,當(dāng)在HTML文件樹內(nèi)移動(dòng)排隊(duì)指針時(shí),兩個(gè)指針分離。為了避免語(yǔ)音合成器或發(fā)聲引擎內(nèi)隊(duì)列溢出,一旦這兩個(gè)指針已被分離一定量,系統(tǒng)可停止對(duì)數(shù)據(jù)排隊(duì)。當(dāng)語(yǔ)音合成器向使用者閱讀文本,并且來(lái)自語(yǔ)音合成器的通知使系統(tǒng)前移讀取指針時(shí),這兩個(gè)指針之間的分離量變小。當(dāng)分離量小于預(yù)定大小時(shí),系統(tǒng)重新開始使數(shù)據(jù)排隊(duì)進(jìn)入語(yǔ)音合成器和發(fā)聲引擎。這樣,向這些輸出裝置的隊(duì)列供給數(shù)據(jù),但是不會(huì)使之溢出或?yàn)榭?。?jié)點(diǎn)作為單個(gè)單元被排隊(duì),于是,如前所述把字符數(shù)據(jù)分成多個(gè)節(jié)點(diǎn)也有助于避免使閱讀隊(duì)列溢出。
當(dāng)排隊(duì)指針達(dá)到語(yǔ)法分析HTML樹的結(jié)尾,即排隊(duì)指針已返回該樹的根節(jié)點(diǎn)時(shí),不再有數(shù)據(jù)可被排隊(duì),系統(tǒng)允許隊(duì)列為空。當(dāng)使隊(duì)列騰空時(shí),讀取指針也被移動(dòng)到語(yǔ)法分析HTML樹的結(jié)尾。當(dāng)兩個(gè)指針都位于HTML樹的結(jié)尾時(shí),整個(gè)文件已被發(fā)聲,HTML閱讀器停止。
如果在頁(yè)面的發(fā)聲過程中收到任意使用者使用,則HTML閱讀器立即停止閱讀。HTML閱讀器通過中斷語(yǔ)音合成器和發(fā)聲引擎,刷新語(yǔ)音合成器和發(fā)聲引擎的隊(duì)列,并把排隊(duì)指針置于當(dāng)前的讀取指針位置來(lái)實(shí)現(xiàn)停止閱讀。這使所有聲音輸出停止。在接收的輸入被處理之后,當(dāng)再次啟動(dòng)閱讀器14時(shí),排隊(duì)指針再次被置于當(dāng)前的讀取指針位置(在響應(yīng)該輸入,改變讀取指針的情況下),并且如前所述繼續(xù)進(jìn)行數(shù)據(jù)的排隊(duì)。
可保留最近請(qǐng)求的,語(yǔ)法分析后的HTML樹結(jié)構(gòu)及它們的相關(guān)讀取指針的列表。使用者可在該列表中從文件到文件直線移動(dòng),該列表提供了通常在瀏覽器軟件中實(shí)現(xiàn)的已訪問HTML文件的“歷史”。但是,通過同時(shí)保留讀取指針和各個(gè)語(yǔ)法分析文件,當(dāng)使用者切換到列表中的另一頁(yè)面時(shí),本發(fā)明可從前次閱讀頁(yè)面時(shí)的停止位置繼續(xù)閱讀該頁(yè)面。
導(dǎo)航器使用者配有用于控制在任意時(shí)刻將向使用者提供哪個(gè)HTML文件及該文件的什么部分的工具。使用者提供一些輸入,這些輸入可以是鍵盤輸入,語(yǔ)音命令或任意其它類型的輸入。在最佳實(shí)施例中,該輸入來(lái)自數(shù)字小鍵盤,例如標(biāo)準(zhǔn)的個(gè)人計(jì)算機(jī)鍵盤上的數(shù)字小鍵盤。該輸入選擇幾個(gè)典型的導(dǎo)航(navigation)函數(shù),附錄中詳細(xì)描述了導(dǎo)航函數(shù)的例子。當(dāng)導(dǎo)航器16接收使用者輸入時(shí),如前所述,閱讀器14被停止,運(yùn)行該函數(shù),并根據(jù)該函數(shù)提供的布爾值,有條件地重新啟動(dòng)閱讀器。在一些實(shí)施例中,導(dǎo)航器16停止閱讀器14,運(yùn)行函數(shù),重新啟動(dòng)閱讀器14?;蛘撸瑢?dǎo)航器16可通知收到使用者輸入及收到的命令,閱讀器14可自行停止,運(yùn)行該函數(shù),并自行啟動(dòng)。
某些函數(shù)可產(chǎn)生錯(cuò)誤,例如不能找到函數(shù)搜索的HTML標(biāo)記。這些情況下,出錯(cuò)信息文本被送給語(yǔ)音合成器,以便提供給使用者,函數(shù)返回的布爾值指示閱讀器14不應(yīng)被重新啟動(dòng)。
本發(fā)明可以軟件包的形式提供。在一些實(shí)施例中,本發(fā)明可構(gòu)成較大程序的一部分,所述較大程序包括瀏覽器應(yīng)用程序,及聽覺顯示管理程序。它可用支持上面說明的數(shù)據(jù)結(jié)構(gòu)要求的任意高級(jí)程序設(shè)計(jì)語(yǔ)言編寫,例如C,C++,PASCAL,F(xiàn)ORTRAN,LISP或ADA?;蛘撸景l(fā)明可以匯編語(yǔ)言代碼的形式提供。當(dāng)以軟件代碼的形式提供時(shí),本發(fā)明可包含在任意非易失性存儲(chǔ)元件上,例如軟盤,硬盤,CD-ROM,光盤,磁帶,快速存儲(chǔ)器或ROM。
例子下面的例子用于舉例說明一個(gè)簡(jiǎn)單的HTML文件是如何被本發(fā)明的使用者感知的。該例子并不打算以任意方式限制本發(fā)明,提供該例子只是為了說明本發(fā)明的特征。下面的樣本文本The Hypertext Markup Language(HTML) is a standard proposedby the World Wide Web Consortium(W3C),an international standardsbody.The current version of the standard is HTML4.0.The W3C is responsible for several other standards, includingHTTP and PICS.可被標(biāo)記為簡(jiǎn)單的HTML文件,具有與其它文件的熱鏈接,如下所示<HTML><BODY>The<A HREF=″http//www.w3c.org/MarkUp/″>Hypertext Markup
Language (HTML)</A>
is a standard proposed by the<A HREF=″http//www.w3c.org/″>World Wide WebConsortium (W3C) </A>,an international standards body.The current version of the standard is<A HREF=″http//wwww.3c.org/TR/REC-htm140/″>HTML4.0</A>
<P>The W3C is responsible for several other standards,including<A HREF=″http//www.w3c.org/XML/″></A>
and<A HREF=″http//www.w3c.org/PICS/″PICS</A>
</BODY></HTML>
設(shè)備10如何對(duì)該文件發(fā)聲取決于它的配置。在一個(gè)實(shí)施例中,該配置可利用非語(yǔ)音聲表現(xiàn)大多數(shù)HTML標(biāo)記,并利用合成語(yǔ)音表現(xiàn)文本。語(yǔ)音聲或非語(yǔ)音聲可相續(xù)產(chǎn)生,也可同時(shí)產(chǎn)生,取決于使用者的偏愛。即,非語(yǔ)音聲可在語(yǔ)音流中的停頓中產(chǎn)生,或者在說出字詞的同時(shí)產(chǎn)生。
當(dāng)閱讀器14開始解釋代表該例證HTML文件的樹形數(shù)據(jù)結(jié)構(gòu)時(shí),閱讀器14指示發(fā)聲引擎產(chǎn)生代表如由<BODY>標(biāo)記標(biāo)注的文件本體起點(diǎn)的非語(yǔ)音聲。所使用的確切聲音對(duì)本專利來(lái)說并不重要,但是該聲音應(yīng)向使用者表示文件開始的概念。當(dāng)該聲音被播放時(shí)(或者如果使用者喜歡,在該聲音結(jié)束之后),閱讀器14借助語(yǔ)音合成模塊對(duì)文件起點(diǎn)處的文本(“The Hypertext Markup Language…”)排隊(duì)。當(dāng)剛開始字詞“Hypertext”時(shí),閱讀器14就借助發(fā)聲引擎對(duì)遇到的熱鏈接標(biāo)記排隊(duì),使發(fā)聲引擎產(chǎn)生的指示當(dāng)前大聲閱讀的文本是如由<A>標(biāo)記標(biāo)注的對(duì)另一文件的熱鏈接的聲音。在一個(gè)實(shí)施例中,持續(xù)聽到該聲音,直到讀出如由</A>標(biāo)記標(biāo)注的該熱鏈接結(jié)尾時(shí)為止。這樣,在該熱鏈接的文本被讀出的同時(shí),使用者將聽到代表“熱鏈接”概念的聲音。在無(wú)任何非語(yǔ)音聲的情況下讀出下一短語(yǔ)(“is astandard…”),因?yàn)椴淮嬖谫x予該文本任意特殊意思的標(biāo)記。當(dāng)熱鏈接聲音再次被播放時(shí),下一短語(yǔ)(“World wide Web…”)被讀出,因?yàn)樵摱陶Z(yǔ)作為熱鏈接被標(biāo)記。類似地,當(dāng)產(chǎn)生熱鏈接聲音時(shí),下一句子被讀出,只要閱讀的文本在<A>和</A>標(biāo)記內(nèi)。
當(dāng)遇到由<P>標(biāo)記表示的段落中斷,并且該段落被送到發(fā)聲引擎時(shí),發(fā)聲引擎產(chǎn)生不同的非語(yǔ)音聲。該非語(yǔ)音聲應(yīng)向使用者表現(xiàn)文本中的中斷的概念。類似地,語(yǔ)音合成器可被配置成產(chǎn)生適于段落中斷的暫停,并且利用適于段落起點(diǎn)的韻律開始閱讀下一句子。隨后當(dāng)熱鏈接聲音被播放時(shí),類似于第一句子,繼續(xù)進(jìn)行下一句子的閱讀,同時(shí)說出縮寫詞“XML”和“PICS”。最后,當(dāng)遇到</BODY>標(biāo)記時(shí),播放代表文件本體結(jié)尾的聲音。注意在本例中<HTML>和</HTML>標(biāo)記不與聲音相聯(lián)系,因?yàn)楫?dāng)有<BODY>和</BODY>標(biāo)記時(shí),它們通常是多余的。
就本發(fā)明來(lái)講,無(wú)需任意特殊控制,可由語(yǔ)音合成軟件處理用于逗號(hào),句號(hào)及其它標(biāo)點(diǎn)符號(hào)的暫停,但是HTML文件共有的某些類型的文本結(jié)構(gòu),例如電子郵件地址及統(tǒng)一資源定位器被特殊處理,以便語(yǔ)音合成器將以使用者希望的方式閱讀它們。結(jié)合關(guān)于文本映射直觀推斷的章節(jié),更詳細(xì)地說明了這些文本結(jié)構(gòu)的處理。
當(dāng)文件被閱讀時(shí),使用者可在任意時(shí)刻選擇該文件的另外部分,并由發(fā)聲設(shè)備向他讀出該另外部分。例如,在剛開始閱讀文件之后,如果使用者希望立即跳到第二段,則他可發(fā)出使閱讀停止,并且剛好在<P>標(biāo)記之后,立即重新開始閱讀的命令。如果使用者短時(shí)間內(nèi)注意力不集中,并且錯(cuò)過幾個(gè)單詞,則他可發(fā)出使本發(fā)明在該文件內(nèi)倒轉(zhuǎn),并向使用者重新閱讀最后短句的命令。當(dāng)任意一個(gè)熱鏈接被讀出時(shí),或者在這之后不久,使用者還可調(diào)用該任意一個(gè)熱鏈接,以便從環(huán)球網(wǎng)獲得其它HTML文件,并向使用者讀出該HTML文件。參見使用者命令的例證列表附錄。
文本映射直觀推斷本發(fā)明還提供以這樣的方式從HTML文件映射文本,以便當(dāng)由語(yǔ)音合成器讀出時(shí),更易于理解該HTML文件的方法。大多數(shù)語(yǔ)音合成器含有對(duì)于通用英語(yǔ),把文本很好地映射為語(yǔ)音的規(guī)則,但是HTML文件含有是大多數(shù)語(yǔ)音合成器不知道的少數(shù)幾個(gè)構(gòu)成。因特網(wǎng)電子郵件地址,統(tǒng)一資源定位器(URL)及表示文本菜單的各種方式是由語(yǔ)音合成器以無(wú)意義的或難懂的方式讀出的文本構(gòu)成的例子。
為了解決這個(gè)問題,閱讀器14在把文本發(fā)送給語(yǔ)音合成器之前,用更易理解的文本代替可能被錯(cuò)讀的文本。例如,電子郵件地址“info@sonicon.com”將被一些語(yǔ)音合成器讀作“info sonicon period co m”,或者由其它一些語(yǔ)音合成器以單個(gè)字母的形式完整地逐字拼出。閱讀器識(shí)別這種構(gòu)成,并用“info at sonicon點(diǎn)com”代替該構(gòu)成,以便語(yǔ)音合成器將以使用者希望聽到閱讀的電子郵件地址的方式讀出該地址。同樣,其它構(gòu)成,例如計(jì)算機(jī)文件路徑(例如“/home/fred/documents/plan.doc”)由類似于個(gè)人大聲讀出該路徑的方式的文本代替(例如“斜線home斜線fred斜線documents斜線plan點(diǎn)doc”)。
通過利用一組直觀推斷規(guī)則實(shí)現(xiàn)這些短語(yǔ)的轉(zhuǎn)換,這組直觀推斷規(guī)則描述要替換的文本及該文本應(yīng)如何被替換。這些規(guī)則中的許多規(guī)則涉及在標(biāo)點(diǎn)符號(hào)周圍放置空白,并用單詞代替該標(biāo)點(diǎn)符號(hào),以確保該標(biāo)點(diǎn)符號(hào)被發(fā)音。
雖然已關(guān)于不同的實(shí)施例說明了本發(fā)明,但是應(yīng)認(rèn)識(shí)到在附加的權(quán)利要求的精神和范圍內(nèi),本發(fā)明的各種各樣其它實(shí)施例也是可能的。
附錄在下面的例證函數(shù)的列表中,給出了各個(gè)函數(shù)的名稱,可被用于調(diào)用該函數(shù)的輸入的描述,在函數(shù)之后,是否重新啟動(dòng)閱讀器14,及函數(shù)作用的說明。
函數(shù)FollowLink輸入輸入鍵,回車鍵,‘O’鍵或空格鍵重新啟動(dòng)真說明查找在HTML文件樹中當(dāng)前閱讀位置之前的HTML錨,或者“A”標(biāo)記的位置,并從該標(biāo)記的HREF屬性獲得URL。在HTML中,這種標(biāo)記代表與其它文件的鏈接。如果不存在這種標(biāo)記,產(chǎn)生一個(gè)錯(cuò)誤。隨后把含有該URL的請(qǐng)求發(fā)送給向系統(tǒng)提供HTML文件的軟件模塊,獲得由該URL定位的文件,并把該文件發(fā)給語(yǔ)法分析器16。當(dāng)該頁(yè)面被徹底進(jìn)行語(yǔ)法分析后,當(dāng)前的閱讀位置位于新頁(yè)面的起點(diǎn),函數(shù)返回‘真’,使該新頁(yè)面被閱讀。
當(dāng)本函數(shù)被調(diào)用時(shí)選擇的熱鏈接將是當(dāng)前正向使用者閱讀的熱鏈接,或者當(dāng)函數(shù)被調(diào)用時(shí),熱鏈接未被閱讀,則選擇的熱鏈接將是最后閱讀的熱鏈接。這樣,即使當(dāng)閱讀器14已經(jīng)過熱鏈接之后,使用者仍可跟蹤該熱鏈接,并可在任意時(shí)刻這樣做,直到閱讀器遇到下一熱鏈接為止。
函數(shù) Pause輸入‘5’或‘P’鍵重新啟動(dòng)如果閱讀,則為假,如果不閱讀,則為真說明當(dāng)使用者啟動(dòng)該pause函數(shù)時(shí),如果閱讀器14處于向使用者閱讀的過程中,則本函數(shù)返回‘假’,否則返回‘真’。其作用是使閱讀器14在開或關(guān)之間切換。
函數(shù)Repeat輸入‘*’鍵或‘R’鍵重新啟動(dòng)真說明向后短距離移動(dòng)文件樹中的當(dāng)前閱讀位置,通常移到前一標(biāo)記或句子停頓處。其作用是向使用者重復(fù)讀出該使用者最后聽到的短語(yǔ)。
函數(shù) Forward輸入‘6’鍵或右箭頭鍵重新啟動(dòng)真說明把文件樹中的當(dāng)前閱讀位置前移到下一HTML標(biāo)記或句子停頓處。其作用是使閱讀器14跳過少部分的文件,并在稍后繼續(xù)閱讀。反復(fù)調(diào)用該函數(shù)將使閱讀器逐漸前移經(jīng)過該文件。
函數(shù)Backward輸入 ‘4’鍵或左箭頭鍵重新啟動(dòng)真說明把文件樹中的當(dāng)前閱讀位置后移到HTML標(biāo)記或句子停頓處。其作用是使閱讀器14倒轉(zhuǎn),并從文件內(nèi)的前一閱讀位置繼續(xù)閱讀。反復(fù)調(diào)用該函數(shù)將使閱讀器逐漸后移經(jīng)過該文件。
函數(shù)ForwardLink輸入 ‘2’鍵或下箭頭鍵,或者電話機(jī)上的按鍵‘8’重新啟動(dòng)真說明把文件樹中的當(dāng)前閱讀位置前移到下一錨標(biāo)記,該錨標(biāo)記是從當(dāng)前文件內(nèi)與另一文件的下一鏈接。如果在當(dāng)前閱讀位置之后,不存在錨標(biāo)記,則產(chǎn)生一個(gè)錯(cuò)誤。
函數(shù)BackwardLink輸入 ‘8’鍵或上箭頭鍵,或者電話機(jī)上的按鍵‘2’重新啟動(dòng)真說明如果文件樹中的當(dāng)前閱讀位置位于錨標(biāo)記內(nèi),將其后移到該標(biāo)記的起點(diǎn)。隨后把當(dāng)前閱讀位置后移到前一錨標(biāo)記,該前一錨標(biāo)記是從當(dāng)前文件內(nèi)與另一文件的前一鏈接。如果不能找到這種錨標(biāo)記,產(chǎn)生一個(gè)錯(cuò)誤。
函數(shù)BackwardPage輸入 ‘9’鍵或PgUp鍵,或者電話機(jī)上的按鍵‘3’重新啟動(dòng)真說明當(dāng)前文件被改變成由本發(fā)明保留的語(yǔ)法分析文件列表中的前一文件。當(dāng)前閱讀位置變成新的當(dāng)前文件的當(dāng)前閱讀位置。其作用是返回前一文件,并從該文件的前次停止閱讀的地方開始閱讀。如果列表中不存在前一文件,則產(chǎn)生一個(gè)錯(cuò)誤。
函數(shù)ForwardPage輸入‘3’鍵或PgDn鍵,或者電話機(jī)上的按鍵‘9’重新啟動(dòng)真說明當(dāng)前文件被改變成由本發(fā)明保留的語(yǔ)法分析文件列表中的下一文件。當(dāng)前閱讀位置變成新的當(dāng)前文件的當(dāng)前閱讀位置。其作用是前移到先前已獲得,并通過利用BackwardPage函數(shù)停止閱讀的文件。如果列表中不存在下一文件,則產(chǎn)生一個(gè)錯(cuò)誤。
函數(shù)BeginningOfPage輸入 ‘7’鍵或Home鍵,或者電話機(jī)上的按鍵‘1’重新啟動(dòng)真說明把文件樹中的當(dāng)前閱讀位置移到樹的根節(jié)點(diǎn),該根節(jié)點(diǎn)是該文件的起點(diǎn)。這將導(dǎo)致從文件起點(diǎn)開始閱讀該文件。
函數(shù)EndOfPage輸入 ‘1’鍵或End鍵,或者電話機(jī)上的按鍵‘7’重新啟動(dòng)真說明把文件樹中的當(dāng)前閱讀位置移到最后標(biāo)記的結(jié)尾,該最后標(biāo)記是樹的根節(jié)點(diǎn)的子節(jié)點(diǎn),該最后標(biāo)記正好在文件結(jié)尾之前。這將導(dǎo)致閱讀文件的最末端,在該點(diǎn)閱讀將停止。
函數(shù)GoToURL輸入 ‘G’鍵,或電話機(jī)上的‘*’鍵和‘7’鍵重新啟動(dòng)真說明提示使用者輸入任意文件的URL。隨后把含有該URL的請(qǐng)求發(fā)送給向系統(tǒng)提供文件的軟件模塊,導(dǎo)致獲得由該URL定位的文件,并將其送給語(yǔ)法分析器16。當(dāng)對(duì)該頁(yè)面進(jìn)行徹底語(yǔ)法分析時(shí),當(dāng)前的閱讀位置位于新頁(yè)面的起點(diǎn),函數(shù)返回‘真’,導(dǎo)致閱讀該新頁(yè)面。
輸入U(xiǎn)RL的方法將取決于在其中實(shí)現(xiàn)本發(fā)明的系統(tǒng)。個(gè)人計(jì)算機(jī)上,使用者可利用鍵盤輸入U(xiǎn)RL。電話上,使用者可利用為電話機(jī)小鍵盤設(shè)計(jì)的某些形式的字符輸入方法輸入U(xiǎn)RL。
函數(shù)IdentifyLink輸入 ‘I’鍵,或電話機(jī)上的‘*’鍵和‘1’鍵重新啟動(dòng)假說明查找在文件樹中當(dāng)前閱讀位置之前的HTML錨,或“A”標(biāo)記,并從該標(biāo)記的HREF屬性獲得URL。如果不存在這種標(biāo)記,則產(chǎn)生一個(gè)錯(cuò)誤。隨后如同在文本映射直觀推斷章節(jié)中所述那樣,把該URL映射為更易于理解的形式,并發(fā)送給語(yǔ)音合成器,以便讀給使用者。這樣,使用者可聽到他們調(diào)用FollowLink命令將載入文件的URL。閱讀被停止,以便使用者可選擇FollowLink函數(shù)載入該新文件,或者選擇Pause函數(shù)繼續(xù)閱讀當(dāng)前的文件。此時(shí),使用者還可調(diào)用任意其它命令。
函數(shù)ForwardOutline輸入 ‘Ctrl-下箭頭’鍵,或電話機(jī)上的‘*’鍵和‘8’鍵重新啟動(dòng)真說明把文件樹中的當(dāng)前閱讀位置前移到下一標(biāo)題,目錄,表,列表項(xiàng)目或段落標(biāo)記。其作用是使閱讀器14向前跳到該文件內(nèi)的下一顯著界限。寫得較好的文件將利用這些標(biāo)記把該文件的內(nèi)容分成多個(gè)部分,本命令使使用者可容易地在這些部分之間移動(dòng)。
函數(shù)BackwardOutline輸入‘Ctrl-上箭頭’鍵,或電話機(jī)上的‘*’鍵和‘2’鍵重新啟動(dòng)說明把文件樹中的當(dāng)前閱讀位置后移到前一標(biāo)題,目錄,表,列表項(xiàng)目或段落標(biāo)記,隨后再次后移到這些標(biāo)記之前的這些類型標(biāo)記之一。其作用是使閱讀器14向后跳到該文件內(nèi)的前一顯著界限。寫得較好的文件將利用這些標(biāo)記把該文件的內(nèi)容分成多個(gè)部分,本命令使使用者可容易地在這些部分之間移動(dòng)。
函數(shù)SpeedUp輸入 ‘+’鍵,或電話機(jī)上的‘*’鍵和‘3’鍵重新啟動(dòng)真說明使語(yǔ)音合成器的閱讀速度每分鐘大約增加10單詞,從而使與語(yǔ)音合成器同步的整個(gè)閱讀器的閱讀速度每分鐘大約增加10單詞。這允許使用者提高其閱讀速度。
函數(shù)SlowDown輸入‘-’鍵,或電話機(jī)上的‘*’鍵和‘9’鍵重新啟動(dòng)真說明使語(yǔ)音合成器的閱讀速度每分鐘大約降低10單詞,從而使與語(yǔ)音合成器同步的整個(gè)閱讀器的閱讀速度每分鐘大約降低10單詞。這允許使用者降低其閱讀速度。
函數(shù)VolumeUp輸入 ‘Ctrl+’鍵,或電話機(jī)上的‘#’鍵和‘3’鍵重新啟動(dòng)真說明使語(yǔ)音合成器和非語(yǔ)音聲重放的音量均稍微增大。這允許使用者調(diào)節(jié)音量級(jí),以使收聽效果較為舒適。
函數(shù)VolumeDown輸入 ‘Ctrl-’鍵,或電話機(jī)上的‘#’鍵和‘9’鍵重新啟動(dòng)真說明使語(yǔ)音合成器和非語(yǔ)音聲重放的音量均稍微降低。這允許使用者調(diào)節(jié)音量級(jí),以使收聽效果較為舒適。
函數(shù)SearchText輸入 ‘F’鍵,或電話機(jī)上的‘*’鍵和‘5’鍵重新啟動(dòng)真說明提示使用者輸入要在當(dāng)前文件內(nèi)搜索的文本串。從當(dāng)前閱讀位置開始,并向前搜索,搜索該文件樹,尋找該文本串。如果沒有找到文本串,從當(dāng)前閱讀位置開始,并向后搜索,進(jìn)行第二次搜索。如果任一搜索都沒有找到該文本串,則產(chǎn)生一個(gè)錯(cuò)誤。當(dāng)找到該文本串時(shí),把當(dāng)前的閱讀位置剛好設(shè)定在找到的文本之前,以便將從搜索的文本開始閱讀。如果使用者輸入空文本串,則將再次使用作為搜索串輸入的最后文本串。
文本串的輸入方法取決于其中實(shí)現(xiàn)本發(fā)明的系統(tǒng)。個(gè)人計(jì)算機(jī)上,使用者可利用鍵盤輸入文本串。電話機(jī)上,使用者可利用為電話機(jī)小鍵盤設(shè)計(jì)的一些形式的字符輸入方法,輸入文本串。
權(quán)利要求
1.一種通過聽覺表示HTML文件的方法,HTML文件包括文本和至少一個(gè)HTML標(biāo)記,該方法包括下述步驟(a)向在文件中遇到的HTML標(biāo)記分配聲音(214);(b)一遇到與該聲音相聯(lián)系的HTML標(biāo)記,就產(chǎn)生分配的聲音(218);及(c)產(chǎn)生代表在該HTML文件中遇到的文本的語(yǔ)音(220)。
2.按照權(quán)利要求1所述的方法,其中步驟(b)和(c)基本上同時(shí)發(fā)生。
3.按照權(quán)利要求1所述的方法,其中步驟(c)還包括(c-a)產(chǎn)生代表在該HTML文件中遇到的文本的語(yǔ)音;(c-b)在語(yǔ)音中包括代表在該HTML文件中遇到的標(biāo)點(diǎn)符號(hào)的停頓。
4.按照權(quán)利要求1所述的方法,還包括下述步驟(d)接受指示特定HTML標(biāo)記的選擇的輸入;(e)通過聽覺顯示由選擇的標(biāo)記識(shí)別的新HTML文件。
5.按照權(quán)利要求1所述的方法,還包括下述步驟(f)一遇到改變HTML標(biāo)記的聲音,就改變聲音;及(g)一遇到中斷HTML標(biāo)記的聲音,就中斷聲音。
6.按照權(quán)利要求1所述的方法,還包括在步驟(c)之前,利用文本段替換文本構(gòu)成(tcxtual construct)的步驟。
7.按照權(quán)利要求6所述的方法,其中所述替換步驟包括在步驟(c)之前,利用文本段替換電子郵件地址。
8.一種通過聽覺表現(xiàn)HTML文件的系統(tǒng),該系統(tǒng)包括接收HTML文件,并輸出代表接收文件的樹的語(yǔ)法分析器(12);及利用該樹產(chǎn)生代表該HTML文件中所含文本和標(biāo)記的聲音的閱讀器(14)。
9.按照權(quán)利要求8所述的系統(tǒng),其中所述語(yǔ)法分析器產(chǎn)生具有至少一個(gè)節(jié)點(diǎn)的樹,所述至少一個(gè)節(jié)點(diǎn)代表一個(gè)HTML標(biāo)記。
10.按照權(quán)利要求9所述的系統(tǒng),其中使標(biāo)記屬性和標(biāo)記屬性值附屬于各個(gè)節(jié)點(diǎn)上。
11.按照權(quán)利要求8所述的系統(tǒng),其中以該樹的葉節(jié)點(diǎn)的形式表示該HTML文件中所含的文本數(shù)據(jù)。
12.按照權(quán)利要求8所述的系統(tǒng),其中所述閱讀器執(zhí)行樹的深度優(yōu)先遍歷,以產(chǎn)生代表該HTML文件中所述文本和標(biāo)記的聲音。
13.按照權(quán)利要求8所述的系統(tǒng),還包括指示語(yǔ)法分析HTML樹中,所述閱讀器當(dāng)前輸出位置的閱讀指針。
14.按照權(quán)利要求13所述的系統(tǒng),其中閱讀指針的位置可被改變,導(dǎo)致該語(yǔ)法分析的HTML文件的不同位置被輸出。
15.按照權(quán)利要求8所述的系統(tǒng),還包括指示語(yǔ)法分析HTML樹中,將被處理,以便由所述閱讀器輸出的位置的排隊(duì)指針。
16.一種具有嵌入其中,通過聽覺表現(xiàn)HTML文件的計(jì)算機(jī)可讀程序的產(chǎn)品,HTML文件包括文本和至少一個(gè)HTML標(biāo)記,該產(chǎn)品包括(a)向在文件中遇到的HTML標(biāo)記分配獨(dú)特聲音的計(jì)算機(jī)可讀程序(214);(b)一遇到與該聲音相聯(lián)系的HTML標(biāo)記,就產(chǎn)生分配的聲音的計(jì)算機(jī)可讀程序(218);及(c)產(chǎn)生代表在HTML文件中遇到的文本的語(yǔ)音的計(jì)算機(jī)可讀程序(220)。
17.按照權(quán)利要求16所述的產(chǎn)品,還包括(d)接受指示特定HTML標(biāo)記選擇的輸入的計(jì)算機(jī)可讀程序;及(e)通過聽覺顯示由選擇的標(biāo)記識(shí)別的新HTML文件的計(jì)算機(jī)可讀程序。
全文摘要
一種通過聽覺表現(xiàn)HTML文件的方法,包括向在HTML文件中遇到的HTML標(biāo)記和事件分配獨(dú)特的聲音的步驟(214),一遇到這些標(biāo)記或事件,就產(chǎn)生相聯(lián)系的聲音的步驟(218),及以語(yǔ)音形式表現(xiàn)遇到的文本的步驟(220)。同時(shí)或基本同時(shí)產(chǎn)生語(yǔ)音聲和非語(yǔ)音聲。另外公開了相應(yīng)的系統(tǒng)(10)。
文檔編號(hào)G10L21/06GK1279805SQ98810469
公開日2001年1月10日 申請(qǐng)日期1998年10月21日 優(yōu)先權(quán)日1997年10月22日
發(fā)明者埃德蒙·R·邁肯逖, 戴維·E·歐文, 巴里·M·阿龍斯, 馬歇爾·W·克萊門斯 申請(qǐng)人:索尼康公司