在諸如因特網(wǎng)或其它網(wǎng)絡(luò)的聯(lián)網(wǎng)環(huán)境中,第一方內(nèi)容提供商可以提供用于在資源(例如網(wǎng)頁(yè)、文檔、應(yīng)用和/或其它資源)上公開(kāi)呈現(xiàn)的信息。第一方內(nèi)容可以包括由第一方內(nèi)容提供商經(jīng)由例如用于通過(guò)因特網(wǎng)在客戶(hù)端設(shè)備上呈現(xiàn)的資源服務(wù)器提供的文本、視頻和/或音頻信息。第一方內(nèi)容可以是由客戶(hù)端設(shè)備請(qǐng)求的網(wǎng)頁(yè)或在客戶(hù)端設(shè)備上運(yùn)行的獨(dú)立應(yīng)用(例如,視頻游戲、聊天程序等)。還可以由第三方內(nèi)容提供商提供附加的第三方內(nèi)容,用于在客戶(hù)端設(shè)備上與由第一方內(nèi)容提供商提供的第一方內(nèi)容一起呈現(xiàn)。例如,第三方內(nèi)容可以是結(jié)合所請(qǐng)求的資源或應(yīng)用(例如,游戲內(nèi)的廣告)出現(xiàn)的公共服務(wù)公告或廣告,諸如網(wǎng)頁(yè)(例如,來(lái)自搜索引擎的搜索結(jié)果網(wǎng)頁(yè)、包括在線文章的網(wǎng)頁(yè)、社交網(wǎng)絡(luò)服務(wù)的網(wǎng)頁(yè)等)。因此,查看資源的人可以訪問(wèn)作為資源主題的第一方內(nèi)容以及可能或可能不與資源主題相關(guān)的第三方內(nèi)容。
技術(shù)實(shí)現(xiàn)要素:
本文描述的實(shí)施方式涉及使用給定的URL和寬度和高度約束自動(dòng)生成任意大小的內(nèi)容條目(content item)的系統(tǒng)和方法。系統(tǒng)可以接收內(nèi)容條目模板,該內(nèi)容條目模板具有用于創(chuàng)建內(nèi)容條目的元素集合和用于該元素集合的內(nèi)容條目數(shù)據(jù)??梢詾槊總€(gè)元素生成占位符,并且可以為每個(gè)元素生成空間分配。一旦為元素分配了空間,則基于每個(gè)元素的空間分配來(lái)確定是否存在沖突,并且如果不存在沖突,則可以使用內(nèi)容條目數(shù)據(jù)和所確定的空間分配來(lái)生成內(nèi)容條目。在一些情況下,系統(tǒng)將使用真實(shí)瀏覽器離線地預(yù)呈現(xiàn)或生成布局信息如空間分配,使得為任意大小的內(nèi)容條目模板選擇公共內(nèi)容條目大小,并且將存儲(chǔ)布局信息。當(dāng)請(qǐng)求該公共內(nèi)容條目大小的內(nèi)容條目時(shí),系統(tǒng)獲取待渲染的內(nèi)容條目的布局信息和資源。系統(tǒng)將HTML文件中的布局信息和資產(chǎn)信息連同JavaScript文件一起發(fā)送到客戶(hù)端設(shè)備,以在客戶(hù)端設(shè)備組裝內(nèi)容條目。JavaScript文件檢測(cè)布局信息是否包括在HTML文件中,并且如果是,則在客戶(hù)端設(shè)備處在呈現(xiàn)內(nèi)容條目時(shí)使用預(yù)先生成的布局信息。如果沒(méi)有布局信息包括在具有資產(chǎn)信息的HTML文件中,則JavaScript文件將確定客戶(hù)端設(shè)備處的布局。
還可以實(shí)現(xiàn)內(nèi)容條目成分(component)來(lái)定義一種或多種類(lèi)型的內(nèi)容條目模板元素,并且可以包括每種類(lèi)型的元素的屬性,諸如名稱(chēng)、類(lèi)型、優(yōu)先級(jí)和權(quán)重。內(nèi)容條目模板然后可以包括若干布局變體,其中每個(gè)布局變體具有調(diào)用定義的內(nèi)容條目成分的一個(gè)或多個(gè)元素,并且每個(gè)元素定義它如何與其它元素相關(guān)以及如何在元素內(nèi)部布置成分。布局變體可以組合成一個(gè)配置文件,然后配置文件和布局引擎JavaScript可以鏈接到同一個(gè)HTML文件。
此外,內(nèi)容條目生成系統(tǒng)可以利用智能資產(chǎn)選擇來(lái)選擇資產(chǎn),諸如內(nèi)容條目模板的元素集合的內(nèi)容條目數(shù)據(jù),和/或基于客戶(hù)端設(shè)備的場(chǎng)境數(shù)據(jù)(例如,如果移動(dòng)客戶(hù)端設(shè)備具有較差或低帶寬連接(例如2G對(duì)比WiFi的更好或更高帶寬連接)或使用具有與內(nèi)容條目時(shí)隙大小類(lèi)似寬高比的圖像資產(chǎn),則從最終呈現(xiàn)的廣告中消除圖像)來(lái)從待生成的內(nèi)容條目中減除元素。因此,內(nèi)容條目生成系統(tǒng)可以基于場(chǎng)境數(shù)據(jù)為客戶(hù)端設(shè)備生成定制的任意大小的內(nèi)容條目。
一個(gè)實(shí)現(xiàn)涉及一種用于自動(dòng)生成內(nèi)容條目的系統(tǒng)。該系統(tǒng)包括一個(gè)或多個(gè)處理器和一個(gè)或多個(gè)存儲(chǔ)設(shè)備,其包括使得一個(gè)或多個(gè)處理器執(zhí)行若干操作的指令。這些操作包括接收模板,該模板具有用于創(chuàng)建內(nèi)容條目的元素集合和用于該元素集合的內(nèi)容條目數(shù)據(jù),所述元素集合的內(nèi)容條目數(shù)據(jù)包括根據(jù)從客戶(hù)端設(shè)備接收的場(chǎng)境數(shù)據(jù)而選擇的資產(chǎn)。所述操作還包括為模板的元素集合中的每個(gè)元素生成占位符,并且至少部分地基于為元素集合中的每個(gè)元素生成的占位符來(lái)確定該元素集合中每個(gè)元素的空間分配。操作還包括基于為元素集合的每個(gè)元素確定的空間分配來(lái)確定是否存在沖突,并且響應(yīng)于確定不存在沖突,使用元素集合的內(nèi)容條目數(shù)據(jù)和確定的空間分配來(lái)生成內(nèi)容條目。
另一實(shí)現(xiàn)涉及一種用于生成內(nèi)容條目模板的布局?jǐn)?shù)據(jù)的方法。該方法包括接收著陸頁(yè)URL、第一尺度值和第二尺度值。所述方法還包括:接收具有用于創(chuàng)建內(nèi)容條目的元素集合的內(nèi)容條目模板,以及至少部分地基于所述第一尺度值和第二尺度值為該內(nèi)容條目模板的元素集合中的每個(gè)元素生成占位符。該方法還包括至少部分地基于為該元素集合的每個(gè)元素生成的占位符來(lái)確定該元素集合中的每個(gè)元素的空間分配,并且基于為該元素集合的每個(gè)元素確定的空間分配來(lái)確定是否存在沖突。該方法還包括基于所確定的空間分配并響應(yīng)于確定不存在沖突,在數(shù)據(jù)庫(kù)中存儲(chǔ)用于該內(nèi)容條目模板的與第一尺度值和第二尺度值相關(guān)聯(lián)的布局?jǐn)?shù)據(jù)。
另一實(shí)施方式涉及存儲(chǔ)指令的計(jì)算機(jī)可讀存儲(chǔ)設(shè)備,當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得一個(gè)或多個(gè)處理器執(zhí)行若干操作。操作可以包括從客戶(hù)端設(shè)備接收對(duì)內(nèi)容條目的請(qǐng)求,該請(qǐng)求包括內(nèi)容條目槽的第一尺度值、內(nèi)容條目槽的第二尺度值以及場(chǎng)境數(shù)據(jù)。操作還包括響應(yīng)于來(lái)自客戶(hù)端設(shè)備的請(qǐng)求確定待提供的內(nèi)容條目的著陸頁(yè)URL,以及基于著陸頁(yè)URL和接收的場(chǎng)境數(shù)據(jù)確定內(nèi)容條目的內(nèi)容條目數(shù)據(jù)。操作還包括輸出內(nèi)容條目模板、確定的內(nèi)容條目數(shù)據(jù)以及腳本,使得由客戶(hù)端設(shè)備根據(jù)所述內(nèi)容條目模板和確定的內(nèi)容條目數(shù)據(jù)生成內(nèi)容條目。
附圖說(shuō)明
在附圖和以下描述中闡述了一個(gè)或多個(gè)實(shí)現(xiàn)的細(xì)節(jié)。從說(shuō)明書(shū)、附圖和權(quán)利要求書(shū),本公開(kāi)的其它特征、方面和優(yōu)點(diǎn)將變得顯而易見(jiàn),其中:
圖1是描述經(jīng)由計(jì)算機(jī)網(wǎng)絡(luò)提供信息的系統(tǒng)的實(shí)現(xiàn)的概圖;
圖2是更詳細(xì)地描述內(nèi)容條目生成系統(tǒng)的實(shí)現(xiàn)并具有布局生成器和評(píng)分器的框圖;
圖3是更詳細(xì)地描繪圖2的布局生成器的實(shí)現(xiàn)的框圖,其具有布局解析器、錨定管理器、一個(gè)或多個(gè)元素渲染器、空間管理器和沖突消解器;
圖4是描繪用于圖2的布局生成器和評(píng)分器的處理流程的實(shí)現(xiàn)的框過(guò)程圖。
圖5是描繪圖3-圖4的布局剖析器的實(shí)現(xiàn)的框圖;
圖6是描繪圖3-圖4的錨定管理器的實(shí)現(xiàn)的框圖;
圖7是描繪圖3-圖4的一個(gè)或多個(gè)元素渲染器的實(shí)現(xiàn)的框圖;
圖8是描繪具有生長(zhǎng)模塊的圖3-圖4的空間管理器的實(shí)現(xiàn)的框圖;
圖9A是描繪具有用于圖像元素的初始最小空間分配和用于文本元素的初始最小空間分配的內(nèi)容條目的實(shí)現(xiàn)的圖;
圖9B是圖9A的內(nèi)容條目的圖,其具有用于圖像元素的最終空間分配以及在應(yīng)用了空間管理器8的生長(zhǎng)模塊的生長(zhǎng)函數(shù)之后的文本元素的最終空間分配;
圖10是描繪圖3-圖4的沖突消解器的實(shí)現(xiàn)的框圖;
圖11是描繪用于為圖2的內(nèi)容條目生成系統(tǒng)創(chuàng)建內(nèi)容條目模板的配置文件的過(guò)程的實(shí)現(xiàn)的過(guò)程圖;
圖12是描繪用于生成內(nèi)容條目的過(guò)程的實(shí)現(xiàn)的過(guò)程圖;
圖13是描繪用于向客戶(hù)端設(shè)備提供腳本以使客戶(hù)端設(shè)備生成內(nèi)容條目的顯示數(shù)據(jù)的過(guò)程的實(shí)現(xiàn)的過(guò)程圖;
圖14是描繪與著陸頁(yè)URL相關(guān)聯(lián)的著陸頁(yè)資源的實(shí)現(xiàn)的框圖;
圖14A是描繪基于場(chǎng)境數(shù)據(jù)生成的第一生成內(nèi)容條目的實(shí)現(xiàn)的框圖;
圖14B是描繪基于其它場(chǎng)境數(shù)據(jù)生成的第二生成內(nèi)容條目的實(shí)現(xiàn)的框圖。
圖15A是描繪具有第三任意尺度并使用第二內(nèi)容條目模板的生成的內(nèi)容條目的實(shí)現(xiàn)的框圖。
圖15B是描述具有第四任意尺度并使用第二內(nèi)容條目模板的另一個(gè)生成的內(nèi)容條目的實(shí)現(xiàn)的框圖;和
圖16是描繪可用于實(shí)現(xiàn)本文所描述和示出的系統(tǒng)和方法的各種元件的計(jì)算機(jī)系統(tǒng)的一般架構(gòu)的框圖。
應(yīng)理解,為了說(shuō)明的目的,一些或所有附圖是示意性表示。提供附圖是為了說(shuō)明一個(gè)或多個(gè)實(shí)施例的目的,明確理解它們將不用于限制權(quán)利要求的范圍或含義。
具體實(shí)施方式
下面是與用于在計(jì)算機(jī)網(wǎng)絡(luò)上提供信息的方法、裝置和系統(tǒng)相關(guān)的各種概念和實(shí)現(xiàn)的更詳細(xì)的描述。以上介紹的以及下面更詳細(xì)討論的各種概念可以以多種方式中的任一種來(lái)實(shí)現(xiàn),因?yàn)樗枋龅母拍畈幌抻谌魏翁囟ǖ膶?shí)現(xiàn)方式。提供具體實(shí)現(xiàn)和應(yīng)用主要是為了說(shuō)明的目的。
計(jì)算設(shè)備(例如,客戶(hù)端設(shè)備)可以查看資源,諸如網(wǎng)頁(yè)、文檔、應(yīng)用等。在一些實(shí)現(xiàn)中,計(jì)算設(shè)備可以經(jīng)由因特網(wǎng)通過(guò)與服務(wù)器通信來(lái)訪問(wèn)資源,例如對(duì)應(yīng)于該資源的網(wǎng)頁(yè)服務(wù)器。資源包括作為來(lái)自第一方內(nèi)容提供商的資源的主題的第一方內(nèi)容,并且還可以包括附加的第三方提供的內(nèi)容,諸如廣告或其它內(nèi)容。在一個(gè)實(shí)現(xiàn)中,響應(yīng)于接收到訪問(wèn)網(wǎng)頁(yè)的請(qǐng)求,網(wǎng)頁(yè)服務(wù)器和/或客戶(hù)端設(shè)備可以與數(shù)據(jù)處理系統(tǒng)(例如內(nèi)容條目選擇系統(tǒng))通信,以請(qǐng)求內(nèi)容條目與所請(qǐng)求的網(wǎng)頁(yè)一起呈現(xiàn),諸如通過(guò)執(zhí)行資源的代碼來(lái)請(qǐng)求要與資源一起呈現(xiàn)第三方內(nèi)容條目。內(nèi)容條目選擇系統(tǒng)可以選擇第三方內(nèi)容條目并且提供數(shù)據(jù)以實(shí)現(xiàn)在客戶(hù)端設(shè)備的顯示器上呈現(xiàn)具有所請(qǐng)求的網(wǎng)頁(yè)的內(nèi)容條目。在一些情況下,使用與搜索查詢(xún)響應(yīng)相關(guān)聯(lián)的資源來(lái)選擇和服務(wù)內(nèi)容條目。例如,搜索引擎可以在搜索結(jié)果網(wǎng)頁(yè)上返回搜索結(jié)果,并且可以在搜索結(jié)果網(wǎng)頁(yè)的一個(gè)或多個(gè)內(nèi)容條目槽(slot)中包括與搜索查詢(xún)相關(guān)的第三方內(nèi)容條目。
計(jì)算設(shè)備(例如,客戶(hù)端設(shè)備)還可以用于查看或執(zhí)行應(yīng)用,諸如移動(dòng)應(yīng)用。應(yīng)用可以包括作為來(lái)自第一方內(nèi)容提供商的應(yīng)用的主題的第一方內(nèi)容,并且還可以包括附加的第三方提供的內(nèi)容,諸如廣告或其它內(nèi)容。在一個(gè)實(shí)現(xiàn)中,響應(yīng)于應(yīng)用的使用,資源服務(wù)器和/或客戶(hù)端設(shè)備可以與諸如內(nèi)容條目選擇系統(tǒng)的數(shù)據(jù)處理系統(tǒng)通信,以請(qǐng)求向應(yīng)用和/或其它的用戶(hù)界面呈現(xiàn)內(nèi)容條目。內(nèi)容條目選擇系統(tǒng)可以選擇第三方內(nèi)容條目并且提供數(shù)據(jù)以實(shí)現(xiàn)在客戶(hù)端設(shè)備的顯示器上與應(yīng)用一起呈現(xiàn)內(nèi)容條目。
在一些情況下,設(shè)備標(biāo)識(shí)符可以與客戶(hù)端設(shè)備相關(guān)聯(lián)。設(shè)備標(biāo)識(shí)符可以是與客戶(hù)端設(shè)備相關(guān)聯(lián)的隨機(jī)化數(shù)字,以在對(duì)資源和/或內(nèi)容條目的后續(xù)請(qǐng)求期間標(biāo)識(shí)設(shè)備。在一些情況下,設(shè)備標(biāo)識(shí)符可以被配置為存儲(chǔ)和/或使得客戶(hù)端設(shè)備將與客戶(hù)端設(shè)備相關(guān)的信息發(fā)送到內(nèi)容條目選擇系統(tǒng)和/或資產(chǎn)服務(wù)器(例如,傳感器數(shù)據(jù)的值,網(wǎng)絡(luò)瀏覽器類(lèi)型、操作系統(tǒng)、歷史資產(chǎn)請(qǐng)求、歷史內(nèi)容條目請(qǐng)求等)。
在這里討論的系統(tǒng)收集關(guān)于用戶(hù)的個(gè)人信息或者可以利用個(gè)人信息的情況下,可以向用戶(hù)提供機(jī)會(huì)來(lái)控制程序或特性是否收集用戶(hù)信息(如關(guān)于用戶(hù)的社交網(wǎng)絡(luò)、社交動(dòng)作或活動(dòng)、專(zhuān)業(yè)、用戶(hù)的偏好或用戶(hù)的當(dāng)前位置),或者控制是否和/或如何從內(nèi)容服務(wù)器接收可能與用戶(hù)更相關(guān)的內(nèi)容。另外,可以在存儲(chǔ)或使用某些數(shù)據(jù)之前以一種或多種方式來(lái)處理這些數(shù)據(jù),使得去除個(gè)人可標(biāo)識(shí)信息。例如,可以對(duì)用戶(hù)的身份進(jìn)行處理,使得不能確定該用戶(hù)的個(gè)人可識(shí)別信息,或者可以在獲得位置信息(例如城市、郵政編碼或州級(jí)別)的地方,泛化用戶(hù)的地理位置,使得不能確定用戶(hù)的具體位置。因此,用戶(hù)可以控制內(nèi)容服務(wù)器如何收集和使用關(guān)于該用戶(hù)的信息。
第三方內(nèi)容提供商在經(jīng)由因特網(wǎng)或其它網(wǎng)絡(luò)提供第三方內(nèi)容條目以使得與所請(qǐng)求的資源一起呈現(xiàn)時(shí)可以利用內(nèi)容條目管理服務(wù)來(lái)控制或以其它方式影響第三方內(nèi)容條目的選擇和服務(wù)。例如,第三方內(nèi)容提供商可以指定在選擇第三方內(nèi)容條目時(shí)使用的選擇標(biāo)準(zhǔn)(諸如關(guān)鍵字)和對(duì)應(yīng)的出價(jià)值。出價(jià)值可以由競(jìng)投中的內(nèi)容條目選擇系統(tǒng)利用以選擇和提供內(nèi)容條目以使得與資源一起呈現(xiàn)。例如,如果用戶(hù)與提供商的內(nèi)容條目交互,則第三方內(nèi)容提供商可以在競(jìng)投中設(shè)置與支付一定數(shù)量的錢(qián)的協(xié)議相對(duì)應(yīng)的出價(jià)(例如,如果用戶(hù)點(diǎn)擊了提供商的內(nèi)容條目則提供商同意支付$3)。在其它情況下,如果選擇和服務(wù)內(nèi)容條目,則第三方內(nèi)容提供商可以在競(jìng)投中設(shè)置與支付一定金額的協(xié)議相對(duì)應(yīng)的出價(jià)(例如,每次內(nèi)容條目被選擇和服務(wù)提供商同意支付$0.005,或者提供商同意在每次選擇或點(diǎn)擊內(nèi)容條目時(shí)支付$0.05)。在一些情況下,內(nèi)容條目選擇系統(tǒng)使用內(nèi)容條目交互數(shù)據(jù)來(lái)確定第三方內(nèi)容提供商的內(nèi)容條目的性能。例如,用戶(hù)可能更傾向于點(diǎn)擊某些網(wǎng)頁(yè)上的第三方內(nèi)容條目而不是其它網(wǎng)頁(yè)。因此,投放第三方內(nèi)容條目的競(jìng)投出價(jià)對(duì)于高執(zhí)行網(wǎng)頁(yè)的網(wǎng)頁(yè)類(lèi)別和/或其它標(biāo)準(zhǔn)可以更高,而對(duì)于低執(zhí)行網(wǎng)頁(yè)的網(wǎng)頁(yè)類(lèi)別和/或其它標(biāo)準(zhǔn)可以更低。
在一些情況下,可以確定第三方內(nèi)容條目的一個(gè)或多個(gè)效能指標(biāo),并且可以經(jīng)由用于內(nèi)容條目管理帳戶(hù)的用戶(hù)界面向第三方內(nèi)容提供商提供這樣的效能指標(biāo)的指示。例如,效能指標(biāo)可以包括每次閃現(xiàn)的費(fèi)用(CPI)或每千次閃現(xiàn)的費(fèi)用(CPM),其中例如,每當(dāng)內(nèi)容條目被選擇用于與資源一起呈現(xiàn)時(shí),可以對(duì)閃現(xiàn)進(jìn)行計(jì)數(shù)。在一些情況下,效能指標(biāo)可以包括點(diǎn)擊率(CTR),其被定義為內(nèi)容條目上的點(diǎn)擊次數(shù)除以閃現(xiàn)數(shù)。還有其它效能指標(biāo),例如每動(dòng)作費(fèi)用(CPA)(其中動(dòng)作可以是點(diǎn)擊內(nèi)容條目或其中的鏈接、產(chǎn)品的購(gòu)買(mǎi)、內(nèi)容條目的推薦等),轉(zhuǎn)換率(CVR)、每次點(diǎn)擊費(fèi)用(CPC)(當(dāng)點(diǎn)擊內(nèi)容條目時(shí)計(jì)數(shù))、每次銷(xiāo)售費(fèi)用(CPS)、每次引導(dǎo)費(fèi)用(CPL)、有效CPM(eCPM)和/或其它效能指標(biāo)可以被使用。
在一些情況下,網(wǎng)頁(yè)或其它資源(如應(yīng)用)包括一個(gè)或多個(gè)內(nèi)容條目槽,其中可以顯示所選擇和提供的第三方內(nèi)容條目。定義用于網(wǎng)頁(yè)或其它資產(chǎn)的內(nèi)容條目槽的代碼(例如,HTML等)可以包括用于從內(nèi)容條目選擇系統(tǒng)請(qǐng)求第三方內(nèi)容條目與網(wǎng)頁(yè)一起呈現(xiàn)的指令。在一些實(shí)現(xiàn)中,代碼可以包括具有可以包括一個(gè)或多個(gè)參數(shù)(例如,/page/contentitem?devid=abc123&devnfo=A34r0)的內(nèi)容條目請(qǐng)求URL的圖像請(qǐng)求。在一些實(shí)現(xiàn)中,這樣的參數(shù)可以是諸如“devid=abc123”和/或“devnfo=A34r0”的編碼字符串。
內(nèi)容條目選擇系統(tǒng)對(duì)要與資源服務(wù)一起提供的第三方內(nèi)容條目的選擇可以基于幾個(gè)影響因素,諸如預(yù)測(cè)的點(diǎn)進(jìn)率(pCTR)、預(yù)測(cè)的轉(zhuǎn)換率(pCVR)、與內(nèi)容條目相關(guān)聯(lián)的出價(jià)等。這些影響因素可以用于生成諸如得分的值,針對(duì)其內(nèi)容條目選擇系統(tǒng)可以通過(guò)競(jìng)投來(lái)與其它內(nèi)容條目的其它得分進(jìn)行比較。
在針對(duì)資源(如網(wǎng)頁(yè))的內(nèi)容條目槽的競(jìng)投期間,第三方內(nèi)容提供商可對(duì)各種第三方內(nèi)容條目利用若干不同類(lèi)型的出價(jià)數(shù)值。例如,競(jìng)投可以包括基于用戶(hù)是否點(diǎn)擊第三方內(nèi)容條目,用戶(hù)是否基于第三方內(nèi)容條目的呈現(xiàn)執(zhí)行特定動(dòng)作,是否選擇第三方內(nèi)容條目和服務(wù)的出價(jià),和/或其它類(lèi)型的出價(jià)。例如,基于第三方內(nèi)容條目是否被選擇和提供的出價(jià)可以是較低的出價(jià)(如$0.005),而基于用戶(hù)是否執(zhí)行特定動(dòng)作的出價(jià)可以是較高的出價(jià)(如$5)。在一些情況下,可以調(diào)整出價(jià)以考慮與出價(jià)類(lèi)型相關(guān)聯(lián)的概率和/或由于其它原因而調(diào)整。例如,用戶(hù)執(zhí)行特定動(dòng)作的概率可以低,例如0.2%,而所選擇和服務(wù)的第三方內(nèi)容條目的概率可以是100%(例如,如果它在競(jìng)投期間被選擇,則選擇和服務(wù)的內(nèi)容條目將出現(xiàn),因此出價(jià)未被調(diào)整)。因此,可以基于出價(jià)值和概率或另一修改值來(lái)產(chǎn)生諸如得分或歸一化值的值以用于競(jìng)投?;诘谌絻?nèi)容條目是否被選擇和提供的出價(jià)的值或得分可以是$0.005*1.00=0.005,并且基于用戶(hù)是否執(zhí)行特定動(dòng)作的出價(jià)的值或得分可以是$5*0.002=0.01。為了最大化所產(chǎn)生的收入,內(nèi)容條目選擇系統(tǒng)可以選擇來(lái)自競(jìng)投的具有最高值的第三方內(nèi)容條目。在一些實(shí)現(xiàn)中,內(nèi)容條目選擇系統(tǒng)可以基于用戶(hù)是否由于與該出價(jià)相關(guān)聯(lián)的較高的值或得分而執(zhí)行特定動(dòng)作來(lái)選擇與出價(jià)相關(guān)聯(lián)的內(nèi)容條目。
一旦內(nèi)容條目選擇系統(tǒng)選擇了第三方內(nèi)容條目,就可以使用網(wǎng)絡(luò)將實(shí)現(xiàn)在客戶(hù)端設(shè)備的顯示器上呈現(xiàn)第三方內(nèi)容條目的數(shù)據(jù)提供給客戶(hù)端設(shè)備。
在一些情況下,使用著陸頁(yè)(landing page)統(tǒng)一資源定位符(URL)、第一尺度值和第二尺度值來(lái)自動(dòng)生成第三方內(nèi)容提供商的內(nèi)容條目可能是有用的。也就是說(shuō),給定第三方內(nèi)容提供商的著陸頁(yè)和內(nèi)容條目槽的尺度(dimension),如廣告的內(nèi)容條目,可以使用該尺度和根據(jù)著陸頁(yè)網(wǎng)址確定的內(nèi)容條目數(shù)據(jù)基于一個(gè)或多個(gè)內(nèi)容條目模板來(lái)自動(dòng)生成。在一些實(shí)現(xiàn)中,內(nèi)容條目可以是按需生成的,如響應(yīng)于對(duì)內(nèi)容條目的請(qǐng)求,或者可以生成內(nèi)容條目,并且內(nèi)容條目的數(shù)據(jù)可存儲(chǔ)在數(shù)據(jù)庫(kù)中或在用戶(hù)界面中呈現(xiàn)給生成內(nèi)容條目的第三方內(nèi)容提供商。
可以從客戶(hù)端設(shè)備、第一方內(nèi)容提供商或第三方內(nèi)容提供商接收著陸頁(yè)URL、第一尺度值和/或第二尺度值。在一些實(shí)例中,響應(yīng)于客戶(hù)端設(shè)備請(qǐng)求具有內(nèi)容條目槽的第一方內(nèi)容提供商的資源,可以從客戶(hù)端設(shè)備接收第一尺度值和第二尺度值。客戶(hù)端設(shè)備可以接收第一方資產(chǎn)的數(shù)據(jù),并向內(nèi)容條目選擇系統(tǒng)發(fā)送對(duì)包括第一尺度值和第二尺度值的內(nèi)容條目(例如廣告)的請(qǐng)求。內(nèi)容條目選擇系統(tǒng)可以選擇第三方內(nèi)容提供商,并且內(nèi)容條目生成系統(tǒng)或內(nèi)容條目生成腳本可以用于使用第三方內(nèi)容提供商的著陸頁(yè)URL、第一尺度值以及第二尺度值生成內(nèi)容條目。在一些實(shí)現(xiàn)中,內(nèi)容條目選擇系統(tǒng)可以輸出布局?jǐn)?shù)據(jù)以使用第一方內(nèi)容提供商的資源來(lái)顯示預(yù)生成的內(nèi)容條目。在其它實(shí)現(xiàn)中,內(nèi)容條目選擇系統(tǒng)可以輸出具有用于腳本的內(nèi)容條目數(shù)據(jù)的內(nèi)容條目生成腳本,以在客戶(hù)端設(shè)備處生成內(nèi)容條目。在一些實(shí)例中,響應(yīng)于客戶(hù)端設(shè)備請(qǐng)求具有內(nèi)容條目槽的第一方內(nèi)容提供商的資源,可以從第一方內(nèi)容提供商接收第一尺度值和第二尺度值。
在一些實(shí)現(xiàn)中,可以從獨(dú)立于請(qǐng)求資源的客戶(hù)端設(shè)備的第三方內(nèi)容提供商接收著陸頁(yè)URL、第一尺度值和第二尺度值。例如,第三方內(nèi)容提供商可以利用內(nèi)容條目生成系統(tǒng)或內(nèi)容條目生成腳本來(lái)生成不同大小的內(nèi)容條目以存儲(chǔ)在數(shù)據(jù)庫(kù)中,并用于響應(yīng)來(lái)自客戶(hù)端設(shè)備或第一方內(nèi)容提供商的后續(xù)內(nèi)容條目請(qǐng)求。
從著陸頁(yè)URL確定的內(nèi)容條目數(shù)據(jù)可以使用資源渲染器來(lái)確定,資源渲染器能夠解釋與著陸頁(yè)URL相關(guān)聯(lián)的資源并創(chuàng)建其視覺(jué)表示(如圖像、顯示等)。例如,著陸頁(yè)URL的資源可以包括標(biāo)記的內(nèi)容(如HTML、XML、圖像URL等)以及格式化信息(如CSS、XSL等)。資源渲染器可以根據(jù)萬(wàn)維網(wǎng)聯(lián)盟(W3C)標(biāo)準(zhǔn)來(lái)下載標(biāo)記的內(nèi)容和格式化信息,并呈現(xiàn)與著陸頁(yè)URL相關(guān)聯(lián)的資源。因此,資源渲染器可以創(chuàng)建與著陸頁(yè)URL相關(guān)聯(lián)的資源的“快照?qǐng)D像”和/或構(gòu)造表示與著陸頁(yè)URL相關(guān)聯(lián)的資源的各種成分的文檔對(duì)象模型(DOM)樹(shù)。
在一些實(shí)現(xiàn)中,內(nèi)容條目數(shù)據(jù)可以包括圖像數(shù)據(jù)、顏色數(shù)據(jù)、文本數(shù)據(jù)、徽標(biāo)(logo)數(shù)據(jù)等。在一些實(shí)現(xiàn)中,圖像模塊可以解析與著陸頁(yè)URL相關(guān)聯(lián)的資源的DOM樹(shù),并提取圖像數(shù)據(jù)的圖像和圖像元數(shù)據(jù)(例如,圖像URL、顯示位置、顯示尺寸、替代文本等)。在一些情況下,顏色模塊可以使用與著陸頁(yè)URL相關(guān)聯(lián)的資源的快照?qǐng)D像和/或DOM樹(shù)來(lái)選擇要生成的內(nèi)容條目的顏色數(shù)據(jù)的顏色。文本模塊可以被配置為諸如通過(guò)使用與著陸頁(yè)URL相關(guān)聯(lián)的資源的DOM樹(shù)或快照?qǐng)D像來(lái)自動(dòng)生成內(nèi)容條目的文本數(shù)據(jù)(如文本描述、標(biāo)題等)以創(chuàng)建顯示在與著陸頁(yè)URL相關(guān)聯(lián)的資源上的文字摘要。在另外的實(shí)例中,可以使用與著陸頁(yè)URL相關(guān)聯(lián)的資源的DOM樹(shù)或快照?qǐng)D像來(lái)提取一個(gè)或多個(gè)徽標(biāo)的徽標(biāo)數(shù)據(jù)?;諛?biāo)圖像可以是商標(biāo)、企業(yè)徽標(biāo)、產(chǎn)品徽標(biāo)、公司徽標(biāo)或與特定產(chǎn)品、服務(wù)或組織相關(guān)聯(lián)的任何其它圖像。在一些實(shí)現(xiàn)中,可以從數(shù)據(jù)庫(kù)檢索內(nèi)容條目數(shù)據(jù),諸如圖像數(shù)據(jù)、顏色數(shù)據(jù)、文本數(shù)據(jù)、徽標(biāo)數(shù)據(jù)等,或者從用于所生成的內(nèi)容條目的第三方內(nèi)容提供商接收內(nèi)容條目數(shù)據(jù)。
在一些實(shí)現(xiàn)中,連同著陸頁(yè)URL、第一尺度值和/或第二尺度值,還可以一起包括場(chǎng)境數(shù)據(jù)。場(chǎng)境數(shù)據(jù)(contextual data)可以包括設(shè)備類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接速度數(shù)據(jù)等。如這里將更詳細(xì)地描述的,場(chǎng)境數(shù)據(jù)可以用于為所生成的內(nèi)容條目選擇內(nèi)容條目數(shù)據(jù),以定制基于所述場(chǎng)境數(shù)據(jù)生成的內(nèi)容條目。例如,場(chǎng)境數(shù)據(jù)可以包括指示W(wǎng)iFi網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。要生成的內(nèi)容條目的選擇的內(nèi)容數(shù)據(jù)可以包括更大的圖像、高清晰度視頻等。在另一種情況下,場(chǎng)境數(shù)據(jù)可以包括指示2G網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。要生成的內(nèi)容條目的選擇的內(nèi)容數(shù)據(jù)可以替代地包括較小的圖像、低清晰度視頻等,或者可以從內(nèi)容條目中省略一個(gè)或多個(gè)元素以減少內(nèi)容條目的數(shù)據(jù)量。在其它實(shí)例中,內(nèi)容條目數(shù)據(jù)的選擇也可以基于第一尺度值和第二尺度值。例如,可以選擇具有與要生成的內(nèi)容條目相似的縱橫比的內(nèi)容條目的圖像。
一個(gè)或多個(gè)內(nèi)容條目模板可以存儲(chǔ)在內(nèi)容條目模板數(shù)據(jù)庫(kù)中,并且響應(yīng)于來(lái)自?xún)?nèi)容條目生成系統(tǒng)的對(duì)一個(gè)或多個(gè)內(nèi)容條目模板的請(qǐng)求而被檢索。內(nèi)容條目模板定義待由內(nèi)容條目模板生成的內(nèi)容條目的元素和元素的布置。在一些實(shí)現(xiàn)中,一個(gè)或多個(gè)內(nèi)容條目模板可以是定義內(nèi)容條目模板的一個(gè)或多個(gè)元素的有約束XML配置文件。每個(gè)內(nèi)容條目模板可以定義該內(nèi)容條目模板的一個(gè)或多個(gè)內(nèi)容條目成分。每個(gè)內(nèi)容條目成分可以包括屬性,諸如名稱(chēng)、類(lèi)型、優(yōu)先級(jí)和權(quán)重。名稱(chēng)屬性可以是設(shè)計(jì)者定義的名稱(chēng)以引用內(nèi)容條目成分。類(lèi)型屬性可以是與默認(rèn)優(yōu)先級(jí)和/或默認(rèn)權(quán)重相關(guān)聯(lián)的設(shè)計(jì)者選擇的內(nèi)容條目類(lèi)型,諸如標(biāo)題、徽標(biāo)、產(chǎn)品、描述、按鈕等。優(yōu)先級(jí)屬性可以是設(shè)計(jì)者定義的值,其可以用于對(duì)內(nèi)容條目模板的元素的移除進(jìn)行優(yōu)先級(jí)排序。在一些實(shí)現(xiàn)中,值越低,優(yōu)先級(jí)越高,其中對(duì)于不能從生成的內(nèi)容條目去除的元素具有0值。權(quán)重屬性可以是設(shè)計(jì)者定義的值,其可以用于在附加空間可用時(shí)對(duì)內(nèi)容條目的元素的增長(zhǎng)進(jìn)行優(yōu)先級(jí)排序。
內(nèi)容條目模板還包括用于內(nèi)容條目的一個(gè)或多個(gè)模板,其利用內(nèi)容條目成分中的一個(gè)或多個(gè)來(lái)定義內(nèi)容條目的布局的一個(gè)或多個(gè)元素。在一些實(shí)例中,內(nèi)容條目模板可以包括一個(gè)或多個(gè)用于元素的渲染框。每個(gè)渲染框和/或元素包括內(nèi)容條目成分中的一個(gè)或多個(gè),以及定義元素相對(duì)于另一元素和/或相對(duì)于內(nèi)容條目本身的布置的至少兩個(gè)錨(例如,按鈕元素可以由相對(duì)于內(nèi)容條目的右邊緣的右錨和相對(duì)于內(nèi)容條目的底部邊緣的底錨定義)。
錨(anchor)用于描述內(nèi)容條目模板的兩個(gè)元素之間或者元素與待由內(nèi)容條目模板生成的內(nèi)容條目之間的關(guān)系。錨利用引用(例如,另一元素)或至內(nèi)容條目本身的距離(例如,諸如像素(px)的固定距離或諸如10%的相對(duì)距離)來(lái)定義。
使用一個(gè)或多個(gè)內(nèi)容條目模板和內(nèi)容條目數(shù)據(jù),針對(duì)給定的尺度集合,例如第一尺度值和第二尺度值,內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以對(duì)每個(gè)內(nèi)容條目模板生成并評(píng)分內(nèi)容條目,以最大化空間利用。內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以解析內(nèi)容條目模板的布局配置文件,以確定內(nèi)容條目模板的一個(gè)或多個(gè)元素的布局元素?cái)?shù)據(jù)。內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本然后可以基于布局元素?cái)?shù)據(jù)的錨、要生成的內(nèi)容條目的尺度值以及內(nèi)容條目數(shù)據(jù)來(lái)確定一個(gè)或多個(gè)元素的每個(gè)元素的占位符。內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以使用一個(gè)或多個(gè)元素渲染器基于占位符來(lái)確定一個(gè)或多個(gè)元素的每個(gè)元素的初始空間分配。
內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以基于初始空間分配來(lái)確定一個(gè)或多個(gè)元素的每個(gè)元素的最終空間分配,并且通過(guò)使用生長(zhǎng)函數(shù)來(lái)修改任何元素,擴(kuò)展初始空間分配以最大化內(nèi)容條目的空間利用。然后,內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以基于所確定的最終空間分配來(lái)確定對(duì)于內(nèi)容條目是否存在任何沖突。這樣的沖突可以包括元素的重疊、超出內(nèi)容條目的尺度的元素的溢出、不足的余量、文本截?cái)嗪?或其它內(nèi)容條目模板專(zhuān)有的沖突。
如果存在沖突,則內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以從內(nèi)容條目模板的一個(gè)或多個(gè)元素中減除元素,并且返回,基于縮減的元素集合來(lái)確定占位符。從一個(gè)或多個(gè)元素中去除的元素可以基于元素的優(yōu)先級(jí)值(例如,去除指示該元素對(duì)內(nèi)容條目模板的重要性較低具有最高優(yōu)先級(jí)值的元素)。在一些實(shí)現(xiàn)中,確定要去除的元素可以基于布局元素?cái)?shù)據(jù)被指示為所需元素。在這樣的實(shí)例中,內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以選擇新的內(nèi)容條目模板,解析模板,并且繼續(xù)使用新的模板生成內(nèi)容條目。在其它實(shí)例中,內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以停止內(nèi)容條目的生成并輸出錯(cuò)誤(例如,如果沒(méi)有其它內(nèi)容條目模板可以被使用)。
如果不存在沖突,則在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以確定內(nèi)容條目的得分(score)。內(nèi)容條目的得分可以基于所生成的內(nèi)容條目中的元素的數(shù)量與內(nèi)容條目模板的元素?cái)?shù)量、未使用像素的數(shù)量、每垂直或水平線的未使用像素的平均數(shù)量、一個(gè)或多個(gè)元素的權(quán)重等的比較。在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)和/或內(nèi)容條目生成腳本可以生成若干內(nèi)容條目,每個(gè)內(nèi)容條目具有相關(guān)聯(lián)的得分,并且內(nèi)容條目生成系統(tǒng)可以對(duì)得分進(jìn)行排序,選擇生成的最高得分的內(nèi)容條目。在一些實(shí)現(xiàn)中,顯示所選擇的生成的最高得分內(nèi)容條目的數(shù)據(jù)可以從內(nèi)容條目生成系統(tǒng)輸出到客戶(hù)端設(shè)備,以使用第一方內(nèi)容提供商資源顯示生成的內(nèi)容條目。在其它實(shí)現(xiàn)中,顯示內(nèi)容條目的數(shù)據(jù)可以由內(nèi)容條目生成腳本利用以在客戶(hù)端設(shè)備的顯示器上顯示生成的內(nèi)容條目。
在其它實(shí)現(xiàn)中,用于顯示生成的最高得分內(nèi)容條目的布局?jǐn)?shù)據(jù)和/或數(shù)據(jù)可以存儲(chǔ)在數(shù)據(jù)庫(kù)中以在稍后時(shí)間輸出。例如,對(duì)于每個(gè)內(nèi)容條目模板,可以針對(duì)內(nèi)容條目槽尺度預(yù)定集合的生成布局?jǐn)?shù)據(jù),諸如300像素(px)×250px、336px×280px、970px×100px、160px×600px、320px×50px等。針對(duì)內(nèi)容條目槽尺度的預(yù)定集合中的每一個(gè),布局?jǐn)?shù)據(jù)可以使用在諸如服務(wù)器的計(jì)算設(shè)備上執(zhí)行的真實(shí)網(wǎng)絡(luò)瀏覽器生成。因此,當(dāng)接收到具有與內(nèi)容條目槽尺度的預(yù)定集合中的一個(gè)相對(duì)應(yīng)的內(nèi)容條目槽尺度的請(qǐng)求時(shí),則可以檢索內(nèi)容條目槽尺度的預(yù)定集合中的一個(gè)的布局?jǐn)?shù)據(jù)并將其發(fā)送到客戶(hù)端設(shè)備,其中內(nèi)容條目的內(nèi)容條目數(shù)據(jù)將被顯示在客戶(hù)端設(shè)備的顯示器上。在客戶(hù)端設(shè)備上執(zhí)行的腳本然后可以使用布局?jǐn)?shù)據(jù)和內(nèi)容條目數(shù)據(jù)生成顯示數(shù)據(jù),用于在客戶(hù)端設(shè)備上顯示內(nèi)容條目。
在另外的實(shí)施方式中,所生成的內(nèi)容條目的全部或子集及其相關(guān)聯(lián)的得分可以存儲(chǔ)在數(shù)據(jù)庫(kù)中。在其它實(shí)現(xiàn)中,可以將所生成的內(nèi)容條目的全部或子集和相關(guān)聯(lián)的得分的數(shù)據(jù)輸出到第三方內(nèi)容提供商的計(jì)算設(shè)備的用戶(hù)界面以供選擇。例如,內(nèi)容條目生成系統(tǒng)可以被集成到用于第三方內(nèi)容提供商的內(nèi)容條目生成用戶(hù)界面中。響應(yīng)于輸入來(lái)自第三方內(nèi)容提供商的所需內(nèi)容條目的著陸頁(yè)URL和尺度,內(nèi)容條目生成系統(tǒng)可以輸出生成的內(nèi)容條目和相關(guān)聯(lián)的得分的集合,使得第三方內(nèi)容條目提供者可以選擇所生成的內(nèi)容條目,即使所生成的內(nèi)容條目不具有最高得分。
盡管前面提供了使用任意尺度自動(dòng)生成內(nèi)容條目的概述,但是下面提供了關(guān)于各種實(shí)現(xiàn)的更多細(xì)節(jié)。
圖1是用于經(jīng)由諸如網(wǎng)絡(luò)106的至少一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)提供信息的系統(tǒng)100的實(shí)現(xiàn)的框圖。網(wǎng)絡(luò)106可以包括局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、電話網(wǎng)(諸如公共交換電話網(wǎng)(PSTN))、無(wú)線鏈路、內(nèi)聯(lián)網(wǎng)、因特網(wǎng)或其組合。系統(tǒng)100還可以包括至少一個(gè)數(shù)據(jù)處理系統(tǒng),例如內(nèi)容條目選擇系統(tǒng)108。內(nèi)容條目選擇系統(tǒng)108可以包括至少一個(gè)邏輯設(shè)備,諸如具有數(shù)據(jù)處理器的計(jì)算設(shè)備,以經(jīng)由網(wǎng)絡(luò)106,例如與資源服務(wù)器104、客戶(hù)端設(shè)備110和/或第三方內(nèi)容服務(wù)器102進(jìn)行通信。內(nèi)容條目選擇系統(tǒng)108可以包括一個(gè)或多個(gè)數(shù)據(jù)處理器,例如內(nèi)容放置處理器,其被配置為執(zhí)行存儲(chǔ)在存儲(chǔ)器設(shè)備中的指令以執(zhí)行本文描述的一個(gè)或多個(gè)操作。換句話說(shuō),內(nèi)容條目選擇系統(tǒng)108的一個(gè)或多個(gè)數(shù)據(jù)處理器和存儲(chǔ)器設(shè)備可以形成處理模塊。處理器可以包括微處理器、專(zhuān)用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)等或其組合。存儲(chǔ)器可以包括但不限于能夠向處理器提供程序指令的電子、光學(xué)、磁性或任何其它存儲(chǔ)或傳輸設(shè)備。存儲(chǔ)器可以包括軟盤(pán)、光盤(pán)只讀存儲(chǔ)器(CD-ROM)、數(shù)字通用盤(pán)(DVD)、磁盤(pán)、存儲(chǔ)器芯片、只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)可擦除可編程只讀存儲(chǔ)器(EEPROM)、可擦除可編程只讀存儲(chǔ)器(EPROM)、閃存、光學(xué)介質(zhì)或者處理器可以從其讀取指令的任何其它合適的存儲(chǔ)器。指令可以包括來(lái)自任何合適的計(jì)算機(jī)編程語(yǔ)言的代碼,例如但不限于C、C++、C#、Java、JavaScript、Perl、HTML、XML、Python和Visual Basic。處理器可以處理指令和輸出數(shù)據(jù)以實(shí)現(xiàn)向資源服務(wù)器104和/或客戶(hù)端設(shè)備110呈現(xiàn)一個(gè)或多個(gè)內(nèi)容條目。除了處理電路之外,內(nèi)容條目選擇系統(tǒng)108可以包括一個(gè)或多個(gè)被配置為存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)庫(kù)。內(nèi)容條目選擇系統(tǒng)108還可以包括被配置為經(jīng)由網(wǎng)絡(luò)106接收數(shù)據(jù)并且將數(shù)據(jù)從內(nèi)容條目選擇系統(tǒng)108提供到網(wǎng)絡(luò)106上的任何其它設(shè)備的接口。內(nèi)容條目選擇系統(tǒng)108可以包括服務(wù)器,例如廣告服務(wù)器或其它。
內(nèi)容條目選擇系統(tǒng)108可以包括內(nèi)容條目生成系統(tǒng)120。在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以是與內(nèi)容條目選擇系統(tǒng)108相同的系統(tǒng)的一部分,或者內(nèi)容條目生成系統(tǒng)120可以與內(nèi)容條目選擇系統(tǒng)108分離。例如,內(nèi)容條目生成系統(tǒng)120可以是內(nèi)容條目選擇系統(tǒng)108的子系統(tǒng),或者內(nèi)容條目生成系統(tǒng)120可以是與內(nèi)容條目選擇系統(tǒng)108通信的分離的系統(tǒng)。在內(nèi)容條目生成系統(tǒng)120與內(nèi)容條目選擇系統(tǒng)108分離的實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以按照與本文描述的內(nèi)容條目選擇系統(tǒng)108類(lèi)似的方式構(gòu)建。
在另外的實(shí)施方式中,可以省略?xún)?nèi)容條目選擇系統(tǒng)108,并且內(nèi)容條目生成系統(tǒng)120可以連接到網(wǎng)絡(luò)106以與第三方內(nèi)容服務(wù)器102、資源服務(wù)器104和/或客戶(hù)端設(shè)備110通信。
客戶(hù)端設(shè)備110可以包括一個(gè)或多個(gè)設(shè)備,諸如計(jì)算機(jī)、膝上型計(jì)算機(jī)、桌面、智能電話、平板電腦、個(gè)人數(shù)字助理、用于電視機(jī)的機(jī)頂盒、智能電視或經(jīng)由網(wǎng)絡(luò)106與其它設(shè)備通信的服務(wù)器設(shè)備。設(shè)備可以是包括數(shù)據(jù)處理器和存儲(chǔ)器的任何形式的電子設(shè)備。存儲(chǔ)器可以存儲(chǔ)機(jī)器指令,當(dāng)由處理器執(zhí)行時(shí),使得處理器執(zhí)行這里描述的操作中的一個(gè)或多個(gè)。存儲(chǔ)器還可以存儲(chǔ)數(shù)據(jù)以實(shí)現(xiàn)在計(jì)算設(shè)備上呈現(xiàn)一個(gè)或多個(gè)資源、內(nèi)容條目等。處理器可以包括微處理器、專(zhuān)用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)等或其組合。存儲(chǔ)器可以包括但不限于能夠向處理器提供程序指令的電子、光學(xué)、磁性或任何其它存儲(chǔ)或傳輸設(shè)備。存儲(chǔ)器可以包括軟盤(pán)、光盤(pán)只讀存儲(chǔ)器(CD-ROM)、數(shù)字通用盤(pán)(DVD)、磁盤(pán)、存儲(chǔ)器芯片、只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)可擦除可編程只讀存儲(chǔ)器(EEPROM)、可擦除可編程只讀存儲(chǔ)器(EPROM)、閃存、光學(xué)介質(zhì)或者處理器可以從其讀取指令的任何其它合適的存儲(chǔ)器。指令可以包括來(lái)自任何合適的計(jì)算機(jī)編程語(yǔ)言的代碼,例如但不限于,C、C++、C#、HTML、和Visual和XML。
客戶(hù)端設(shè)備110可以執(zhí)行軟件應(yīng)用(例如,網(wǎng)絡(luò)瀏覽器或其它應(yīng)用)以通過(guò)網(wǎng)絡(luò)106從其它計(jì)算設(shè)備檢索內(nèi)容。這樣的應(yīng)用可以被配置為從資源服務(wù)器104檢索第一方內(nèi)容。在一些情況下,在客戶(hù)端設(shè)備110上運(yùn)行的應(yīng)用本身可以是第一方內(nèi)容(例如,游戲、媒體播放器等)。在一個(gè)實(shí)現(xiàn)中,客戶(hù)端設(shè)備110可以執(zhí)行在客戶(hù)端設(shè)備的顯示器上提供瀏覽器窗口的網(wǎng)絡(luò)瀏覽器應(yīng)用。提供瀏覽器窗口的網(wǎng)絡(luò)瀏覽器應(yīng)用可以通過(guò)從輸入設(shè)備(例如,定點(diǎn)設(shè)備、鍵盤(pán)、觸摸屏或其它形式)接收統(tǒng)一資源定位符(URL)的輸入來(lái)操作。作為響應(yīng),執(zhí)行來(lái)自網(wǎng)絡(luò)瀏覽器應(yīng)用的指令的客戶(hù)端設(shè)備的一個(gè)或多個(gè)處理器可以從連接到由URL地址(例如,資源服務(wù)器104)引用的網(wǎng)絡(luò)106的另一設(shè)備請(qǐng)求數(shù)據(jù)。然后,另一設(shè)備可以向客戶(hù)端設(shè)備110提供網(wǎng)頁(yè)數(shù)據(jù)和/或其它數(shù)據(jù),這使得可視標(biāo)記被客戶(hù)端設(shè)備110的顯示器顯示。因此,瀏覽器窗口顯示所檢索的第一方內(nèi)容,例如來(lái)自各種網(wǎng)站的網(wǎng)頁(yè),以便于用戶(hù)與第一方內(nèi)容的交互。
資源服務(wù)器104可以包括計(jì)算設(shè)備,如被配置為托管諸如網(wǎng)頁(yè)或其它資源(例如,文章、評(píng)論線索、音樂(lè)、視頻、圖形、搜索結(jié)果、信息反饋等)的服務(wù)器。資源服務(wù)器104可以是計(jì)算機(jī)服務(wù)器(例如,文件傳輸協(xié)議(FTP)服務(wù)器、文件共享服務(wù)器,web服務(wù)器等)或服務(wù)器的組合(例如,數(shù)據(jù)中心、云計(jì)算平臺(tái)等)。資源服務(wù)器104可以向客戶(hù)端設(shè)備110提供資源數(shù)據(jù)或其它內(nèi)容(例如,文本文檔、PDF文件和其它形式的電子文檔)。在一個(gè)實(shí)現(xiàn)中,客戶(hù)端設(shè)備110可以經(jīng)由網(wǎng)絡(luò)106訪問(wèn)資源服務(wù)器104請(qǐng)求數(shù)據(jù)以實(shí)現(xiàn)資源服務(wù)器104的資源的呈現(xiàn)。
一個(gè)或多個(gè)第三方內(nèi)容提供商可以具有第三方內(nèi)容服務(wù)器102以經(jīng)由網(wǎng)絡(luò)106直接或間接地向內(nèi)容條目選擇系統(tǒng)108和/或向其它計(jì)算設(shè)備提供第三方內(nèi)容條目的數(shù)據(jù)。內(nèi)容條目可以是呈現(xiàn)在客戶(hù)端設(shè)備110的顯示器上的任何格式,例如圖形、文本、圖像、音頻、視頻等。內(nèi)容條目也可以是格式的組合(混合)。內(nèi)容條目可能是橫向內(nèi)容條目、插入式內(nèi)容條目、彈出內(nèi)容條目、富媒體內(nèi)容條目、混合內(nèi)容條目、內(nèi)容條目,跨域iframe內(nèi)容條目等。內(nèi)容條目可能包括嵌入信息,例如超鏈接、元數(shù)據(jù)、鏈接、機(jī)器可執(zhí)行指令、注釋等。在一些實(shí)例中,第三方內(nèi)容服務(wù)器108可以集成到內(nèi)容條目選擇系統(tǒng)108中和/或第三方內(nèi)容條目的數(shù)據(jù)可以存儲(chǔ)在內(nèi)容條目選擇系統(tǒng)108的數(shù)據(jù)庫(kù)中。
在實(shí)現(xiàn)中,內(nèi)容條目選擇系統(tǒng)108可以經(jīng)由網(wǎng)絡(luò)106接收對(duì)內(nèi)容條目的請(qǐng)求以使得與資源一起提供。可以從資源服務(wù)器104、客戶(hù)端設(shè)備110和/或任何其它計(jì)算設(shè)備接收所接收的請(qǐng)求。資源服務(wù)器104可以由第一方內(nèi)容提供商擁有或運(yùn)行,該第一方內(nèi)容提供商可以包括用于內(nèi)容條目選擇系統(tǒng)108以在資源服務(wù)器上提供第一方內(nèi)容提供商的一個(gè)或多個(gè)資源的第三方內(nèi)容條目的指令。在一個(gè)實(shí)現(xiàn)中,資源可以包括網(wǎng)頁(yè)。
客戶(hù)端設(shè)備110可以是由用戶(hù)操作的計(jì)算設(shè)備(由設(shè)備標(biāo)示符表示),其在訪問(wèn)資源服務(wù)器104的資源時(shí)可以向內(nèi)容條目選擇系統(tǒng)108請(qǐng)求內(nèi)容條目使得與資源一起呈現(xiàn)。內(nèi)容條目請(qǐng)求可以包括請(qǐng)求設(shè)備信息(例如,網(wǎng)絡(luò)瀏覽器類(lèi)型、操作系統(tǒng)類(lèi)型、來(lái)自請(qǐng)求設(shè)備的一個(gè)或多個(gè)先前資源請(qǐng)求、由請(qǐng)求設(shè)備接收的一個(gè)或多個(gè)先前內(nèi)容條目、用于請(qǐng)求設(shè)備的語(yǔ)言設(shè)置、用于請(qǐng)求設(shè)備的地理位置、請(qǐng)求設(shè)備處的一天中的時(shí)間、請(qǐng)求設(shè)備處的一周中的一天、請(qǐng)求設(shè)備處的一個(gè)月中的一天、請(qǐng)求設(shè)備處的一年中的一天等)和資源信息(例如,所請(qǐng)求的資源的URL、所請(qǐng)求的資源的內(nèi)容的一個(gè)或多個(gè)關(guān)鍵字、資源的內(nèi)容的文本、資源的標(biāo)題、資源的類(lèi)別、資源的類(lèi)型等)。內(nèi)容條目選擇系統(tǒng)108接收的信息可以包括超文本傳輸協(xié)議(HTTP)cookie,其包含表示客戶(hù)端設(shè)備110的設(shè)備標(biāo)識(shí)符(例如,隨機(jī)數(shù))。
在一些實(shí)現(xiàn)中,設(shè)備信息和/或資源信息可以被附加到內(nèi)容條目請(qǐng)求URL(如contentitem.item/page/contentitem?devid=abc123&devnfo=A34r0)。在一些實(shí)現(xiàn)中,設(shè)備信息和/或資源信息可以在被附加到內(nèi)容條目請(qǐng)求URL之前被編碼。內(nèi)容條目選擇系統(tǒng)108可以利用請(qǐng)求設(shè)備信息和/或資源信息來(lái)選擇內(nèi)容條目的第三方內(nèi)容條目和/或第三方內(nèi)容提供商以用于所請(qǐng)求的資源以及呈現(xiàn)在客戶(hù)端設(shè)備的顯示器上。如以下更詳細(xì)描述的,在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以響應(yīng)于對(duì)內(nèi)容條目的請(qǐng)求來(lái)生成一個(gè)或多個(gè)內(nèi)容條目。
在一些情況下,資源服務(wù)器104的資源可以包括搜索引擎特性(feature)。搜索引擎特性可以經(jīng)由輸入特性(輸入文本框等)接收搜索查詢(xún)(例如,文本串)。搜索引擎可以基于搜索查詢(xún)來(lái)搜索用于相關(guān)搜索結(jié)果的文檔的索引(例如,其它資源,諸如網(wǎng)頁(yè)等)。搜索結(jié)果可以作為第二資源被發(fā)送,以在客戶(hù)端設(shè)備110的顯示器上呈現(xiàn)相關(guān)搜索結(jié)果,諸如搜索結(jié)果網(wǎng)頁(yè)。搜索結(jié)果可以包括網(wǎng)頁(yè)標(biāo)題、超鏈接等。一個(gè)或多個(gè)第三方內(nèi)容條目也可以與搜索結(jié)果一起呈現(xiàn)在搜索結(jié)果網(wǎng)頁(yè)的內(nèi)容條目槽中。因此,資源服務(wù)器104和/或客戶(hù)端設(shè)備110可以從內(nèi)容條目選擇系統(tǒng)108請(qǐng)求一個(gè)或多個(gè)內(nèi)容條目呈現(xiàn)在搜索結(jié)果網(wǎng)頁(yè)的內(nèi)容條目槽中。內(nèi)容條目請(qǐng)求可以包括附加信息,諸如用戶(hù)設(shè)備信息、資源信息、內(nèi)容條目的數(shù)量、內(nèi)容條目的格式、搜索查詢(xún)字符串、搜索查詢(xún)字符串的關(guān)鍵字、與查詢(xún)相關(guān)的信息(例如,地理位置信息和/或時(shí)間信息)等。在一些實(shí)現(xiàn)中,可以在搜索結(jié)果和第三方內(nèi)容條目之間進(jìn)行描述以避免混淆。
在另一實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以獨(dú)立于對(duì)內(nèi)容條目的請(qǐng)求來(lái)生成一個(gè)或多個(gè)內(nèi)容條目(如,預(yù)生成一個(gè)或多個(gè)內(nèi)容條目)。內(nèi)容條目生成系統(tǒng)120可以響應(yīng)于來(lái)自第三方內(nèi)容提供商的請(qǐng)求(例如經(jīng)由第三方內(nèi)容服務(wù)器102和/或第三方內(nèi)容提供商的客戶(hù)端設(shè)備110)生成一個(gè)或多個(gè)內(nèi)容條目。在一些實(shí)現(xiàn)中,一個(gè)或多個(gè)生成的內(nèi)容條目和/或一個(gè)或多個(gè)生成的內(nèi)容條目的布局?jǐn)?shù)據(jù)可以存儲(chǔ)在數(shù)據(jù)庫(kù)中以響應(yīng)于后續(xù)內(nèi)容條目請(qǐng)求而被選擇和提供。在一些情況下,一個(gè)或多個(gè)生成的內(nèi)容條目可以在用戶(hù)界面中呈現(xiàn)給第三方內(nèi)容提供商,使得第三方內(nèi)容提供商可以選擇一個(gè)或多個(gè)生成的內(nèi)容條目來(lái)保存并存儲(chǔ)在數(shù)據(jù)庫(kù)中。
盡管前面已經(jīng)提供了用于使用內(nèi)容條目生成系統(tǒng)120選擇和向客戶(hù)端設(shè)備110提供內(nèi)容條目和/或生成內(nèi)容條目的系統(tǒng)100的概述,現(xiàn)在將更詳細(xì)地描述使用任意尺度數(shù)據(jù)生成內(nèi)容條目的實(shí)現(xiàn)。
參考圖2,內(nèi)容條目生成系統(tǒng)120包括布局生成器200和評(píng)分器208。如將參考圖3-圖11更詳細(xì)地描述的,布局生成器200被配置為接收內(nèi)容條目生成數(shù)據(jù)、一個(gè)或多個(gè)內(nèi)容條目模板和內(nèi)容條目數(shù)據(jù),以基于一個(gè)或多個(gè)內(nèi)容條目模板來(lái)生成一個(gè)或多個(gè)內(nèi)容條目和/或一個(gè)或多個(gè)內(nèi)容條目的布局?jǐn)?shù)據(jù)。評(píng)分器208被配置為生成用于所生成的一個(gè)或多個(gè)內(nèi)容條目的布局的得分。在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120被配置為基于得分對(duì)生成的一個(gè)或多個(gè)內(nèi)容條目的布局進(jìn)行排名,并選擇最高得分的布局。然后,內(nèi)容條目生成系統(tǒng)120可以響應(yīng)于來(lái)自?xún)?nèi)容條目請(qǐng)求器202的內(nèi)容條目生成數(shù)據(jù),發(fā)送數(shù)據(jù)以顯示所生成的內(nèi)容條目的最高得分布局。在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以存儲(chǔ)數(shù)據(jù)以顯示在內(nèi)容條目數(shù)據(jù)庫(kù)210(以虛線示出)中的生成的最高得分內(nèi)容條目的和/或生成的最高得分內(nèi)容條目的布局?jǐn)?shù)據(jù)。在一些情況下,內(nèi)容條目槽尺度的預(yù)定集合中的每一個(gè)的布局?jǐn)?shù)據(jù)可被生成并存儲(chǔ)在內(nèi)容條目數(shù)據(jù)庫(kù)210中。內(nèi)容條目槽尺度的預(yù)定集合可以是常用內(nèi)容條目槽尺度,諸如300像素(px)×250px、336px×280px、970px×100px、60px×600px、320px×50px等。針對(duì)內(nèi)容條目槽尺度的預(yù)定集合中的每一個(gè),布局?jǐn)?shù)據(jù)可以使用在內(nèi)容條目生成系統(tǒng)120上執(zhí)行的網(wǎng)絡(luò)瀏覽器來(lái)生成。因此,當(dāng)接收到具有作為與內(nèi)容條目槽尺度的預(yù)定集合之一相對(duì)應(yīng)的內(nèi)容條目生成數(shù)據(jù)的內(nèi)容條目槽尺度的請(qǐng)求時(shí),則內(nèi)容條目槽尺度的預(yù)定集合的布局?jǐn)?shù)據(jù)可以被獲取并發(fā)送到客戶(hù)端設(shè)備,其具有要在客戶(hù)端設(shè)備的顯示器上顯示的內(nèi)容條目的內(nèi)容條目數(shù)據(jù)。
在另外的實(shí)施方式中,內(nèi)容條目生成系統(tǒng)120可以輸出數(shù)據(jù)以顯示所生成的一個(gè)或多個(gè)內(nèi)容條目和相關(guān)聯(lián)的得分??梢栽趦?nèi)容條目請(qǐng)求器202(或與其通信的設(shè)備)的用戶(hù)界面中提供用于顯示所生成的一個(gè)或多個(gè)內(nèi)容條目和相關(guān)聯(lián)得分的數(shù)據(jù)。在一些實(shí)現(xiàn)中,內(nèi)容條目請(qǐng)求器202的設(shè)備的用戶(hù)可以使用用戶(hù)界面選擇一個(gè)或多個(gè)生成的內(nèi)容條目,以存儲(chǔ)在諸如內(nèi)容條目數(shù)據(jù)庫(kù)210的數(shù)據(jù)庫(kù)中。在一些實(shí)現(xiàn)中,生成的一個(gè)或多個(gè)內(nèi)容條目可以是HTML內(nèi)容條目。
內(nèi)容條目生成數(shù)據(jù)可以包括來(lái)自?xún)?nèi)容條目請(qǐng)求器202的第一尺度值、第二尺度值和/或著陸頁(yè)URL。在一些實(shí)現(xiàn)中,內(nèi)容條目請(qǐng)求器202可以是內(nèi)容條目選擇系統(tǒng)108,用于響應(yīng)于內(nèi)容條目請(qǐng)求生成內(nèi)容條目。在其它實(shí)現(xiàn)中,內(nèi)容條目請(qǐng)求器202可以是獨(dú)立于內(nèi)容條目請(qǐng)求生成內(nèi)容條目的第三方內(nèi)容提供商。
內(nèi)容條目生成系統(tǒng)可以將著陸頁(yè)URL傳送到著陸頁(yè)分析系統(tǒng)204,用于獲取用來(lái)生成內(nèi)容條目的內(nèi)容條目數(shù)據(jù)。著陸頁(yè)分析系統(tǒng)204可以包括能夠解釋與著陸頁(yè)URL相關(guān)聯(lián)的資源并且創(chuàng)建其視覺(jué)表示(例如,圖像、顯示等)的資源渲染器。例如,著陸頁(yè)URL的資源可以包括標(biāo)記的內(nèi)容(例如,HTML、XML、圖像URL等)以及格式化信息(例如CSS、XSL等)。資源渲染器可以根據(jù)萬(wàn)維網(wǎng)聯(lián)盟(W3C)標(biāo)準(zhǔn)來(lái)下載標(biāo)記的內(nèi)容和格式化信息,并呈現(xiàn)與著陸頁(yè)URL相關(guān)聯(lián)的資源。因此,資源渲染器可以創(chuàng)建與著陸頁(yè)URL相關(guān)聯(lián)的資源的“快照?qǐng)D像”和/或構(gòu)造表示與著陸頁(yè)URL相關(guān)聯(lián)的資源的各種成分的文檔對(duì)象模型(DOM)樹(shù)。
快照?qǐng)D像可以是與著陸頁(yè)URL相關(guān)聯(lián)的資源的視覺(jué)表示。在呈現(xiàn)與著陸頁(yè)URL相關(guān)聯(lián)的資源之后,快照?qǐng)D像可以示出呈現(xiàn)在客戶(hù)端設(shè)備(例如,電子顯示屏、計(jì)算機(jī)監(jiān)視器、觸敏顯示器等)的用戶(hù)界面上的與著陸頁(yè)URL相關(guān)聯(lián)的資源的視覺(jué)外觀。快照?qǐng)D像可以包括與著陸頁(yè)URL相關(guān)聯(lián)的資源的顏色信息(例如,像素顏色、亮度、飽和度等)和風(fēng)格信息(例如,方角、圓邊、時(shí)髦、質(zhì)樸等)。在一些實(shí)現(xiàn)中,快照?qǐng)D像可以是具有任何可行文件擴(kuò)展名(例如,.jpg、.png、.bmp等)的圖片文件。
DOM樹(shù)可以是與該著陸頁(yè)URL相關(guān)聯(lián)的資源的分層模型。DOM樹(shù)可以包括圖像信息(例如圖像URL、顯示位置、顯示大小、替代文本等)、字體信息(例如,字體名稱(chēng)、大小、效果等)、顏色信息、(例如,RGB顏色值、十六進(jìn)制顏色代碼等)和與著陸頁(yè)URL相關(guān)聯(lián)的資源的文本信息。著陸頁(yè)分析系統(tǒng)204可以將快照?qǐng)D像和/或DOM樹(shù)存儲(chǔ)在存儲(chǔ)器中以供后續(xù)使用。
在一些實(shí)現(xiàn)中,內(nèi)容條目數(shù)據(jù)可以包括圖像數(shù)據(jù)、顏色數(shù)據(jù)、文本數(shù)據(jù)、徽標(biāo)數(shù)據(jù)等。在一些實(shí)現(xiàn)中,圖像模塊可以解析與著陸頁(yè)URL相關(guān)聯(lián)的資源的DOM樹(shù),并提取圖像數(shù)據(jù)的圖像和圖像元數(shù)據(jù)(例如,圖像URL、顯示位置、顯示尺寸、替代文本等)。圖像元數(shù)據(jù)可以用于確定在與著陸頁(yè)URL相關(guān)聯(lián)的資源上顯示的每個(gè)圖像的頁(yè)面顯著性。在一些實(shí)現(xiàn)中,圖像模塊從其它數(shù)據(jù)源(例如,先前使用或批準(zhǔn)的圖像的庫(kù)、庫(kù)存圖像的庫(kù)等)提取圖像和圖像元數(shù)據(jù)。
在一些實(shí)現(xiàn)中,圖像模塊可以分析提取的圖像以檢測(cè)圖像的視覺(jué)內(nèi)容。檢測(cè)可視內(nèi)容可以包括例如確定圖像中表示的顯著對(duì)象的位置,確定圖像中的文本的位置,和/或確定圖像是否可被裁剪或處理以改善圖像的視覺(jué)影響。在一些實(shí)現(xiàn)中,圖像模塊分析提取的圖像以檢測(cè)圖像的語(yǔ)義內(nèi)容。檢測(cè)語(yǔ)義內(nèi)容可以包括例如識(shí)別圖像中描繪的對(duì)象或圖像傳達(dá)的含義。圖像模塊可以向描述其語(yǔ)義內(nèi)容的圖像分配一個(gè)或多個(gè)標(biāo)簽或關(guān)鍵字。標(biāo)簽和/或關(guān)鍵字可以用于確定圖像與特定第三方內(nèi)容條目的相關(guān)性。
圖像模塊可以處理圖像以準(zhǔn)備用于在第三方內(nèi)容條目中使用的圖像。圖像處理可以包括裁剪圖像以強(qiáng)調(diào)顯著對(duì)象或去除文本、調(diào)整圖像大小、格式化圖像或以其它方式調(diào)整圖像。
圖像模塊可以基于圖像的各種屬性來(lái)對(duì)圖像進(jìn)行過(guò)濾和排名。圖像模塊可以確定每個(gè)圖像的質(zhì)量得分和/或頁(yè)面上的顯著性得分。圖像的質(zhì)量得分可以基于各種圖像屬性指示圖像的美學(xué)外觀。顯著性得分可以指示在與著陸頁(yè)URL相關(guān)聯(lián)的資源上顯示所提取的圖像的顯著性。圖像模塊可以丟棄或過(guò)濾具有小于閾值顯示尺寸的顯示尺寸或小于閾值質(zhì)量得分的質(zhì)量得分的圖像。在一些實(shí)現(xiàn)中,著陸頁(yè)分析系統(tǒng)204的圖像模塊基于與圖像相關(guān)聯(lián)的顯著性得分對(duì)圖像進(jìn)行排序。圖像模塊可以選擇排名最高的一個(gè)或多個(gè)圖像以包括在內(nèi)容條目數(shù)據(jù)中。在一些實(shí)現(xiàn)中,圖像模塊可以確定每個(gè)圖像的數(shù)據(jù)大小,以確定更大數(shù)據(jù)大小的圖像和更小數(shù)據(jù)大小的圖像。
在一些情況下,著陸頁(yè)分析系統(tǒng)204的顏色模塊可以使用與著陸頁(yè)URL相關(guān)聯(lián)的資源的快照?qǐng)D像和/或DOM樹(shù)來(lái)選擇內(nèi)容條目數(shù)據(jù)的顏色。例如,顏色模塊可以選擇用于背景、標(biāo)題、描述、按鈕背景和/或內(nèi)容條目的按鈕文本的顏色。顏色方案可以包括與在與著陸頁(yè)URL相關(guān)聯(lián)的資源上顯示的顏色相對(duì)應(yīng)的一種或多種顏色。在一些實(shí)現(xiàn)方式中,顏色模塊可以使用聚類(lèi)技術(shù)(例如,k均值聚類(lèi))從快照?qǐng)D像提取幾個(gè)顏色聚類(lèi)。
文本模塊可以被配置為諸如通過(guò)使用與著陸頁(yè)URL相關(guān)聯(lián)的資源的DOM樹(shù)或快照?qǐng)D像來(lái)自動(dòng)生成內(nèi)容條目的文本數(shù)據(jù)(例如,文本描述、標(biāo)題等)網(wǎng)址,以創(chuàng)建與著陸頁(yè)URL相關(guān)聯(lián)的資源上顯示的文本的摘要。在一些實(shí)現(xiàn)中,除了與著陸頁(yè)URL相關(guān)聯(lián)的資源之外,或作為替代,文本模塊可以從其它數(shù)據(jù)源獲取文本數(shù)據(jù)。例如,文本模塊216可以從用戶(hù)創(chuàng)建的商家、產(chǎn)品或服務(wù)的評(píng)論接收文本數(shù)據(jù)。可以從允許用戶(hù)張貼或提交與特定企業(yè)、產(chǎn)品或服務(wù)相關(guān)的評(píng)論、點(diǎn)評(píng)或其它文本的因特網(wǎng)資源(例如,網(wǎng)站)檢索評(píng)論。在一些實(shí)現(xiàn)中,文本模塊可以識(shí)別和提取包括用于包括在內(nèi)容條目數(shù)據(jù)中的肯定短語(yǔ)的評(píng)論的摘錄。在一些實(shí)現(xiàn)中,文本模塊可以識(shí)別文本的字體,并且包括指示內(nèi)容條目數(shù)據(jù)中的字體的數(shù)據(jù)。
在另外的實(shí)例中,可以使用與著陸頁(yè)URL相關(guān)聯(lián)的資源的DOM樹(shù)或快照?qǐng)D像來(lái)提取一個(gè)或多個(gè)徽標(biāo)的徽標(biāo)數(shù)據(jù)?;諛?biāo)圖像可以是商標(biāo)、企業(yè)徽標(biāo)、產(chǎn)品徽標(biāo)、公司徽標(biāo)或與特定產(chǎn)品、服務(wù)或組織相關(guān)聯(lián)的任何其它圖像。在一些實(shí)現(xiàn)中,著陸頁(yè)分析系統(tǒng)204可以基于著陸頁(yè)URL和/或著陸頁(yè)URL的域名來(lái)查詢(xún)數(shù)據(jù)庫(kù)以識(shí)別徽標(biāo)圖像,使得可以通過(guò)指定URL來(lái)容易地檢索徽標(biāo)信息。
在一些實(shí)現(xiàn)中,例如當(dāng)?shù)谌絻?nèi)容提供商正在利用內(nèi)容條目生成系統(tǒng)120來(lái)生成獨(dú)立于內(nèi)容條目請(qǐng)求的一個(gè)或多個(gè)內(nèi)容條目時(shí),第三方內(nèi)容提供商可以將內(nèi)容條目數(shù)據(jù)發(fā)送到內(nèi)容條目生成系統(tǒng)120,使得著陸頁(yè)分析系統(tǒng)204不分析與著陸頁(yè)URL相關(guān)聯(lián)的資源以確定和獲得內(nèi)容條目數(shù)據(jù)。
在一些實(shí)現(xiàn)中,內(nèi)容條目生成數(shù)據(jù)還可以包括場(chǎng)境數(shù)據(jù)。場(chǎng)境數(shù)據(jù)可以包括設(shè)備類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接速度數(shù)據(jù)等。場(chǎng)境數(shù)據(jù)可以用于為所生成的內(nèi)容條目選擇內(nèi)容條目數(shù)據(jù),以基于場(chǎng)境數(shù)據(jù)來(lái)定制生成的內(nèi)容條目。例如,場(chǎng)境數(shù)據(jù)可以包括指示W(wǎng)iFi網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。圖像模塊可以基于場(chǎng)境數(shù)據(jù)選擇或排名較大數(shù)據(jù)大小的圖像、高清晰度視頻等。在另一實(shí)例中,場(chǎng)境數(shù)據(jù)可以包括指示2G網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。圖像模塊可以基于場(chǎng)境數(shù)據(jù)選擇或排名較小數(shù)據(jù)大小圖像、低清晰度視頻等。在其它實(shí)例中,圖像模塊可以基于第一尺度值和第二尺度值選擇或排名圖像。例如,圖像模塊可以基于第一尺度值和第二尺度值的縱橫比與一個(gè)或多個(gè)候選圖像的縱橫比的相似度來(lái)選擇或排名圖像。
再參考圖2,內(nèi)容條目生成系統(tǒng)120從內(nèi)容條目模板數(shù)據(jù)庫(kù)206接收一個(gè)或多個(gè)內(nèi)容條目模板。在其它實(shí)例中,內(nèi)容條目生成系統(tǒng)120可以從內(nèi)容條目模板的設(shè)計(jì)者接收一個(gè)或多個(gè)內(nèi)容條目模板。內(nèi)容條目模板定義要從內(nèi)容條目模板生成的內(nèi)容條目的元素和元素的布置。在一些實(shí)現(xiàn)中,一個(gè)或多個(gè)內(nèi)容條目模板可以是定義內(nèi)容條目模板的一個(gè)或多個(gè)元素的有約束XML配置文件。每個(gè)內(nèi)容條目模板可以定義該內(nèi)容條目模板的一個(gè)或多個(gè)內(nèi)容條目成分。每個(gè)內(nèi)容條目成分可以包括屬性,諸如名稱(chēng)、類(lèi)型、優(yōu)先級(jí)和權(quán)重。名稱(chēng)屬性可以是設(shè)計(jì)者定義的名稱(chēng)以引用內(nèi)容條目成分。類(lèi)型屬性可以是與默認(rèn)優(yōu)先級(jí)和/或默認(rèn)權(quán)重相關(guān)聯(lián)的設(shè)計(jì)者選擇的內(nèi)容條目類(lèi)型,諸如標(biāo)題、徽標(biāo)、產(chǎn)品圖像、描述、按鈕等。優(yōu)先級(jí)屬性可以是設(shè)計(jì)者定義的值,其可以用于對(duì)內(nèi)容條目模板的元素的去除進(jìn)行優(yōu)先級(jí)排序。在一些實(shí)現(xiàn)中,值越低,優(yōu)先級(jí)越高,對(duì)于不能從生成的內(nèi)容條目目中去除的元素具有0值。權(quán)重屬性可以是設(shè)計(jì)者定義的值,其可以用于在附加空間可用時(shí)對(duì)內(nèi)容條目的元素的增長(zhǎng)進(jìn)行優(yōu)先級(jí)排序。
內(nèi)容條目模板還包括用于內(nèi)容條目的一個(gè)或多個(gè)模板,其利用內(nèi)容條目成分中的一個(gè)或多個(gè)來(lái)定義內(nèi)容條目的布局的一個(gè)或多個(gè)元素。在一些情況下,內(nèi)容條目模板可以包括用于元素的一個(gè)或多個(gè)渲染框。每個(gè)渲染框和/或元素包括一個(gè)或多個(gè)內(nèi)容條目成分以及定義元素相對(duì)于另一元素和/或相對(duì)于內(nèi)容條目本身的布置的至少兩個(gè)錨(例如,可以通過(guò)相對(duì)于內(nèi)容條目的右邊緣的右錨和相對(duì)于內(nèi)容條目的底部邊緣的底錨定義按鈕元素)。
在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以從內(nèi)容條目模板數(shù)據(jù)庫(kù)206獲取所有內(nèi)容條目模板作為內(nèi)容條目模板的集合。在其它實(shí)現(xiàn)中,對(duì)于內(nèi)容條目模板的子集,內(nèi)容條目生成系統(tǒng)120可以過(guò)濾內(nèi)容條目模板數(shù)據(jù)庫(kù)206的內(nèi)容條目模板。在其它實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以例如響應(yīng)于針對(duì)內(nèi)容條目槽的第三方內(nèi)容提供商的選擇來(lái)獲取單個(gè)內(nèi)容條目模板。
在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可使用第一尺度值和第二尺度值來(lái)確定內(nèi)容條目模板的集合以生成內(nèi)容條目。例如,如果第一尺度值是580個(gè)像素(即寬度為580個(gè)像素),并且第二尺度值是100個(gè)像素(即高度為100個(gè)像素),則具有垂直堆疊的圖像、文本、徽標(biāo)、按鈕元素的內(nèi)容條目模板由于有限的垂直高度尺寸可能不適合于這種尺寸。因此,內(nèi)容條目生成系統(tǒng)120可以從獲取自?xún)?nèi)容條目模板數(shù)據(jù)庫(kù)206的內(nèi)容條目模板的集合中排除這樣的內(nèi)容條目模板。在一些實(shí)現(xiàn)中,內(nèi)容條目模板可以標(biāo)注有指示從內(nèi)容條目模板的生成的內(nèi)容條目的最小和/或最大寬高比的一個(gè)或多個(gè)值。內(nèi)容條目生成系統(tǒng)120可以確定第一尺度值與第二尺度值的比率,并且使用所確定的比率來(lái)過(guò)濾所確定的比率低于最小長(zhǎng)寬比或高于最大長(zhǎng)寬比的內(nèi)容條目模板。因此,可以基于第一尺度值和第二尺度值排除內(nèi)容條目模板。
在一些實(shí)現(xiàn)中,除了尺度值過(guò)濾之外或者代替尺度值過(guò)濾,可以基于內(nèi)容條目數(shù)據(jù)來(lái)過(guò)濾內(nèi)容條目模板。例如,如果內(nèi)容條目數(shù)據(jù)不包括文本數(shù)據(jù),則內(nèi)容條目生成系統(tǒng)120可以?xún)H獲取不包括文本元素的內(nèi)容條目模板。內(nèi)容條目模板可以標(biāo)注有一個(gè)或多個(gè)值,用來(lái)指示用于這種過(guò)濾的包括在內(nèi)容條目模板中的元素。
使用內(nèi)容條目生成數(shù)據(jù)、一個(gè)或多個(gè)內(nèi)容條目模板的集合和內(nèi)容條目數(shù)據(jù),布局生成器200生成如本文更詳細(xì)描述的一個(gè)或多個(gè)內(nèi)容條目。在其它實(shí)現(xiàn)中,布局生成器200可以是腳本,可以連同內(nèi)容條目生成數(shù)據(jù)、所選擇的內(nèi)容條目模板和所選擇的內(nèi)容條目數(shù)據(jù)發(fā)送到客戶(hù)端設(shè)備,以生成內(nèi)容條目。因此,內(nèi)容條目生成系統(tǒng)120可以接收內(nèi)容條目生成數(shù)據(jù)、選擇內(nèi)容條目模板以及選擇用于該腳本的內(nèi)容條目數(shù)據(jù)以生成內(nèi)容條目。
參考圖3,布局生成器200包括布局解析器220、錨定管理器222、一個(gè)或多個(gè)元素渲染器224、空間管理器226和沖突消解器228。布局解析器220接收內(nèi)容條目模板并將內(nèi)容條目模板解析為一個(gè)或多個(gè)布局元素和/或渲染框以及一個(gè)或多個(gè)布局元素和/或渲染框的相關(guān)聯(lián)的數(shù)據(jù)(例如,成分類(lèi)型、成分布置、錨數(shù)據(jù)、元素或渲染框名稱(chēng)、優(yōu)先級(jí)值、權(quán)重值等)。將參考圖5更詳細(xì)地描述布局解析器220。
錨定管理器222接收一個(gè)或多個(gè)解析的布局元素和/或渲染框和相關(guān)聯(lián)的數(shù)據(jù)的集合,并且基于一個(gè)或多個(gè)元素的相關(guān)聯(lián)數(shù)據(jù)、第一尺度值和第二尺度值以及內(nèi)容條目數(shù)據(jù)確定解析的布局元素和/或渲染框的集合中的每一個(gè)的占位符。占位符(placeholder)是元素或渲染框可以在內(nèi)容條目中占據(jù)的最大空間,這基于元素的錨、待生成的內(nèi)容條目的尺度以及用于填充該元素的內(nèi)容條目數(shù)據(jù)。因?yàn)橐恍┰鼗蜾秩究蚋鶕?jù)錨可依賴(lài)于其它元素或渲染框,所以錨定管理器222執(zhí)行拓?fù)渑判蛞源_定一個(gè)次序,按照該次序確定一個(gè)或多個(gè)元素或渲染框的占位符。也就是說(shuō),如果諸如徽標(biāo)元素的元素包括引用諸如按鈕元素的另一元素的錨,則可能需要在確定該徽標(biāo)元素的占位符之前確定該按鈕元素的占位符。如果按鈕元素還包括到另一元素(例如圖像元素)的錨,則可能需要在用于該按鈕元素或該徽標(biāo)元素的占位符之前確定圖像元素的占位符。因此,執(zhí)行拓?fù)渑判蛞曰谒鼈兊腻^依賴(lài)性對(duì)布局元素或渲染框進(jìn)行排序??梢允褂缅^定管理器222來(lái)確定元素和/或渲染框的排序列表的每個(gè)元素或渲染框的占位符。錨定管理器222將每個(gè)元素和/或渲染框的占位符輸出到相應(yīng)的元素渲染器224。在一些實(shí)現(xiàn)中,錨定管理器222可基于所接收的場(chǎng)境數(shù)據(jù)省略一個(gè)或多個(gè)元素和/或渲染框以減少內(nèi)容條目的數(shù)據(jù)量。例如,如果場(chǎng)境數(shù)據(jù)包括指示低吞吐量或低速網(wǎng)絡(luò)連接類(lèi)型(例如2G連接類(lèi)型)的網(wǎng)絡(luò)連接類(lèi)型數(shù)據(jù),則錨定管理器222可以基于各元素的優(yōu)先級(jí)屬性來(lái)排除一個(gè)或多個(gè)元素和/或渲染框。將參考圖6更詳細(xì)地描述錨定管理器222。
元素渲染器224接收每個(gè)對(duì)應(yīng)元素和/或渲染框的占位符,并基于占位符和每個(gè)元素或渲染框的一個(gè)或多個(gè)錨確定初始空間分配。元素渲染器224可以包括圖像元素渲染器、文本元素渲染器和按鈕元素渲染器。初始空間分配是元素可以基于占位符在內(nèi)容條目的布局中占據(jù)的空間,并受元素或渲染框的一個(gè)或多個(gè)錨的影響。在一些實(shí)現(xiàn)中,圖像分析器230(圖4中所示)可與圖像元件渲染器224一起使用以確定圖像的顯著部分和/或執(zhí)行圖像的智能裁剪以確定初始空間分配。將參考圖8更詳細(xì)地描述元素渲染器224。
空間管理器226從一個(gè)或多個(gè)元素渲染器224接收初始空間分配,并為所生成的內(nèi)容條目的每個(gè)元素和/或渲染框確定最終空間分配。空間管理器226基于對(duì)應(yīng)的初始空間分配確定每個(gè)元素和/或渲染框的最終空間分配,基于相應(yīng)的初始空間分配、一個(gè)或多個(gè)錨以及權(quán)重屬性確定每個(gè)元素和/或渲染框的最小空間分配,并且使用生長(zhǎng)函數(shù)修改每個(gè)元素和/或渲染框的空間分配以利用受權(quán)重屬性和一個(gè)或多個(gè)錨影響的任何剩余空間。將參考圖8-圖9B更詳細(xì)地描述空間管理器226。
沖突消解器228接收內(nèi)容條目的一個(gè)或多個(gè)元素和/或渲染框的最終空間分配,并且基于最終空間分配確定是否存在任何沖突。這樣的沖突可以包括元素和/或渲染框的重疊,超出內(nèi)容條目的尺度的元素或渲染框的溢出、不足的余量、文本截?cái)嗪?或其它內(nèi)容條目模板專(zhuān)有的沖突。如果存在沖突,則沖突消解器228可以從一個(gè)或多個(gè)元素和/或渲染框的集合中減除元素,并且向錨定管理器222返回新的元素和/或渲染框集合,以基于元素和/或渲染框的新集合來(lái)確定占位符。從一個(gè)或多個(gè)元素和/或渲染框中移除的元素可以基于元素的優(yōu)先級(jí)屬性(例如,移除具有最高優(yōu)先級(jí)屬性值的元素,該最高優(yōu)先級(jí)屬性值指示元素在內(nèi)容條目模板上的重要性較低)。在一些實(shí)現(xiàn)中,如果確定要移除的元素被指示為所需元素(例如,具有優(yōu)先級(jí)屬性值0),則沖突消解器228可以向布局解析器220發(fā)送數(shù)據(jù)以從內(nèi)容條目模板的集合解析新的內(nèi)容條目模板或沖突消解器228可以停止內(nèi)容條目的生成并輸出錯(cuò)誤(例如,如果沒(méi)有其它內(nèi)容條目模板可以被使用和/或如果要使用單個(gè)模板)。在一些實(shí)現(xiàn)中,沖突消解器228可以從沖突系統(tǒng)232(圖4所示)接收用于沖突的一個(gè)或多個(gè)規(guī)則。沖突系統(tǒng)232可以包括余量定義器,以基于內(nèi)容條目大小來(lái)定義每個(gè)元素和/或渲染框所需的余量(margin)。沖突系統(tǒng)232還可以包括基于內(nèi)容條目大小和/或其它內(nèi)容條目模板特定沖突規(guī)則來(lái)定義文本截?cái)嗪螘r(shí)可能發(fā)生的沖突規(guī)則。
圖4描繪了由內(nèi)容條目生成系統(tǒng)120實(shí)現(xiàn)的圖2的布局生成器200和評(píng)分器208的處理流程的實(shí)現(xiàn)的過(guò)程圖的概述。將參照?qǐng)D5-圖10更詳細(xì)地描述處理流程的細(xì)節(jié)。
參考圖5,布局剖析器220從內(nèi)容條目模板數(shù)據(jù)庫(kù)206接收一個(gè)或多個(gè)布局模板的集合。內(nèi)容條目模板定義一個(gè)或多個(gè)元素和/或渲染框以及一個(gè)或多個(gè)元素和/或渲染框的布置,用于根據(jù)該內(nèi)容條目模板生成內(nèi)容條目。在一些實(shí)現(xiàn)中,一個(gè)或多個(gè)內(nèi)容條目模板可以是限定相應(yīng)內(nèi)容條目模板的一個(gè)或多個(gè)元素和/或渲染框的有約束XML配置文件。在其它實(shí)現(xiàn)中,其它標(biāo)記語(yǔ)言可以用于一個(gè)或多個(gè)內(nèi)容條目模板。每個(gè)內(nèi)容條目模板可以定義該內(nèi)容條目模板的一個(gè)或多個(gè)內(nèi)容條目成分。每個(gè)內(nèi)容條目成分可包括屬性,如名稱(chēng)、類(lèi)型、優(yōu)先級(jí)和權(quán)重。名稱(chēng)屬性可以是設(shè)計(jì)者定義的名稱(chēng)以引用內(nèi)容條目成分。類(lèi)型屬性可以是與默認(rèn)優(yōu)先級(jí)和/或默認(rèn)權(quán)重相關(guān)聯(lián)的設(shè)計(jì)者選擇的內(nèi)容條目類(lèi)型,如標(biāo)題、徽標(biāo)、產(chǎn)品圖像、描述、按鈕等。優(yōu)先級(jí)屬性可以是設(shè)計(jì)者定義的值,其可以用于對(duì)內(nèi)容條目模板的元素的去除進(jìn)行優(yōu)先級(jí)排序。在一些實(shí)現(xiàn)中,值越低,優(yōu)先級(jí)越高,對(duì)于不能從生成的內(nèi)容條目去除的元素具有0值。權(quán)重屬性可以是設(shè)計(jì)者定義的值,其可以用于在附加空間可用時(shí)對(duì)內(nèi)容條目的元素的增長(zhǎng)進(jìn)行優(yōu)先級(jí)排序。
用于內(nèi)容條目模板X(qián)ML配置文件的定義的內(nèi)容條目成分的實(shí)現(xiàn)可以如下定義:
elements:{
product1image:‘product,0,2’,
logoimage:‘logo,0’,
text1:‘headline’,
text2:‘description,0’,
clicktext:‘button,0’
},
其中product1image內(nèi)容條目成分具有類(lèi)型屬性“product”,優(yōu)先級(jí)屬性0和權(quán)重屬性2;logoimage內(nèi)容條目成分具有類(lèi)型屬性“l(fā)ogo”和優(yōu)先級(jí)屬性0;text1內(nèi)容條目成分具有類(lèi)型屬性“headline;”,text2內(nèi)容條目成分具有類(lèi)型屬性“description”和優(yōu)先級(jí)屬性0;并且clicktext內(nèi)容條目成分具有類(lèi)型屬性“button”和優(yōu)先級(jí)屬性0。因此,所定義的這些內(nèi)容條目成分可以被包括以作為用于內(nèi)容條目模板的一個(gè)或多個(gè)元素和/或內(nèi)容條目模板X(qián)ML配置文件的內(nèi)容條目模板的一個(gè)或多個(gè)渲染框。
內(nèi)容條目模板還包括用于內(nèi)容條目的一個(gè)或多個(gè)模板,其利用內(nèi)容條目成分中的一個(gè)或多個(gè)來(lái)定義內(nèi)容條目的布局的一個(gè)或多個(gè)元素。在一些情況下,內(nèi)容條目模板可以包括用于元素的一個(gè)或多個(gè)渲染框。每個(gè)渲染框和/或元素包括內(nèi)容條目成分中的一個(gè)或多個(gè),以及定義元素和/或渲染框相對(duì)于另一個(gè)元素和/或渲染框和/或相對(duì)于內(nèi)容條目本身的布置的至少兩個(gè)錨(例如,按鈕元素可以由相對(duì)于內(nèi)容條目的右邊緣的右錨和相對(duì)于內(nèi)容條目的底部邊緣的底錨定義)。
使用上述內(nèi)容條目成分的橫幅型內(nèi)容條目模板的內(nèi)容條目模板X(qián)ML配置文件的實(shí)現(xiàn)方式可以由以下定義:
在上述橫幅模板中,為模板定義了三個(gè)渲染框。第一渲染框“productimage”包括“spec”屬性,其聲明存在單個(gè)內(nèi)容條目成分“product1image”,其對(duì)于第一渲染框左對(duì)齊。第一渲染框還包括四個(gè)錨,左、頂、右和底,其中左錨、頂錨和底錨指示第一渲染框?qū)⒈诲^定到要生成的內(nèi)容條目的左邊、頂邊和底邊。右錨包括相對(duì)值50%,其指示第一渲染框的右部分在離開(kāi)要生成的內(nèi)容條目的右邊緣的內(nèi)容條目的寬度的50%處。
第二渲染框“textbox”包括“spec”屬性,其聲明存在兩個(gè)內(nèi)容條目成分“text1”和“text2”,其垂直堆疊且具有相等間距,并且第二渲染框頂部對(duì)齊。第一渲染框還包括四個(gè)錨,左、頂、右和底,其中頂錨和底錨指示第一渲染框?qū)⒈诲^定到要生成的內(nèi)容條目的頂部和底部邊緣。左錨包括對(duì)“productimage”第一渲染框的引用,并且右錨包括對(duì)“l(fā)ogoandbutton”第三渲染框的引用,其指示第二渲染框的左部分將與第一渲染框相鄰,并且所述第二渲染框的右側(cè)部分將與第三渲染框相鄰。第二渲染框與第一和第三渲染框之間的間隔將由內(nèi)容條目生成系統(tǒng)120和/或內(nèi)容條目產(chǎn)生腳本優(yōu)化。
第三渲染框“l(fā)ogoandbutton”包括“spec”屬性,其聲明是垂直堆疊并具有相等間距的兩個(gè)內(nèi)容條目成分“l(fā)ogoimage”和“clicktext”,并且第三渲染框是右對(duì)齊的。第三渲染框還包括三個(gè)錨,左、頂和底,其中頂錨和底錨指示第三渲染框?qū)⒈诲^定到要生成的內(nèi)容條目的頂部和底部邊緣。左錨包括相對(duì)值50%,其指示第三渲染框的左部分在離開(kāi)要生成的內(nèi)容條目的左邊緣的內(nèi)容條目的寬度的50%。在一些實(shí)現(xiàn)中,若干內(nèi)容條目模板或布局可以被包括在單個(gè)內(nèi)容條目模板X(qián)ML配置文件中。
布局解析器220可以接收內(nèi)容條目模板X(qián)ML配置文件,并將文件解析到三個(gè)渲染框中,并且進(jìn)一步解析為每個(gè)渲染框的各種元素。布局解析器220還可以解析每個(gè)渲染框的“spec”屬性、成分、優(yōu)先級(jí)屬性值、相關(guān)聯(lián)的錨和/或元素的布置。布局解析器220然后將解析的布局元素和/或渲染框的集合和相關(guān)聯(lián)的數(shù)據(jù)發(fā)送到錨定管理器222。
參考圖6,錨定管理器222接收解析的布局元素和/或渲染框的集合和相關(guān)數(shù)據(jù)、第一尺度值和第二尺度值以及內(nèi)容條目數(shù)據(jù)。錨定管理器222被配置為基于一個(gè)或多個(gè)元素的相關(guān)聯(lián)數(shù)據(jù)、第一尺度值和第二尺度值以及內(nèi)容條目數(shù)據(jù)來(lái)確定一個(gè)或多個(gè)被解析的布局元素和/或渲染框中每一個(gè)的占位符。占位符是元素和/或渲染框可在內(nèi)容條目中占據(jù)的最大空間。因?yàn)橐恍┰睾?或渲染框可以依賴(lài)于基于錨的其它元素和/或渲染框,所以錨定管理器222執(zhí)行拓?fù)渑判蛞源_定為一個(gè)或多個(gè)元素和/或渲染框確定占位符的次序。也就是說(shuō),如果諸如用于上述“textbox”的第二渲染框的元素或渲染框包括引用另一元素的錨,諸如用于“productimage”的第一渲染框和用于“l(fā)ogoandbutton”的第三渲染框,則可能需要在確定第二渲染框的占位符之前確定第一渲染框和第三渲染框的占位符。在一些情況下,拓?fù)渑判蜻€可以利用優(yōu)先級(jí)屬性值來(lái)確定哪個(gè)占位符來(lái)確定兩個(gè)或更多個(gè)元素是否依賴(lài)于其它元素和/或渲染框,或者依賴(lài)于已經(jīng)確定占位符的元素和/或渲染框。
錨被用于描述內(nèi)容條目模板的兩個(gè)元素和/或渲染框之間或者元素和/或渲染框與根據(jù)內(nèi)容條目模板生成的內(nèi)容條目之間的關(guān)系。錨由引用(例如,另一元素、渲染框或內(nèi)容條目本身)、距離(例如,固定距離,諸如像素(px))或引用的相對(duì)尺寸(例如10%),以及類(lèi)型(例如,從其測(cè)量到參考的距離的元素的邊緣,諸如頂部、底部、左側(cè)或右側(cè))定義。在一些實(shí)現(xiàn)中,空間管理器226可以基于給出用于內(nèi)容條目槽的第一尺度值和第二尺度值的元素和/或渲染框的權(quán)重屬性和任何可用空間來(lái)增加元素和/或渲染框的空間分配以適合元素和/或渲染框的占位符的可能的最大寬度和/或高度。如果空間管理器226不能將元素和/或渲染框的空間分配增加到元素和/或渲染框的占位符的最大寬度和/或高度,則空間管理器226將適合該元素和/或渲染框放置在占位符的中心,并為內(nèi)容條目的其它元素和/或渲染框返回緩沖區(qū)的額外空間。
基于錨的依賴(lài)性,由錨定管理器222執(zhí)行的拓?fù)渑判蚩梢源_定,可以首先基于優(yōu)先級(jí)屬性值和“textbox”渲染框?qū)Α皃roductimage”和“l(fā)ogoandbutton”渲染框的依賴(lài)來(lái)確定“productimage”和“l(fā)ogoandbutton”渲染框的占位符。錨定管理器222可以基于具有定義的所有四個(gè)錨的“productimage”渲染框,通過(guò)“l(fā)ogoandbutton”渲染框上方的“productimage”渲染框開(kāi)始。
錨定管理器222可以基于拓?fù)渑判騺?lái)確定每個(gè)元素和/或渲染框的占位符。對(duì)于要生成的具有200像素寬的第一尺度值和200像素高的第二尺度值的內(nèi)容條目,以及“productimage”渲染框的產(chǎn)品圖像元素的圖像數(shù)據(jù)具有100像素寬×200像素高的尺度,則錨定管理器222可以將“productimage”渲染框的占位符確定為{left:0,top:0,bottom:200,right:100}。如果“l(fā)ogoandbutton”渲染框的徽標(biāo)圖像元素的圖像數(shù)據(jù)具有30像素寬×30像素高的尺度,并且“l(fā)ogoandbutton”渲染框的按鈕元素也是30像素寬×30像素高,則錨定管理器222可以將“l(fā)ogoandbutton”渲染框的占位符確定為{左:170,頂部:70,底部:130,右:200}。錨定管理器222可以將“textbox”渲染框的占位符確定為{left:100,top:0,bottom:200,right:170}。在一些實(shí)例中,錨定管理器220可以為每個(gè)元素生成占位符,作為渲染框的補(bǔ)充或替代。錨定管理器222將每個(gè)元素和/或渲染框的生成的占位符發(fā)送到相應(yīng)的元素渲染器224。
參考圖7,元素渲染器224接收來(lái)自錨定管理器222的每個(gè)相應(yīng)元素和/或具有相應(yīng)元素的渲染框的占位符,并且基于每個(gè)元素和/或渲染框的一個(gè)或多個(gè)錨的占位符來(lái)確定初始空間分配。元素渲染器224可以包括圖像元素渲染器、文本元素渲染器和按鈕元素渲染器。
可以為內(nèi)容條目模板的每個(gè)圖像元素分配圖像元素渲染器224。圖像元素渲染器224確定內(nèi)容條目的對(duì)應(yīng)圖像元素的初始空間分配??梢曰趫D像元素的圖像的原始長(zhǎng)寬比和大小來(lái)確定初始空間分配。例如,圖像渲染器224可以將圖像的寬高比的變化限制到預(yù)定范圍,例如0.8,包括1.25。例如,如果圖像元素具有{left:0,top:0,bottom:200,right:100}的占位符,并且圖像是200像素高乘100像素寬,則初始空間分配可以被確定為{left:0,top:0,bottom:200,right:[80,125]},其中寬度可以是包括80個(gè)像素到125個(gè)像素的范圍。圖像元素的右側(cè)的最終寬度值或位置可以隨后由空間管理器226確定以用于最終空間分配。如果圖像的高度和寬度都小于初始空間分配的尺度,則圖像位于初始空間分配的中心。
可以為內(nèi)容條目模板的每個(gè)文本元素分配文本元素渲染器224。文本元素渲染器224確定內(nèi)容條目模板的對(duì)應(yīng)文本元素的初始空間分配。如果文本元素的文本大小與初始空間分配相同,則文本元素與文本元素的相應(yīng)占位符相同。如果文本的大小小于或大于初始占位符,則所確定的初始空間分配可包括基于最小字體大小和最大字體大小的范圍。最小字體大小和最大字體大小可以基于要生成的內(nèi)容條目的大小。也就是說(shuō),字體大小可以與要生成的內(nèi)容條目的尺度的大小成比例或以其它方式變化。
可以為內(nèi)容條目模板的每個(gè)按鈕元素分配按鈕元素渲染器224。按鈕元素渲染器224確定內(nèi)容條目模板的相應(yīng)按鈕元素的初始空間分配。在一些實(shí)現(xiàn)中,用于按鈕的占位符、初始空間分配和最終空間分配可以是基于第一尺度值和第二尺度值的相同的預(yù)定大小(例如,可以使用用于按鈕的預(yù)定大小)。在其它實(shí)現(xiàn)中,如果按鈕元素的大小是定義的大小,則按鈕元素的初始空間分配與按鈕元素的相應(yīng)占位符相同。在一些實(shí)現(xiàn)中,按鈕的大小可以是靈活的,使得針對(duì)按鈕的確定的初始空間分配可以基于諸如圖像元素或文本元素的一個(gè)或多個(gè)其它元素進(jìn)行線性縮放。
可以將內(nèi)容條目模板的每個(gè)元素和/或每個(gè)渲染框的每個(gè)元素的初始空間分配發(fā)送到空間管理器226,以確定要生成的內(nèi)容條目的最終空間分配。
參考圖8,空間管理器226從元素渲染器224接收初始空間分配,以確定每個(gè)元素和/或每個(gè)渲染框的每個(gè)元素的最終空間分配。對(duì)于具有與初始空間分配相同大小的每個(gè)元素,空間管理器226確定最終空間分配與相應(yīng)的初始空間分配相同。對(duì)于具有與初始空間分配不同的大小的每個(gè)元素,空間管理器226基于相應(yīng)的初始空間分配最小范圍值來(lái)確定每個(gè)元素的最小空間分配,并且使用生長(zhǎng)模塊250的生長(zhǎng)函數(shù)修改每個(gè)元素的空間分配以利用任何剩余空間。也就是說(shuō),如果所有元素適合于元素和/或渲染框的相應(yīng)初始空間分配的最小范圍值,則空間管理器226針對(duì)每個(gè)元素和/或渲染框的每個(gè)元素使用生長(zhǎng)模塊250的生長(zhǎng)函數(shù)以每次迭代將每個(gè)元素的空間分配的尺度增加一個(gè)像素,直到空間分配的尺度不能在不與另一個(gè)元素和/或渲染框重疊的情況下進(jìn)一步增加。在一些實(shí)現(xiàn)中,生長(zhǎng)函數(shù)可以基于元素和/或成分的權(quán)重屬性值來(lái)按順序增加每個(gè)元素。也就是說(shuō),生長(zhǎng)函數(shù)可以首先增加具有最低數(shù)值權(quán)重屬性值的元素的尺寸,然后增加具有次最低數(shù)值權(quán)重屬性值的元素的尺寸等,直到可以增加的所有元素已經(jīng)增加。在一些實(shí)現(xiàn)中,如果數(shù)值權(quán)重屬性值相等,則增長(zhǎng)函數(shù)可以使圖像元素優(yōu)先于文本元素和文本元素優(yōu)先于按鈕元素。生長(zhǎng)函數(shù)迭代合格的元素,直到空間分配的尺度不能在不與另一個(gè)元素重疊的情況下進(jìn)一步增加。
在一些實(shí)現(xiàn)中,數(shù)值權(quán)重屬性值可對(duì)應(yīng)于每次迭代生長(zhǎng)元素和/或成分的像素?cái)?shù)目。例如,數(shù)值權(quán)重屬性值2可以指示元素和/或成分將增加2個(gè)像素,而其它元素和/或成分增加1個(gè)像素。
圖9A-圖9B示出了對(duì)于具有兩個(gè)元素(圖像元素310和文本元素320)的內(nèi)容條目300的生長(zhǎng)模塊250的生長(zhǎng)函數(shù)的應(yīng)用。圖像元素310被錨定到要生成的內(nèi)容條目的左邊緣,但右錨可以通過(guò)增長(zhǎng)函數(shù)擴(kuò)展。文本元素320包括以初始占位符為中心,并且左錨和右錨都可以通過(guò)生長(zhǎng)函數(shù)來(lái)擴(kuò)展。對(duì)于要生成的具有200像素寬的第一尺度值和100像素高的第二尺度值的內(nèi)容條目300,由圖像元素渲染器224為圖像元素310和/或圖像元素的渲染框確定的初始空間分配可以基于圖像的大小為100像素×100像素的{left:0,top:0,bottom:100,right:[80,120]},并且用于圖像元素310的渲染框的錨指示渲染框?qū)⒈诲^定到要生成的內(nèi)容條目的左邊緣、頂部邊緣和底部邊緣。右錨可以具有相對(duì)值50%,其指示第一渲染框的右部分在離開(kāi)待生成的內(nèi)容條目的右邊緣的內(nèi)容條目的寬度的50%處。由文本元素渲染器224為文本元素320確定的初始空間分配可以是基于文本的大小為100像素×60像素的{left:[80,120],top:0,bottom:100,right:[180,200]},并且用于文本元素320的渲染框的錨指示渲染框?qū)⒈幌蛴覍?duì)準(zhǔn)并被錨定到要生成的內(nèi)容條目的頂部邊緣和底部邊緣。左錨可以取決于圖像元素,使得文本元素320的左邊緣將與要生成的內(nèi)容條目的圖像元素310相鄰。圖9A描繪了對(duì)于來(lái)自由圖像元素渲染器224確定的對(duì)應(yīng)初始空間分配的最小右范圍值80的內(nèi)容條目300中定位的圖像元素310和來(lái)自由文本元素渲染器224確定的對(duì)應(yīng)的初始空間分配的最小左范圍值的120和最小右范圍值180的內(nèi)容條目300中定位的文本元素320。應(yīng)用生長(zhǎng)模塊250的生長(zhǎng)函數(shù),圖像元素的右范圍值可以增加一個(gè)像素到值81,可以將文本元素320的左側(cè)范圍值增加一個(gè)像素到值119,并且文本元素320的右側(cè)范圍值可以增加一個(gè)像素到值181。增長(zhǎng)函數(shù)可以迭代通過(guò)每個(gè)單個(gè)像素增量,直到圖像元素310的最終空間分配是{left:0,top:0,bottom:100,right:100},并且文本元素320的最終空間分配是{left:top:0,bottom:100,right:200},如圖9B所示。
一旦由空間管理器226已經(jīng)確定了一個(gè)或多個(gè)元素和/或渲染框的最終空間分配,則將最終空間分配發(fā)送到?jīng)_突消解器228。
參考圖10,沖突消解器228接收最終空間分配,并基于最終空間分配確定是否存在任何沖突。這樣的沖突可以包括元素和/或渲染框的重疊、超出內(nèi)容條目和/或渲染框的尺度的元素溢出、不足的余量、文本截?cái)嗪?或其它內(nèi)容條目模板專(zhuān)有的沖突。沖突消解器228可以比較每個(gè)最終空間分配的值,以確定一個(gè)元素和/或渲染框的最終空間分配的一部分是否與另一個(gè)元素和/或渲染框的最終空間分配的一部分重疊。沖突消解器228可以將每個(gè)最終空間分配的值與第一尺度值和第二尺度值進(jìn)行比較,以確定最終空間分配是否超過(guò)要生成的內(nèi)容條目的尺度值而使得元素和/或渲染框溢出內(nèi)容條目的尺度。在一些實(shí)現(xiàn)中,沖突消解器228可以向最終空間分配添加一個(gè)或多個(gè)余量值,并且比較最終余量增加的空間分配以確定是否存在不足的余量。在一些情況下,沖突消解器228可以基于內(nèi)容條目大小從沖突系統(tǒng)232(圖4所示)接收計(jì)算的余量值。在另外的實(shí)現(xiàn)中,沖突消解器228可以確定文本元素中的一個(gè)或多個(gè)詞是否被截?cái)?。在其它?shí)現(xiàn)中,沖突消解器228可以應(yīng)用從沖突系統(tǒng)232接收的其它內(nèi)容條目模板專(zhuān)有的規(guī)則。
如果存在沖突,則沖突消解器228可以從一個(gè)或多個(gè)元素和/或渲染框的集合中去除元素和/或渲染框,并且向錨定管理器222返回新的縮減的元素和/或渲染框的集合,以基于新的元素集合和/或渲染框來(lái)確定占位符。從一個(gè)或多個(gè)元素和/或渲染框中移除的元素和/或渲染框可以基于元素的優(yōu)先級(jí)值(例如,去除具有指示元素和/或渲染框在內(nèi)容條目模板的重要性較低的最高數(shù)值優(yōu)先級(jí)值的元素和/或渲染框)。在一些實(shí)現(xiàn)中,如果確定要移除的元素被指示為所需元素,則沖突消解器228可以向布局剖析器220發(fā)送數(shù)據(jù)以從內(nèi)容條目模板的集合解析新的內(nèi)容條目模板或沖突消解器228可以停止內(nèi)容條目的生成并輸出錯(cuò)誤(例如,如果沒(méi)有其它內(nèi)容條目模板可以被使用)。
如果不存在沖突,則沖突消解器228可以將用于內(nèi)容條目的數(shù)據(jù)和最終空間分配傳遞給評(píng)分器208。評(píng)分器208可以基于最終空間分配來(lái)確定內(nèi)容條目的得分。內(nèi)容條目的得分可以基于較之內(nèi)容條目模板的元素的數(shù)量的所生成的內(nèi)容條目中的元素的數(shù)量(例如,如果內(nèi)容條目模板具有4個(gè)元素,并且生成的內(nèi)容條目只能使用3,由于沖突,可以減少得分),未使用像素的數(shù)量(例如,由元素占據(jù)的總像素除以?xún)?nèi)容條目的總像素),每垂直或水平線的未使用像素的平均數(shù)量,和/或一個(gè)或多個(gè)元素的權(quán)重(例如,與具有較低權(quán)重的消除的文本元素相比,消除的圖像元素可以具有更高的權(quán)重,導(dǎo)致得分較低)。
可以對(duì)來(lái)自?xún)?nèi)容條目模板集合的若干內(nèi)容條目模板執(zhí)行生成內(nèi)容條目和元素的布局的過(guò)程,并且可以確定每個(gè)生成的內(nèi)容條目布局的得分。在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120可以對(duì)得分進(jìn)行排名并選擇最高得分生成的內(nèi)容條目。在一些實(shí)現(xiàn)中,內(nèi)容條目生成系統(tǒng)120輸出數(shù)據(jù)以將所選擇的生成的最高評(píng)分內(nèi)容條目顯示到內(nèi)容條目請(qǐng)求器202或顯示到要存儲(chǔ)的內(nèi)容條目數(shù)據(jù)庫(kù)210。
在一些實(shí)現(xiàn)中,可針對(duì)內(nèi)容條目槽尺度產(chǎn)的預(yù)定集合生布局?jǐn)?shù)據(jù),例如300像素(px)×250px、336px×280px、970px×100px、160px×600px、320px×50px等的公共內(nèi)容條目槽尺度。利用計(jì)算設(shè)備(例如服務(wù)器)上執(zhí)行的真實(shí)網(wǎng)絡(luò)瀏覽器針對(duì)內(nèi)容條目槽尺度預(yù)定集合,布局?jǐn)?shù)據(jù)可以通過(guò)使用布局生成器200來(lái)生成。因此,當(dāng)接收到具有與內(nèi)容條目槽尺度的預(yù)定集合中的一個(gè)相對(duì)應(yīng)的內(nèi)容條目槽尺度的請(qǐng)求時(shí),內(nèi)容條目槽尺度的預(yù)定集合中的一個(gè)的布局?jǐn)?shù)據(jù)可以被獲取并發(fā)送到客戶(hù)端設(shè)備,其中內(nèi)容條目的內(nèi)容條目數(shù)據(jù)在客戶(hù)端設(shè)備的顯示器上顯示。在客戶(hù)端設(shè)備上執(zhí)行的腳本然后可以使用布局?jǐn)?shù)據(jù)和內(nèi)容條目數(shù)據(jù)生成用于在客戶(hù)端設(shè)備上顯示內(nèi)容條目的顯示數(shù)據(jù),而不必重新計(jì)算布局?jǐn)?shù)據(jù)。
在一些實(shí)現(xiàn)中,布局生成器200可以是腳本,其可以對(duì)接收的內(nèi)容條目模板執(zhí)行上述步驟,以在客戶(hù)端設(shè)備處使用內(nèi)容條目模板、第一尺度值、第二尺度值和內(nèi)容條目數(shù)據(jù)來(lái)生成布局?jǐn)?shù)據(jù)和所生成的內(nèi)容條目的顯示數(shù)據(jù)。也就是說(shuō),在一些情況下,內(nèi)容條目生成系統(tǒng)120可以從客戶(hù)端設(shè)備接收對(duì)包括第一尺度值和第二尺度值的任意大小的內(nèi)容條目的請(qǐng)求。內(nèi)容條目生成系統(tǒng)120可以例如經(jīng)由第三方內(nèi)容提供商的選擇標(biāo)準(zhǔn)、關(guān)于客戶(hù)端設(shè)備的數(shù)據(jù)以及競(jìng)投的出價(jià),確定要為任意大小的內(nèi)容條目槽生成的內(nèi)容條目的第三方內(nèi)容提供商。
一旦選擇了第三方內(nèi)容提供商,就可以通過(guò)內(nèi)容條目生成系統(tǒng)120的著陸頁(yè)分析系統(tǒng)204來(lái)接收和/或確定著陸頁(yè)URL。在一些實(shí)現(xiàn)中,連同對(duì)內(nèi)容條目生成系統(tǒng)的請(qǐng)求可以一起包括場(chǎng)境數(shù)據(jù)。場(chǎng)境數(shù)據(jù)可以包括設(shè)備類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接速度數(shù)據(jù)等。場(chǎng)境數(shù)據(jù)可以用于為所生成的內(nèi)容條目選擇內(nèi)容條目數(shù)據(jù),以基于場(chǎng)境數(shù)據(jù)來(lái)定制生成的內(nèi)容條目。例如,場(chǎng)境數(shù)據(jù)可以包括指示W(wǎng)iFi網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。著陸頁(yè)分析系統(tǒng)204的圖像模塊可以基于場(chǎng)境數(shù)據(jù)選擇或排名較大數(shù)據(jù)尺寸圖像、較高清晰度視頻等。在另一實(shí)例中,場(chǎng)境數(shù)據(jù)可以包括指示2G網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。著陸頁(yè)分析系統(tǒng)204的圖像模塊可以基于場(chǎng)境數(shù)據(jù)選擇或排名較小數(shù)據(jù)尺寸圖像、較低清晰度視頻等。在其它實(shí)例中,著陸頁(yè)分析系統(tǒng)204的圖像模塊可以基于第一尺度值和第二尺度值來(lái)選擇或排名圖像。例如,圖像模塊可以基于第一尺度值和第二尺度值的縱橫比與一個(gè)或多個(gè)候選圖像的縱橫比的相似度來(lái)選擇或排序圖像。
然后,內(nèi)容條目生成系統(tǒng)120可以向客戶(hù)端設(shè)備發(fā)送腳本、內(nèi)容條目模板、第一尺度值、第二尺度值和內(nèi)容條目數(shù)據(jù),其中具有布局生成器200的腳本生成將要被生成的內(nèi)容條目的布局?jǐn)?shù)據(jù)和用于在客戶(hù)端設(shè)備的顯示器上顯示內(nèi)容條目的顯示數(shù)據(jù)。
圖11描繪了用于為內(nèi)容條目生成系統(tǒng)120的內(nèi)容條目模板創(chuàng)建配置文件的過(guò)程400。過(guò)程400包括為配置文件創(chuàng)建一個(gè)或多個(gè)成分(框402)。一個(gè)或多個(gè)成分的創(chuàng)建可以包括定義一個(gè)或多個(gè)屬性,諸如名稱(chēng)、類(lèi)型、優(yōu)先級(jí)和權(quán)重。名稱(chēng)屬性可以是設(shè)計(jì)者定義的名稱(chēng)以引用內(nèi)容條目成分。類(lèi)型屬性可以是與默認(rèn)優(yōu)先級(jí)和/或默認(rèn)權(quán)重相關(guān)聯(lián)的設(shè)計(jì)者選擇的內(nèi)容條目類(lèi)型,諸如標(biāo)題、徽標(biāo)、產(chǎn)品圖像、描述、按鈕等。優(yōu)先級(jí)屬性可以是設(shè)計(jì)者定義的值,其可以用于對(duì)內(nèi)容條目模板的元素的移除進(jìn)行優(yōu)先級(jí)排序。在一些實(shí)現(xiàn)中,值越低,優(yōu)先級(jí)越高,對(duì)于不能從生成的內(nèi)容條目去除的元素具有0值。權(quán)重屬性可以是設(shè)計(jì)者定義的值,其可以用于在附加空間可用時(shí)對(duì)內(nèi)容條目的元素的增長(zhǎng)進(jìn)行優(yōu)先級(jí)排序。
過(guò)程400還包括為配置文件創(chuàng)建一個(gè)或多個(gè)內(nèi)容條目模板(框404)。一個(gè)或多個(gè)內(nèi)容條目模板的創(chuàng)建可以包括創(chuàng)建利用上述內(nèi)容條目成分的一個(gè)或多個(gè)類(lèi)型的內(nèi)容條目模板。內(nèi)容條目模板可以包括一個(gè)或多個(gè)元素和/或帶有一個(gè)或多個(gè)元素的一個(gè)或多個(gè)渲染框,并且在一些實(shí)現(xiàn)中,可以包括渲染框中的一個(gè)或多個(gè)元素的布置,諸如垂直列表、表、產(chǎn)品表、背景圖像、形狀等,以及對(duì)齊,諸如左、右、頂、底等。一個(gè)或多個(gè)元素和/或一個(gè)或多個(gè)渲染框可以包括一個(gè)或多個(gè)錨,如本文所述。
在一些情況下,過(guò)程400可以包括使用一個(gè)或多個(gè)內(nèi)容條目槽大小(如公共內(nèi)容條目槽大小之一)來(lái)測(cè)試配置文件(框406)。也就是說(shuō),內(nèi)容條目模板的設(shè)計(jì)者可以利用執(zhí)行布局生成器200的腳本,其具有通常內(nèi)容條目槽大小作為第一尺度值和第二尺度值,以測(cè)試內(nèi)容條目模板。測(cè)試的內(nèi)容條目模板可以在測(cè)試之后提交或不進(jìn)行測(cè)試。
圖12描繪了用于基于由內(nèi)容條目生成系統(tǒng)120實(shí)現(xiàn)的著陸頁(yè)URL、第一尺度值和第二尺度值從內(nèi)容條目槽尺度的預(yù)定集合生成一個(gè)或多個(gè)內(nèi)容條目槽尺度的布局?jǐn)?shù)據(jù)的過(guò)程500的實(shí)現(xiàn)。過(guò)程500包括接收著陸頁(yè)URL、第一尺度值和第二尺度值(框502)。著陸頁(yè)URL、第一尺度值和第二尺度值可以從內(nèi)容條目生成系統(tǒng)120的數(shù)據(jù)庫(kù)接收。第一尺度值和第二尺度值可以是300px×250px、336px×280px、970px×100px、160px×600px、320px×50px等的對(duì)應(yīng)于公共內(nèi)容條目槽尺度的尺度值。在一些實(shí)現(xiàn)中,著陸頁(yè)URL、第一尺度值和第二尺度值可以替代地由第三方內(nèi)容提供商指定并接收。例如,第三方內(nèi)容提供商可以利用內(nèi)容條目生成系統(tǒng)來(lái)生成要存儲(chǔ)在數(shù)據(jù)庫(kù)中并且用于響應(yīng)于來(lái)自客戶(hù)端設(shè)備或第一方內(nèi)容提供商的后續(xù)內(nèi)容條目請(qǐng)求的不同公共內(nèi)容條目槽大小的內(nèi)容條目。內(nèi)容條目數(shù)據(jù)可以由著陸頁(yè)分析系統(tǒng)從著陸頁(yè)URL確定。
過(guò)程500還可以包括接收用于創(chuàng)建內(nèi)容條目的內(nèi)容條目模板,該內(nèi)容條目模板具有元素和/或渲染框集合(框504)??梢詮臄?shù)據(jù)庫(kù)檢索或從第三方內(nèi)容提供商接收所選擇的內(nèi)容條目模板。
過(guò)程500還可以包括為內(nèi)容條目模板的每個(gè)元素和/或渲染框生成占位符(框506)。為每個(gè)元素和/或渲染框生成的占位符可以由錨定管理器基于用于一個(gè)或多個(gè)元素和/或渲染框的關(guān)聯(lián)數(shù)據(jù)(諸如錨、第一尺度值和第二尺度值)以及內(nèi)容條目數(shù)據(jù)生成。
過(guò)程500還包括基于所生成的占位符來(lái)確定每個(gè)元素和/或渲染框的空間分配(框508)。在一些實(shí)現(xiàn)中,初始空間分配可以由元素渲染器使用每個(gè)元素和/或渲染框的每個(gè)元素的占位符來(lái)確定。最終空間分配可以由空間管理器確定。最終空間分配可以包括使用生長(zhǎng)函數(shù)來(lái)增加用于一個(gè)或多個(gè)元素和/或渲染框的最小初始空間分配的尺度。
過(guò)程500包括基于為每個(gè)元素和/或渲染框的所確定的空間分配來(lái)確定是否存在沖突(框510)。沖突消解器可以確定存在重疊沖突、溢出沖突、不足余量沖突、文本截?cái)鄾_突和/或其它內(nèi)容條目模板專(zhuān)有沖突。如果存在沖突,則沖突消解器可以從一個(gè)或多個(gè)元素和/或渲染框的集合中減除元素和/或渲染框,并且把元素和/或渲染框的新的集合返回到錨定管理器以使得基于元素和/或渲染框的新的集合確定占位符。從一個(gè)或多個(gè)元素和/或渲染框中移除的元素和/或渲染框可以基于元素的優(yōu)先級(jí)值(例如,去除指示元素在內(nèi)容條目模板的重要性較低的具有最高數(shù)值優(yōu)先級(jí)值的元素的元素和/或渲染框)。在一些實(shí)現(xiàn)中,如果確定要移除的元素被指示為所需元素,則沖突消解器可以停止內(nèi)容條目的生成并輸出錯(cuò)誤。
過(guò)程500還包括:使用所確定的空間分配,并且響應(yīng)于確定不存在沖突(框512),從內(nèi)容條目的內(nèi)容條目槽尺度的預(yù)定集合生成一個(gè)或多個(gè)內(nèi)容條目槽尺度的布局?jǐn)?shù)據(jù)。在一些實(shí)現(xiàn)中,布局?jǐn)?shù)據(jù)可以是布局的每個(gè)元素和/或每個(gè)渲染框的初始x坐標(biāo)、y坐標(biāo)、寬度、高度和/或字體大小的形式。也就是說(shuō),基于所生成的布局?jǐn)?shù)據(jù)的元素和/或渲染框的布局位置可以由(x,y,width,height,font-size)定義。包括布局位置的布局?jǐn)?shù)據(jù)可以存儲(chǔ)在數(shù)據(jù)庫(kù)中,以便在接收到具有相同內(nèi)容條目槽尺度的請(qǐng)求時(shí)供后續(xù)使用。
在一些實(shí)現(xiàn)中,當(dāng)對(duì)具有與第一尺度值和第二尺度值相同的尺度的內(nèi)容條目槽的內(nèi)容條目的請(qǐng)求創(chuàng)建布局?jǐn)?shù)據(jù)時(shí),響應(yīng)于請(qǐng)求布局?jǐn)?shù)據(jù)可以從數(shù)據(jù)庫(kù)檢索并輸出到客戶(hù)端設(shè)備。在一些情況下,可以將基于布局?jǐn)?shù)據(jù)在客戶(hù)端設(shè)備處生成內(nèi)容條目的顯示數(shù)據(jù)的腳本與布局?jǐn)?shù)據(jù)一起輸出到客戶(hù)端設(shè)備。
圖13描繪了用于向客戶(hù)端設(shè)備提供腳本并使客戶(hù)端設(shè)備生成用于生成的內(nèi)容條目的顯示數(shù)據(jù)的另一過(guò)程600。過(guò)程600包括接收第一尺度值和第二尺度值(框602)??梢詮目蛻?hù)端設(shè)備接收第一尺度值和第二尺度值,作為對(duì)內(nèi)容條目槽的內(nèi)容條目的請(qǐng)求的一部分。在一些實(shí)現(xiàn)中,也可以連同第一尺度值和第二尺度值接收?qǐng)鼍硵?shù)據(jù)。場(chǎng)境數(shù)據(jù)可包括設(shè)備類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接類(lèi)型數(shù)據(jù)、網(wǎng)絡(luò)連接速度數(shù)據(jù)等。
該過(guò)程還包括接收接收著陸頁(yè)URL(框604)??梢皂憫?yīng)于內(nèi)容條目生成系統(tǒng)120和/或由內(nèi)容條目生成系統(tǒng)120選擇,通過(guò)確定要為其生成內(nèi)容條目的第三方內(nèi)容提供商來(lái)接收著陸頁(yè)URL,諸如經(jīng)由用于第三方內(nèi)容提供商的選擇標(biāo)準(zhǔn)、關(guān)于客戶(hù)端設(shè)備的數(shù)據(jù)以及競(jìng)投的出價(jià)。一旦選擇了第三方內(nèi)容提供商,就可以通過(guò)內(nèi)容條目生成系統(tǒng)120的著陸頁(yè)分析系統(tǒng)204來(lái)接收和/或確定著陸頁(yè)URL。內(nèi)容條目生成系統(tǒng)120基于著陸頁(yè)URL確定內(nèi)容條目數(shù)據(jù)。在一些實(shí)現(xiàn)中,場(chǎng)境數(shù)據(jù)可用于確定或選擇所生成的內(nèi)容條目的內(nèi)容條目數(shù)據(jù),以基于場(chǎng)境數(shù)據(jù)定制所生成的內(nèi)容條目。例如,場(chǎng)境數(shù)據(jù)可以包括指示W(wǎng)iFi網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。著陸頁(yè)分析系統(tǒng)204的圖像模塊可以較高基于場(chǎng)境數(shù)據(jù)選擇或排序較大數(shù)據(jù)尺寸圖像、較高清晰度視頻等等。在另一實(shí)例中,場(chǎng)境數(shù)據(jù)可以包括指示2G網(wǎng)絡(luò)連接類(lèi)型的數(shù)據(jù)。著陸頁(yè)分析系統(tǒng)204的圖像模塊可以較小基于場(chǎng)境數(shù)據(jù)選擇或排序較小數(shù)據(jù)尺寸圖像、較低清晰度視頻等。在其它實(shí)例中,著陸頁(yè)分析系統(tǒng)204的圖像模塊可以基于第一尺度值和第二尺度值來(lái)選擇或排序圖像。例如,圖像模塊可以基于第一尺度值和第二尺度值的縱橫比與一個(gè)或多個(gè)候選圖像的縱橫比的相似度來(lái)選擇或排序圖像。
如果針對(duì)所接收的第一尺度值和第二尺度值已經(jīng)存儲(chǔ)了布局?jǐn)?shù)據(jù),則內(nèi)容條目生成系統(tǒng)可從數(shù)據(jù)庫(kù)檢索布局?jǐn)?shù)據(jù)(框606),并將布局?jǐn)?shù)據(jù)與內(nèi)容條目數(shù)據(jù)一起傳輸?shù)侥_本的客戶(hù)端設(shè)備,使得使用布局?jǐn)?shù)據(jù)和內(nèi)容條目數(shù)據(jù)在客戶(hù)端設(shè)備處生成內(nèi)容條目的顯示數(shù)據(jù)(框608)。如果布局?jǐn)?shù)據(jù)還沒(méi)有被存儲(chǔ),則內(nèi)容條目生成系統(tǒng)120然后可以向客戶(hù)端設(shè)備發(fā)送具有布局生成器200的腳本、內(nèi)容條目模板、第一尺度值、第二尺度值和內(nèi)容條目數(shù)據(jù)(框610),其中具有布局生成器200的腳本生成要生成的內(nèi)容條目的布局?jǐn)?shù)據(jù)和用于在客戶(hù)端設(shè)備的顯示器上顯示內(nèi)容條目的顯示數(shù)據(jù)。
圖14描繪了與著陸頁(yè)URL相關(guān)聯(lián)的著陸頁(yè)資源700的示例。著陸頁(yè)資源700包括徽標(biāo)圖像702、文本部分704、706、708、710、712、圖像714、716、718、720、722、724、726和菜單部分728。在一些實(shí)現(xiàn)中,著陸頁(yè)分析系統(tǒng)204可以包括能夠解釋與著陸頁(yè)URL相關(guān)聯(lián)的著陸頁(yè)資源700并創(chuàng)建其的可視表示(例如,圖像、顯示器等)的資源渲染器。資源渲染器可以創(chuàng)建與著陸頁(yè)URL相關(guān)聯(lián)的著陸頁(yè)資源700的“快照?qǐng)D像”和/或構(gòu)造表示與著陸頁(yè)URL相關(guān)聯(lián)的著陸頁(yè)資源700的各種成分的文檔對(duì)象模型(DOM)樹(shù)。在一些實(shí)現(xiàn)中,著陸頁(yè)分析系統(tǒng)204可以提取包括徽標(biāo)圖像702、文本部分704和圖像714的內(nèi)容條目數(shù)據(jù)。
圖14A-15B描繪了使用內(nèi)容條目模板、第一尺度值和第二尺度值的任意尺度值以及從著陸頁(yè)資源提取的內(nèi)容條目數(shù)據(jù)的生成的內(nèi)容條目的實(shí)現(xiàn)。圖14A描繪具有350像素寬的第一尺度值和50像素高的第二尺度值并使用內(nèi)容條目模板的第一生成內(nèi)容條目800。第一生成內(nèi)容條目800包括產(chǎn)品圖像802、文本部分804和徽標(biāo)圖像806。第一內(nèi)容生成內(nèi)容條目800可以包括基于指示連接速度和/或連接類(lèi)型是WiFi連接的場(chǎng)境數(shù)據(jù)的產(chǎn)品圖像802。圖14B描繪了具有350像素寬的第一尺度值和50像素高的第二尺度值并使用內(nèi)容條目模板的第二生成的內(nèi)容條目810。第二生成的內(nèi)容條目810包括文本部分804、徽標(biāo)圖像806和按鈕812。第二內(nèi)容生成的內(nèi)容條目810可以基于指示連接速度和/或連接類(lèi)型是較低速度或類(lèi)型的連接(例如2G或3G連接)的場(chǎng)境數(shù)據(jù)來(lái)排除產(chǎn)品圖像802。圖15A描繪了具有970像素寬的第一尺度值和100像素的第二尺度值并使用第二內(nèi)容條目模板的生成的內(nèi)容條目900。所生成的內(nèi)容條目900包括產(chǎn)品圖像902、文本部分904、標(biāo)識(shí)圖像906和按鈕908。產(chǎn)品圖像902是具有第一寬高比的第一圖像,其中高度大于圖像的寬度。圖15B描繪了具有970像素的第一尺度值和100像素的第二尺度值并且使用第二內(nèi)容條目模板的第二生成的內(nèi)容條目910。生成的內(nèi)容條目910包括第二產(chǎn)品圖像912、文本部分904、徽標(biāo)圖像906和按鈕908。第二產(chǎn)品圖像912是具有第二長(zhǎng)寬比的第二圖像,其中寬度大于圖片的高度。在一些實(shí)現(xiàn)中,著陸頁(yè)分析系統(tǒng)204和/或內(nèi)容條目生成系統(tǒng)120可以將第一尺度值和第二尺度值的寬高比與一個(gè)或多個(gè)候選產(chǎn)品圖像的長(zhǎng)寬比進(jìn)行比較,例如第一產(chǎn)品圖像902和第二產(chǎn)品圖像912。著陸頁(yè)分析系統(tǒng)204和/或內(nèi)容條目生成系統(tǒng)120然后可以選擇具有最接近或最相似的縱橫比的產(chǎn)品圖像(例如,通過(guò)比較二尺度值之間的聚合差)。因此,著陸頁(yè)分析系統(tǒng)204和/或內(nèi)容條目生成系統(tǒng)120可以基于具有更相似縱橫比的圖像為內(nèi)容條目模板選擇第二產(chǎn)品圖像912。
圖16是可用于實(shí)現(xiàn)客戶(hù)端設(shè)備110、內(nèi)容條目選擇系統(tǒng)108、第三方內(nèi)容服務(wù)器102、資源服務(wù)器104等的計(jì)算機(jī)系統(tǒng)1000的框圖。計(jì)算系統(tǒng)1000包括總線1005或其它用于傳送信息的通信組件和耦合到總線1005用于處理信息的處理器1010。計(jì)算系統(tǒng)1000還可以包括耦合到總線以用于處理信息的一個(gè)或多個(gè)處理器1010。計(jì)算系統(tǒng)1000還包括耦合到總線1005的主存儲(chǔ)器1015,諸如RAM或其它動(dòng)態(tài)存儲(chǔ)設(shè)備,用于存儲(chǔ)信息和由處理器1010執(zhí)行的指令。主存儲(chǔ)器1015還可以用于存儲(chǔ)位置信息、臨時(shí)變量或在由處理器1010執(zhí)行指令期間的其它中間信息。計(jì)算系統(tǒng)1000還可以包括耦合到總線1005的ROM1020或其它靜態(tài)存儲(chǔ)設(shè)備,用于存儲(chǔ)用于處理器1010的靜態(tài)信息和指令。諸如固態(tài)設(shè)備、磁盤(pán)或光盤(pán)的存儲(chǔ)設(shè)備1025耦合到總線1005,用于持久地存儲(chǔ)信息和指令。計(jì)算設(shè)備1000可以包括但不限于諸如膝上型計(jì)算機(jī)、臺(tái)式計(jì)算機(jī)、工作站、個(gè)人數(shù)字助理、服務(wù)器、刀片服務(wù)器、大型機(jī)、蜂窩電話、智能電話、移動(dòng)計(jì)算設(shè)備(例如記事本、e讀卡器等)等。
計(jì)算系統(tǒng)1000可以經(jīng)由總線1005耦合到顯示器1035,諸如液晶顯示器(LCD)、薄膜晶體管LCD(TFT)、有機(jī)發(fā)光二極管(OLED)顯示器、LED顯示器、電子紙張顯示器、等離子體顯示面板(PDP)和/或其它顯示器等,用于向用戶(hù)顯示信息。諸如包括字母數(shù)字和其它鍵的鍵盤(pán)的輸入設(shè)備1030可以耦合到總線1005,用于向處理器1010傳送信息和命令選擇。在另一實(shí)現(xiàn)中,例如在觸摸屏顯示器中,輸入設(shè)備1030可以與顯示器1035集成。輸入設(shè)備1030可以包括用于向處理器1010傳送方向信息和命令選擇并用于控制顯示器1035上的光標(biāo)移動(dòng)的諸如鼠標(biāo)、軌跡球或光標(biāo)方向鍵的光標(biāo)控制。
根據(jù)各種實(shí)施方式,本文所描述的過(guò)程和/或方法可以響應(yīng)于處理器1010執(zhí)行包含在主存儲(chǔ)器1015中的指令的布置而由計(jì)算系統(tǒng)1000實(shí)現(xiàn)。這樣的指令可以被從諸如存儲(chǔ)設(shè)備1025的另一計(jì)算機(jī)可讀介質(zhì)讀入主存儲(chǔ)器1015。包含在主存儲(chǔ)器1015中的指令的布置的執(zhí)行使得計(jì)算系統(tǒng)1000執(zhí)行本文描述的說(shuō)明性過(guò)程和/或方法步驟。還可以采用多處理布置中的一個(gè)或多個(gè)處理器來(lái)執(zhí)行包含在主存儲(chǔ)器1015中的指令。在替代實(shí)現(xiàn)中,可以使用硬連線電路來(lái)代替軟件指令或與軟件指令組合來(lái)實(shí)現(xiàn)說(shuō)明性實(shí)現(xiàn)。因此,實(shí)現(xiàn)不限于硬件電路和軟件的任何特定組合。
盡管已經(jīng)參考圖16描述了計(jì)算系統(tǒng)1000的實(shí)現(xiàn),但是本說(shuō)明書(shū)中描述的主題和功能操作的實(shí)現(xiàn)可以在其它類(lèi)型的數(shù)字電子電路中,或在計(jì)算機(jī)軟件、固件或硬件中實(shí)現(xiàn),包括本說(shuō)明書(shū)中公開(kāi)的結(jié)構(gòu)及其結(jié)構(gòu)等同物,或者它們中的一個(gè)或多個(gè)的組合。
本說(shuō)明書(shū)中描述的主題和操作的實(shí)現(xiàn)可以在數(shù)字電子電路中實(shí)現(xiàn),或者在包括本說(shuō)明書(shū)中公開(kāi)的結(jié)構(gòu)及其結(jié)構(gòu)等同物的有形介質(zhì)、固件或硬件上實(shí)現(xiàn)的計(jì)算機(jī)軟件中實(shí)現(xiàn),或者它們中的一個(gè)或多個(gè)的組合。在本說(shuō)明書(shū)中描述的主題可以被實(shí)現(xiàn)為一個(gè)或多個(gè)計(jì)算機(jī)程序,即,計(jì)算機(jī)程序指令的一個(gè)或多個(gè)模塊,編碼在一個(gè)或多個(gè)計(jì)算機(jī)存儲(chǔ)介質(zhì)上,用于由數(shù)據(jù)處理裝置執(zhí)行或控制數(shù)據(jù)處理裝置的操作。可選地或另外地,程序指令可以在人工生成的傳播信號(hào)(例如,機(jī)器生成的電、光或電磁信號(hào))上編碼,所述信號(hào)被生成以對(duì)信息進(jìn)行編碼以傳輸?shù)胶线m的接收機(jī)設(shè)備,以供數(shù)據(jù)處理設(shè)備執(zhí)行。計(jì)算機(jī)存儲(chǔ)介質(zhì)可以是或可以包括在計(jì)算機(jī)可讀存儲(chǔ)設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)基板、隨機(jī)或串行存取存儲(chǔ)器陣列或設(shè)備中,或它們中的一個(gè)或多個(gè)的組合中。此外,雖然計(jì)算機(jī)存儲(chǔ)介質(zhì)不是傳播信號(hào),但是計(jì)算機(jī)存儲(chǔ)介質(zhì)可以是在人工生成的傳播信號(hào)中編碼的計(jì)算機(jī)程序指令的源或目的地。計(jì)算機(jī)存儲(chǔ)介質(zhì)還可以是或者包括在一個(gè)或多個(gè)單獨(dú)的組件或介質(zhì)(例如,多個(gè)CD、盤(pán)或其它存儲(chǔ)設(shè)備)中。因此,計(jì)算機(jī)存儲(chǔ)介質(zhì)是有形的和非暫時(shí)的。
在本說(shuō)明書(shū)中描述的操作可以由數(shù)據(jù)處理裝置對(duì)存儲(chǔ)在一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)設(shè)備上或從其它源接收的數(shù)據(jù)執(zhí)行。
術(shù)語(yǔ)“數(shù)據(jù)處理裝置”、“計(jì)算設(shè)備”或“處理電路”包括用于處理數(shù)據(jù)的所有種類(lèi)的裝置、設(shè)備和機(jī)器,包括可編程處理器、計(jì)算機(jī)、芯片上系統(tǒng)或者多個(gè)、編程處理器的一部分或前述的組合。該裝置可以包括專(zhuān)用邏輯電路,例如FPGA或ASIC。除了硬件之外,該裝置還可以包括為所討論的計(jì)算機(jī)程序創(chuàng)建執(zhí)行環(huán)境的代碼,例如構(gòu)成處理器固件、協(xié)議棧、數(shù)據(jù)庫(kù)管理系統(tǒng)、操作系統(tǒng)、跨平臺(tái)運(yùn)行時(shí)環(huán)境、虛擬機(jī)或它們中的一個(gè)或多個(gè)的組合。裝置和執(zhí)行環(huán)境可以實(shí)現(xiàn)各種不同的計(jì)算模型基礎(chǔ)設(shè)施,諸如網(wǎng)絡(luò)服務(wù)、分布式計(jì)算和網(wǎng)格計(jì)算基礎(chǔ)設(shè)施。
計(jì)算機(jī)程序(也稱(chēng)為程序、軟件、軟件應(yīng)用、腳本或代碼)可以以任何形式的編程語(yǔ)言編寫(xiě),包括編譯或解釋語(yǔ)言、聲明性或過(guò)程語(yǔ)言,并且它可以部署在包括作為獨(dú)立程序或作為模塊、組件、子例程,對(duì)象或適合在計(jì)算環(huán)境中使用的其它單元的任何形式。計(jì)算機(jī)程序可以但不需要對(duì)應(yīng)于文件系統(tǒng)中的文件。程序可以存儲(chǔ)在保存其它程序或數(shù)據(jù)(例如,存儲(chǔ)在標(biāo)記語(yǔ)言文檔中的一個(gè)或多個(gè)腳本)的文件的一部分中,專(zhuān)用于所述程序的單個(gè)文件中,或者存儲(chǔ)在多個(gè)協(xié)同文件中(例如,存儲(chǔ)一個(gè)或多個(gè)模塊、子程序或代碼部分的文件)。計(jì)算機(jī)程序可以被部署為在一個(gè)計(jì)算機(jī)上或在位于一個(gè)地點(diǎn)或分布在多個(gè)地點(diǎn)并通過(guò)通信網(wǎng)絡(luò)互連的多個(gè)計(jì)算機(jī)上執(zhí)行。
適合于執(zhí)行計(jì)算機(jī)程序的處理器包括例如通用和專(zhuān)用微處理器,以及任何種類(lèi)的數(shù)字計(jì)算機(jī)的任何一個(gè)或多個(gè)處理器。通常,處理器將從只讀存儲(chǔ)器或隨機(jī)存取存儲(chǔ)器或兩者接收指令和數(shù)據(jù)。計(jì)算機(jī)的基本元件是用于根據(jù)指令執(zhí)行動(dòng)作的處理器和用于存儲(chǔ)指令和數(shù)據(jù)的一個(gè)或多個(gè)存儲(chǔ)器設(shè)備。通常,計(jì)算機(jī)還將包括用于存儲(chǔ)數(shù)據(jù)的一個(gè)或多個(gè)大容量存儲(chǔ)設(shè)備,例如磁盤(pán)、磁光盤(pán)或光盤(pán),或者可操作地耦合以從其接收數(shù)據(jù)或向其傳送數(shù)據(jù)。然而,計(jì)算機(jī)不需要具有這樣的設(shè)備。此外,計(jì)算機(jī)可以嵌入在另一設(shè)備中,例如移動(dòng)電話、個(gè)人數(shù)字助理(PDA)、移動(dòng)音頻或視頻播放器、游戲控制臺(tái)、全球定位系統(tǒng)(GPS)接收器或便攜式存儲(chǔ)設(shè)備(例如,通用串行總線(USB)閃存驅(qū)動(dòng)器)等。適合于存儲(chǔ)計(jì)算機(jī)程序指令和數(shù)據(jù)的設(shè)備包括所有形式的非易失性存儲(chǔ)器、介質(zhì)和存儲(chǔ)器設(shè)備,包括例如半導(dǎo)體存儲(chǔ)器設(shè)備,例如EPROM、EEPROM和閃存設(shè)備;磁盤(pán),例如內(nèi)部硬盤(pán)或可移動(dòng)盤(pán);磁光盤(pán);和CD ROM和DVD盤(pán)。處理器和存儲(chǔ)器可以由專(zhuān)用邏輯電路補(bǔ)充或并入專(zhuān)用邏輯電路中。
為了提供與用戶(hù)的交互,本說(shuō)明書(shū)中描述的主題的實(shí)現(xiàn)可以在具有用于向用戶(hù)顯示信息的顯示設(shè)備(例如,CRT(陰極射線管)或LCD監(jiān)視器)的計(jì)算機(jī)上實(shí)現(xiàn)以及鍵盤(pán)和指示設(shè)備,例如鼠標(biāo)或軌跡球,用戶(hù)可以通過(guò)該指示設(shè)備向計(jì)算機(jī)提供輸入。其它類(lèi)型的設(shè)備也可以用于提供與用戶(hù)的交互;例如,提供給用戶(hù)的反饋可以是任何形式的感覺(jué)反饋,例如視覺(jué)反饋、聽(tīng)覺(jué)反饋或觸覺(jué)反饋;并且可以以任何形式接收來(lái)自用戶(hù)的輸入,包括聲音、語(yǔ)音或觸覺(jué)輸入。
雖然本說(shuō)明書(shū)包含許多具體實(shí)施細(xì)節(jié),但是這些不應(yīng)被解釋為對(duì)所要求保護(hù)的范圍的限制,而是作為對(duì)特定實(shí)施方式特定的特征的描述。在單獨(dú)實(shí)現(xiàn)的情形中,本說(shuō)明書(shū)中描述的某些特征也可以在單個(gè)實(shí)現(xiàn)中組合實(shí)現(xiàn)。相反,在單個(gè)實(shí)現(xiàn)的情形中描述的各種特征也可以在多個(gè)實(shí)現(xiàn)中單獨(dú)地或以任何合適的子組合來(lái)實(shí)現(xiàn)。此外,雖然特征可以在上面描述為在某些組合中起作用并且甚至最初如此要求保護(hù),但是來(lái)自所要求保護(hù)的組合的一個(gè)或多個(gè)特征在一些情況下可以從組合中刪除,并且所要求保護(hù)的組合可以針對(duì)子組合或變體的子組合。
類(lèi)似地,雖然在附圖中以特定順序描繪操作,但是這不應(yīng)被理解為要求這些操作以所示的特定順序或以順序次序執(zhí)行,或者所有所示的操作被執(zhí)行以實(shí)現(xiàn)期望的結(jié)果。在某些情況下,多任務(wù)和并行處理可能是有利的。此外,上述實(shí)施方式中的各種系統(tǒng)組件的分離不應(yīng)被理解為在所有實(shí)施方式中需要這種分離,并且應(yīng)當(dāng)理解,所描述的程序組件和系統(tǒng)通??梢约稍趩蝹€(gè)軟件產(chǎn)品中或封裝到多個(gè)包含在有形媒體上的軟件產(chǎn)品中。
對(duì)“或”的引用可以被解釋為包含性的,使得使用“或”描述的任何術(shù)語(yǔ)可以指示所描述的術(shù)語(yǔ)中的單個(gè)、多于一個(gè)和所有術(shù)語(yǔ)中的任何一個(gè)。
因此,已經(jīng)描述了主題的特定實(shí)現(xiàn)。其它實(shí)現(xiàn)在所附權(quán)利要求的范圍內(nèi)。在一些情況下,權(quán)利要求中所述的動(dòng)作可以以不同的順序執(zhí)行并且仍然實(shí)現(xiàn)期望的結(jié)果。另外,附圖中描繪的過(guò)程不一定需要所示的特定順序或順序的順序,以實(shí)現(xiàn)期望的結(jié)果。在某些實(shí)現(xiàn)中,多任務(wù)和并行處理可能是有利的。
權(quán)利要求書(shū)不應(yīng)被解讀為限于所描述的順序或元件,除非聲明了該效果。應(yīng)當(dāng)理解,在不脫離所附權(quán)利要求的精神和范圍的情況下,本領(lǐng)域的普通技術(shù)人員可以進(jìn)行形式和細(xì)節(jié)上的各種改變。要求保護(hù)落入所附權(quán)利要求及其等同物的精神和范圍內(nèi)的所有實(shí)施方式。