專利名稱::Web內(nèi)容糾正方法和裝置,Web內(nèi)容糾正服務(wù)方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及信息處理領(lǐng)域。更具體地說,本發(fā)明涉及用于對Web頁面中的錯誤內(nèi)容進行糾正的方法和裝置、提供Web內(nèi)容糾正服務(wù)的設(shè)備及其方法、和計算機程序產(chǎn)品。
背景技術(shù):
:隨著信息檢索技術(shù)的發(fā)展,像Google、Yahoo這樣的互聯(lián)網(wǎng)搜索服務(wù)提供商使Web用戶獲得了越來越好的搜索體驗。用戶可以通過簡單的幾次點擊操作而迅速地找到他們感興趣的信息。這種便利性使得用戶越來越依賴于從Web獲取信息;同時,這也促進了更多的機構(gòu)在Web上發(fā)布信息來吸引用戶。由于Web已經(jīng)成為人們獲取知識的最主要的來源之一,因此,提高Web上發(fā)布的內(nèi)容的正確性、以避免公眾被錯誤內(nèi)容誤導,成為一個重要的問題。大致來講,在Web上發(fā)布信息(內(nèi)容)的方式有兩種,集中式內(nèi)容發(fā)布和分布式內(nèi)容發(fā)布。在集中式內(nèi)容發(fā)布中,Web網(wǎng)站擁有者對Web內(nèi)容具有完全的控制權(quán),包括Web內(nèi)容的創(chuàng)建、更新和刪除。集中式網(wǎng)站的典型的例子包括搜狐[http:〃www.sohu.com、新浪[http:〃www.sina.com,等等。由于Web網(wǎng)站擁有者的知識水平的局限性,以這種方式發(fā)布的內(nèi)容不可避免地包含錯誤。如果這些錯誤不能被及時地糾正,將會對瀏覽該Web內(nèi)容的用戶產(chǎn)生負面的影響。目前解決該問題的一種方法是,由Web網(wǎng)站擁有者維護一個供用戶報告錯誤內(nèi)容的反饋渠道,根據(jù)用戶的反饋對Web頁面中的錯誤內(nèi)容進行糾正。但是,這種方法由于存在以下缺點而不能令人滿意。首先,從用戶提交反饋到Web網(wǎng)站擁有者處理該反饋信息通常有一5段時間的延遲。在該延遲期間,錯誤內(nèi)容未被糾正因而上述問題仍然存在。其次,是否釆納用戶的反饋意見而糾正Web內(nèi)容取決于Web網(wǎng)站擁有者的判斷。如前面所述,由于Web網(wǎng)站擁有者自身知識水平的限制,其有可能做出錯誤的判斷。再有,如果用戶希望對于不同網(wǎng)站上的錯誤內(nèi)容提出糾正,他/她需要分別向這些網(wǎng)站的擁有者提交反饋。這就要求用戶熟悉各個網(wǎng)站的反饋機制,對于用戶來說非常麻煩,從而影響了用戶對錯誤內(nèi)容提出糾正意見的積極性。更糟糕的是,還有很多Web網(wǎng)站在發(fā)布Web內(nèi)容之后就再也不對其進行更新。對于這些網(wǎng)站,用戶沒有任何途徑對其Web頁面上的錯誤內(nèi)容進行糾正。另一方面,在分布式內(nèi)容發(fā)布中,公眾對于Web內(nèi)容的創(chuàng)建、更新和刪除具有控制權(quán)。分布式網(wǎng)站的典型的例子包括Wikipedia[http:〃en.wikipedia.org。如果某個用戶發(fā)現(xiàn)該網(wǎng)站上的錯誤Web內(nèi)容,他/她可以直接對其進行糾正。但是,目前集中式網(wǎng)站的數(shù)量遠多于分布式網(wǎng)站,而且在很長的時間內(nèi)前者不會被后者取代,因此不可能通過利用后者的錯誤糾正機制來解決前者的問題。另外,由于對Web內(nèi)容進行糾正的用戶自身知識水平的限制,他/她所做出的糾正也有可能是錯誤的。再有,對于分布式網(wǎng)站來說,同樣存在要求用戶熟悉不同網(wǎng)站的錯誤糾正操作、因而給用戶造成不便的問題。
發(fā)明內(nèi)容本發(fā)明的主要目的是針對現(xiàn)有技術(shù)的缺點,提出一種允許用戶以快速、方便、統(tǒng)一的方式針對各種Web網(wǎng)頁上的錯誤內(nèi)容進行糾正的機制。為實現(xiàn)上述目的,根據(jù)本發(fā)明的第一個方面,提出一種用于糾正Web頁面中的錯誤內(nèi)容的方法,包括以下步驟響應(yīng)于用戶請求糾正Web頁面中的錯誤內(nèi)容,確定該錯誤內(nèi)容在該Web頁面中的位置;接收用戶針對所述錯誤內(nèi)容輸入的糾正內(nèi)容;向糾正服務(wù)提供方提交包括所述位置和所述糾正內(nèi)容的糾正信息。根據(jù)本發(fā)明的第二個方面,提出一種用于糾正Web頁面中的錯誤內(nèi)容的裝置,包括定位模塊,用于響應(yīng)于用戶請求糾正Web頁面中的錯誤內(nèi)容,確定該錯誤內(nèi)容在該Web頁面中的位置;接收模塊,用于接收用戶針對所述錯誤內(nèi)容輸入的糾正內(nèi)容;提交模塊,用于向糾正服務(wù)提供方提交包括所述位置和所述糾正內(nèi)容的糾正信息。根據(jù)本發(fā)明的第三個方面,提出一種用于提供Web內(nèi)容糾正服務(wù)的方法,包括以下步驟接收用戶針對一個Web頁面中的錯誤內(nèi)容提交的糾正信息,所述糾正信息包括所述錯誤內(nèi)容的位置以及糾正內(nèi)容;對接收到的所述糾正信息進行存儲;以及響應(yīng)于用戶請求訪問所述Web頁面,檢索所述糾正信息并發(fā)送給所迷用戶。根據(jù)本發(fā)明的第四個方面,提出一種用于提供Web內(nèi)容糾正服務(wù)的設(shè)備,包括接收模塊,用于接收用戶針對一個Web頁面中的錯誤內(nèi)容提交的糾正信息,所述糾正信息包括所述錯誤內(nèi)容的位置以及糾正內(nèi)容;存儲模塊,用于對接收到的所述糾正信息進行存儲;以及檢索才莫塊,用于響應(yīng)于用戶請求訪問所述Web頁面,檢索所述糾正信息并發(fā)送給所述用戶。根據(jù)本發(fā)明的另外的方面,提出一種計算機程序產(chǎn)品,當在計算機上運行時,執(zhí)行上述的Web內(nèi)容糾正方法、或者提供Web內(nèi)容糾正服務(wù)的方法。通過采用本發(fā)明的技術(shù)方案,使得一個普通Web用戶僅僅通過簡單的操作就能夠?qū)Ω鞣NWeb網(wǎng)頁上的錯誤內(nèi)容方便地進行糾正,并且可以使其他用戶幾乎沒有延遲地看到該糾正內(nèi)容。同樣,該Web用戶也可以及時地看到其他用戶對各種Web網(wǎng)頁上的錯誤內(nèi)容的糾正。由此,提供了一種具有實效性、便利性、和客觀性的Web內(nèi)容糾正機制。根據(jù)以下參照附圖對本發(fā)明優(yōu)選實施例的詳細描述,本發(fā)明的上述及其它目的、特征和優(yōu)點將變得更加清楚,附圖中釆用相同或相似的標記來表示相同或相似的部件。圖1示出了一個示例性網(wǎng)絡(luò)環(huán)境,其中可以實現(xiàn)根據(jù)本發(fā)明實施例的Web內(nèi)容糾正方法。圖2示出了根據(jù)本發(fā)明實施例的Web內(nèi)容糾正系統(tǒng)的高層體系結(jié)構(gòu)。圖3示出了一個包含錯誤內(nèi)容的Web頁面的例子。圖4示出了在Web內(nèi)容糾正階段,在用戶側(cè)執(zhí)行的操作的流程。圖5示出了在Web內(nèi)容糾正階段,在糾正服務(wù)提供方一側(cè)執(zhí)行的操作的流程。圖6中示出了運行JavaScript代碼來定位用戶所選擇的錯誤內(nèi)容的結(jié)果。圖7A示出了在糾正后的Web內(nèi)容的呈現(xiàn)階段,在用戶側(cè)執(zhí)行的操作的流程。圖7B示出了根據(jù)另一個實施例,在糾正后的Web內(nèi)容的呈現(xiàn)階段,在用戶側(cè)執(zhí)行的操作的流程。圖8A示出了在糾正后的Web內(nèi)容的呈現(xiàn)階段,在糾正服務(wù)提供方一側(cè)執(zhí)行的操作的流程。圖8B示出了根據(jù)另一種實施例,在糾正后的Web內(nèi)容的呈現(xiàn)階段,在糾正服務(wù)提供方一側(cè)執(zhí)行的操作的流程。圖9示出了向用戶呈現(xiàn)的、包含對錯誤內(nèi)容的糾正內(nèi)容的Web頁面的例子。具體實施例方式圖1示出了可以實現(xiàn)根據(jù)本發(fā)明實施例的Web內(nèi)容糾正方法的一個示例性網(wǎng)絡(luò)環(huán)境。由于利用本發(fā)明的構(gòu)思來對集中式內(nèi)容和分布式內(nèi)容進行糾正的過程實質(zhì)上是相同的,因此,為了使描述更簡單和更具代表性起見,本實施例中結(jié)合集中式網(wǎng)站來描述本發(fā)明。如圖1中所示,分別位于Web內(nèi)容擁有方A、B、C…的多個Web內(nèi)容服務(wù)器103A、103B、103C...(下文中也用"103"來一般地表示)耦合到例如互連網(wǎng)的網(wǎng)絡(luò)102上。多個用戶a、b、c...可以分別通過安裝在客戶端101a、101b、101c...(下文中也用"101"來一般地表示)中的Web瀏覽器軟件105a、105b、105c…(下文中也用"105,,來一般地表示)訪問由所述Web內(nèi)容服務(wù)器103提供的Web內(nèi)容。圖1中還示出了Web內(nèi)容糾正服務(wù)提供方,為了簡明起見,在下文中也將其簡稱為"糾正服務(wù)提供方"。糾正服務(wù)提供方處設(shè)置了Web內(nèi)容糾正服務(wù)器(以下也簡稱為"糾正服務(wù)器"或"服務(wù)器")100,用于向用戶和Web內(nèi)容擁有方提供Web內(nèi)容糾正服務(wù)。在本發(fā)明中,客戶端101可以利用通用計算機實現(xiàn)。該通用計算機(圖中未示出)典型地包括耦合至系統(tǒng)總線的CPU、硬盤驅(qū)動器、用于驅(qū)動顯示器的視頻適配器、和網(wǎng)絡(luò)接口;經(jīng)1/0接口耦合至1/0總線的各種I/0裝置,包括鍵盤、鼠標、只讀光盤存儲器等等;以及耦合至系統(tǒng)總線的系統(tǒng)存儲器,其中存儲了操作系統(tǒng),以及各種應(yīng)用程序,包括能夠利用超文本傳輸協(xié)議(HTTP)從/向網(wǎng)絡(luò)102接收/發(fā)送消息的瀏覽器應(yīng)用程序。類似地,Web內(nèi)容糾正服務(wù)器100也可以利用公知的計算機設(shè)備來實現(xiàn)。特別地,該計算機設(shè)備包括一個用大容量存儲器實現(xiàn)的數(shù)據(jù)庫104。用于實現(xiàn)本發(fā)明的Web內(nèi)容糾正方法/系統(tǒng)的軟件部分,在客戶端101側(cè)實現(xiàn)為Web瀏覽器105中的一個插件(下文中也稱為"糾正插件"或"插件")。也就是說,Web內(nèi)容糾正和糾正后的Web內(nèi)容的呈現(xiàn)均可以在Web瀏覽器105中完成。在使用本發(fā)明之前,用戶僅需要在通常的瀏覽器中安裝一個插件。西此,用戶可以利用熟知的瀏覽器而不需要學習一種新的應(yīng)用程序來使用本發(fā)明的方法。另一方面,在糾正服務(wù)器100側(cè),本發(fā)明的軟件部分實現(xiàn)為Web內(nèi)容糾正服務(wù)程序106。所述瀏覽器105中的插件和所述Web內(nèi)容糾正服務(wù)程序106包含用于實現(xiàn)本發(fā)明的Web內(nèi)容糾正方法中各個步驟的各個功能模塊。圖2示出了根據(jù)本發(fā)明實施例的Web內(nèi)容糾正系統(tǒng)的高層體系結(jié)構(gòu),其中示出了客戶端側(cè)和糾正服務(wù)器側(cè)的主要功能模塊。如圖所示,客戶端101側(cè)包括定位模塊201、糾正模塊202、提交模塊203。定位模塊101用于響應(yīng)于用戶請求糾正Web頁面中的錯誤內(nèi)容,確定該錯誤內(nèi)容在該Web頁面中的位置。糾正模塊202用于接收用戶針對所述錯誤內(nèi)容輸入的糾正內(nèi)容。提交模塊203用于向糾正服務(wù)提供服務(wù)器IOO側(cè)提交包括所述位置和所述糾正內(nèi)容的糾正信息??蛻舳?01側(cè)還包括請求模塊204、呈現(xiàn)模塊205。請求模塊204用于響應(yīng)于用戶請求訪問Web頁面,請求所述糾正服務(wù)提供方檢索與該Web頁面相關(guān)聯(lián)的糾正信息,所述糾正信息包括錯誤內(nèi)容的位置和糾正內(nèi)容。呈現(xiàn)模塊205用于向該用戶呈現(xiàn)所述Web頁面,其中將所述糾正內(nèi)容與所述錯誤內(nèi)容一起顯示。糾正內(nèi)容服務(wù)器IOO側(cè)包括接收模塊206、存儲模塊207、和檢索模塊208。接收模塊206用于接收用戶針對一個Web頁面中的錯誤內(nèi)容提交的糾正信息,所述糾正信息包括所述錯誤內(nèi)容的位置以及糾正內(nèi)容。存儲模塊207用于對接收到的所迷糾正信息進行存儲。檢索模塊208用于響應(yīng)于用戶請求訪問所述Web頁面,檢索所述糾正信息以便發(fā)送給所述用戶。以下結(jié)合具體例子,參照附圖詳細描述根據(jù)本發(fā)明優(yōu)選實施例的方法。下面的描述是基于最流行的開放源代碼Web瀏覽器-MozillaFirefox。但是本領(lǐng)域技術(shù)人員可以理解,通過適當?shù)男薷?,本發(fā)明的方法也可以通過其他Web瀏覽器例如InternetExplorer、Opera等實現(xiàn)。根據(jù)該實施例,用于糾正Web頁面中的錯誤內(nèi)容的方法包括兩個主要階段Web內(nèi)容糾正階段、和糾正后的Web內(nèi)容的呈現(xiàn)階段。Web內(nèi)容糾正階段(第一階段)假設(shè)圖1中的用戶a知道真空中的光速。當該用戶a通過其客戶端101a上的瀏覽器105a訪問如圖3所示的、包含關(guān)于真空中光速的信息的Web頁面httD:〃srf.ilab.org/srfaskduestionanswers.htm時,發(fā)現(xiàn)該頁面中的數(shù)字"3xl08"(圖中用下劃線標出)是錯誤的。用戶a希望糾正該錯誤內(nèi)容,以便避免該錯誤內(nèi)容誤導后來的訪問者。為此,執(zhí)行根據(jù)本實施例的Web內(nèi)容糾正方法的第一階段來完成糾正操作。圖4示出了在該Web內(nèi)容糾正階段,在用戶側(cè)執(zhí)行的操作的流程。首先,用戶a觸發(fā)一個事件,例如點擊瀏覽器中的"糾正插件"工具條按鈕,或者點擊鼠標右鍵來觸發(fā)上下文菜單項。響應(yīng)于該觸發(fā)事件,糾正插件啟動Web內(nèi)容糾正過程(步驟402)。接著,接收用戶a在該Web頁面中選擇的錯誤內(nèi)容(步驟404)。用戶選擇錯誤內(nèi)容例如可以通過在錯誤內(nèi)容的開始處按下鼠標的左鍵、滑動通過整個錯誤內(nèi)容、并且在錯誤內(nèi)容的結(jié)束處松開鼠標按鍵來實現(xiàn)。為了簡化說明,在本實施中以文本作為錯誤內(nèi)容的例子。但本領(lǐng)域技術(shù)人員可以理解,錯誤內(nèi)容也可以是更復雜的對象,例如圖像。對圖像的處理與文本相似。通過利用MozillaFirefox所提供的JavaScript函數(shù)window.getSelection(),用戶a當前選擇的錯誤內(nèi)容"3x108"可以作為一個"Selection(選擇),,對象被返回。與此同時,糾正插件監(jiān)視用戶a的選擇動作,并確定用戶a選擇的錯誤內(nèi)容在該Web頁面內(nèi)的位置(步驟406)。用戶選擇的錯誤內(nèi)容的位置信息在以后的Web頁面呈現(xiàn)中是有用的。該定位操作是通過DOM(DocumentObjectModel,文檔對象模型)檢查來實現(xiàn)的。具體地,下面的LOCATE-SLECTEDTEXT列出了用于獲得所選擇的錯誤內(nèi)容的偽碼。SelectionLOCATE-SELECTED-TEXT(window)1curSel—window.getSelection()2ifcurSel.toString()'length=03then4〃Comment:selectedtextisenclosedinaframe5curSel—NIL6foreachframeinwindow.frames7docurSel—LOCATE-SELECTED-TEXT(frame)8ifcurSel#NIL9thenbreak10returncurSel上述代碼的含義是1、利用window.getSelection()函數(shù),獲取選擇信息。2、如果有選擇的文本,則返回window.getSelection()。3、否則,如果curSel.toStrmg().length為0,則意味著它被包圍在一個框中。4、通過框迭代,以獲取選擇的文本信息。接著,針對上面得到的用戶選擇的錯誤內(nèi)容,獲取其位置信息。在本發(fā)明中,利用包圍所選擇錯誤內(nèi)容的XML單元在DOM樹中的絕對位置作為記錄的位置信息。在下面的DOM-INSPECTION中列出了獲取位置的偽碼。DOM-Inspection(curSel)1range—curSel.getRangeAt(O)2start—range.startOffset3end—range.endOffset4node—range.commonAncestorContainer5ifnode.nodeType=Node.TEXT_NODE6thennode<~node.parentNode7id—NIL8name—NIL9name—index—010tagN—ame—NIL11tagName一index—NIL12ifnode.id;NIL13thenid—node.id14else15nm—node.getAttribute("name")16ifnm^NIL17then18nds—document.getElementsByName(nm)19i—020foreachndinnds21do22ifnd=node23then24name—nm25name—index—i26break27i—i+128else2930313233343536373839tagNm—node.tagNamends—doc圃ent.getElementsByTagName(tagNm)i—0foreachndinndsdoifnd=nodethentagName—tagNmtagName—index—ibreak40return(start,end,id,name,name_index,tagName,tagName—index)上述偽碼的含義為1、檢查所選擇的文本是否屬于TEXT—NODEXML單元如果是,則將其父節(jié)點設(shè)置為包圍節(jié)點單元;否則將當前節(jié)點保持為包圍節(jié)點單元。2、檢查該節(jié)點是否具有id屬性如果是,則返回其id屬性;否則進行到下一個步驟。3、檢查該節(jié)點是否具有名稱屬性如果是,則在document.getElementsByName()中返回當前節(jié)點的序列號;否則進行到下一個步驟。4、獲取該節(jié)點的標簽名稱,并在document.getElementsByTagName()中返回當前節(jié)點的序列號。下面示出了圖3所示的包含錯誤內(nèi)容的Web頁面的簡化HTML源?!秚""。><p"5tt'ong>M。an:"湘atIsthespeeflofUgW</stT(mg:K/p>Cp"nespeeaoflight:is3x1H83aBniiiion)netwssecond,ouer1B6,0訓reilespersecond<ornillionniiesperhour)tMnw'that'sjustanureb(t%whichishardtoqetafeelf,sothinkofitthisway_"ifyouRewinaconirwrcialairhnwfrtmtheearthtothesun,andstartedntityouwrebo,'n,gouWgraduatefr抓highschnn,ahoutthesa附Mfwg訓reachedthesunflutify訓fcraueledatthespeedoflight,yniik*lbeihereinjustouer8ninutesMow《p"sfcr。ng^asks:1oyo"handlenercu,f《7str"ongK/p><piri*pfnarai,p12'>Mo,updonutuseiwrcuryinTestLab-Wpfci,ryisahaz^rdoiissubstance,andwhileithasnunerousindustrialuses,鵬donotutilizeitinanyafourprocessesoractivities*Ingeneralwtrytoreducethed,untsand"ndsof(Jwngerotischeiticsls3',dsubstwicesthatweuseinperforraing。ur恥rk,andwillsubstitutealesslwzardousraaterial,euenifitis則ree叫ensiue,inordertoreducetheriskt。ourslaff,theputilic*andtheenvironrwnt,</p><7td><7tr></column></row><table></htrai;>在本例中,用戶選擇了"3x108"作為錯誤內(nèi)容。圖6中則示出了運行上述JavaScript代碼來定位該選擇的錯誤內(nèi)容的結(jié)果。其中,該選擇的文本所在的XML單元是DOM樹中的第2個標簽名稱為P的單元,選擇的文本在該單元中的起始位置是22,結(jié)束位置為30。后面將該選擇的文本的位置表示為P[l->(22,30)。接著,糾正插件通過例如彈出對話框的方式提示用戶輸入糾正內(nèi)容(步驟408),并且接收用戶輸入的糾正內(nèi)容,在本例中為"3x10A8"(步驟410)。糾正插件將有關(guān)錯誤內(nèi)容的信息(包括用戶選擇的原始錯誤內(nèi)容和所識別的該錯誤內(nèi)容的位置)連同用戶輸入的糾正內(nèi)容暫時存儲在存儲器中(步驟412)。根據(jù)本發(fā)明的優(yōu)選實施例,糾正插件還在步驟412中存儲該錯誤內(nèi)容的上下文簽名。這是因為,當一個用戶對某個Web頁面中的錯誤內(nèi)容進行糾正以后,該Web頁面的擁有者可能已經(jīng)更新了該頁面。在這種情況下,先前提交的糾正信息就成為無效的信息,因而不應(yīng)該再呈現(xiàn)給以后訪問該Web頁面的用戶。上下文簽名則可以用來在Web頁面的呈現(xiàn)(將在下文中說明)期間檢查該糾正消息是否仍然有效。在本實施例中,采用了一種簡單的方法來生14成該上下文簽名記錄錯誤內(nèi)容之前和之后的一定數(shù)目的字符,例如前后各五個字符。因此,在本實施例中,所記錄的上下文簽名為"tis"和"(or,,。由于該Web頁面中有可能存在需要糾正的多處錯誤內(nèi)容,因此,在步驟414,判斷用戶是否例如通過點擊糾正插件工具條中的"提交"按鈕而終止糾正過程。如果判斷結(jié)果為否,則重復上述的步驟404到步驟412中的接收和定位用戶選擇的錯誤內(nèi)容、接收用戶輸入的糾正內(nèi)容、和存儲糾正信息的操作。如果步驟414中的判斷結(jié)果為是,即判斷出用戶點擊了"提交"按鈕來終止糾正過程,糾正插件則將暫時存儲在存儲器中的包括錯誤內(nèi)容、錯誤內(nèi)容的位置、糾正內(nèi)容、上下文簽名的信息連同其他信息一起通過網(wǎng)絡(luò)102提交給Web內(nèi)容糾正服務(wù)提供方。所述其他信息包括該Web頁面的統(tǒng)一資源定位符(URL)。在用戶向所述糾正服務(wù)提供方注冊了的情況下,所述其他信息也可以包括用戶的信息,例如用戶(糾正信息提供者)的姓名等等。圖5示出了在Web內(nèi)容糾正階段,在糾正服務(wù)提供方一側(cè)執(zhí)行的操作的流程。糾正服務(wù)器100接收從客戶端101a(用戶側(cè))提交的糾正信息(步驟502)。然后,將該接收到的糾正信息連同另外的信息、例如時間戳和提交者(客戶端101a)的IP地址作為一條記錄存儲在數(shù)據(jù)庫104中(步驟506)。實際應(yīng)用中有可能出現(xiàn)這樣的情況,即以前已經(jīng)有其他用戶針對該Web頁面提交過糾正信息。因此,數(shù)據(jù)庫中有可能存在關(guān)于該Web頁面的多條糾正記錄。應(yīng)對該情況的一種簡單的方法是,不管數(shù)據(jù)庫中是否已經(jīng)存在關(guān)于該Web頁面的糾正記錄,將當前用戶提交的糾正信息直接作為一條新的記錄插入數(shù)據(jù)庫中而不對其進行處理。在以后向用戶呈現(xiàn)該Web頁面時,將記錄的所有糾正信息向用戶呈現(xiàn)出來。但是,如果不同用戶針對同一錯誤內(nèi)容提交的糾正信息有過多的重復,采用該簡單的方法有可能造成在向用戶呈現(xiàn)Web頁面時呈現(xiàn)出過多的重復糾正信息。為解決該問題,根據(jù)本發(fā)明的優(yōu)選實施例,在接收到當前用戶提交的糾正信息時,糾正服務(wù)器ioo中的一個合并模塊對該糾正信息和數(shù)據(jù)庫中已有的類似記錄進行合并(步驟504)。另一方面,如果根據(jù)合并模塊的算法,不同用戶針對同一錯誤內(nèi)容提交的糾正信息無法合并,則在數(shù)據(jù)庫中存儲當前用戶提交的糾正信息。在這種情況下,根據(jù)本發(fā)明的優(yōu)選實施例,在糾正服務(wù)提供器100中還設(shè)置一個仲裁模塊。該仲裁模塊對數(shù)據(jù)庫中針對同一錯誤內(nèi)容存儲的所有糾正記錄進行排名,使得能夠在Web頁面呈現(xiàn)階段將排名較高的那些糾正信息以突出的方式向用戶呈現(xiàn)。該仲裁模塊可以結(jié)合后面將更詳細說明的投票機制來實現(xiàn)所述排名,其中,被網(wǎng)絡(luò)用戶認可的程度最高、因而被認為是最正確的那些糾正信息被給予較高的排名。下面的表1示出了在步驟506中,針對前述例子在數(shù)據(jù)庫104中存儲的糾正記錄。表l:存儲在數(shù)據(jù)庫中的最終記錄數(shù)據(jù)字段示例注釋唯一糾正ID550e8400-e296-41d4-a716-446655440000原始文本3x108糾正文本3x10A8位置信息Pflp>(22,30)上下文簽名tis(or錯誤文本之前和之后的各五個字符頁面URLhttp:〃srf.jlab.org/srfaskquestionanswers.htm糾正提供者Jerry糾正內(nèi)容提供者的姓名或ID(如果注冊了的話),或者匿名IP跟蹤129.100.65.86糾正者的IP地址(可選)時間戳2008-04-0620:00:00同意票數(shù)100(可選)反對票數(shù)15(可選)中立票數(shù)15(可選)16糾正后的Web內(nèi)容的呈現(xiàn)階段(第二階段)此后,假設(shè)另一個用戶、例如圖1中的用戶b,希望了解真空中的光速。為此,該用戶b通過其客戶端101b上的瀏覽器請求訪問圖3中所示的Web頁面。在此情況下,執(zhí)行根據(jù)本發(fā)明實施例的Web內(nèi)容糾正方法的第二階段,來向該用戶b呈現(xiàn)糾正后的Web內(nèi)容。圖7A示出了在該糾正后的Web內(nèi)容的呈現(xiàn)階段,在用戶側(cè)執(zhí)行的操作的流程。而圖8A則示出了在該階段,在糾正服務(wù)提供方一側(cè)執(zhí)行的操作的流程。首先,如圖7A所示,瀏覽器105b接收用戶b提出的訪問Web頁面的請求(步驟702)。然后,向糾正服務(wù)提供方發(fā)送請求,以請求檢索關(guān)于該Web頁面的糾正信息(704)。當糾正服務(wù)器IOO,如圖8A所示,接收到從客戶端105b發(fā)送的、檢索關(guān)于Web頁面的糾正信息的請求時(步驟802),在數(shù)據(jù)庫104中檢查是否存在關(guān)于該Web頁面的糾正信息(步驟804)。這可以通過將該Web頁面的URL與存儲在數(shù)據(jù)庫104中的記錄中的Web頁面的URL進行比較來完成。當判斷出存在關(guān)于Web頁面的糾正信息時(步驟804中為是),則將包括錯誤內(nèi)容的位置和糾正內(nèi)容的Web頁面糾正信息發(fā)送給用戶方(步驟808)。另一方面,如果判斷出不存在關(guān)于Web頁面的糾正信息(步驟804中為否),則向用戶方返回不存在糾正信息的檢查結(jié)果(步驟806)?;氐綀D7A,在步驟706中,客戶端101b中的瀏覽器根據(jù)從糾正服務(wù)器IOO側(cè)返回的檢查結(jié)果,執(zhí)行進一步的操作。如果返回的檢查結(jié)果是不存在關(guān)于該Web頁面的糾正信息(步驟706為否),則瀏覽器105b不對該Web頁面做任何改變,以常規(guī)的方式向用戶b呈現(xiàn)Web頁面(步驟707)。另一方面,如果步驟706中的結(jié)果為是,即存在關(guān)于該Web頁面的糾正信息并且從服務(wù)提供方一側(cè)接收到該糾正信息,則瀏覽器105b進一步檢查該糾正信息是否有效(步驟708)。這可以通過使用該糾正信息中的上下文簽名來實現(xiàn)。具體地,瀏覽器105b將糾正信息中的上下文簽名"tis"和"(or,,與當前該Web頁面中相同位置的字符相比較。如果二者不一致,則認為該Web頁面已經(jīng)被Web內(nèi)容擁有方修改過,因此該糾正信息已經(jīng)不再有效。另一方面,如果二者一致,則認為該Web頁面尚未被修改過,因此該糾正信息是有效的。如果判斷結(jié)果是糾正信息有效(步驟708中為是),將Web頁面的原始信息和糾正信息一起呈現(xiàn)(步驟710)。優(yōu)選地,對原始信息以例如高亮或者加下劃線的方式進行突出顯示,并將糾正內(nèi)容顯示在錯誤信息的附近,如圖9所示。根據(jù)另外一種實施方式,也可以在糾正服務(wù)提供方一側(cè)檢查糾正信息的有效性。對于這種情況,圖7B和圖8B分別示出了在用戶側(cè)和在糾正服務(wù)提供方一側(cè)執(zhí)行的操作的流程,其中與圖7A和圖8A中相同的部分用相同的附圖標記表示,并且省略其說明。當糾正服務(wù)器100,如圖8B所示,判斷出存在關(guān)于Web頁面的糾正信息時(步驟804中為是),進一步檢查該糾正信息是否仍然有效(步驟805)。如果判斷出糾正信息仍然有效(步驟805中為是),則將包括錯誤內(nèi)容的位置和糾正內(nèi)容的Web頁面糾正信息發(fā)送給用戶方(808)。另一方面,如果判斷出不存在關(guān)于Web頁面的糾正信息(步驟804中為否),或者盡管存在關(guān)于該Web頁面的糾正信息、但該糾正信息已經(jīng)不再有效(步驟805中為否),則向用戶方返回相應(yīng)的檢查結(jié)果(步驟806')?;氐綀D7B,在步驟706,中,客戶端101b中的瀏覽器插件根據(jù)從糾正服務(wù)器IOO側(cè)返回的檢查結(jié)果,執(zhí)行進一步的操作。如果返回的檢查結(jié)果是不存在關(guān)于該Web頁面的糾正信息或者該糾正信息無效(步驟706,為是),則瀏覽器105b不對該Web頁面做任何改變,以常規(guī)的方式向用戶b呈現(xiàn)Web頁面(步驟707)。另一方面,如果步驟706,中的結(jié)果為否,即存在關(guān)于該Web頁面的糾正信息并且該糾正信息是有效的,則瀏覽器105b將Web頁面的原始信息和糾正信息一起呈現(xiàn),其中將糾正內(nèi)容顯示在錯誤信息的附近,如圖9所示。根據(jù)本發(fā)明的一個優(yōu)選實施例,還提供了一種允許瀏覽Web頁面的用戶對于所顯示的糾正內(nèi)容進行反饋的機制。具體地說,在客戶端101b—側(cè),瀏覽器插件可以通過例如彈出對話框的方式提示用戶b對顯示的糾正內(nèi)容"3xlOA8"進行投票(圖7A,7B中的步驟712)。用戶b例如可以選擇"同意"、"反對"、或"中立"。接收到該投票結(jié)果后,客戶端101b可以將該投票結(jié)果提交給糾正服務(wù)提供方(步驟714)。由此,結(jié)束這個階段的操作。如圖8A、8B所示,在糾正服務(wù)提供方一側(cè),糾正服務(wù)器100接收用戶b的該投票結(jié)果,并將其與先前已經(jīng)接收到的投票結(jié)果相累加并存儲在數(shù)據(jù)庫中(步驟810)?;谠摲答伣Y(jié)果,糾正服務(wù)器100中的仲裁模塊可以對于不同用戶針對同一錯誤內(nèi)容提交的多個糾正內(nèi)容進行排名。例如,可以根據(jù)同意票數(shù)占總票數(shù)的比例來對多個糾正內(nèi)容進行排名,并將排名的結(jié)果連同糾正信息返回給客戶端101b。在客戶端101b向用戶呈現(xiàn)針對同一錯誤內(nèi)容的多個糾正內(nèi)容時,例如可以將排名較高的一定數(shù)目的糾正內(nèi)容顯示出來,其中將排名最高的糾正內(nèi)容顯示在最突出的位置,并且也可以將關(guān)于糾正內(nèi)容的投票結(jié)果的信息與該糾正內(nèi)容與一起呈現(xiàn)給用戶。另外,糾正服務(wù)器100還可以設(shè)定一個閾值,當針對某個糾正內(nèi)容的反對票數(shù)(或者反對票數(shù)占總票數(shù)的比例,等等)超過該閾值時,仲裁模塊可以從數(shù)據(jù)庫中刪除該糾正內(nèi)容。至此,已經(jīng)描述了Web內(nèi)容糾正和糾正后的Web內(nèi)容呈現(xiàn)的典型過程。可以看出,任何一個普通Web用戶只需要在其瀏覽器中安裝一個插件即可以實施本發(fā)明。該用戶可以很方便地在Web頁面上直接標出錯誤內(nèi)容,而不需要使用圖形或文本描述語言來指出錯誤在什么位置,另外也可以很方便地描述糾正內(nèi)容并提交糾正信息。這樣,該用戶能夠以統(tǒng)一的方式針對各種Web頁面上的錯誤內(nèi)容很方便地進行糾正。一旦提交了該糾正信息,其他用戶在瀏覽該Web頁面時,可以立即看到糾正內(nèi)容而幾乎沒有延遲。當然,該Web用戶也可以及時地看到其他用戶對各種Web頁面上的錯誤內(nèi)容的糾正。由此,不需要對現(xiàn)有的集中式網(wǎng)站的結(jié)構(gòu)做出任何改變,就可以得到比僅依賴于網(wǎng)站擁有者的自身糾正更快捷并且更具有客觀性的Web內(nèi)容糾正結(jié)果。根據(jù)本發(fā)明的一種優(yōu)選實施方式,糾正服務(wù)提供方還可以向Web內(nèi)容擁有方提供錯誤通知服務(wù)。例如,當接收到用戶針對某個Web頁面提交的糾正信息后,糾正服務(wù)器100可以向相應(yīng)的Web內(nèi)容擁有方通知該糾正信息。糾正服務(wù)器100還可以對Web網(wǎng)頁上的錯誤數(shù)目進行統(tǒng)計,并將該統(tǒng)計結(jié)果作為對Web頁面質(zhì)量/重要性進行評分的依據(jù)。例如,如果錯誤數(shù)目越多,則可以認為該Web頁面的重要性越低,反之亦然。另一方面,為了鼓勵用戶糾正Web網(wǎng)頁中的錯誤內(nèi)容,糾正服務(wù)提供方可以向提供了最有價值的糾正信息(例如獲得了最多的同意票數(shù)的糾正信息)的用戶提供獎勵。由此,在Web內(nèi)容糾正服務(wù)提供方、用戶方、和Web內(nèi)容擁有方之間形成了良性循環(huán),使得Web上的錯誤內(nèi)容得到及時糾正。上面已經(jīng)參照優(yōu)選實施例對本發(fā)明進行了詳細描述。應(yīng)該指出,對優(yōu)選實施例的詳細描述僅僅是示例性的,而不應(yīng)被理解為限制性的。例如,在上面描述的實施例中,為不失一般性,Web內(nèi)容糾正服務(wù)器100與Web內(nèi)容服務(wù)器103被示出為分別位于Web內(nèi)容糾正服務(wù)提供方和Web內(nèi)容擁有方。但是本領(lǐng)域技術(shù)人員可以理解,本發(fā)明不限于此。Web內(nèi)容糾正服務(wù)提供方本身也可以是一個Web內(nèi)容擁有方。又如,盡管上文中描述的實施例是通過互連網(wǎng)來實現(xiàn)的,但本發(fā)明的構(gòu)思同樣可以應(yīng)用于企業(yè)內(nèi)部網(wǎng)(intranet)。另外,盡管上面是結(jié)合集中式Web網(wǎng)站來描述實施例,但本發(fā)明同樣也可以應(yīng)用于分布式Web網(wǎng)站。事實上,用戶可以以統(tǒng)一的方式針對各種網(wǎng)站上的錯誤內(nèi)容提出糾正。此外,本發(fā)明可以采取能夠從計算機可讀介質(zhì)訪問的計算機程序產(chǎn)品的形式。該計算機可讀介質(zhì)提供程序代碼以結(jié)合計算機或者任何指令執(zhí)行系統(tǒng)來使用,以便執(zhí)行本發(fā)明的客戶端側(cè)或者糾正服務(wù)器側(cè)的操作。所述計算機可讀介質(zhì)可以是電子的、磁性的、光學的、電磁20的、紅外的或者半導體器件或裝置。計算機可讀介質(zhì)的具體例子包括半導體或者固態(tài)存儲器、磁帶、可移動的計算機軟盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。光盤的當前示例包括光盤只讀存儲器(CD-ROM)、讀/寫光盤(CD-R/W)和數(shù)字多用盤(DVD),等等。在不脫離本發(fā)明的精神和范圍的情況下,本領(lǐng)域的技術(shù)人員可以進行各種修改和替換。本申請的保護范圍應(yīng)該由后附的權(quán)利要求書來確定。權(quán)利要求1、一種用于糾正Web頁面中的錯誤內(nèi)容的方法,包括以下步驟響應(yīng)于用戶請求糾正Web頁面中的錯誤內(nèi)容,確定該錯誤內(nèi)容在該Web頁面中的位置;接收用戶針對所述錯誤內(nèi)容輸入的糾正內(nèi)容;向糾正服務(wù)提供方提交包括所述位置和所述糾正內(nèi)容的糾正信息。2、如權(quán)利要求l所述的方法,其中所述的確定錯誤內(nèi)容在Web頁面中的位置的步驟是通過文檔對象模型檢查實現(xiàn)的。3、如權(quán)利要求l所述的方法,還包括以下步驟響應(yīng)于用戶請求訪問Web頁面,請求所述糾正服務(wù)提供方檢索與該Web頁面相關(guān)聯(lián)的糾正信息,所述糾正信息包括錯誤內(nèi)容的位置和糾正內(nèi)容;以及向該用戶呈現(xiàn)所述Web頁面,其中將所述糾正內(nèi)容與所述錯誤內(nèi)容一起顯示。4、如權(quán)利要求3所述的方法,還包括在向用戶呈現(xiàn)所述Web頁面之后,向所述糾正服務(wù)提供方提交該用戶對所述糾正內(nèi)容的反饋信息的步驟。5、如權(quán)利要求l所述的方法,還包括響應(yīng)于從所述糾正服務(wù)提供方檢索到糾正信息,判斷所述糾正信息是否有效的步驟。6、如權(quán)利要求5所述的方法,其中向糾正服務(wù)提供方提交的糾正信息還包括錯誤內(nèi)容的上下文簽名,并且借助于所述上下文簽名來判斷所述糾正信息是否有效。7、一種用于糾正Web頁面中的錯誤內(nèi)容的裝置,包括定位模塊,用于響應(yīng)于用戶請求糾正Web頁面中的錯誤內(nèi)容,>確定該錯誤內(nèi)容在該Web頁面中的位置;糾正模塊,用于接收用戶針對所述錯誤內(nèi)容輸入的糾正內(nèi)容;提交模塊,用于向糾正服務(wù)提供方提交包括所述位置和所述糾正內(nèi)容的糾正信息。8、如權(quán)利要求7所述的裝置,其中所述定位模塊通過文檔對象模型檢查來確定錯誤內(nèi)容在Web頁面中的位置。9、如權(quán)利要求7所述的裝置,還包括請求模塊,用于響應(yīng)于用戶請求訪問Web頁面,請求所述糾正服務(wù)提供方檢索與該Web頁面相關(guān)聯(lián)的糾正信息,所述糾正信息包括錯誤內(nèi)容的位置和糾正內(nèi)容;以及呈現(xiàn)模塊,用于向該用戶呈現(xiàn)所述Web頁面,其中將所述糾正內(nèi)容與所述錯誤內(nèi)容一起顯示。10、如權(quán)利要求9所述的裝置,還包括反饋模塊,用于在向用戶呈現(xiàn)所述Web頁面之后,向所述糾正服務(wù)提供方提交該用戶對所述糾正內(nèi)容的反饋信息。11、如權(quán)利要求7所述的裝置,還包括判斷模塊,用于響應(yīng)于從所述糾正服務(wù)提供方檢索到糾正信息,判斷所述糾正信息是否有效。12、如權(quán)利要求11所述的裝置,其中所述提交模塊向糾正服務(wù)提供方提交的糾正信息還包括錯誤內(nèi)容的上下文簽名,并且所述判斷模塊借助于所述上下文簽名來判斷所述糾正信息是否有效。13、一種用于提供Web內(nèi)容糾正服務(wù)的方法,包括以下步驟接收用戶針對一個Web頁面中的錯誤內(nèi)容提交的糾正信息,所述糾正信息包括所述錯誤內(nèi)容的位置以及糾正內(nèi)容;對接收到的所述糾正信息進行存儲;以及響應(yīng)于用戶請求訪問所述Web頁面,檢索所述糾正信息并發(fā)送給所述用戶。14、如權(quán)利要求13所述的方法,還包括在對接收到的所述糾正信息進行存儲之前,對所述糾正信息與先前存儲的已有信息進行合并處理。15、如權(quán)利要求13所述的方法,還包括接收所述用戶對所述糾正內(nèi)容的反饋信息的步驟。16、如權(quán)利要求15所述的方法,還包括根據(jù)所述反饋信息,對所述糾正內(nèi)容進行排名的步驟。17、如權(quán)利要求13所述的方法,還包括響應(yīng)于檢索到糾正信息,判斷所述糾正信息是否有效的步驟。18、如權(quán)利要求17所述的方法,其中所述糾正信息還包括錯誤內(nèi)容的上下文簽名,并且借助于所述上下文簽名來判斷所述糾正信息是否有效。19、一種用于提供Web內(nèi)容糾正服務(wù)的設(shè)備,包括接收模塊,用于接收用戶針對一個Web頁面中的錯誤內(nèi)容提交的糾正信息,所述糾正信息包括所述錯誤內(nèi)容的位置以及糾正內(nèi)容;存儲模塊,用于對接收到的所述糾正信息進行存儲;以及檢索模塊,用于響應(yīng)于用戶請求訪問所述Web頁面,檢索所述糾正信息以便發(fā)送給所述用戶。20、如權(quán)利要求19所述的設(shè)備,還包括合并模塊,用于在對接收到的所述糾正信息進行存儲之前,對所述糾正信息與先前存儲的已有信息進行合并處1理。21、如權(quán)利要求19所述的設(shè)備,還包括反饋接收模塊,用于接收所迷用戶對所述糾正內(nèi)容的反饋信息。22、如權(quán)利要求21所述的設(shè)備,還包括仲裁模塊,用于根據(jù)所述反饋信息,對所述糾正內(nèi)容進行排名。23、如權(quán)利要求19所述的設(shè)備,還包括判斷模塊,用于響應(yīng)于檢索到糾正信息,判斷所述糾正信息是否有效。24、如權(quán)利要求23所述的設(shè)備,其中所述糾正信息還包括錯誤內(nèi)容的上下文簽名,并且所述判斷模塊借助于所述上下文簽名來判斷所述糾正信息是否有效。全文摘要本發(fā)明提出一種用于糾正Web頁面中的錯誤內(nèi)容的方法及裝置。該方法包括步驟響應(yīng)于用戶請求糾正Web頁面中的錯誤內(nèi)容,確定該錯誤內(nèi)容在該Web頁面中的位置;接收用戶針對錯誤內(nèi)容輸入的糾正內(nèi)容;向糾正服務(wù)提供方提交包括所述位置和所述糾正內(nèi)容的糾正信息。本發(fā)明還提出一種提供Web內(nèi)容糾正服務(wù)的方法和設(shè)備。該方法包括步驟接收用戶針對一個Web頁面中的錯誤內(nèi)容提交的糾正信息,所述糾正信息包括所述錯誤內(nèi)容的位置以及糾正內(nèi)容;對接收到的所述糾正信息進行存儲;以及響應(yīng)于用戶請求訪問所述Web頁面,檢索所述糾正信息并發(fā)送給所述用戶。本發(fā)明允許用戶以快速、方便、統(tǒng)一的方式針對各種Web網(wǎng)頁上的錯誤內(nèi)容進行糾正。文檔編號G06F17/30GK101620610SQ20081012744公開日2010年1月6日申請日期2008年6月30日優(yōu)先權(quán)日2008年6月30日發(fā)明者戚馨文,娟李,眉楊,舒芳蕊申請人:國際商業(yè)機器公司