CN107533556A - 结构化内容的基于位置的传送 - Google Patents
结构化内容的基于位置的传送 Download PDFInfo
- Publication number
- CN107533556A CN107533556A CN201680019564.7A CN201680019564A CN107533556A CN 107533556 A CN107533556 A CN 107533556A CN 201680019564 A CN201680019564 A CN 201680019564A CN 107533556 A CN107533556 A CN 107533556A
- Authority
- CN
- China
- Prior art keywords
- content
- knowledge system
- prediction knowledge
- computing device
- prediction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/909—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/048—Fuzzy inferencing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Automation & Control Theory (AREA)
- Library & Information Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在一个示例中,一种计算系统包括至少一个处理器、通信单元、和预测知识系统。所述预测知识系统可由至少一个处理器操作来:至少部分地基于计算装置的当前位置,从多个定义的地理区域确定特定地理区域,所述特定地理区域包括计算装置的当前位置;基于多个计算装置的聚合web访问历史来确定与所述特定地理区域相关联的内容源;从所述内容源接收被指定为供所述预测知识系统使用的内容;以及,经由通信单元发送所述内容的至少一部分,并且将所述内容的至少一部分发送至计算装置。
Description
背景技术
内容提供商可以经由一个或者多个网络将内容(诸如,网页、文本消息、广告、通知、或者其它内容)提供至各个装置。例如,计算装置的用户可以使计算装置将对内容的请求发送至内容提供商,并且,作为响应,计算装置可以接收所请求的内容。除了响应于明确的用户请求而提供内容之外,预测知识系统还可以以预测的方式将内容推送至装置。预测知识系统可以基于来自第三方的信息生成推送至装置的内容,同时通过使用预测知识系统来防止第三方直接将内容推送至装置,从而防止将不合需要的内容推送至装置。
发明内容
在一个示例中,一种方法包括:通过在计算装置上执行的预测知识系统,接收计算装置的当前位置的指示;通过该预测知识系统,至少部分地基于该计算装置的该当前位置,从多个定义的地理区域确定特定地理区域,该特定地理区域包括计算装置的当前位置;以及,通过预测知识系统,基于多个计算装置的聚合web访问历史来确定与特定地理区域相关联的内容源。该方法还可以包括:通过预测知识系统,从该内容源接收被指定为供预测知识系统使用的内容;以及,通过预测知识系统,将被指定为供预测知识系统使用的内容的至少一部分发送至计算装置。
在另一个示例中,一种计算系统包括至少一个处理器、通信单元、和预测知识系统。该预测知识系统可由至少一个处理器操作以:至少部分地基于计算装置的当前位置,从多个定义的地理区域确定特定地理区域,该特定地理区域包括计算装置的当前位置;基于多个计算装置的聚合web访问历史来确定与特定地理区域相关联的内容源;从该内容源接收被指定为供预测知识系统使用的内容;以及,经由通信单元发送内容的至少一部分,并且将内容的至少一部分发送至计算装置。
在另一个示例中,一种计算机可读存储介质编码有指令,该指令被执行时使计算装置的一个或者多个处理器:接收计算装置的当前位置的指示;至少部分地基于该计算装置的该当前位置,从多个定义的地理区域确定特定地理区域,该特定地理区域包括计算装置的当前位置;以及,基于多个计算装置的聚合web访问历史来确定与特定地理区域相关联的内容源。该指令可以进一步使一个或者多个处理器:从该内容源接收被指定为供预测知识系统使用的内容;以及,将该内容的至少一部分发送至计算装置。
在下面的附图和说明书中阐释了一个或者多个示例的细节。其它特征、目的、和优点将通过说明书和附图、以及权利要求书而变得显而易见。
附图说明
图1是图示了根据本公开的一种或者多种技术的包括配置为提供有关的第三方内容的上下文传送的计算系统的示例计算环境的框图。
图2是图示了根据本公开的一种或者多种技术的配置为提供有关的第三方内容的上下文传送的示例计算系统的框图。
图3是图示了根据本公开的一种或者多种技术的从内容源接收到的示例内容的框图。
图4是图示了根据本公开的一种或者多种技术的配置为提供有关的第三方内容的上下文传送的计算系统的示例操作的流程图。
图5是图示了根据本公开的一种或者多种技术的配置为提供有关的第三方内容的上下文传送的计算系统的示例操作的流程图。
具体实施方式
通常,本公开的技术可以使预测知识系统能够提供对第三方的访问,同时减少将不合需要的内容推送至装置的可能性。例如,根据本文描述的技术配置的计算系统可以执行预测知识系统,该预测知识系统可以将具有由第三方填充的结构的内容主动地提供至移动装置。即,预测知识系统可以将内容类型和该内容类型的结构提供至第三方以便第三方填充内容。通过将内容包括在结构中,预测知识系统确定内容被指定为供预测知识系统使用。
预测知识系统可以以预测的方式将第三方内容提供至用户。例如,基于计算装置的当前上下文,预测知识系统可以确定可能与该计算装置的用户有关的内容提供商。预测知识系统可以从该内容提供商获得被指定为供预测知识系统使用的内容并且将该内容发送至计算装置以便根据预测知识系统定义的结构进行输出。换句话说,计算系统可以实施本公开的技术来创建可扩展架构,各个第三方可以利用该可扩展架构来在用户可能期待内容时将该内容主动地提供至用户。
通过创建可用于预测地提供第三方内容的可扩展架构,本文描述的技术可以显著地增加用户可用的内容的量,从而可以提高预测地提供的内容的有关程度。另外,通过使第三方能够用第三方自身的内容填充预测知识系统提供的结构,本公开的技术可以避免增加预测知识系统创建这种内容所必需的精力和/或计算资源。此外,通过确定哪些内容提供商可能与计算装置的当前上下文有关并且仅提供来自这些内容提供商的内容,根据本文描述的技术配置的预测知识系统可以允许第三方创建并且提供预测内容,同时防止第三方滥用或者操纵系统。即,尽管第三方能够创建并且提供内容,但是预测知识系统维持对将会预测地提供各种内容的时间进行控制。由此,因为提供的内容更可能与各个用户的当前情况真正地有关,所以本文描述的技术可以提高用户满意度。
通常,只有在计算装置接收到来自用户的对发送信息的许可时,用户的计算装置才可以将关于该用户或者该计算装置的信息发送至计算系统。例如,在下面描述的用户装置可以收集、传输、或者可以利用关于用户的个人信息(例如,当前位置、访问的内容源、电子邮件、文本消息等)的情况中,可以为用户提供机会来控制计算装置的程序或者特征是否可以收集这种用户信息,或者控制计算装置是否可以存储并且分享这种用户信息和/或计算装置可以存储并且分享这种用户信息的方式。
另外,在计算装置存储、传输、或者使用某些数据之前,可以按照一种或者多种方式来处理该某些数据,从而去除个人身份信息。例如,可以处理用户的身份,从而使得无法确定用户的个人身份信息,或者当获得位置信息(诸如,城市街区、邮政编码、或者州县等级)时,可以将用户的地理位置一般化,从而使得无法确定用户的特定位置。由此,用户可以对收集用户的信息和计算装置存储、传输、和/或使用该信息的方式进行控制。
图1是图示了根据本公开的一种或者多种技术的包括配置为提供有关的第三方内容的上下文传送的计算系统4的示例计算环境2的框图。如在图1的示例中示出的,计算环境2还包括计算装置10和内容提供商系统20。计算系统4、计算装置10、和/或内容提供商系统10的示例包括服务器装置、台式计算机、膝上型计算机、智能电视平台、车载娱乐系统、诸如移动电话(例如,智能电话)或者个人数字助理(PDA)等移动计算装置、诸如智能手表或者头戴式计算装置等可穿戴计算装置、或者其它计算装置。在一些示例中,计算系统4和/或内容提供商系统10可以是能够经由网络进行通信来分享计算资源并且协作完成任务的计算装置的类集。即,在一些示例中,计算系统4和/或内容提供商系统20可以是“云”计算系统。
在图1的示例中,计算系统4、计算装置10、和内容提供商系统20经由网络25连接。网络25可以表示任何通信网络,诸如,基于分组的数字网络。在一些示例中,网络25可以表示任何有线或者无线网络,诸如,互联网、专用企业内联网、或者公共交换电话网(PSTN)。网络25可以包括有线和无线网络两种、以及公共和专用网络两种。
如在图1的示例中示出的,计算装置10包括一个或者多个通信单元12、用户界面(UI)装置14、UI模块16、和装置位置模块18。通信单元12可以包括网络接口卡,诸如,以太网卡、光收发器、射频收发器、或者可以发送和接收信息的任何其它类型的装置。通信单元12的其它示例可以包括蓝牙、3G和WiFi无线电组件、以及通用串行总线(USB)适配器。在一些示例中,计算装置10可以利用通信单元12经由网络25来与计算系统4、内容提供商系统20、或者其它计算装置通信。例如,计算装置10的一个或者多个组件可以将数据发送至通信单元12以便经由网络25传输至计算系统4。
计算装置10的UI装置14可以用作计算装置10的输入装置和/或输出装置。可以通过使用各种技术来实施UI装置14。例如,UI装置14可以通过使用存在敏感输入屏幕(诸如,电阻式触摸屏、表面声波触摸屏、电容式触摸屏、投射电容触摸屏、压敏屏、声脉冲识别触摸屏、或者另一种存在敏感屏幕技术)来用作输入装置。计算装置10的UI装置14可以包括可以接收来自计算装置10的用户的触觉输入的存在敏感屏幕。UI装置14可以通过检测来自用户的一个或者多个手势(例如,当用户用手指或者触控笔触摸或者点到UI装置14的一个或者多个位置时)来接收触觉输入的指示。
UI装置14可以通过使用一个或者多个显示装置中的任何显示装置(诸如液晶显示器(LCD)、点阵显示器、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、电子墨水、或者能够向计算装置10的用户输出可视信息的类似的单色或者彩色显示器)来用作输出(例如,显示)装置。例如,UI装置14可以在存在敏感屏幕处向计算装置10的用户呈现输出。UI装置14可以将输出呈现为可以与计算装置10提供的功能相关联的图形用户界面。例如,UI装置14可以呈现在计算装置10处执行的或者可由计算装置10访问的应用模块(例如,预测知识应用、电子消息应用、互联网浏览器应用等)的各种用户界面(未示出)。计算装置10的用户可以与应用模块的相应用户界面交互以使计算装置10执行与功能相关的操作。
计算装置10的UI模块16和装置位置模块18可以通过使用硬件、软件、固件或者驻留在计算装置10中的和/或在计算装置10处执行的硬件、软件、和固件的混合物来执行描述的操作。计算装置10可以用一个处理器或者用多个处理器来执行模块16和18。在一些示例中,计算装置10可以将模块16和18作为在底层硬件上执行的虚拟机来执行。模块16和18可以作为操作系统或者计算平台的服务来执行,或者可以作为在计算平台的应用层处的一个或者多个可执行程序来执行。
UI模块16可以是可操作(例如,通过计算装置10的一个或者多个处理器)来接收来自UI装置14的输入。例如,UI模块16可以接收在UI装置14处执行的用户输入的一个或者多个指示。响应于接收到用户输入的指示,UI模块16可以基于接收到的指示将数据提供至计算装置10的一个或者多个其它组件(例如,应用模块、模块18等)。UI模块16可以是可操作来为UI装置14提供要显示的输入。例如,UI模块16可以接收来自计算装置10的一个或者多个其它组件(例如,应用模块、模块18等)的要显示的数据。响应于接收到要显示的数据,UI模块16可以使UI装置14显示一个或者多个图形用户界面。即,在一些示例中,UI模块16可以使计算装置10的一个或者多个组件能够与UI装置14通信、接收在UI装置14处执行的用户输入、和/或在UI装置14处将输出提供至用户。
装置位置模块18可以是可操作(例如,通过计算装置10的一个或者多个处理器)来确定计算装置10的当前位置。例如,计算装置10可以包括用于接收GPS信号(例如,来自GPS卫星)的全球定位系统(GPS)无线电(未示出)。装置位置模块10可以分析GPS无线电接收到的GPS信号并且确定计算装置10的当前位置。计算装置10可以包括能够接收信号数据的其它无线电或者传感器装置(例如,蜂窝无线电、Wi-Fi无线电等),装置位置模块18可以根据该信号数据确定计算装置10的当前位置。在一些示例中,装置位置模块18可以将位置信息确定为坐标(例如,GPS)位置信息。在其它示例中,装置位置模块18可以将位置信息确定为一个或者多个大概位置或者相对位置,诸如,地址、地点、国家、城市、建筑的类型(例如,图书馆、机场等)。
只有计算装置10接收到来自用户的对确定信息的许可,计算装置10的一个或者多个组件才可以确定计算装置10的当前位置。另外,只有计算装置10接收到来自用户的对分享位置信息(例如,与外部服务、与一个或者多个联系人等)的许可,计算装置10才可以使用和/或传输位置信息。即,在计算装置10可以收集、数据挖掘、分析、和/或利用关于用户的个人信息的任何情况中,可以为用户提供机会来控制计算装置10的程序或者特征是否可以收集用户信息(例如,之前的通信、关于用户的电子邮件的信息、用户的社交网络、社交动作或者活动、用户的偏好、用户的当前位置、或者用户过去的位置)。还可以为用户提供机会来控制计算装置10是否可以传输这种用户信息和计算装置10可以传输这种用户信息的方式。另外,在用户装置10或者其它服务存储、传输、或者使用某些数据之前,可以按照一种或者多种方式来处理该某些数据,从而去除个人身份信息。由此,计算装置10的用户可以对计算装置10和其它服务收集并且使用关于用户的信息的方式进行控制。
在一些示例中,装置位置模块18可以周期性地确定计算装置10的当前位置,诸如,每隔15分钟、每小时、或者按照一些其它频率。在一些示例中,响应于接收到来自计算装置10的用户的输入(诸如,指示计算装置10确定当前位置的输入、指示计算装置10访问内容(例如,网页)的输入、或者其它输入),装置位置模块18可以确定计算装置10的当前位置。在一些其它示例中,装置位置模块18可以基于其它标准来确定当前位置,诸如,计算装置的一个或者多个加速度计(未示出)检测到的计算装置10的移动。
在一些示例中,装置位置模块18或者计算装置10的其它组件可以存储指示计算装置10的一个或者多个确定的当前位置和关联的确定当前位置的时间(例如,位置历史)的数据,诸如,存储在数据库中。另外或者可替代地,装置位置模块18可以将指示确定的当前位置的数据输出至计算装置10的一个或者多个其它组件。在图1的示例中,例如,装置位置模块18可以确定在科罗拉多州小镇内的当前位置,为了该应用,该小镇被给予了“滑雪镇”的名字。装置位置模块18可以将指示确定的当前位置的数据输出至通信单元12。因此,通信单元12可以将当前位置26传输至计算系统4(例如,经由网络25)。
在图1的示例中,计算系统4包括预测知识系统6和聚合web访问历史8。在各种示例中,如下面针对图2进一步描述的,计算系统4还可以包括一个或者多个其它组件。在图1的示例中,预测知识系统6可以表示可操作来确定和/或生成与一个或者多个计算装置上下文地有关的信息的硬件和软件和/或固件的类集。即,预测知识系统6可以接收来自计算装置的信息(例如,关于计算装置的信息、关于计算装置所在的物理环境的信息、关于计算装置的用户的信息、来自与计算装置的用户相关联的用户账户的信息、或者其它信息)并且基于接收到的信息确定计算装置的上下文。预测知识系统6可以使用确定的上下文来确定和/或生成被确定为可能与计算装置的用户有关的信息。然后预测知识系统6可以将可能有关的信息发送至计算装置(例如,以便向计算装置的用户显示)。按照这种方式,预测知识系统6可以允许计算装置按照及时主动的方式“智能地”为用户提供可能有用的信息。即,用户可能不需要搜索这种信息或者指示对这种信息的期望。可以按照主动的方式提供信息。
在图1的示例中,聚合web访问历史8可以是数据的类集(例如,数据库或者(多个)其它数据结构),可以使用该数据的类集来确定用户访问的内容源是什么和从哪里访问内容源。例如,在一些示例中,聚合web访问历史8可以是内容源(例如,统一资源定位符(URL))和相应位置(例如,经纬度坐标)的集合。在一些示例中,聚合web访问历史8可以包括关于内容源访问的附加信息,诸如,访问内容源的时间、传送至内容源和/或从内容源传送的数据的量、访问内容源的装置的类型、或者其它信息。
在图1的示例中,预测知识系统6可以接收计算装置10的当前位置的指示。例如,计算系统4可以包括一个或者多个通信单元。计算系统4的通信单元可以是可操作来经由网络25进行通信并且可以从计算装置10接收当前位置26。当前位置26包括识别计算装置10的当前位置(例如,在科罗拉多州滑雪镇内的位置)的信息(例如,纬度值和经度值)。在一些示例中,当前位置26还可以包括识别计算装置10的信息(诸如,装置唯一标识符)、和/或关于计算装置10的信息(诸如,装置类型、安装在计算装置10处的一个或者多个应用的指示、计算装置10的一个或者多个设置值(例如、语言、地区等)的指示、或者其它信息)。计算系统4可以将包含在当前位置26中的当前位置指示提供至预测知识系统6。
在图1的示例中,预测知识系统6可以至少部分地基于计算装置10的当前位置,从多个定义的地理区域确定特定地理区域,该特定地理区域包括计算装置的当前位置。如本文使用的,地理区域可以表示物理位置的任何类集。在一些示例中,多个定义的地理区域可以是预先定义的。例如,可以通过使用位置定义的其它方法来预先定义一个或者多个地理区域,诸如,政治边界(例如,国家、州、省、县、郡、城市、镇、直辖市、人口普查区域等)、地理边界(例如,大陆、海洋、山脉等)、或者位置定义的其它方法。在一些示例中,可以通过使用聚合web访问历史8来定义一个或者多个地理区域(例如,通过预测知识系统6)。在一些示例中,一个或者多个定义的地理区域可以是静态的。例如,定义明尼苏达州的地理区域可以始终是相同的。在一些示例中,一个或者多个定义的地理位置可以是更加动态的。例如,与大型音乐节对应的区域在该节日的持续时间可以存在,并且随着该节日变得更普及而增加和/或减少。换句话说,通常,地理区域可以是物理区域的任何静态的或者动态的定义。
预测知识系统6可以将计算装置10的当前位置与多个定义的地理区域中的一个或者多个相比较来确定哪一个地理区域包括计算装置10的当前位置。例如,各个地理区域可以由经纬度的一个或者多个函数界定。如果与计算装置10的当前位置对应的经纬度在地理区域的边界内,则可以确定当前位置被包括在该地理区域中。由此,在图1的示例中,预测知识系统6可以确定计算装置10的当前位置在包括了科罗拉多州滑雪镇的特定地理区域内。
在图1的示例中,预测知识系统6可以基于聚合web访问历史8确定与特定地理区域相关联的内容源。通常,内容源可以是内容的任何源。内容的示例可以包括网页、网站、文本文档、新闻报道、天气信息、关于位置的信息(例如,餐馆的营业时间等)、或者其它信息。换句话说,内容可以表示信息,并且内容源可以是可以从中获得内容的位置或者实体。
作为确定与特定地理区域相关联的内容源的一个示例,预测知识系统6可以访问聚合web访问历史8并且检索指示从包括科罗拉多州滑雪镇的特定地理区域访问的一些或者全部内容源的信息。预测知识系统6可以使用检索到的信息来确定与地理区域相关联的一个或者多个内容源。例如,预测知识系统6可以确定在特定地理区域内用户访问次数最多的内容源。与地理区域相关联的内容源的其它示例可以包括从地理区域最新近被访问的内容源、在从当前时间到之前的时间范围内的持续时间内最经常被访问的内容源、在地理区域内容被最多装置访问的内容源、或者其它内容源。在各个示例中,预测知识系统可以根据多种标准中的任何一种(诸如,当前时间、计算装置10的类型、各个内容源提供的内容的类型、或者其它标准)来确定与特定地理位置相关联的内容源。在图1的示例中,预测知识系统6可以将与URLwww.skivillehills.com相关联的内容提供商系统20确定为内容源。
在图1的示例中,预测知识系统6可以从内容源接收被指定为供预测知识系统使用的内容。例如,计算系统4可以将对内容的请求发送(例如,经由网络25)至内容提供商系统20。该对内容的请求可以是根据任何可应用的协议格式化的请求(诸如,超文本传输协议(HTTP)的GET请求),从而请求www.skiville.comde的网页。响应于接收到该请求,内容提供商系统20可以将内容28发送(例如,经由网络25)至计算系统4的预测知识系统6。
在图1的示例中,内容28可以是HTML数据和/或网页的其它数据。在一些示例中,内容28可以是其它类型的数据,诸如,可扩展标记语言(XML)数据、Javascript数据等。内容28的一部分可以被指定为供预测知识系统6使用。然而,内容28的另一部分可以是未被指定为供预测知识系统6使用的内容。例如,如果内容28表示www.skivillehill.com的网页,则内容28可以在网页的标题部分中包括被指定为供预测知识系统6使用的内容。该被指定为供预测知识系统6使用的内容可以包括位于科罗拉多州滑雪镇北面的滑雪镇滑雪山区域(Skiville Hill Ski Area)的滑雪道信息。
如果在www.skivillehill.com处的网页待由传统web浏览器应用显示,则被指定为供预测知识系统6使用的内容可以不被显示或者是不可用的。换句话说,本文描述的技术可以在不必建立和/或管理附加内容源的情况下,使内容提供商能够创建他们自身的被指定为供预测知识系统6使用的内容。相反,内容提供商可以利用现有的场址(例如,网页)来提供供预测知识系统6使用的附加内容。
在一些示例中,可以通过将内容包括在预测知识系统6定义的结构中来指定被指定为供预测知识系统6使用的内容28的一部分。我们从内容源检索内容,预测知识系统6可以解析内容并且提取包括在该结构中的内容以便包括在预测知识系统6推送的数据中。在图1的示例中,预测知识系统6可以将要显示的内容的至少一部分发送至计算装置10。例如,预测知识系统6可以从内容28提取被指定为供预测知识系统6使用的内容。在一些示例中,预测知识系统6可以对被指定为供预测知识系统6使用的内容执行各种格式修改或者清理技术,诸如,扫描内容中的恶意代码、确保内容符合某些定义(例如,模式)、或者其它这种技术。预测知识系统6可以输出内容的提取部分以便发送至计算装置10。计算系统10的一个或者多个通信装置可以发送(例如,经由网络25)内容部分30。
计算装置10可以接收内容部分30,并且,作为响应,可以输出接收到的内容部分的指示。例如,计算装置10可以输出内容部分的指示以便作为图形用户界面(GUI)的一部分进行显示。作为一个示例,如在图1的示例中示出的,计算装置10可以显示GUI 32。GUI 32表示预测知识应用界面的一个示例。
如在图1的示例中示出的,GUI 32包括信息卡34。信息卡34包括图像36和文本框38。图像36和文本框38可以表示由内容提供商20创建并且提供但却由计算系统4的预测知识系统6传送的内容。在一些示例中,可以根据由预测知识系统6定义的结构来显示卡34。例如,内容提供商20可以将指示图像36应该被显示为信息卡34的背景的定义包括在被指定为供预测知识系统6使用的内容28的一部分中。作为另一个示例,内容提供商20可以将指示文本38应该被显示在信息卡34的中心的文本框中的定义包括在被指定为供预测知识系统6使用的内容28的一部分中。
根据本文描述的技术配置的预测知识系统可以使第三方内容提供商能够创建并且指定供预测知识系统使用的内容。使第三方能够以分布式的方式创建预测知识系统的内容可以减少创建这种内容所必需的计算要求和行政管理。然而,本公开的技术维持对将这些第三方内容提供至用户的时间进行控制,从而减少第三方提供商或者其它提供商可能试图将不是直接有关的或者可能是不合需要的内容提供至用户的风险。此外,通过维持集中式预测知识系统,本文描述的技术不需要用户安装和/或使用多个应用来从多个源获得有关的实时信息。通过这种方式,本公开的技术可以实现更有效的并且统一的用户体验,同时向第三方内容开放预测知识系统。
图2是图示了根据本公开的一种或者多种技术的配置为提供有关的第三方内容的上下文传送的计算系统4的一个示例的框图。计算系统4可以包括硬件、固件、软件、或者其任何组合。在图2的示例中,计算系统4可以包括具有各种硬件、固件、和软件组件的硬件装置(诸如,服务器计算机)。图2仅图示了计算系统4的一个特定示例,并且根据本公开的技术可以使用计算系统4的许多其它示例。
如在图2的具体示例中示出的,计算系统4包括一个或者多个处理器40、一个或者多个通信单元42、和一个或者多个存储装置44。计算系统4存储在存储装置44处,计算系统4进一步包括预测知识系统6、聚合web访问历史8、地理区域48、区域内容源49、和内容缓存50。预测知识系统6包括历史管理模块52、区域管理模块54、和内容管理模块56。虽然在图2中作为单个计算系统示出,但是在其它示例中,计算系统4可以包括位于不同位置的一个或者多个组件(例如,经由图1的网络25连接)。即,在一些示例中,计算系统4可以是传统的计算系统,而在其它示例中,计算系统4可以是分布式或者“云”计算系统。
各个组件40、42、和44均可以(物理地、通信地、和/或操作地)互相连接以实现组件间通信。在图2的示例中,部件40、42、和44可以通过一个或者多个通信信道(COMM.CHANNEL)46耦合。在一些示例中,通信信道46可以包括系统总线、网络连接、进程间通信数据结构、或者用于传送数据的任何其它信道。在其它示例(诸如,在计算系统4是分布式计算系统或者基于云的计算系统的示例)中,通信信道46可以包括一个或者多个网络连接,诸如,图1的网络25的部分。预测知识系统6、聚合web访问历史8、地理区域48、区域内容源49、内容缓存50、和/或模块52、54、和56还可以在彼此之间传送信息以及与计算系统4的其它组件传送信息。
如在图2的示例中示出的,处理器40可以配置为实施功能和/或对在计算系统4内执行的指令进行处理。例如,处理器40可以能够对存储在存储装置44中的指令进行处理。处理器40的示例可以包括一个或者多个微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或者等效的离散或者集成式逻辑电路系统。
在图2的示例中,通信单元42可以配置为经由一个或者多个网络(诸如,图1的网络25)与外部装置通信。通信单元42可以包括网络接口卡(诸如,以太网卡)、光收发器、射频收发器、或者可以发送和接收信息的任何其它类型的装置。通信单元12的其它示例可以包括蓝牙、3G和WiFi无线电组件、以及通用串行总线(USB)接口。在一些示例中,计算系统4可以利用通信单元42来与一个或者多个外部装置(诸如,图1的计算装置10和/或内容提供商系统20)无线通信。
在图2的示例中,存储装置4可以是可操作来存储信息以便在计算系统4的操作期间进行处理。例如,计算系统4可以存储数据,处理器40可以访问该数据以执行一个或者多个程序。在一些示例中,存储装置44表示临时存储器,这意味着存储装置44的主要目的不是长期存储。例如,计算系统4的存储装置44可以是易失性存储器,这意味着如果存储装置44被断电,则不会保留已存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、和本领域已知的其它形式的易失性存储器。
在一些示例中,存储装置44还包括一种或者多种计算机可读存储介质。同样,存储装置44可以配置为比易失性存储器存储更大量的信息。存储装置48可以进一步配置以便长期存储信息。在一些示例中,存储装置44包括非易失性存储元件,这意味着存储装置44可以通过上电/掉电周期来维持信息。非易失性存储器的示例包括磁硬盘、光盘、软盘、闪速存储器、或者电可编程存储器(EPROM)或者电可擦除可编程(EEPROM)存储器的形式。在一些示例中,存储装置44可以存储程序指令和/或与预测知识系统6、和模块52、54和/或56相关联的程序指令和/或信息(例如,数据),诸如在程序执行期间。
在一些示例中,计算系统4可以包括在图2的示例中未示出的其它组件。例如,计算系统4可以包括一个或者多个输入装置(诸如,配置为通过触觉、音频、或者视频反馈接收来自用户的输入的装置)和/或一个或者多个输出装置(诸如,通过使用触觉、音频、或者视频刺激来将输出提供至用户的装置)。
在图2的示例中,预测知识系统6的历史管理模块52可以是可操作来生成和/或维持聚合web访问历史8。聚合web访问历史8可以表示指示一个或者多个用户访问的内容源和访问各个内容源的相应地理位置的数据的类集(例如,数据库或者(多个)其它数据结构)。即,聚合web访问历史8可以是内容源访问记录。访问内容源可以是使能够与内容源交互的任何动作。例如,点击在web浏览器中的链接或者将URL输入该web浏览器可以表示访问有关的网页。访问内容源的其它示例可以包括打开应用(例如,“应用”)、发送或者接收消息(例如,文本消息、电子邮件等)至内容源或者与该内容源相关联的用户、从内容源下载歌曲或者其它媒体、或者与内容源的其它接触。
同样,在一些示例中,聚合web访问历史8可以是内容源(例如,URL)和访问各个内容源的相应位置(例如,经纬度坐标)的集合。在一些示例中,聚合web访问历史8可以包括关于内容源访问的附加信息,诸如,访问内容源的时间、传送至内容源和/或从内容源传送的数据的量、访问内容源的装置的类型、或者其它信息。
历史管理单元52可以通过使用从一个或者多个计算装置接收到的访问信息来生成和/或维持聚合web访问历史8。例如,计算系统4可以接收(例如,经由图1的网络25)来自计算装置的信息,该信息指定由计算装置执行的一个或者多个内容源访问、当访问内容源时计算装置所在的位置、和访问内容源的时间。历史管理模块52可以接收来自多个计算装置的这种信息,并且将该信息聚合并且存储在聚合web访问历史8。在一些示例中,历史管理模块52可以去除或者修改存储在聚合web访问历史8中的信息。例如,历史管理模块52可以去除比阈值时间量更久(例如,1周、1个月、1年等)的关于内容源访问的信息。
在图2的示例中,区域管理模块54可以是可操作来生成和/或维持地理区域48。地理区域48可以表示定义一个或者多个地理区域的数据的类集(例如,数据库或者(多个)其它数据结构)。例如,地理区域48可以是具有描述特定地理区域的条目的数据库。
地理区域可以指定物理世界的部分。在地理区域48内,在一些示例中,可以通过使用几何来定义地理区域。例如,可以通过使用地理位置(例如,纬度值和经度值)和表示围绕该位置的半径范围的距离值来定义在地理区域48中的地理区域。在一些示例中,可以通过使用多个地理位置来定义在地理区域48内的地理区域,该各个地理位置定义在地理区域的界限上的点。例如,地理区域可以是通过使用四个地理位置作为四边形的顶点来定义的四边形区域。在一些示例中,可以通过使用各种其它几何定义来定义在地理区域48内的地理区域。在一些示例中,地理区域48定义的地理区域可以是彼此不同的,而在其它示例中,一些地理区域可以是重叠的。在一些示例中,地理区域可以是分层的。即,可以将一些地理区域完全包括在其它地理区域中。
在一些示例中,预测知识系统6的区域管理模块54可以基于聚合web访问历史8来生成和/或维持地理区域48。例如,区域管理模块54可以访问聚合web访问历史8并且确定计算装置访问特定内容源的位置。基于该确定的位置,区域管理模块54可以定义在地理区域48内的包括确定的位置的区域。作为另一个示例,区域管理模块54可以基于访问内容源的是什么、访问内容源的位置、和/或访问内容源的时间来执行机器学习技术以定义在地理区域48内的区域。
在一些示例中,区域管理模块54可以基于聚合web访问历史8来周期性地更新和/或修改地理区域48。例如,区域管理模块54可以访问聚合web访问历史8来获得最近聚合的内容。基于该新的信息,区域管理模块54可以更新、修改、和/或去除在地理区域48内定义的区域。
虽然在图2的示例中被描述为由计算系统4的一个或者多个组件生成和/或维持,但是在一些示例中,聚合web访问历史8和/或地理区域48可以预先配置。作为一个示例,聚合web访问历史8可以由另一计算系统(未示出)确定并且安装或者存储在计算系统4处。作为另一个示例,地理区域48可以是预先定义的静态区域(诸如,表示国家、州、省、县、郡、都会区、城市、镇、人口普查区)和/或其它预先定义的区域的类集例如,地理区域48可以包括由政治边界、地理边界、或者其它边界之前定义的区域的地理编码的数据库。
在图2的示例中,区域管理模块54可以是可操作来生成并且维持区域内容源49。区域内容源49可以表示,对于在地理区域48内定义的各个区域,指示与该区域相关联的一个或者多个内容源的数据的类集(例如,数据库或者(多个)其它数据结构)。即,区域内容源49可以为各个地理区域指定一个或者多个关联的内容源。
区域管理模块54可以基于聚合web访问历史8来确定内容源与特定地理区域相关联。例如,区域管理模块54可以访问聚合web访问历史8来确定从该特定地理区域内访问的所有内容源。在一些示例中,区域管理模块54可以将从特定地理区域内访问的所有内容源与特定地理区域相关联。即,在一些示例中,区域内容源49可以将从特定地理区域访问的所有内容源指示为该特定地理区域的关联的内容源。然而,在一些示例中,区域管理模块54可以仅选择从特定地理区域内访问的内容源的一部分以便与特定地理区域相关联。
在一些示例中,区域管理模块54可以另外或者可替代地基于与每一个内容源相关联的相应普及性分数来选择内容源以与特定地理区域相关联。与内容源相关联的普及性分数可以是对内容源在该地理区域中的用户中的普及程度的度量。由此,内容源针对不同的地理区域可以具有不同的普及性分数。
区域管理模块54可以基于各种标准来确定特定区域的内容源的关联的普及性分数,诸如,从特定地理区域内访问内容源的总次数、在具体的持续时间内(例如,在过去一小时内、在过去一天内、在过去一周内等)从特定地理区域内访问内容源的次数、从特定地理区域内访问内容源的频率、是否从除了特定地理区域之外的地理区域内访问内容源和多久一次从除了特定地理区域之外的地理区域内访问内容源、或者其它标准。访问内容源越多和/或越经常访问内容源,与该内容源相关联的普及性分数可能更高。
在一些示例中,另外或者可替代地,区域管理模块54可以基于来自用户的反馈确定普及性分数。例如,预测知识系统6可以将从内容源获得的内容提供至一个或者多个用户。其后,预测知识系统6可以接收来自用户的关于提供的内容的适用性的反馈。作为一个示例,用户可以输入选择或者解除包括该内容的用户界面元素。计算装置可以将选择或者解除的指示发送至计算系统4。基于选择或者解除,区域管理模块54可以相应地增加或者减少内容源的普及性分数。区域管理模块54可以将特定地理区域的指示、与其关联的内容源、和/或确定的普及性分数存储在区域内容源49中。
在图2的示例中,内容管理模块56可以是可操作来生成和/或维持内容缓存50。内容缓存50可以存储从内容提供商接收到的被指定为供预测知识系统6使用的内容的缓存版本、以及存储该缓存版本的时间。即,当预测知识系统6接收到来自内容提供商(例如,图1的内容提供商系统20)的内容时,内容管理模块56可以存储或者更新在内容缓存50中的被指定为供预测知识系统6使用的内容的一部分。
根据本文描述的技术,计算系统4的预测知识系统6可以访问聚合web访问历史8、地理区域48、区域内容源49、和/或内容缓存50,从而按照预测的方式将与用户的当前位置有关的第三方内容提供至该用户的计算装置。例如,计算系统4的预测知识系统6可以接收计算装置的当前位置的指示。例如,计算系统4的通信单元42可以周期性地接收(例如,经由图1的网络25)指示图1的计算装置10的当前位置的数据。通信单元42可以将该数据提供至(例如,经由通信信道46)预测知识系统6。
基于计算装置10的当前位置,预测知识系统6可以访问地理区域48来确定包括计算装置10的当前位置的特定地理区域。在一些示例中,预测知识系统6可以确定计算装置10的当前位置不被包括在地理区域存储装置48内定义的任何地理区域中。在这种情况下,预测知识系统6可以不执行任何操作、或者执行其它操作。然而,在一些示例中,预测知识系统6可以确定计算装置10的当前位置在一个或者多个地理区域内。
当地理区域存储装置48仅包括非重叠区域时,预测知识系统6可以确定单个包括计算装置10的当前位置的地理区域。在其它示例(例如,当地理区域存储装置48包括重叠区域时)中,预测知识系统6可以确定一个或者多个包括计算装置10的当前位置的地理区域。在一些这种示例中,预测知识系统6可以仅选择一个包括计算装置10的当前位置的地理区域或者多个(例如,2个、3个等)包括计算装置10的当前位置的地理区域。作为一个示例,预测知识系统6可以基于地理区域的大小来从包括当前位置的地理区域选择。例如,预测知识系统6可以选择最小的包括当前位置的地理区域、最小的两个包括当前位置的地理区域等。在一些示例中,预测知识系统6可以基于其它标准(诸如,当前位置与各个地理区域的图心的接近程度)来从包括当前位置的地理区域选择。
基于选择的地理区域(或者多个区域),预测知识系统6可以确定与选择的地理区域(或者多个区域)相关联的一个或者多个内容源。即,预测知识系统6可以访问区域内容源49,并且对于选择的地理区域,确定与选择的区域相关联的一个或者多个内容源。
在确定内容源(或者多个源)之后,预测知识系统6可以从内容源获得被指定为供预测知识系统6使用的内容。例如,预测知识系统6可以生成对内容的请求并且通信单元42可以将该请求发送至内容源。作为响应,预测知识系统6可以接收所请求的内容。接收到的内容可以包括未被指定为供预测知识系统6使用的内容和被指定为供预测知识系统6使用的内容。例如,接收到的内容可以是在网页的标题中包括被指定为供预测知识系统6使用的内容的网页。作为另一个示例,内容可以是应用模块,并且被指定为供预测知识系统6使用的内容可以被包括在关于该应用模块的元数据中。
在接收到来自内容源的内容之后,预测知识系统6可以提取被指定为供预测知识系统6使用的内容。被指定为供预测知识系统6使用的内容可以包括被指定为供预测知识系统6使用的内容的至少一个结构定义。即,被指定为供预测知识系统6使用的内容可以包括指示被指定为供预测知识系统6使用的内容待由计算装置显示的方式的信息。可以被包括在被指定为供预测知识系统6使用的内容中的结构定义的示例包括内容的文本部分待被显示的字体、字体大小、或者字体样式的指示、该文本部分待被显示的对齐的指示、内容的背景图像待被显示的方式(例如,展开的、平铺的、居中等)的指示、或者指定被指定为供预测知识系统6使用的内容待由计算装置显示的方式的任何其它信息。
在一些示例中,预测知识系统6可以确定被指定为供预测知识系统6使用的内容的新近性程度。例如,预测知识系统6可以访问内容缓存50来确定被指定为供预测知识系统6使用的内容最近是否已经改变。即,预测知识系统6可以将被指定为供预测知识系统6使用的内容与存储在内容缓存50中的内容的版本相比较来确定被指定为供预测知识系统6使用的内容的新近性程度。
如果接收到的内容与存储的版本不同和/或如果在存储该存储的版本的时间与当前时间之间仅存在小的时间差,则预测知识系统6可以确定被指定为供预测知识系统6使用的内容的新近性程度满足阈值新近性程度,并且由此确定内容可能与用户有关。阈值新近性程度可以是定义新近性程度的任何合理的时间段,诸如,一小时、一天、一个月、或者其它时间段。即,预测知识系统6可以确定如果被指定为供预测知识系统6使用的内容在过去一小时、过去一天、过去一个月等中已经改变,则新近性程度满足阈值。在一些示例中,阈值新近性程度可以基于内容的类型或者其它因子来变化。
如果接收到的内容与存储的版本不同,则通过用接收到的版本替换内容的存储的版本,预测知识系统6可以更新内容缓存50。如果接收到的内容与存储的版本相同,则预测知识系统6可以不修改内容缓存50。这可以确保随后的检查能提供对内容新近性程度的准确确定。
如果被指定为供预测知识系统6使用的内容的新近性程度足够高,则预测知识系统6可以使通信单元42利用根据内容中包括的任何结构定义显示内容的指令将被指定为供预测知识系统6使用的内容的至少一部分发送至计算装置。计算装置可以接收内容和指令并且根据接收到的结构定义将内容显示为GUI的一部分。例如,计算装置可以将接收到的内容显示为在计算装置处执行的预测知识应用的用户界面元素(例如,卡)。
通过从一个或者多个内容源获得被指定为供预测知识系统使用的内容并且将被指定为供预测知识系统使用的内容的至少一部分提供至计算装置以便进行显示,计算系统4可以使第三方能够按照预测的方式创建并且提供各种内容,不需要计算装置的用户请求或者指示对内容的期望。此外,通过基于计算装置的当前位置根据该当前位置确定内容源来获得被指定为供预测知识系统使用的内容,计算系统4可以确保提供至计算装置的第三方内容可能与计算装置的用户有关并且避免可能从允许第三方确定内容的潜在关联产生的可能的问题。
图3是图示了根据本公开的一种或者多种技术的从内容源接收到的示例内容60的框图。仅出于说明之目的,下面在图1和图2的上下文内对图3的示例进行描述。
在图3的示例中,内容60可以表示从内容提供商20接收到的内容28的一个示例。例如,计算系统4的预测知识系统6可以接收来自计算装置10的当前位置26并且确定包括该当前位置的特定地理区域。预测知识系统6可以确定与该特定地理区域相关联的内容,诸如,内容提供商系统20。预测知识系统6可以生成对内容的请求并且将该对内容的请求发送至内容提供商系统20。例如,对内容的请求可以是指示内容源URL的HTTP GET请求。响应于该请求,预测知识系统6可以接收内容60。
如在图3的示例中示出的,内容60是表示网页的HTML文档。内容60包括未被指定为供预测知识系统6使用的内容部分80。内容部分80可以被其它应用(例如,web浏览器)使用来显示网页或者按照一些其它方式被使用。
内容60还包括被指定为供预测知识系统6使用的内容部分62、72。内容部分62和72可以分别通过包括指定符61和71而被指定为供预测知识系统6使用。即,指定符61和指定符71(例如,相应结束标记)可以指定被指定为供预测知识系统6使用的内容。当在图3的示例中将内容示出为标记的集合时,也可以按照其它方式将内容指定为供预测知识系统6使用的内容,诸如,通过在内容60中内容所出现的位置。
在图3的示例中,内容部分62和72分别包括位置指示符66和76。位置指示符66和76可以指示对应的地理区域或者相应内容部分被指定以便使用的位置。即,位置指示符66可以指示地理区域或者内容部分62被指定为供预测知识系统6使用的位置,并且位置指示符76可以指示地理区域或者内容部分72被指定为供预测知识系统6使用的位置。在图3的示例中,位置指示符66和76可以指定地理位置的纬度值和经度值。在一些示例中,位置指示符可以通过使用几何定义、地标参考、或者位置的其它指示来指定地理区域或者位置。
当接收到的内容包括多个被指定为供预测知识系统6使用的内容部分时,预测知识系统6可以从该多个内容部分确定特定内容部分来发送至计算装置10以便进行显示。预测知识系统6可以至少部分地基于地理区域或者各个内容部分被指定的地理位置,来确定该特定内容部分。例如,预测知识系统6可以确定哪一个内容部分被指定以便在与包括计算装置10的当前位置的特定地理区域对应的位置中使用。作为另一个示例,预测知识系统6可以确定哪一个内容部分被指定以便在最接近计算装置10的当前位置的位置处使用。在一些示例中,预测知识系统6可以基于其它标准来确定特定内容部分,诸如,测得的各个内容部分在包括计算装置10的当前位置的特定地理区域中的普及性。换句话说,预测知识系统6可以确定可能与计算装置10的用户有关的内容部分。
在图3的示例中,内容部分62和72分别包括结构定义68A、68B、和78A、78B。结构定义68A、68B、和78A、78B可以指示被指定为供预测知识系统6使用的相应内容待由计算装置(例如,计算装置10)显示的方式。即,结构定义通常可以指定应该将内容显示为在计算装置处执行的预测知识应用的一部分的方式。在图3的示例中,结构定义68A可以指定指示的背景图像“skivillebg.jpg”应该被拉伸来填满将包括内容部分61的用户界面元素。类似地,结构定义78A可以指定指示的背景图像“skivillebg.jpg”应该被拉伸来填满将包括内容部分71的用户界面元素。结构定义68B和78B可以分别指定内容部分61和71的文本部分的字体类型、字体大小、以及水平对齐和垂直对齐。当将内容部分61和/或内容部分71的至少一部分发送至计算装置10以便进行显示时,预测知识系统6可以包括结构定义68A、68B和/或78A、78B的指示,从而使计算装置10根据结构定义68A、68B和/或78A、78B预测地输出信息。
当在图3的示例中将接收到的内容示出为包括两个分开的被指定为供预测知识系统6使用的内容部分时,在各种示例中,接收到的内容包括任何数量的分开的内容部分。例如,动物园喂养网站可以包括大量的被指定为供预测知识系统6使用的内容部分,各个内容部分与不同的动物展览对应。按照这种方式,第三内容提供商可以提供多种不同类型的预测内容,无需创建多个网页或者其它内容源。
图4是图示了根据本公开的一种或者多种技术的配置为提供有关的第三方内容的上下文传送的计算系统的示例操作的流程图。仅出于说明之目的,下面在图1和图2的上下文内对图4的示例进行了描述。
在图4的示例中,预测知识系统(例如,在计算系统4处执行的预测知识系统6)可以接收计算装置(诸如,计算装置10)的当前位置的指示(120)。至少部分地基于当前位置,预测知识系统6可以从多个定义的地理区域确定包括当前位置的特定地理区域(122)。在一些示例中,预测知识系统6可以确定超过一个特定地理区域。在其它示例中,预测知识系统6可以仅确定单个特定地理区域。
在图4的示例中,预测知识系统6可以基于聚合web访问历史(例如,计算系统4的聚合web访问历史8)来确定与特定地理区域相关联的内容源(124)。例如,预测知识系统6可以确定与特定地理区域相关联的URL。在一些示例中,预测知识系统6可以确定超过一个内容源。在其它示例中,预测知识系统6可以确定与特定地理区域相关联的单个内容源。
在图4的示例中,预测知识系统6可以从内容源接收被指定为供预测知识系统使用的内容(126)。例如,预测知识系统6可以生成并且发送对内容的请求,诸如,对位于URL处的网页的HTTP请求。响应于该请求,预测知识系统6可以接收该网页。网页可以包括未被指定为供预测知识系统6使用的内容(例如,定义供web浏览器使用的网页的代码)、和被指定为供预测知识系统6使用的内容两者。作为被指定为供预测知识系统6使用的内容的示例,网页可以包括待由预测知识系统6发送至计算装置以便由在计算装置处执行的预测知识应用呈现的定义一个或者多个用户界面元素的代码(例如,在标题区)。
在图4的示例中,预测知识系统6可以将被指定为供预测知识系统6使用的内容的至少一部分发送至计算装置10以便进行显示(128)。例如,预测知识系统6可以发送定义一个或者多个用户界面元素的代码的至少一部分。计算装置10可以接收内容并且输出内容以便进行显示。例如,计算装置10可以将信息卡34显示为GUI 32的一部分。按照这种方式,计算系统4的预测知识系统6可以使第三方能够将内容提供至用户,同时确保提供至用户的内容可能是有关的。
图5是图示了根据本公开的一种或者多种技术的配置为提供有关的第三方内容的上下文传送的计算系统的示例操作的流程图。仅出于说明之目的,下面在图1和图2的上下文内对图5的示例进行了描述。
在图5的示例中,预测知识系统(例如,在计算系统4处执行的预测知识系统6)可以基于聚合web访问历史来确定多个定义的地理区域(200)。在一些示例中,聚合web访问历史可以包括计算装置访问的内容源的指示和当计算装置访问内容源时计算装置所处的地理位置。
在图5的示例中,预测知识系统6可以接收计算装置的当前位置的指示(202)。例如,预测知识系统6可以经由网络25接收计算装置10的当前位置。在一些示例中,当前位置的指示可以是表示当前位置的纬度值和经度值。基于当前位置,预测知识系统6可以确定包括当前位置的特定地理区域(204)。在一些示例中,预测知识系统6可以确定当前位置被包括在多个地理区域中(206)。如果计算装置10的当前位置被包括在多个地理区域中(操作206的“是”分支),则在一些示例中,预测知识系统6可以从该多个地理区域选择一个或者多个地理区域。例如,在图5的示例中,预测知识系统6可以从多个地理区域选择最小的地理区域作为特定地理区域(208)。如果计算装置10的当前位不被包括在多个地理区域中(操作206的“否”分支),预测知识系统6可以不必进行该选择。
在图5的示例中,预测知识系统6可以基于聚合web访问历史来确定与特定地理区域相关联的一个或者多个内容源(210)。在图5的示例中,预测知识系统6可以确定与特定地理区域相关联的多个内容源。在该示例中,预测知识系统6可以基于与一个或者多个内容源中的每一个相关联的相应普及性测量来确定与特定地理区域相关联的特定内容源(212)。
在图5的示例中,预测知识系统6可以从特定内容源接收被指定为供预测知识系统6使用的内容(214)。例如,预测知识系统6可以生成并且发送对内容的请求(例如,HTTP GET请求)并且响应于该请求接收内容。在一些示例中,接收到的内容可以包括被指定为供预测知识系统6使用的内容和未被指定为供预测知识系统6使用的内容两者。
在图5的示例中,预测知识系统6可以确定接收到的内容是否包括被指定为供预测知识系统6使用的内容的多个部分(216)。即,预测知识系统6可以确定内容源接收到的内容是否包括被指定为供预测知识系统6使用的内容的多个部分或者实例,各个部分或者实例与不同的地理区域或者位置对应。如果内容包括被指定为供预测知识系统6使用的内容的多个部分(操作216的“是”分支),则预测知识系统6可以基于特定地理区域确定特定内容部分(218)。即,预测知识系统6可以确定哪一个内容部分与计算装置10的当前位置对应。如果内容仅包括被指定为供预测知识系统6使用的内容的一个部分(操作216的“否”分支),则预测知识系统6可以不必确定特定部分。
在图5的示例中,预测知识系统6还可以接收被指定为供预测知识系统6使用的内容的至少一个结构定义(220)。该至少一个结构定义可以指示被指定为供预测知识系统6使用的内容待由计算装置(例如,计算装置10)显示的方式。在一些示例中,至少一个结构定义可以被包括在被指定为供预测知识系统6使用的内容中。在一些示例中,至少一个结构定义可以与被指定为供预测知识系统6使用的内容分离。
在图5的示例中,预测知识系统6可以确定被指定为供预测知识系统6使用的内容的新近性程度(222)。例如,预测知识系统6可以将接收到的被指定为供预测知识系统6使用的内容与内容的缓存版本相比较。如果两者不同,或者在存储缓存版本的时间与当前时间之间的差足够小,则预测知识系统6可以将内容的至少一部分发送至计算装置10以便根据至少一个结构定义进行显示(224)。计算装置10的预测知识应用可以输出内容以便根据至少一个结构定义在作为GUI的一部分的用户界面元素内进行显示。
在图5的示例中,预测知识系统6可以从计算装置10接收选择或者解除包括内容的用户界面元素的指示(226)。例如,计算装置10的用户可以认为内容无关或者不合需要,并且可以解除包括内容的用户界面元素。基于接收到的指示,预测知识系统6可以修改与特定地理区域相关联的内容源相关联的相应普及性度量(228)。按照这种方式,预测知识系统6可以确保与特定地理区域相关联的内容源的随后的确定不太可能预测地将内容从内容源提供至在特定地理区域中的用户。
本说明书附有涉及所公开的主题的各个实施例的多项权利要求。要了解,所公开的主题的实施例还可以在所述权利要求的各种组合的范围内,诸如,它们之间的依赖性和多种依赖性。因此,当提及这种依赖性时,所有这些依赖性和多种依赖性明确或者隐含地形成本说明书的一部分。
在一个或者多个示例中,可以将所描述的功能实施在硬件、软件、固件、或者它们的任何组合中。如果在软件中实施,那么可以将功能作为一个或者多个指令或者代码存储在计算机可读介质上或者通过计算机可读介质来传输并且通过基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,该计算机可读存储介质与有形介质(诸如,数据存储介质或者通信介质)对应,并且包括促进将计算机程序从一个地方传送至另一个地方的任何介质,例如,根据通信协议。按照这种方式,计算机可读介质通常可以与(1)非暂时性的有形计算机可读存储介质或者(2)诸如信号或者载波等通信介质对应。数据存储介质可以是可通过一个或者多个计算机或者一个或者多个处理器进行访问以检索用于实施在本公开中描述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读存储介质。
例如,但不限于,这种计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或者其它光盘存储装置、磁盘存储装置、或者其它磁存储装置、闪速存储器、或者可以用于以指令或者数据结构的形式存储期望的程序代码或者可以通过计算机访问的任何其它介质。同样,将任何连接适当地称为计算机可读介质。例如,如果通过使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)、或者诸如红外、无线电、和微波等无线技术来从网站、服务器、或者其它远程源发送指令,那么同轴电缆、光纤电缆、双绞线、DSL、或者诸如红外、无线电、和微波等无线技术包括在介质的定义中。然而,应该明白,计算机可读存储介质和数据存储介质不包括连接、载波、信号、或者其它瞬态介质,而是涉及非瞬态的有形存储介质。如本文使用的磁盘和光盘包括压缩式光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常磁性地复制数据,而光盘利用激光光学地复制数据。上面的组合还应该被包括在计算机可读介质的范围内。
指令可以通过一个或者多个处理器(诸如,一个或者多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)、或者其它等效的集成或者离散逻辑电路系统)执行。因此,本文所使用的术语“处理器”可以指任何前述的结构或者适用于实施本文描述的技术的任何其它结构。另外,在一些方面中,可以将本文描述的功能提供在专用的硬件模块和/或软件模块内。同样,可以在一个或者多个电路或者逻辑元件中充分地实施该技术。
本公开的技术可以实施在各种装置或者设备中,包括,无线手机、集成电路(IC)、或者一组IC(例如,芯片集)。在本公开中,将各种组件、模块、或者单元描述为用于强化配置为执行所公开的技术的装置的功能方面,但并不一定需要通过不同的硬件单元实现。相反,如上所述,结合合适的软件和/或固件,可以将各种单元组合在硬件单元中或者可以通过交互操作的硬件单元的集合(包括上面描述的一个或者多个处理器)来提供。
已经对各种示例进行了描述。这些和其它实施例在以下权利要求书的范围内。
Claims (14)
1.一种方法,包括:
通过在计算系统上执行的预测知识系统,接收计算装置的当前位置的指示,
通过所述预测知识系统,至少部分地基于所述计算装置的所述当前位置,从多个定义的地理区域确定特定地理区域,所述特定地理区域包括所述计算装置的所述当前位置;
通过所述预测知识系统,基于多个计算装置的聚合web访问历史来确定与所述特定地理区域相关联的内容源;
通过所述预测知识系统,从所述内容源接收被指定为供所述预测知识系统使用的内容;以及
通过所述预测知识系统,将被指定为供所述预测知识系统使用的所述内容的至少一部分发送至所述计算装置。
2.根据权利要求1所述的方法,进一步包括:
从所述内容源接收被指定为供所述预测知识系统使用的所述内容的至少一个结构定义,所述至少一个结构定义指示待将被指定为供所述预测知识系统使用的所述内容显示在所述计算装置处的方式,
其中,发送所述内容的所述至少一部分包括:将所述内容的所述部分发送至所述计算装置以便根据所述至少一个结构定义进行显示。
3.根据权利要求2所述的方法,其中,所述至少一个结构定义包括以下中的至少一个:
被指定为供所述预测知识系统使用的所述内容的文本部分待由所述计算装置显示的字体的指示;
被指定为供所述预测知识系统使用的所述内容的文本部分待由所述计算装置显示的字体样式的指示;或
被指定为供所述预测知识系统使用的所述内容的背景图像待由所述计算装置显示的方式的指示。
4.根据权利要求1至3中的任一项所述的方法,其中,接收被指定为供所述预测知识系统使用的所述内容包括接收网页,所述网页包括在网页的标题区中的被指定为供所述预测知识系统使用的所述内容。
5.根据权利要求1至4中的任一项所述的方法,进一步包括:
确定所述内容的新近性程度,
其中,发送所述内容的至少一部分包括:响应于确定所述新近性程度满足阈值,发送所述内容的至少一部分。
6.根据权利要求5所述的方法,进一步包括:
通过所述预测知识系统,存储所述内容的版本,
其中,确定所述内容的所述新近性程度包括基于所述内容的所述版本被存储的时间、当前时间、所述内容的所述版本或者所述内容中的至少一个来确定所述新近性程度。
7.根据权利要求1至6中的任一项所述的方法,其中,所述聚合web访问历史包括由所述多个计算装置之前访问的一个或者多个内容源的相应指示和所述一个或者多个内容源被访问的相应地理位置,所述方法进一步包括:
通过所述预测知识系统并且至少部分地基于所述聚合web访问历史,确定所述多个定义的地理区域。
8.根据权利要求1至7中的任一项所述的方法,其中,确定与所述特定地理区域相关联的所述内容源包括:
通过所述预测知识系统并且针对所述特定地理区域,确定与所述特定地理区域相关联的多个内容源,其中,相应普及性测量与来自所述多个内容源的各个内容源相关联;以及
通过所述预测知识系统并且至少部分地基于所述相应普及性测量,确定与所述特定地理区域相关联的所述内容源。
9.根据权利要求8所述的方法,进一步包括:
通过所述预测知识系统,从所述计算装置接收包括所述内容的用户界面元素的选择或者所述用户界面元素的解除中的至少一个的指示;以及
响应于接收到所述指示,通过所述预测知识系统并且基于所述指示,修改与所述特定地理区域相关联的所述内容源相关联的所述相应普及性测量。
10.根据权利要求1至9中的任一项所述的方法,其中,确定所述特定地理区域包括:
通过所述预测知识系统,从所述多个定义的地理区域来确定地理区域子集,所述地理区域子集中的各个地理区域包括所述当前位置;以及
从所述地理区域子集选择最小地理区域,作为所述特定地理区域。
11.根据权利要求1至10中的任一项所述的方法,其中,接收被指定为供所述预测知识系统使用的所述内容包括接收多个内容部分和所述多个内容部分中的每一个内容部分被指定为使用的对应地理位置的指示,所述方法进一步包括:
至少部分地基于所述特定地理区域和所述多个内容部分中的每一个内容部分被指定为使用的所述对应地理位置,从所述多个内容部分确定特定内容部分,
其中,发送所述内容的至少一部分包括发送所述特定内容部分。
12.根据权利要求1至11中的任一项所述的方法,其中,发送所述内容的至少一部分包括:在不首先从所述计算装置接收指定所述内容的请求的情况下,发送所述内容的至少一部分。
13.一种计算系统,所述计算系统包括用于执行示例1至12的所述方法中的任一种方法的装置。
14.一种计算机可读存储介质,所述计算机可读存储介质包括用于执行示例1至12的所述方法中的任一种方法的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/754,609 | 2015-06-29 | ||
US14/754,609 US20160379117A1 (en) | 2015-06-29 | 2015-06-29 | Location-based delivery of structured content |
PCT/US2016/030857 WO2017003556A1 (en) | 2015-06-29 | 2016-05-04 | Location-based delivery of structured content |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107533556A true CN107533556A (zh) | 2018-01-02 |
Family
ID=55971214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680019564.7A Pending CN107533556A (zh) | 2015-06-29 | 2016-05-04 | 结构化内容的基于位置的传送 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20160379117A1 (zh) |
EP (1) | EP3262535A1 (zh) |
CN (1) | CN107533556A (zh) |
DE (1) | DE112016002940T5 (zh) |
GB (1) | GB2553059B (zh) |
WO (1) | WO2017003556A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10977242B2 (en) | 2017-09-07 | 2021-04-13 | Atlassian Pty Ltd. | Systems and methods for managing designated content items |
US11815936B2 (en) | 2018-08-22 | 2023-11-14 | Microstrategy Incorporated | Providing contextually-relevant database content based on calendar data |
US11714955B2 (en) | 2018-08-22 | 2023-08-01 | Microstrategy Incorporated | Dynamic document annotations |
US11238210B2 (en) | 2018-08-22 | 2022-02-01 | Microstrategy Incorporated | Generating and presenting customized information cards |
US11682390B2 (en) | 2019-02-06 | 2023-06-20 | Microstrategy Incorporated | Interactive interface for analytics |
US11769509B2 (en) | 2019-12-31 | 2023-09-26 | Microstrategy Incorporated | Speech-based contextual delivery of content |
US12007870B1 (en) | 2022-11-03 | 2024-06-11 | Vignet Incorporated | Monitoring and adjusting data collection from remote participants for health research |
US11790107B1 (en) | 2022-11-03 | 2023-10-17 | Vignet Incorporated | Data sharing platform for researchers conducting clinical trials |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080248815A1 (en) * | 2007-04-08 | 2008-10-09 | James David Busch | Systems and Methods to Target Predictive Location Based Content and Track Conversions |
US20120203750A1 (en) * | 2011-02-04 | 2012-08-09 | Vaeaenaenen Mikko | Method and means for browsing by walking |
CN103535056A (zh) * | 2011-05-10 | 2014-01-22 | 微软公司 | 呈现与位置相关联的消息 |
US20150038173A1 (en) * | 2013-08-02 | 2015-02-05 | Google Inc. | Predictive assistance information |
US20150066593A1 (en) * | 2013-08-30 | 2015-03-05 | Google Inc. | Determining a precision factor for a content selection parameter value |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6249252B1 (en) * | 1996-09-09 | 2001-06-19 | Tracbeam Llc | Wireless location using multiple location estimators |
US7714778B2 (en) * | 1997-08-20 | 2010-05-11 | Tracbeam Llc | Wireless location gateway and applications therefor |
US9134398B2 (en) * | 1996-09-09 | 2015-09-15 | Tracbeam Llc | Wireless location using network centric location estimators |
GB2337386B (en) * | 1996-09-09 | 2001-04-04 | Dennis J Dupray | Location of a mobile station |
US20040198386A1 (en) * | 2002-01-16 | 2004-10-07 | Dupray Dennis J. | Applications for a wireless location gateway |
US20030146871A1 (en) * | 1998-11-24 | 2003-08-07 | Tracbeam Llc | Wireless location using signal direction and time difference of arrival |
US10641861B2 (en) * | 2000-06-02 | 2020-05-05 | Dennis J. Dupray | Services and applications for a communications network |
US7970648B2 (en) * | 2001-04-27 | 2011-06-28 | Accenture Global Services Limited | Advertising campaign and business listing management for a location-based services system |
US7912628B2 (en) * | 2006-03-03 | 2011-03-22 | Inrix, Inc. | Determining road traffic conditions using data from multiple data sources |
US8898130B1 (en) * | 2007-02-14 | 2014-11-25 | SuperMedia LLC | Organizing search results |
US8060406B2 (en) * | 2008-09-26 | 2011-11-15 | Microsoft Corporation | Predictive geo-temporal advertisement targeting |
US20100186066A1 (en) * | 2009-01-20 | 2010-07-22 | Pollard Stephen M | Methods and systems for facilitating personal data propagation |
US8364713B2 (en) * | 2009-01-20 | 2013-01-29 | Titanium Fire Ltd. | Personal data manager systems and methods |
US8296323B2 (en) * | 2009-01-20 | 2012-10-23 | Titanium Fire Ltd. | Personal data subscriber systems and methods |
US9557889B2 (en) * | 2009-01-28 | 2017-01-31 | Headwater Partners I Llc | Service plan design, user interfaces, application programming interfaces, and device management |
EP2606628A2 (en) * | 2010-08-19 | 2013-06-26 | Thomson Licensing | Personalization of information content by monitoring network traffic |
KR101819432B1 (ko) * | 2010-08-19 | 2018-01-16 | 톰슨 라이센싱 | 네트워크 트래픽의 모니터링에 의한 정보 콘텐츠의 개인화 |
US20130275221A1 (en) * | 2010-08-23 | 2013-10-17 | MobileBits Corporation | System and methods for delivering targeted marketing content to mobile device users based on geolocation |
US9021364B2 (en) * | 2011-05-31 | 2015-04-28 | Microsoft Technology Licensing, Llc | Accessing web content based on mobile contextual data |
US10096033B2 (en) * | 2011-09-15 | 2018-10-09 | Stephan HEATH | System and method for providing educational related social/geo/promo link promotional data sets for end user display of interactive ad links, promotions and sale of products, goods, and/or services integrated with 3D spatial geomapping, company and local information for selected worldwide locations and social networking |
CN107092638B (zh) * | 2012-06-22 | 2021-06-15 | 谷歌有限责任公司 | 基于位置从地图历史提供相关元素信息的方法和计算装置 |
US20150052554A1 (en) * | 2013-01-25 | 2015-02-19 | Mobitv, Inc. | Geographic content recommendation |
US9674125B2 (en) * | 2013-12-13 | 2017-06-06 | Google Technology Holdings LLC | Method and system for achieving communications in a manner accounting for one or more user preferences or contexts |
US20160196527A1 (en) * | 2015-01-06 | 2016-07-07 | Falkonry, Inc. | Condition monitoring and prediction for smart logistics |
-
2015
- 2015-06-29 US US14/754,609 patent/US20160379117A1/en not_active Abandoned
-
2016
- 2016-05-04 GB GB1715703.3A patent/GB2553059B/en active Active
- 2016-05-04 CN CN201680019564.7A patent/CN107533556A/zh active Pending
- 2016-05-04 WO PCT/US2016/030857 patent/WO2017003556A1/en active Application Filing
- 2016-05-04 DE DE112016002940.3T patent/DE112016002940T5/de active Pending
- 2016-05-04 EP EP16723003.6A patent/EP3262535A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080248815A1 (en) * | 2007-04-08 | 2008-10-09 | James David Busch | Systems and Methods to Target Predictive Location Based Content and Track Conversions |
US20120203750A1 (en) * | 2011-02-04 | 2012-08-09 | Vaeaenaenen Mikko | Method and means for browsing by walking |
CN103535056A (zh) * | 2011-05-10 | 2014-01-22 | 微软公司 | 呈现与位置相关联的消息 |
US20150038173A1 (en) * | 2013-08-02 | 2015-02-05 | Google Inc. | Predictive assistance information |
US20150066593A1 (en) * | 2013-08-30 | 2015-03-05 | Google Inc. | Determining a precision factor for a content selection parameter value |
Also Published As
Publication number | Publication date |
---|---|
EP3262535A1 (en) | 2018-01-03 |
WO2017003556A1 (en) | 2017-01-05 |
GB2553059B (en) | 2021-08-25 |
US20160379117A1 (en) | 2016-12-29 |
GB2553059A (en) | 2018-02-21 |
GB201715703D0 (en) | 2017-11-15 |
DE112016002940T5 (de) | 2018-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107533556A (zh) | 结构化内容的基于位置的传送 | |
US11210702B2 (en) | Cross-device geolocation sensing to geotarget offers | |
US10228831B2 (en) | Sharing cards to a target application | |
US20150242420A1 (en) | Location-Based Searching | |
US9766861B2 (en) | State-specific external functionality for software developers | |
US20140199970A1 (en) | Methods and systems relating to privacy in location based mobile applications | |
CN101755282B (zh) | 用于提供地图的域间通信的方法和系统 | |
US9565531B2 (en) | Augmented beacon and geo-fence systems and methods | |
CN102263810B (zh) | 用于基于权限的简档储存库服务的系统和方法 | |
US9952848B2 (en) | Dependency-aware transformation of multi-function applications for on-demand execution | |
US10031725B2 (en) | Entity-based external functionality for software developers | |
US9703534B2 (en) | Dynamic entity inference for developer integration of entity-based external functionality | |
US20170177319A1 (en) | Dependency-Aware Transformation Of Multi-Function Applications For On-Demand Execution | |
US9471624B1 (en) | Method for recommending applications for deletion | |
US10747838B2 (en) | Geo-fence pre-caching systems and methods for providing location-variant results | |
US10349205B2 (en) | Location-based application search | |
CN103428652A (zh) | 一种手机信息推送方法及装置 | |
CN101772780A (zh) | 域间通信 | |
CN106104552A (zh) | 授予与应用相关联的许可 | |
CN103186660A (zh) | 信息源选择系统、信息源选择方法和程序 | |
US20200097334A1 (en) | Offline Briefcase Synchronization | |
Singh et al. | Web-based advanced traveler information system for developing countries | |
TW201305985A (zh) | 行動運算裝置的內容提供方法 | |
Mooney et al. | Citizen generated spatial data and information: risks and opportunities | |
US20150081733A1 (en) | Data search system and data search method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: American California Applicant after: Google limited liability company Address before: American California Applicant before: Google Inc. |