CN101884041A - 使能经由消息传输对缩写搜索项进行搜索 - Google Patents

使能经由消息传输对缩写搜索项进行搜索 Download PDF

Info

Publication number
CN101884041A
CN101884041A CN2008801185455A CN200880118545A CN101884041A CN 101884041 A CN101884041 A CN 101884041A CN 2008801185455 A CN2008801185455 A CN 2008801185455A CN 200880118545 A CN200880118545 A CN 200880118545A CN 101884041 A CN101884041 A CN 101884041A
Authority
CN
China
Prior art keywords
search
mobile device
intermediate result
search terms
result
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.)
Granted
Application number
CN2008801185455A
Other languages
English (en)
Other versions
CN101884041B (zh
Inventor
杰弗里·班尼特
托米·布林尼卡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Excalibur IP LLC
Original Assignee
Yahoo Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yahoo Inc filed Critical Yahoo Inc
Publication of CN101884041A publication Critical patent/CN101884041A/zh
Application granted granted Critical
Publication of CN101884041B publication Critical patent/CN101884041B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Health & Medical Sciences (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

用于利用部分索引来处理搜索查询以使得能够在查询中使用缩写搜索项的系统和方法。移动设备通过网络向服务器发送搜索请求(例如,文本消息)。搜索请求项可以包括特征标识符的子集并且用作部分索引。搜索请求可以包括附加的上下文(例如,为了指示所需服务,例如饭店或交通,或者附加的地理信息)。服务器将各项匹配到中间搜索结果,例如一个或多个地理位置,并且随后将与中间结果有关的信息提供给移动设备。对数据库(例如,针对地理区域的)或数据库的一个或多个表的部分索引可以被调节,以相对于平均、最大或中等数目的相匹配位置或服务来平衡最小项的大小(例如,字符的最小数目)。

Description

使能经由消息传输对缩写搜索项进行搜索
相关申请的交叉引用
本申请要求2007年11月30日提交的美国申请No.11/948,873的优先权,该申请通过引用整体结合于此。
技术领域
本发明一般涉及搜索数据,并且更具体地但非排他地涉及经由消息传输系统,例如文本消息传输系统、基于多个缩写搜索标准进行的搜索。
背景技术
因特网发生了影响我们日常生活的巨大改变。例如,在当今社会中,移动计算设备正变得越来越常见。诸如个人数字助理、蜂窝电话等之类的许多移动计算设备可以用来传输语音消息、电子邮件、文本消息等,并且用来通过因特网搜索信息。经常会看见汽车、火车或者甚至船上的人利用他们的移动设备搜索商家、饭店、音乐、企业等等。
然而,执行对用户相关信息的搜索查询仍然很麻烦。通常,用户可能必须执行若干次搜索查询或不方便地输入大量数据以便获得相关搜索结果。不相关搜索结果意味着用户不太可能找到他们正寻找的,这进而转化为使得商家或其它企业丢失了来自用户的兴旺机会。因此,许多企业正搜寻新的方式以使得搜索结果更方便并且与用户更相关。
用户利用具有有限的数据输入、输出和/或通信能力的电子设备难以获得并且/或者评估搜索结果。例如,一些蜂窝电话具有有限的键盘、小屏幕和/或文本消息传输能力。这些设备可能局限于处理短的文本消息,例如短消息服务(SMS)消息。即使利用能力更强的设备,用户手动地打开浏览器,导航至搜索服务,提交搜索项并且在列出的搜索结果中向前向后导航通常也是耗时的。因此,本发明是针对这些考虑以及其它考虑作出的。
附图说明
将参考附图描述本发明的非限制性和非穷举性的实施例。在附图中,除非以其他方式指出,否则贯穿各图的相似的标号指代相似的部分。
为了更好地理解本发明,将参考与附图相关联地进行阅读的下面的详细描述。
图1是可以实施本发明的环境的一个实施例的系统图。
图2示出了可以包括在实现本发明的系统中的移动设备的一个实施例。
图3示出了可以包括在实现本发明的系统中的网络设备的一个实施例。
图4图示出了一逻辑流程图,该流程图总地示出了用于通过消息传输系统获得搜索结果的整体处理的一个实施例。
图5图示出了一逻辑流程图,该流程图总地示出了用于通过消息传输系统获得搜索结果的另一个实施例。
图6图示出了用于确定消息搜索项缩写的示例处理的逻辑流程图。
具体实施方式
下面将参考附图更全面的描述本发明,其中,附图组成了本发明的一部分,并且通过图示说明的方式示出了可以用来实施本发明的特定示例性实施例。然而,可以以许多不同形式来体现本发明,并且不应当将本发明理解为被限制到在此所述的实施例;而是,这些实施例被提供来使得本公开是详尽的且完整的,并且将充分地向本领域的技术人员传达本发明的范围。此外,本发明可以被体现为方法或设备。因此,本发明可以采取以下形式:完全为硬件的实施例、完全为软件的实施例,或者组合了软件以及硬件方面的实施例。因此,下面的详细描述不被理解为限制性意义。
贯穿整个说明书和权利要求,除非上下文以别的方式进行了清楚的指示,否则下面的术语取与这里的描述明显相关联的意思。虽然这里使用的短语“在一个实施例中”可以指相同的实施例,但是不是必须指相同的实施例。此外,虽然这里使用的短语“在另一实施例中”可以指不同的实施例,但是不是必须指不同的实施例。因此,如下所述,在不脱离本发明的范围或精神的情况下,可以容易地组合本发明的各个实施例。
另外,如在这里所使用的,术语“或”是一个相容的“或”操作符,并且等同于术语“和/或”,除非上下文以别的方式进行了清楚的指示。术语“基于”不是排他的,而允许基于未描述的另外的因素,除非上下文以别的方式进行了清楚的指示。另外,贯穿整个说明书,“一个”和“所述”的含义包括复数引用。“在...中”的含义包括“在...中”和“在...上”。
本发明的示例性实施例涉及这样的系统和方法,用于通过部分索引(partial indexing)来处理经由文本消息提交的搜索查询,以使得能够在查询中使用缩写搜索项。移动设备例如利用SMS代码(例如SMS短代码)通过网络向服务器发送搜索请求(例如,文本消息)。搜索请求包括子集或缩写搜索项。例如,为了搜索一元素的服务或其它特性,移动设备的用户可以通过缩写项或与该元素相关联的名称特征的多个部分来表示该元素。服务器将缩写项匹配到相对应的名称(例如使用部分索引),将已命名特征匹配到与特征相关联的元素,并且随后向移动设备提供关于该元素的信息。
例如,当元素是地理位置并且所需服务是诸如汽车和/或火车之类的公共地面交通时,则特征可以是十字街道或者定义或标识(例如,唯一地)地理位置的其它地标。对搜索的回复可以包括:在十字路口或由十字街道指示的区域附近的汽车站以及汽车停靠这些车站的时间表。缩写搜索项可以是街道名称的部分,例如,街道名称的首字母或辅音字母。因此,服务器将缩写项匹配到街道名称,将已命名街道匹配或映射到地理位置,并且随后在回复SMS消息中将与该地理位置有关的所需信息提供给用户的移动设备。
服务器响应于搜索查询提供的信息例如可以包括下面的一个或多个:最近的汽车站的安排表;提供搜索查询中所指定类型的食品的最近饭店(以及可选地,在搜索请求中指定的时间时营业、或者在搜索请求被发送的时间/在接近搜索请求被发送的时间时营业的饭店);附近的电影院以及具有搜索请求的缩写搜索项所建议的演员和/或字幕的电影上演时间;等等。因此,在示例性实施例中,缩写项用作部分索引。可调节数据库的表的部分索引(例如,用于地理区域的)以相对于平均、最大或中等数目的匹配位置或服务来平衡最小项的大小(例如,最小数目的字符)。另外,例如可以使用复合索引(例如,具有多于一个数字脚标的索引,或者存储多于一栏的数据的索引)可被使用,以进一步加速搜索处理。复合索引处理或复合索引可以使用多个部分索引,多个完整索引或者它们的任何组合。
搜索请求可以包括(隐含地或明确地)附加的上下文信息以使搜索集中或者使搜索能够例如指示所需要的服务(例如,饭店或交通信息)或者附加的地理信息(例如区号或邮编),或者当前时间或将来时间等等。附加的上下文可以被提供为上下文项的名称一个或多个子集或缩写,并且/或者可以隐含在查询被发送去往的SMS代码中。
上下文可以由文本消息被发送去往的SMS代码或短代码来隐含地提供。换言之,SMS代码可以指示或表示所需服务或信息的类型。例如,与给定SMS短代码相关联的服务器或数据库可专用于提供特定种类的服务,例如,针对地理区域内的汽车路线和汽车站的汽车安排表。因此,当搜索查询涉及该SMS短代码时,搜索项可用来标识地理位置,并且可选地,标识应当提供与最近的汽车站有关的汽车信息的一天中的时间。在另一示例中,如果SMS短代码是针对因特网电影数据库IMDB.comTM的,则可以明白,搜索与电影和/或演员有关。
上下文信息还可以从搜索查询的其它特性来收集。例如,发送或接收查询的时间可以是上下文信息,以使得所返回的汽车安排表指示最近的汽车站,这些最近的汽车站安排汽车在接近搜索查询时间的时间窗内到来。
与移动设备相关联的上下文信息还可用来细化(refine)搜索。例如,在移动设备是移动电话时,与移动电话相关联的电话号码的区号可用来标识在其中搜索地理特征或地标的地理区域。蜂窝电话塔/基站或者与移动电话通信的小区的已知位置也可用来细化搜索,并且例如可以自动地被提供作为搜索查询的一部分。搜索查询被发送的时间也可以用作细化搜索的上下文信息,例如,在所需服务的各方面与时间有关的情况中。
在示例性实施例中,缩写搜索项指示地理位置,但是其它实施例可以使能对诸如与电影演员有关的传记信息之类的非地理信息进行搜索。由服务器匹配的元素可以独立于地理位置,例如缩写搜索项可以是标识演员、作者或其它种类的人的部分索引,并且附加的上下文信息还可以指示用户所需要的信息的类型,例如该演员主演的电影或该作者所写的书的列表,等等。
在示例性实施例中,如果搜索结果的命中数目超过阈值,则对搜索查询的中间回复可以包括对附加的上下文或参数信息的请求,以缩窄或集中搜索。中间回复例如可以包括在与用户对搜索引擎的请求的回复一起被返回时标识原始搜索查询的代码。
说明性操作环境
图1示出了可以实施本发明的环境的一个实施例的各部件。不是所有的这些部件都需要来实施本发明,而是可以在不脱离本发明的精神和范围的情况下对布置和部件类型进行变更。如图所示,图1的系统100包括使能客户端与网络设备或服务器之间的通信的网络。网络105可以包括一个或多个局域网(“LAN”)和/或广域网(“WAN”)。无线网络110可以包括LAN、WAN、电话网络等。系统100还包括通用客户端设备101、移动客户端设备102-104、搜索服务器106以及内容服务器107。
下面结合图2更详细地描述移动设备102-103的一个实施例。然而,通常,移动设备102-104实际上可以包括能够通过诸如网络105、无线网络110等之类的网络接收和发送消息的任何便携式计算设备。移动设备102-104还可以一般性地被描述为被配置成便携式的客户端设备。因此,移动设备102-104实际上可以包括能够连接到另外的计算设备并且接收信息的任何便携式计算设备。这些设备包括便携式设备,例如蜂窝电话、智能电话、显示寻呼机、射频(RF)设备、红外(IR)设备、个人数字助理(PDA)、手持计算机、膝上型计算机、可佩带计算机、台式计算机、组合了前述设备中的一个或多个的集成设备,等等。因此,移动设备102-104通常根据能力和特征而具有广泛的范围。例如,蜂窝电话可能具有数字键盘以及仅可以显示文本的数行单色LCD显示屏。这种移动设备可以包括消息传输客户端,其使得用户能够发送和接收有限大小的文本消息,但是不能使用户发送或接收长的消息、图形、图像或其它内容。
在另一示例中,有web功能的移动设备可以具有触敏屏、尖笔以及可以显示文本和图形两者的数行彩色LCD显示屏。有web功能的移动设备可以包括被配置为接收和发送web页面、基于web的消息等的消息传输客户端和浏览器应用。浏览器应用可被配置为实际上采用任何基于web的语言(包括无线应用协议消息(WAP)等)来接收并显示图形、文本、多媒体等。在一个实施例中,使得浏览器应用能够采用手持设备标记语言(HDML)、无线标记语言(WML)、WMLScript、JavaScript、标准通用标记语言(SGML)、超文本标记语言(HTML)、可扩展标记语音(XML)等,来显示并发送消息。在一个实施例中,移动设备的用户可以采用浏览器应用来交换包括搜索查询和搜索结果的文本消息。用户还可以采用浏览器应用来访问在一个或多个文本消息中标识的另外的搜索结果内容。
移动设备102-104和客户端设备101还可以包括至少一个客户端应用,这种客户端应用被配置为提供标识其自身的信息,包括类型、能力、名称等。在一个实施例中,移动设备102-104可以通过多种机制中的任何机制来唯一地标识它们自身,多种机制包括电话号码、移动识别码(MIN)、电子序列号(ESN)或其它移动设备标识符。信息还可以指示移动设备能够采用的内容格式。这种信息可被设置在消息等中,被发送给搜索服务器106、客户端设备101或其它计算设备。
在一个实施例装置,移动设备102-104和客户端设备101还可以向另一计算设备提供物理位置。然而,在一个实施例中,移动设备102-104可以根据诸如纬度和经度等之类的坐标来提供物理位置信息。然而,移动设备102-104还可以提供可用来确定设备的物理位置的其它信息,例如包括蜂窝塔地址、MAC地址、IP地址、与移动设备相关联的电话号码的区号、设备101-104作为其成员或参与者的广域网或局域网的物理位置,等等。这种位置信息可以在单独的消息中来提供,作为另一消息(例如,来自移动设备的对服务的查询或请求)的一部分被发送,或者甚至作为上述消息的组合被发送。在一个实施例中,物理位置信息可以按照需要,或者基于时间段(例如,在重复出现的或可改变的时间段截止时定期地)、事件等来提供。
移动设备102-104和客户端设备101还可以被配置为包括客户端应用,该客户端应用使得端用户能够登录到由诸如搜索服务器106之类的另一计算设备管理的端用户账户中。这种端用户账户例如可被配置为使得端用户能够发送/接收SMS消息、IM消息、电子邮件,访问所选web页面,参与社交网络活动,执行搜索查询等。然而,执行搜索查询、参与各种社交网络活动等也可以在不登录端用户账户的情况下来执行。
客户端设备101实际上可以包括能够通过网络进行通信以发送并接收包括搜索查询信息、位置信息、社交网络信息等在内的信息的任何计算设备。这样的设备组可以包括通常利用有线或无线通信介质进行连接的设备,例如个人计算机、多处理器系统、基于微处理器的或可编程消费电子、网络PC等。客户端设备101可以包括用于与移动设备102-104或其它客户端设备发送或接收文本消息的消息传输系统和/或接口。
无线网络110被配置为耦合移动设备102-104并且将其部件与网络105相耦合。无线网络110可以包括多种无线子网中的任意一个,无线子网还可以覆盖独立的自组织网络等,以便为移动设备102-104提供面向基础设施的连接。这种子网可以包括蜂窝网络、网状网络、无线LAN(WLAN)网络等。
无线网络110还可以包括通过无线链路等相连接的终端、网关、路由器等的自治系统。这些连接器可被配置为自由地、随机地移动并且任意地组织它们自己,以使得无线网络110的拓扑可以快速改变。
无线网络110还可以采用多种接入技术用于语音或数据通信,包括仅允许文本消息传输的数据通信。这些技术还可以包括用于蜂窝系统、WLAN、无线路由器(WR)网状网等的第2代(2G)、第3代(3G)无线接入。诸如2G、3G之类的接入技术以及将来的接入网络可以使得能够以各种程度的移动性来在宽区域内覆盖移动设备,例如移动设备102-104。例如,无线网络110可以使得能够通过无线电网络接入来进行无线电连接,无线电网络接入例如是全球移动通信系统(GSM)、通用分组无线业务(GPRS)、增强的数据GSM环境(EDGE)、宽带码分多址(WCDMA)等。实质上,无线网络110实际可以包括用来使信息可以在移动设备102-104与另一计算设备、网络等之间传播的任何无线通信制式。
网络105被配置为将搜索服务器106及其部件与其它计算设备相耦合,其它计算设备包括移动设备102-104、客户端设备101,并且通过无线网络110耦合到移动设备102-104。网络105被使能采用任何形式的计算机可读介质以用于从一个电子设备向另一电子设备传输信息。此外,网络105除了可以包括局域网(LAN)、广域网(WAN)之外,还可以包括因特网、例如通过通用串行总线(USB)端口的直接连接,其它形式的计算机可读介质,或者它们的任何组合。在一组互连的LAN(包括基于不同体系结构和协议的LAN)上,路由器充当LAN之间的链路,使得消息能够从一个LAN被发送到另一LAN。此外,LAN内的通信链路通常包括双绞线对或同轴电缆,而网络之间的通信链路可以利用模拟电话线、包括T1、T2、T3和T4的全部或部分专用数字线、集成业务数字网络(ISDN)、数字订户线(DSL)、包括卫星链路的无线链路,或者本领域技术人员已知的其它通信链路。此外,远程计算机和其它有关电子设备可以经由调制解调器和临时电话链路而被远程地连接到LAN或WAN。实质上,网络105包括用来使信息可以在搜索服务器106、客户端设备101和其它计算设备之间传播的任何通信方法。
另外,通信介质一般将计算机可读指令、数据结构、程序模块或其它数据包括在调制数据信号(例如载波、数据信号或其它输送机制)中,并且包括任何信息递送介质。术语“调制数据信号”和“载波信号”包括具有一组或多组其特性的信号,或者以将信息、指令、数据等编码在信号中的方式进行改变的信号。例如,通信介质包括诸如双绞线对、同轴电缆、光纤、波导和其它有线介质之类的有线介质,以及诸如声波、RF、红外和其它无线介质之类的无线介质。计算机可读指令、数据结构、程序模块或其它数据可被固定或存储在各种存储介质中,例如只读存储器、随机存取存储器、动态随机存取存储器、缓存、诸如软盘或磁盘、DVD、CD、闪存之类的磁存储介质,等等。上述调制数据信号和载波信号可被固定在或存储在这些存储介质中。
下面将结合图3更详细地描述搜索服务器106的一个实施例。然而,简言之,搜索服务器106可以包括能够连接到网络105以使能数据搜索、过滤和其它数据管理操作的任何计算设备。搜索服务器106还可以提供网络门户信息和/或服务,包括提供内容以及在用户的准许下跟踪用户在线行为。搜索服务器106还可以使能对社交网络信息的聚集和管理。可作为搜索服务器106操作的设备包括个人计算机、桌上型计算机、多处理器系统、基于微处理器的或可编程消费电子、网络PC、服务器等。
尽管图1将搜索服务器106图示为单个计算设备,然而,本发明不限于此。例如,搜索服务器106的一个或多个功能可以分布在一个或多个不同的计算设备间。例如,在不脱离本发明的范围或精神的情况下,可以由多个计算设备来执行对搜索、搜索结果、SMS消息、即时消息传输(IM)会话、电子邮件消息的管理,共享联系人信息,收集行为信息,聚集并且/或者存储社交网络信息等。
内容服务器107表示可在移动设备102-104和/或客户端101上使用的多种内容和/或其它数据。这种内容可以包括文本内容、web内容、音频内容、视频内容、FTP数据等。数据服务可以包括但不限于SMS、IM服务、电子邮件服务、服务、web服务、第三方服务、音频服务、视频服务、VOIP服务、日程服务、照片服务等。此外,与内容服务器107提供的内容和/或服务有关的信息可以用来提供搜索查询的结果。
可作为内容服务器107操作的设备包括个人计算机、桌上型计算机、多处理器系统、基于微处理器的或可编程消费电子、网络PC、服务器等。
在本发明的实施例中,搜索查询可从设备102、103、104、101中的任一个被发送给搜索服务器106供处理。搜索服务器106可以包括要搜索的数据库,或者可以标识有可能包含所需要的信息的适当的远程数据库。例如,数据库可以位于诸如内容服务器107之类的不同的远程服务器中,或者可由诸如内容服务器107之类的不同的远程服务器访问,并且在该情况中,搜索服务器106可与内容服务器107通信以查询该数据库,并且随后向最初发送查询的设备返回信息。对查询设备的回复可从搜索服务器106被发送给查询设备,或者可直接从内容服务器107被发送给查询设备。在搜索查询经由SMS(短消息服务)被发送给特定SMS短代码(例如其可以与特定的和/或通用数据库或服务相关联)的示例性实施例中,移动设备可以直接地或间接地与服务器通信,该服务器随后可以经由SMS网关与后端服务通信,后端服务继而可以访问数据库(例如,利用在SMS消息内提供的或者与SMS消息一起提供的部分索引项或上下文信息)并且随后通过该链返回搜索结果。例如,搜索服务器106可以是经由后端服务与SMS网关通信的服务器等。
说明性移动客户端环境
图2示出了可以包括在实现本发明的系统中的移动设备200的一个实施例。移动设备200可以包括比图2所示的部件更多或更少的部件。然而,所示部件足以公开用于实施本发明的说明性实施例。移动设备200例如可以表示图1的移动设备102-104中的至少一个移动设备的一个实施例。
如图2所示,移动设备200包括经由总线224与海量存储器230通信的中央处理单元(CPU)222。移动设备200还包括电源226、一个或多个网络接口250、音频接口252、显示屏254、键盘256、照明器258、输入/输出接口260、触觉(haptic)接口262以及可选全球定位系统(GPS)接收机264。电源226向移动设备200提供电能。可以使用可再充电或不可再充电的电池来提供电能。也可以使用外部电源来提供电能,例如为电池补充电能和/或再充电的AC适配器或者充电座。
可选地,移动设备200可以与基站(未示出)通信,或直接与另外的计算设备通信。网络接口250包括用于将移动设备200耦合到一个或多个网络的电路,并且被构造用于一种或多种通信协议和技术,这一种或多种通信协议和技术包括但不限于全球移动通信系统(GSM)、码分多址(CDMA)、时分复用(TDMA)、GPRS、SMS、WAP、用户数据报协议(UDP)、传输控制协议/因特网协议(TCP/IP)、通用分组无线业务、超宽带(UWB)、IEEE 802.16微波接入全球互联(WiMax)、SIP/RTP,或者多种其它无线通信协议中的任一种。无线接口250有时被认为是收发机、收发设备或网络接口卡(NIC)。
音频接口252被布置来产生并接收诸如人类语音的声音之类的音频信号。例如,音频接口252可以被耦合到扬声器和麦克风(未示出)以使得能够与其它设备通信通讯并且/或者生成针对某个动作的音频应答。显示屏254可以是液晶显示(LCD)、等离子气体、发光二极管(LED)或移动设备使用的任何其它类型的显示屏。显示屏254还可以包括触敏屏,其被布置来接收来自对象的输入,该对象例如是来自人手的触笔或手指。
键盘256可以包括被布置来接收来自用户的输入的任何输入设备。例如,键盘256可以包括按钮数字拨号盘。键盘256还可以包括与获取并发送图像相关联的键盘或命令按钮。照明器258可以提供状态指示并/或提供光。照明器258可以针对特定时间段或响应于事件而保持活动的状态。例如,当照明器258处于活动状态时,它可以为键盘256上的按钮提供背光并在客户端设备被供电时保持发亮。此外,当执行诸如拨打另外的客户端设备之类的特定动作时,照明器258还可以以各种图案为这些按钮提供背光。照明器258还可以使位于客户端设备的透明或半透明外壳内的光源响应于动作来提供照明。在另一实施例中,照明器258可以包括用于内置相机的闪光灯(未示出)。
移动设备200还包括用于与外部设备通信的输入/输出接口260,外部设备例如是未在图2中示出的耳机或其它输入或输出设备。输入/输出接口260可以利用一种或多种通信技术,例如USB、红外、蓝牙TM等等。触觉接口262被布置来向移动设备的用户提供触觉反馈。例如当另外的移动电话用户呼叫时,触觉接口可以被用来使移动电话200颤动。
可选GPS接收机264可以确定移动设备200在地球表面上的物理坐标,一般输出一个经度和纬度值形式的位置。GPS接收机264还可以利用其它地理定位机制(包括但不限于三角测量、辅助GPS(AGPS)、增强的观测时间差(E-OTD)、小区标识符(CI)、服务区标识符(SAI)、增强的预先定时(ETA)、基站子系统(BSS)等),以进一步确定移动设备200在地球表面上的物理位置。将明白,在不同条件下,GPS接收机264可以在毫米范围内确定移动设备200的物理位置;而在其它情形中,所确定的物理位置可以不那么精确,例如在米或更大距离的范围内。然而,在一个实施例中,移动设备可以通过其它部件来提供其它信息,其它信息可以用来确定设备的物理位置,例如包括MAC地址、IP地址等。
海量存储器230包括RAM 232、ROM 234和其它存储装置。海量存储器230图示出了用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的计算机存储介质的另一示例。海量存储器230存储用于控制移动设备200的低层操作的基本输入/输出系统(“BIOS”)240。海量存储器还可以存储用于控制移动设备200的操作的操作系统241。应当理解,该部件可以包括诸如Windows MobileTM或Symbian操作系统之类的专用移动通信操作系统,或诸如UNIX或LINUXTM版本之类的通用操作系统。操作系统可以包括Java虚拟机模块或者与Java虚拟机模块接口,Java虚拟机模块能够经由Java应用程序控制硬件部件和/或操作系统的操作。
存储器230还包括一个或多个数据存储单元244,其可以被移动设备200用来存储应用242和/或其它数据等。例如,数据存储单元244还可以用来存储描述移动设备200的各种能力的信息。该信息随后可以基于多种事件中的任何事件而被提供给另一设备,多种事件包括在通信期间作为消息的一部分或者头部的一部分被发送,在请求时被发送,等等。此外,数据存储单元244还可用来存储搜索数据、用户偏好、地址薄、好友列表、别名、社交网络信息等。该信息的至少一部分还可以被存储在移动设备200内的盘驱动器或其它存储介质(未示出)上。
应用242可以包括计算机可执行指令,这些指令在被移动设备200执行时提供多种服务,包括联系人管理器、任务管理器、日程表、游戏、VOIP应用、转码器、数据库程序、字处理程序、电子数据表程序等。应用242通常包括消息传输客户端243,其使得移动设备200发送、接收并且/或者以其他方式处理消息(例如,SMS、MMS、IM、电子邮件和/或其它消息)、音频、视频,并且使能与另一客户端设备的另一用户通讯。
应用程序的另外的示例包括浏览器245,浏览器245实际上可以包括被配置为实际上利用任何基于web的语言来接收并显示图形、文本、多媒体等的任何应用。在一个实施例中,浏览器应用被使能采用手持设备标记语言(HDML)、无线标记语言(WML)、WMLScript、JavaScript、标准通用标记语言(SGML)、超文本标记语言(HTML)、可扩展标记语音(XML)等,来显示并发送消息。然而,也可以利用多种其它基于web的语言中的任一种。
在一个实施例中,消息传输客户端243或浏览器245可被配置为使得能够访问搜索应用,例如可通过图1的搜索服务器106和/或内容服务器107获得的搜索应用。在一个实施例中,移动设备200的用户可以向搜索应用输入用于获得搜索结果的多种搜索项。移动设备200还可以提供位置信息,或者可用于确定其物理位置的信息。这种信息可能可用来自动地(例如,对于用户输入是透明的)修改搜索查询。
根据示例性实施例,包含一个、两个、三个或更多个缩写搜索项以及可选地包含附加的上下文信息的文本搜索查询可以经由SMS被发送给特定的或通用的SMS短代码(例如,经由消息传输客户端243),或者替代地,可以通过移动设备200的任何其它通信应用(例如包括浏览器245)以及相对应的(一个或多个)协议而被提供给数据库。
说明性服务器环境
图3示出了根据本发明一个实施例的网络设备的一个实施例。网络设备300可以包括比所示出的部件更多的部件。然而,所示部件足以公开用于实施本发明的说明性实施例。网络设备300例如可以表示图1的搜索服务器106和/或内容服务器107。
网络设备300包括中央处理单元312、视频显示适配器314以及海量存储器,它们经由总线322彼此通信。海量存储器一般包括RAM 316、ROM 332以及一个或多个永久海量存储设备,例如硬盘驱动器328、磁带驱动器、光盘驱动器和/或软盘驱动器。海量存储器存储用于控制网络设备300的操作的操作系统320。可以使用任何通用操作系统。基本输入/输出系统(“BIOS”)318也被提供用于控制网络设备300的低层操作。如图3所示,网络设备300还可以经由网络接口单元310与因特网或某个其它通信网络通信,网络接口单元310被构建用于包括TCP/IP协议在内的各种通信协议。网络接口单元310有时被认为是收发机、收发设备或无线网络接口卡(NIC)。
如上所述的海量存储器图示出了另一类型的计算机可读介质,即计算机存储介质。计算机存储介质可以包括以任何方法或技术实现的用于存储信息的易失性、非易失性、可移除和不可移除介质,存储的信息例如是计算机可读指令、数据结构、程序模块或其它数据。计算机存储介质的其它示例包括RAM、ROM、EEPROM、闪存或其它半导体存储技术、CD-ROM、数字通用光盘(DVD)或其它光存储装置、盒式磁带、磁带、磁盘存储装置或其它磁存储设备,或可被用来存储所需信息并且可由计算设备访问的任何其它介质。
海量存储器还存储程序代码和数据。一个或多个应用350被载入海量存储器中,并且在操作系统320上运行。应用程序的示例包括SMS消息服务器、IM消息服务器、电子邮件服务器、转码器、调度器、日程表、数据库程序、字处理程序、HTTP程序、可定制用户接口程序、IPSec应用、加密程序、安全程序、VPN程序、账户管理等。搜索模块352还可以被包括作为应用350内的应用程序或者作为单独的应用。
搜索模块352被配置为接收来自客户端设备的搜索项,确定其它搜索参数,执行对数据源的搜索,提供搜索结果,并且执行其它搜索相关的操作。搜索模块352可以采用与下面将描述的处理基本上类似的处理。
海量存储器还可以包括内容服务器软件356(例如,应用350内的应用程序或者单独的应用),例如以使得网络设备300可以作为图1所示的内容服务器107来执行,或者执行图1所示的内容服务器107的功能。海量存储器还可以包括客户端模块358,例如以使得网络设备可以作为图1所示的客户端设备101来执行,或者执行图1所示的客户端设备101的功能。
一般化操作
如这里所提到的,示例性实施例涉及用于利用部分索引来处理经由文本消息提交的搜索查询以使得能够在查询中利用缩写搜索项的系统和方法。另外,复合索引(例如,具有多于一个数字脚标的索引,或者存储多于一栏的数据的索引)可被使用,例如,以进一步加速搜索处理。复合索引处理或复合索引可以使用多个部分索引,多个完整索引或者它们的任何组合。
在下面以及这里的其它地方以各种形式描述的特征可以利用图1-3所示的装置来执行,并且可以在图4所示的并且在下面进一步描述的示例性处理中以各种形式被实现。
在示例性实施例中,诸如移动设备102、103、104或客户端设备101之类的设备例如利用诸如SMS短代码之类的SMS代码来通过网络(例如,105、110)向服务器(例如,服务器106)发送搜索请求(例如,文本消息)。搜索请求包括子集或缩写的搜索项,并且搜索项或者文本消息被发送去往的SMS代码指示所需要的搜索对象。另外地或替代地,搜索请求可被发送给(和/或包括)与SMS以外的不同类型的通信服务或协议相关联的短代码。
搜索请求可以为如下形式并/或经由如下形式被传送:文本消息、短消息服务(SMS)消息、即时消息(IM)、多媒体消息传输服务(MMS)、无线接入协议或无线应用协议(WAP),或者被接收并被处理成相对应的文本或字母数字字符的语音等等。
在示例性实施例中,为了搜索元素的服务或其它特性,移动设备的用户可以通过与该元素相关联的缩写项或名称特征的多部分来表示该元素。服务器将缩写项匹配到数据库中的相对应名称(例如通过向数据库的表应用部分索引并且可选地应用复合索引),将已命名的特征匹配到与特征相关联的元素,并且随后向移动设备提供关于该元素的信息。在示例性实施例中,与数据库相关联地来使用执行部分索引的SQL(结构化查询语言)能力。因此,在示例性实施例中,缩写项用作部分索引。
在示例性实施例中,三个字符是缩写项的长度,或者是服务器用来执行搜索的搜索项的初始字符的数目。用户所输入的另外的字符可被忽略,至少直到搜索被认为成功了或者具有太多命中为止,在搜索成功或具有太多命中的情况中,服务器可以利用附加的字符中的一个或多个来再次搜索,例如,这次利用前面的四个字符来再次搜索。在示例性实施例中,如果搜索结果的命中数目超过阈值,则对搜索查询的中间回复可以包括对附加的上下文信息或参数信息的请求,以缩窄或集中搜索。这种被请求的附加信息可以是另外的参数或搜索项,并且/或者可以是附接于先前提交的搜索项的另外的信息,例如更多字母的街道名称。中间回复例如还可以包括在与用户对搜索引擎的请求的回复一起返回时标识初始搜索查询的代码,以辅助搜索引擎。
例如可以取决于搜索查询中的参数数目(更大数目的参数可能意味着:需要每个参数中的较少字符来标识与所有参数相关联的全参数名称以及相对应的元素,例如地理位置)及数据库的复杂度和范围来将三个字符以外的其它长度用于或指定给搜索查询中的一个或多个缩写项。例如,如果搜索包括街道名称并且被查询的数据库覆盖大城市或多个城市,则可能需要更多的信息(更大数目的参数和/或缩写搜索项的更长的最小长度)来准确地标识用户试图经由缩写搜索项描述的位置。
根据示例性实施例,可调节数据库的部分索引(例如,对用于地理区域的数据库的表的部分索引)以相对于平均、最大或中等数目的匹配位置或服务来平衡最小项的大小(例如,最小数目的字符)。例如,在地理方面的被索引数据库中,对于每组项,可以增大缩写项的大小,直到特定数目的不同项(例如表示缩写街道名称的两个或三项)产生了唯一的(或未知的/无效的)地理位置时为止。这可以被调节以扩展或缩小地理位置的大小(例如,街角、街区、相邻街区组、城市行政区、城市,...,等等)和/或对于在数据库内的单次搜索查询可以出现的不唯一地理位置的非零个数或最大命中数(例如,从单次搜索查询产生不多于三个的命中或者不同位置)。用于部分索引的较少索引/较短缩写可以产生需要较少资源的较少数据库区(database footprint),但是这可以与用户必须在多个命中或搜索结果中进行排序或选择的不便利性相平衡。
在特定示例中,旧金山的夫妇希望乘坐汽车到镇上的另一部分去以到海鲜饭店用餐。他们中的一人注意到他们位于Geary Boulevard与ArguelloBoulevard的角落处,激活其蜂窝电话,并且创作包含“gea arg”(每个街道名称的前三个字符)的文本消息,并且将该消息发送给SMS短代码以用于具有旧金山汽车路线数据库的服务器。服务器通过SMS短代码隐含地知道了蜂窝电话用户需要附近汽车站的位置,并且默认地,假设用户还需要包括消息的当前时间在内的时间窗内(例如,从消息时间直到后来的30分钟为止,或者直到第一辆汽车为止,如果没有安排汽车在30分钟内到达的话)的那些汽车站的安排信息。用户还可以指示数字加上am或pm的指定来表示窗口开始的时间,例如“7pm”,并且可以在该指定之后或之前指示窗口的所希望时间跨度(例如,表示分钟或小时的“70m”或“1h”)。用户还可以指示另一附近的十字街道或邮编。例如,Stanyan街在附近,因此搜索查询可以为“gea arg sta”或“gea arg 94143”。在示例性实施例中,缩写项可以简单地为首辅音字母,并且项可以是混合式的(一些项有元音字母,一些项没有),例如:“gea arg stn”表示Geary、Arguello,和Stanyan。在实施例中,服务器可以简单地忽略搜索项中的元音字母,并/或提示用户仅输入(或重新输入)辅音字母。
附加信息可以优先于其它所假设信息,例如,如果用户是访问外国城市的游客并且正使用具有与该城市区号不同的区号的蜂窝电话,则在搜索查询中指定外国城市的本地区号可以告诉服务器:用户想要搜索外国城市而非蜂窝电话的家乡城市。服务器的回复例如可以包括附近的一个或多个汽车站的位置、到每个汽车站的距离和/或所估计步行时间、基本方向以及每个汽车站的汽车安排/目的地信息。信息可以通过汽车站来排序,并且汽车站可以通过下一辆汽车的到达时间或者通过到汽车站的距离或者通过这两个因素的加权组合等而在回复消息中被排序。
还可以寻找汽车路线信息之外的其它事物,例如:提供特定类型或种类的食品的最近饭店;附近的电影院以及相对应的电影/上演时间;等等。在一些实施例中,缩写搜索项指示地理位置,而其它实施例可以使能对诸如与电影演员有关的传记信息之类的非地理信息的搜索。由服务器匹配的元素可以独立于地理位置,例如缩写搜索项可以是标识演员、作者或其它种类的人的部分索引,并且附加的上下文信息还可以指示用户所需要的信息的类型,例如该演员主演的电影或该作者所写的书的列表,等等。
如这里所提到的,搜索请求可以包括(隐含地或明确地)附加的上下文信息以使搜索集中或者使搜索能够例如指示所需要的服务(例如,饭店或交通信息)。附加的地理信息也可以(或替代地)以完整或缩写形式来提供,例如电话区号、邮编、城市名称、地理地标(被命名的公园、码头、行政区、购物中心、商店或者出现在该位置处的或该位置附近的其它商业等)。另外地或替代地,可以提供当前或将来的时间,和/或时间窗或时间间隔。附加的上下文可以以完整名称来提供,或者被提供为上下文项的名称一个或多个子集或缩写,并且/或者可以隐含在查询被发送去往的SMS代码中。搜索查询被发送的时间也可以用作细化搜索的上下文信息,例如,在所需服务的各方面与时间有关的情况中。例如,发送或接收查询的时间可以是上下文信息,以使得所返回的汽车安排表指示出安排了在接近搜索查询时间的时间窗内到来的汽车的附近汽车站,或者针对上演特定电影的附近影院的查询可以过滤掉在查询被发送之前开始的上演时间。
上下文可以由文本消息被发送去往的SMS代码或短代码来隐含地提供。换言之,SMS代码可以指示或表示所需服务或信息的类型。例如,与给定SMS短代码相关联的服务器或数据库可专用于提供特定种类的服务,例如,针对地理区域内的汽车路线和汽车站的汽车安排表。因此,当搜索查询涉及该SMS短代码时,搜索项可用来标识地理位置,并且可选地,标识应当提供与最近的汽车站有关的汽车信息的一天中的时间。在另一示例中,如果SMS短代码是针对因特网电影数据库IMDB.comTM的,则可以明白,搜索与电影和/或演员有关。
与移动设备相关联的、不是用户输入作为搜索查询中的文本的上下文信息也可以用来细化搜索。例如,在移动设备是移动电话时,与移动电话相关联的电话号码的区号可用来标识在其中搜索地理特征或地标的地理区域。蜂窝电话塔/基站或者与移动电话通信的小区的已知位置也可用来细化搜索,并且例如可以自动地被提供作为搜索查询的一部分。
图4图示出了本发明某些方面的操作,并且示出了涵盖这里描述的本发明的各个方面和特征的示例性处理450的逻辑流程图。控制开始并移到块452,在块452中,服务器从客户端设备(其可以是台式设备或移动设备,例如蜂窝电话、膝上型计算机、BlackberryTM等)接收包括一个或多个搜索项的搜索请求消息,一个或多个搜索项例如可以包括缩写搜索项,例如街道名称的前三个字母。服务器将上下文信息与(一个或多个)搜索项相关联。上下文信息可以是搜索查询的一部分,例如是搜索查询中的邮编、来自另外的街道名称的字母,或区号。上下文信息可以辅助标识物理位置,或者可以包括这样的信息,该信息指示用户需要的服务的类型或质量或其它特性,例如公共交通机会的时间或时间窗,或者所需类型的饭店食品。上下文信息可以是隐含的,例如,与发送查询的移动设备相关联的区号、接收来自移动设备的无线信号的无线通信塔的位置,可以将上下文信息与查询被发送到或去往的SMS代码或短代码等相关联。
控制从块452前进到块454,在块454,搜索请求消息中的搜索项的缩写被确定。搜索项在搜索请求中可以是缩写形式的,例如,搜索项可以由街道名称的前三个字母,或者街道名称的前三个辅音字母或者街道名称的任何子集构成。因此,服务器可以通过识别已经是缩写形式的搜索项来确定缩写。在示例性实施例中,另外地或替代地,服务器可以通过忽略搜索项的多个部分来确定搜索项的缩写,例如通过忽略搜索项中的元音字母,或者忽略搜索项中最后的字符,例如忽略五个字符搜索项中的最后两个字符。例如,“geary”可被缩写为“gea”或“gry”。所确定的缩写可以是如这里所述的部分索引。
控制从块454前进到块456,在块456,基于所确定的缩写,并且适当地还基于上下文信息,来确定或标识一个或多个中间结果。缩写或经缩写的搜索项可以用作部分索引来表示中间结果。例如,在缩写搜索项和上下文信息指示街道名称的情况中,通过相应街道的组合来标识或定义一个或多个地理位置。一些城市或位置存在具有相同名称的多条街道,并且还有可能缩写搜索项可以与多个不同街道相关联(例如,在假设的情形中,“gea”可以对应于Geary Boulevard和Geary Road两者,或者对应于Gearhead Alley)。因此,有可能中间结果可以包括多个命中或元素,这些命中或元素是基于缩写搜索项以及可选地上下文信息被标识出的。
控制从块456前进到块458。在块458,基于中间结果和上下文信息的结果被提供给移动设备或客户端设备。上下文信息可以指示结果的类型。例如,当上下文信息是与特定服务(例如旧金山的汽车路线和安排表)相关联的数据库的SMS短代码时,结果可以指示在由搜索请求消息中的搜索项标识的或与搜索请求消息中的搜索项相关联的地理位置处可获得的服务(例如,地理位置附近的汽车站以及汽车到达/离开时间)。
控制从块458前进到块460,在块460,处理例如通过返回块452或前进到其它功能而继续。
图5图示出了可以在示例性实施例中例如在图4的块456之后或结合图4的块456来提供的另外的特征或功能。例如,可以用图5所示的序列来替换图4的块458。替代地,块568的结果可以包括块560的请求。
如图5的块558所示,可以判断中间搜索结果(在块456中确定的)中的命中或元素的数目是否超过了阈值,例如预定阈值。例如,如果中间结果指示了多于三个不同的、远处的地理位置(本示例中的阈值为三),则服务器可以从客户端设备请求附加信息以便缩窄搜索,并且由此向客户端设备(例如,移动设备)提供更有用的结果。因此,如果块558中的判断为否定的,则控制前进到块570,在块570,处理例如通过返回块458或前进到其它功能而继续。
如果块558中的判断为肯定的,则控制前进到块560,在块560,服务器向客户端设备或移动设备发送回对附加信息的请求,附加信息例如是一个或多个另外的搜索项或上下文信息。在示例性实施例中,块458中的结果可以包括这样的请求。
控制从块560前进到块562,在块562,服务器接收附加信息,例如一个或多个另外的搜索项或另外的上下文信息。控制从块562前进到块564,并从块564前进到块566,在块566,以与块456中相同的方式来确定第二中间结果,但是,这次将附加信息考虑在内。控制从块566前进到块568,在块568,结果被提供给移动设备,并且该结果是以与针对块458描述的方式类似的方式,而基于该附加的中间结果以及相关联的上下文信息(例如,最初接收到的上下文信息,以及可选地响应于块560的查询而接收的附加的上下文信息)的。
图6图示出了图4的块454的示例实现方式。如图6所示,在块602,判断搜索项中的字符数目是否超过了阈值。如这里的其它地方所列出的,该阈值例如可以为三,但是也可以是比三小或大的值。阈值可以表示任意字符的数目,或者可以表示特定种类的字符数目,特定种类的字符例如是辅音字母、数字或元音字母等。如果在块602中判定数目未超过阈值,则控制前进到块604,在块604,确定搜索项已经为缩写形式。控制从块604前进到块608,在块608,处理例如继续到图4的块456或返回块602(如果存在要评估的更多搜索项的话),或继续到另外的处理或功能。
如果在块602中判定搜索项中的字符数目(或某种类型的字符数目)超过阈值,则控制前进到块606,在块606中,搜索项被缩写。控制从块606前进到块608,在块608,处理例如继续到图4的块456或返回块602(如果存在要评估的更多搜索项的话),或继续到另外的处理或功能。
在块606,例如可以通过简单地省略搜索项中前面的阈值数目个字符之后的任何字符(例如,“geary”被缩写为“gea”,其中阈值为三),或者通过省略搜索项中后面的阈值数目个字符之前的任何字符(例如,“geary”被缩写为“ary”),来对搜索项进行缩写。替代地,可以通过从搜索项的开始起或从搜索项的结尾起从搜索项省略某种类型的字符(例如,“stinson”被缩写为“ison”或“stion”,其中某种类型是辅音字母并且阈值为三),或者通过省略某种类型的所有字符,来对搜索项进行缩写。缩写技术还可以以各种形式被组合,以例如通过省略某种类型的所有字符并且然后省略超过阈值的任何其余字符(例如,“stinson”被缩写为“stnsn”再缩写为“stn”或“nsn”,其中类型是元音字母并且阈值为三)来执行缩写。可以利用其它缩写方法或技术,包括但不限于,利用在可适用的语言和/或文化或场所内通常被接受的缩写来替换所标识的单词(例如,“boulevard”被缩写为“blvd”,或者“limited”被缩写为“ltd”,或者“pounds”被缩写为“lbs”等等)。
在示例实施例中,图6的处理可被应用于搜索请求消息中的每个搜索项。替代地,图6的处理可被应用于搜索请求消息的内容中的仅一些,例如直到但不超过阈值数的搜索项为止,例如直到前四个搜索项为止,但不到可能出现在搜索请求消息中的任何另外的搜索项。可以使用比四小或大的其它阈值。
将理解,可以用计算机程序指令来实现流程图说明的每一块以及流程图说明中的块的组合。这些程序指令可以被提供给处理器以产生一种机器,以使得在处理器上执行的指令创建出用于实现一个或多个流程图块所指定的动作的手段。计算机程序指令可以由处理器执行,以使处理器执行一系列操作步骤从而产生计算机实现的过程,从而使得在处理器上执行的指令提供用于实现一个或多个流程图块所指定的动作的步骤。计算机程序指令还可以使得在流程图的块中示出的操作步骤的至少一些并行地被执行。此外,步骤的一些还可以跨越多于一个处理器被执行,例如可能出现在多处理器计算机系统中。另外,在不脱离本发明的范围或精神的情况下,还可以与其它块或块的组合并发地或者甚至以与所示顺序不同的顺序来执行流程图说明中的一个或多个块或块的组合。
因此,流程图说明中的块支持:用于执行指定动作的方法的组合,用于执行指定动作的步骤的组合,以及用于执行指定动作的程序指令手段。还应该理解,流程图说明中的每个块以及流程图说明中块的组合可以由执行指定动作或步骤的、专用的基于硬件的系统,或专用硬件和计算机指令的组合来实现。
上面的说明书、示例和数据提供了对制造和使用本发明的构成的描述。既然可以提出本发明的许多实施例而不脱离本发明的精神和范围,因此本发明也属于以下所附权利要求。

Claims (20)

1.一种通过网络执行搜索的方法,包括:
从移动设备向服务器发送包含至少一个搜索项的搜索请求消息,其中,所述服务器将上下文信息与所述至少一个搜索项相关联;
确定所述至少一个搜索项的缩写,其中,所述缩写可用作部分索引;
确定至少通过所述部分索引而被索引到的中间结果;以及
基于至少所述中间结果和所述上下文信息来将结果提供给所述移动设备。
2.如权利要求1所述的方法,其中,所述中间结果包括地理位置。
3.如权利要求1所述的方法,其中,所述上下文信息指定被提供给所述移动设备的结果的类型,其中,所述类型包括饭店食品特色或交通安排信息中的至少一者。
4.如权利要求1所述的方法,其中,所述搜索请求文本消息包括与一种类型的服务相关联的短代码,并且其中,提供给所述移动设备的结果指示与所述类型的服务相关联的地理位置。
5.如权利要求1所述的方法,其中,所述上下文信息包括与所述移动设备相关联的电话号码的区号。
6.如权利要求1所述的方法,包括:
判断所述中间结果是否超过阈值;
如果该判断指示所述中间结果超过了所述阈值,则请求至少第二搜索项;
从所述移动设备接收至少第二搜索项;
确定至少第二搜索项的第二缩写,其中,所述第二缩可用作第二部分索引;
确定第二中间结果,所述第二中间结果是至少通过所述部分索引和所述第二部分索引而被索引到的;以及
基于至少所述第二中间结果和所述上下文信息来将结果提供给所述移动设备。
7.一种包括指令的计算机可读存储介质,所述指令使得计算机执行:
从移动设备接收包含至少一个搜索项的搜索查询,并将上下文信息与所述至少一个搜索项相关联;
确定所述至少一个搜索项的缩写,其中,所述缩写可用作部分索引;
确定至少通过所述部分索引而被索引得的中间结果;以及
基于至少所述中间结果和所述上下文信息来将结果提供给所述移动设备。
8.如权利要求7所述的计算机可读存储介质,其中:
所述中间结果包括多个地理位置;并且
所述介质包括用于使得所述计算机基于所选择的至少一个地理位置与所确定的所述移动设备的地理位置之间的地理距离来选择所述多个地理位置中的至少一个的指令;并且
所述结果包括与所选择的至少一个地理位置有关的信息。
9.如权利要求7所述的计算机可读存储介质,其中,所述搜索查询包括短代码。
10.如权利要求7所述的计算机可读存储介质,其中,所述介质包括用于使得所述计算机执行如下处理的指令:
判断所述中间结果是否超过阈值;
如果该判断指示所述中间结果超过了所述阈值,则请求至少第二搜索项;
确定至少第二搜索项的第二缩写,其中,所述第二缩写可用作第二部分索引;
确定第二中间结果,所述第二中间结果是至少通过所述部分索引和所述第二部分索引而被索引到的;以及
基于至少所述第二中间结果和所述上下文信息来将结果提供给所述移动设备。
11.一种网络设备,被布置为对通过网络来自移动设备的搜索请求消息进行响应,该网络设备包括:
收发器,用于通过所述网络发送和接收数据;以及
处理器,该处理器被配置为:
识别所述搜索请求消息中的至少一个搜索项,并且将上下文信息与所述至少一个搜索项相关联;
确定所述至少一个搜索项的缩写,其中,所述缩写可用作部分索引;
确定至少通过所述部分索引而被索引到的中间结果;
基于至少所述中间结果和所述上下文信息来将结果提供给所述移动设备。
12.如权利要求11所述的网络设备,其中,所述中间结果包括地理位置。
13.如权利要求11所述的网络设备,其中,所述上下文信息指定被提供给所述移动设备的结果的类型,
14.如权利要求11所述的网络设备,其中,所述搜索请求消息包括与一种类型的服务相关联的短代码,并且提供给所述移动设备的结果指示与所述类型的服务相关联的地理位置。
15.如权利要求11所述的网络设备,其中,所述搜索请求消息包括与所述移动设备相关联的电话区号。
16.一种操作来通过网络对搜索进行管理的系统,包括:
移动设备,所述移动设备被配置为通过所述网络发送搜索请求消息以及接收响应于查询的搜索结果;
网络设备,所述网络设备被配置为:
接收所述搜索请求消息;
识别所述搜索请求消息中的至少一个搜索项,并且将上下文信息与所述至少一个搜索项相关联;
确定所述至少一个搜索项的缩写,其中,所述缩写可用作部分索引;
确定至少通过所述部分索引而被索引到的中间结果;
基于至少所述中间结果和所述上下文信息来将结果提供给所述移动设备。
17.如权利要求16所述的系统,其中,所述网络设备被配置为:
判断所述中间结果是否超过阈值;
如果该判断指示所述中间结果超过了所述阈值,则请求至少第二搜索项;
确定至少第二搜索项的第二缩写,其中,所述至少第二搜索项的第二缩写可用作第二部分索引;
确定第二中间结果,所述第二中间结果是至少通过所述部分索引和所述第二部分索引而被索引到的;以及
基于至少所述第二中间结果和所述上下文信息来将结果提供给所述移动设备。
18.如权利要求16所述的系统,其中,所述搜索请求消息包括与所述移动设备相关联的电话区号。
19.如权利要求16所述的系统,其中,所述搜索请求消息包括所述上下文信息,并且所述上下文信息指示被提供给所述移动设备的结果的类型或者地理特征。
20.如权利要求16所述的系统,其中,所述搜索请求消息包括与一种类型的服务相关联的短代码,并且其中,提供给所述移动设备的所述结果指示与所述类型的服务相关联的地理位置。
CN200880118545.5A 2007-11-30 2008-10-31 使能经由消息传输对缩写搜索项进行搜索 Active CN101884041B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/948,873 US7966304B2 (en) 2007-11-30 2007-11-30 Enabling searching on abbreviated search terms via messaging
US11/948,873 2007-11-30
PCT/US2008/082085 WO2009070413A1 (en) 2007-11-30 2008-10-31 Enabling searching on abbreviated search terms via messaging

Publications (2)

Publication Number Publication Date
CN101884041A true CN101884041A (zh) 2010-11-10
CN101884041B CN101884041B (zh) 2014-07-30

Family

ID=40676787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880118545.5A Active CN101884041B (zh) 2007-11-30 2008-10-31 使能经由消息传输对缩写搜索项进行搜索

Country Status (7)

Country Link
US (1) US7966304B2 (zh)
EP (1) EP2215562A4 (zh)
JP (1) JP5190519B2 (zh)
CN (1) CN101884041B (zh)
HK (1) HK1150207A1 (zh)
TW (1) TWI391836B (zh)
WO (1) WO2009070413A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103733215A (zh) * 2010-12-28 2014-04-16 韩国情报通信株式会社 用于提供加盟店信息的服务器和方法
CN105027118A (zh) * 2012-12-31 2015-11-04 脸谱公司 在线社交网络上的修改结构化搜索查询
CN105912553A (zh) * 2015-02-25 2016-08-31 富士通株式会社 文件搜索设备和文件搜索方法
US10445352B2 (en) 2012-12-31 2019-10-15 Facebook, Inc. Natural-language rendering of structured search queries
CN111859091A (zh) * 2020-07-21 2020-10-30 山东省科院易达科技咨询有限公司 一种基于人工智能的搜索结果的聚合方法及装置

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7490092B2 (en) 2000-07-06 2009-02-10 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
US7685236B1 (en) * 2003-09-24 2010-03-23 Google Inc. Methods and systems for developing an instant messaging network
EP1704387B1 (en) * 2003-12-19 2013-03-27 DeCarta Inc. Geocoding locations near a specified city
US9041744B2 (en) 2005-07-14 2015-05-26 Telecommunication Systems, Inc. Tiled map display on a wireless device
US9031207B2 (en) * 2006-12-18 2015-05-12 Centurylink Intellectual Property Llc System and method for providing location information for addressed based E-911 calls to public safety answering points
US10074117B2 (en) * 2007-05-10 2018-09-11 Cardinalcommerce Corporation Application server and/or method for supporting mobile electronic commerce
US8290470B2 (en) 2007-08-13 2012-10-16 Centurylink Intellectual Property Llc System and method for providing location information to a public safety answering point during an emergency 911 call from a WiFi handset
EP2201545A4 (en) * 2007-09-11 2011-01-19 Telecomm Systems Inc LOCAL INSTRUCTIONS FOR WIRELESS DEVICES FOR BATTERY NOTIFICATION EVENTS
US20090089184A1 (en) * 2007-09-28 2009-04-02 Embarq Holdings Company, Llc Content portal for media distribution
US8964945B2 (en) * 2007-09-28 2015-02-24 Centurylink Intellectual Property Llc System and method for providing location based E-911 of network access devices registered with a network gateway
US8289953B2 (en) 2007-10-16 2012-10-16 Centurylink Intellectual Property Llc System and method for providing location information to a public safety answering point during an emergency 911 call from a softphone
US20090144247A1 (en) * 2007-11-09 2009-06-04 Eric Wistrand Point-of-interest panning on a displayed map with a persistent search on a wireless phone using persistent point-of-interest criterion
US8891749B2 (en) * 2008-02-21 2014-11-18 Centurylink Intellectual Property Llc System and method for providing emergency wireline telephone services to residences
US20090248401A1 (en) * 2008-03-31 2009-10-01 International Business Machines Corporation System and Methods For Using Short-Hand Interpretation Dictionaries In Collaboration Environments
EP2277105A4 (en) * 2008-04-07 2012-09-19 Telecomm Systems Inc PROXIMITY SEARCH FOR POINT OF INTEREST NAMES COMBINING UNEXPECTED CHAIN CORRESPONDENCE WITH INCREASING RAY SEARCH
US8565733B2 (en) * 2008-05-08 2013-10-22 Clear Channel Management Services, Inc. Computer-based method and system for processing a file request in response to a message received from a user mobile device
US8489062B2 (en) * 2008-07-03 2013-07-16 Centurylink Intellectual Property Llc System and method for sending an emergency message selected from among multiple emergency message types from a wireless communications device
US8976938B2 (en) * 2008-07-07 2015-03-10 Centurylink Intellectual Property Llc Deluxe emergency notification
US8594627B2 (en) 2008-10-06 2013-11-26 Telecommunications Systems, Inc. Remotely provisioned wirelessly proxy
US9491307B2 (en) * 2009-02-24 2016-11-08 Centurylink Intellectual Property Llc System and method for establishing pre-stored emergency messages
US20120309340A1 (en) 2011-06-01 2012-12-06 Embarq Holdings Company, Llc System and method for communicating emergency information through messaging
US9442933B2 (en) * 2008-12-24 2016-09-13 Comcast Interactive Media, Llc Identification of segments within audio, video, and multimedia items
US8713016B2 (en) 2008-12-24 2014-04-29 Comcast Interactive Media, Llc Method and apparatus for organizing segments of media assets and determining relevance of segments to a query
US11531668B2 (en) 2008-12-29 2022-12-20 Comcast Interactive Media, Llc Merging of multiple data sets
US8176043B2 (en) 2009-03-12 2012-05-08 Comcast Interactive Media, Llc Ranking search results
US20100250614A1 (en) * 2009-03-31 2010-09-30 Comcast Cable Holdings, Llc Storing and searching encoded data
US8533223B2 (en) 2009-05-12 2013-09-10 Comcast Interactive Media, LLC. Disambiguation and tagging of entities
EP2254089A1 (en) * 2009-05-18 2010-11-24 Amadeus S.A.S. Improvements in or relating to a method and system of booking management
US20100306211A1 (en) * 2009-05-26 2010-12-02 Nokia Corporation Method and apparatus for automatic geo-location search learning
US9892730B2 (en) 2009-07-01 2018-02-13 Comcast Interactive Media, Llc Generating topic-specific language models
US8396888B2 (en) * 2009-12-04 2013-03-12 Google Inc. Location-based searching using a search area that corresponds to a geographical location of a computing device
US8417683B2 (en) * 2010-02-16 2013-04-09 Yahoo ! Inc. System and method for presenting geolocated relevance-based content
US9792368B1 (en) * 2010-03-04 2017-10-17 A9.Com, Inc. Dynamic map synchronization
US8214344B2 (en) * 2010-03-16 2012-07-03 Empire Technology Development Llc Search engine inference based virtual assistance
US8452765B2 (en) * 2010-04-23 2013-05-28 Eye Level Holdings, Llc System and method of controlling interactive communication services by responding to user query with relevant information from content specific database
US8595207B2 (en) * 2010-06-14 2013-11-26 Salesforce.Com Methods and systems for dynamically suggesting answers to questions submitted to a portal of an online service
US9009145B2 (en) 2010-08-04 2015-04-14 Amadeus S.A.S. Travel booking method and system
US8478519B2 (en) 2010-08-30 2013-07-02 Google Inc. Providing results to parameterless search queries
US20120271844A1 (en) * 2011-04-20 2012-10-25 Microsoft Corporation Providng relevant information for a term in a user message
CN102857859A (zh) * 2011-06-28 2013-01-02 德信智能手机技术(北京)有限公司 移动电话的位置服务方法和系统
US8799228B2 (en) * 2011-06-29 2014-08-05 Nokia Corporation Method and apparatus for providing a list-based interface to key-value stores
US20130106894A1 (en) 2011-10-31 2013-05-02 Elwha LLC, a limited liability company of the State of Delaware Context-sensitive query enrichment
US8554781B2 (en) * 2011-12-27 2013-10-08 Mordechai Teicher Shorthand for data retrieval from a database
US8965689B1 (en) * 2012-07-02 2015-02-24 Sprint Communications Company, L.P. Map display configurations for wireless communication devices
US9785786B2 (en) * 2012-09-24 2017-10-10 Protegrity Corporation Privacy preserving data search
US10983973B2 (en) * 2013-05-21 2021-04-20 Facebook, Inc. Database sharding with incorporated updates
US10977229B2 (en) * 2013-05-21 2021-04-13 Facebook, Inc. Database sharding with update layer
US10318946B2 (en) * 2014-04-22 2019-06-11 Paypal, Inc. Recommended payment options
US9922092B2 (en) * 2014-04-24 2018-03-20 Canon Kabushiki Kaisha Devices, systems, and methods for context management
US10430503B2 (en) * 2015-04-10 2019-10-01 Lenovo (Singapore) Pte. Ltd. Electronic display content fitting
US10546359B2 (en) * 2015-04-27 2020-01-28 Gt Gettaxi Limited Shortcode for automating application processes
CN104901870B (zh) * 2015-05-29 2018-07-13 北京北信源软件股份有限公司 一种用于即时通信的用户命名方法
CA2939395A1 (en) 2016-08-15 2016-10-17 Richard S. Brown Method and device for invoking a search from a text message
KR101694179B1 (ko) * 2016-09-13 2017-01-23 한국과학기술정보연구원 모음 제거 기반 인덱스 생성 방법 및 장치
US10133732B2 (en) * 2017-03-21 2018-11-20 International Business Machines Corporation Interactive location sensitive network response
US10572597B2 (en) * 2017-11-30 2020-02-25 International Business Machines Corporation Resolution of acronyms in question answering systems

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW306993B (en) * 1995-12-12 1997-06-01 Feng-Jian Wang A method for classifying and searching software components by using the thesaurus hierarchy
KR100307586B1 (ko) 1998-06-30 2001-10-19 윤종용 전자제품의방열장치
KR20000044691A (ko) * 1998-12-30 2000-07-15 김종수 차량항법시스템의 위치검색방법
US6564213B1 (en) * 2000-04-18 2003-05-13 Amazon.Com, Inc. Search query autocompletion
EP1182581B1 (en) * 2000-08-18 2005-01-26 Exalead Searching tool and process for unified search using categories and keywords
US7376640B1 (en) * 2000-11-14 2008-05-20 At&T Delaware Intellectual Property, Inc. Method and system for searching an information retrieval system according to user-specified location information
US20020087312A1 (en) * 2000-12-29 2002-07-04 Lee Victor Wai Leung Computer-implemented conversation buffering method and system
KR100451649B1 (ko) * 2001-03-26 2004-10-08 엘지전자 주식회사 이미지 검색방법과 장치
US7136846B2 (en) * 2001-04-06 2006-11-14 2005 Keel Company, Inc. Wireless information retrieval
JP2002315036A (ja) * 2001-04-17 2002-10-25 J-Nextel Inc 通信ネットワークによる地図情報の提供及び取得方法、地図情報の提供及び取得通信システム及びそのプログラム
US6829605B2 (en) * 2001-05-24 2004-12-07 Microsoft Corporation Method and apparatus for deriving logical relations from linguistic relations with multiple relevance ranking strategies for information retrieval
US20060149624A1 (en) * 2004-12-30 2006-07-06 Shumeet Baluja Generating and/or serving local area advertisements, such as advertisements for devices with call functionality
US7376636B1 (en) * 2002-06-07 2008-05-20 Oracle International Corporation Geocoding using a relational database
JP4072418B2 (ja) * 2002-10-29 2008-04-09 キヤノン株式会社 情報入力システム、移動端末、移動端末における情報入力方法、情報サーバ、情報サーバが移動端末の入力操作を支援する方法、コンピュータプログラム
CN1504927A (zh) * 2002-11-28 2004-06-16 深圳麦士威科技有限公司 用于电子地图查询系统的智能检索方法
CN1641641A (zh) * 2004-01-11 2005-07-20 赵红刚 笔划拼音字数索引的搜索方法和装置
US8972444B2 (en) * 2004-06-25 2015-03-03 Google Inc. Nonstandard locality-based text entry
US7412441B2 (en) 2005-05-31 2008-08-12 Microsoft Corporation Predictive phonetic data search
KR20070003431A (ko) 2005-07-01 2007-01-05 삼성전자주식회사 척 세정 장치
US7779011B2 (en) 2005-08-26 2010-08-17 Veveo, Inc. Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results thereof
US20070061317A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Mobile search substring query completion
US20070061298A1 (en) * 2005-09-14 2007-03-15 Wilson Jeff K Method and apparatus for adding a search filter for web pages based on page type
KR20070034313A (ko) * 2005-09-23 2007-03-28 주식회사 엘지텔레콤 모바일 검색 서버 및 상기 검색 서버의 동작 방법
US10534820B2 (en) * 2006-01-27 2020-01-14 Richard A. Heggem Enhanced buyer-oriented search results
US20080057987A1 (en) * 2006-09-06 2008-03-06 Agere Systems Inc. Location message coordinator, method of coordinating a location message and a cellular system employing the same
CN101022577B (zh) * 2007-01-09 2010-05-19 杨李颖 短信搜索方法及其系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103733215A (zh) * 2010-12-28 2014-04-16 韩国情报通信株式会社 用于提供加盟店信息的服务器和方法
CN105027118A (zh) * 2012-12-31 2015-11-04 脸谱公司 在线社交网络上的修改结构化搜索查询
CN105027118B (zh) * 2012-12-31 2018-09-11 脸谱公司 在线社交网络上的修改结构化搜索查询
US10268649B2 (en) 2012-12-31 2019-04-23 Facebook, Inc. Modifying structured search queries on online social networks
US10445352B2 (en) 2012-12-31 2019-10-15 Facebook, Inc. Natural-language rendering of structured search queries
CN105912553A (zh) * 2015-02-25 2016-08-31 富士通株式会社 文件搜索设备和文件搜索方法
CN111859091A (zh) * 2020-07-21 2020-10-30 山东省科院易达科技咨询有限公司 一种基于人工智能的搜索结果的聚合方法及装置
CN111859091B (zh) * 2020-07-21 2021-06-04 山东省科院易达科技咨询有限公司 一种基于人工智能的搜索结果的聚合方法及装置

Also Published As

Publication number Publication date
HK1150207A1 (zh) 2011-11-11
US7966304B2 (en) 2011-06-21
EP2215562A1 (en) 2010-08-11
JP2011509444A (ja) 2011-03-24
EP2215562A4 (en) 2012-07-18
US20090144260A1 (en) 2009-06-04
JP5190519B2 (ja) 2013-04-24
TWI391836B (zh) 2013-04-01
TW200943098A (en) 2009-10-16
CN101884041B (zh) 2014-07-30
WO2009070413A1 (en) 2009-06-04

Similar Documents

Publication Publication Date Title
CN101884041B (zh) 使能经由消息传输对缩写搜索项进行搜索
US20200396565A1 (en) System and method for facilitating interpersonal contacts and social and commercial networking
KR101126032B1 (ko) 모바일 위치를 사용한 검색 리파인
US7693902B2 (en) Enabling clustered search processing via text messaging
US8812511B2 (en) Time based ordering of provided mobile content
KR101377799B1 (ko) 클러스터 검색 처리
KR101073751B1 (ko) 위치 및 시간에 기초하는 소셜 네트워크용 이동 콘텐츠의 결정
US9218360B2 (en) User-selected tags for annotating geographic domains containing points-of-interest

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1150207

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1150207

Country of ref document: HK

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160801

Address after: American California

Patentee after: EXCALIBUR IP LLC

Address before: American California

Patentee before: Yahoo Corp.