CN105378697A - 智能导航服务 - Google Patents
智能导航服务 Download PDFInfo
- Publication number
- CN105378697A CN105378697A CN201480032381.XA CN201480032381A CN105378697A CN 105378697 A CN105378697 A CN 105378697A CN 201480032381 A CN201480032381 A CN 201480032381A CN 105378697 A CN105378697 A CN 105378697A
- Authority
- CN
- China
- Prior art keywords
- keyword
- navigation
- navigation service
- entity
- url
- 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
- 238000000034 method Methods 0.000 claims abstract description 127
- 230000004044 response Effects 0.000 claims abstract description 46
- 230000008569 process Effects 0.000 claims description 53
- 230000006855 networking Effects 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 86
- 239000012634 fragment Substances 0.000 description 49
- 230000006870 function Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 22
- 238000013507 mapping Methods 0.000 description 22
- 238000005516 engineering process Methods 0.000 description 19
- 238000004458 analytical method Methods 0.000 description 13
- 239000010985 leather Substances 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 230000008878 coupling Effects 0.000 description 9
- 238000010168 coupling process Methods 0.000 description 9
- 238000005859 coupling reaction Methods 0.000 description 9
- 230000005055 memory storage Effects 0.000 description 8
- 239000000047 product Substances 0.000 description 8
- 239000000203 mixture Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 235000021443 coca cola Nutrition 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 2
- LWFUFLREGJMOIZ-UHFFFAOYSA-N 3,5-dinitrosalicylic acid Chemical compound OC(=O)C1=CC([N+]([O-])=O)=CC([N+]([O-])=O)=C1O LWFUFLREGJMOIZ-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000001072 colon Anatomy 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000002224 dissection Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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/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
- 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/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
Abstract
呈现了用于智能导航的技术。该技术可以包括在导航服务处并且经由互联网接收针对网络资源的请求,其中该请求包括由导航客户端提供的命令数据,并且其中该命令数据包括实体名称和关键词。该技术可以包括从导航服务的至少一个数据库获取对应于实体名称和关键词的网络定位符。该技术还可以包括响应于该接收并且经由互联网而提供网络定位符。
Description
相关申请的交叉引用
本申请要求2014年2月10日提交且题为“SmartNavigationServices”的未决美国实用新型专利申请号14/176,723、2013年4月7日提交且题为“DesiredResourceNavigation”的未决美国临时专利申请号61/809,377、2013年4月12日提交且题为“DesiredResourceNavigation”的未决美国临时专利申请号61/811,234、以及2013年5月7日提交且题为“SmartNavigationinGeneralNameSpaces”的未决美国专利申请号61/820,391的优先权,这些专利申请的公开内容以其整体通过引用并入本文中。
发明内容
本发明涉及导航到网络资源,并且更具体地在一些实施例中涉及在不具有标准域名系统(DNS)解析处理或标准搜索处理的情况下导航到网络资源。其它具体的实施例可以利用标准DNS解析处理。
根据各种实施例,公开了一种计算机实现的提供导航服务的方法。该方法包括在导航服务处并且经由互联网接收针对网络资源的请求,该请求包括由导航客户端提供的命令数据,该命令数据包括实体名称和关键词。该方法还包括从导航服务的至少一个数据库获取对应于实体名称和关键词的网络定位符。该方法还包括响应于所述接收并且经由互联网而提供网络定位符。
以上实施例的各种可选特征包括以下内容。
导航服务可以不是域名系统导航服务,也就是说,导航服务可以针对除域名空间之外的名称空间而起作用。可以从包括毗邻于实体名称的名称空间标识符的命令串导出命令数据。名称空间标识符可以是@、fb、in或者“.”。导航客户端可以基于名称空间标识符选择导航服务。可以从包括毗邻于关键词的关键词定界符的命令串导出命令数据。关键词定界符可以是#、!、“.”、$或|。该方法可以包括:从域名系统服务提供商的数据库获取对应于网络定位符的网际协议地址,以及提供网际协议地址。导航客户端可以解析命令数据并且构造请求。该方法还可以包括:通过导航服务接收网络定位符、实体名称和关键词,以及与实体名称和关键词相关联地存储网络定位符。该方法可以包括通过导航服务接收实体名称的拥有者的证明。该方法还可以包括在接收之前:在导航服务处并且经由互联网获取针对网络资源的请求的片段,该请求的片段包括由导航客户端所提供的命令数据的片段,该命令数据的片段包括实体名称和关键词的片段;从导航服务的至少一个数据库获取至少部分地匹配于关键词标识符的至少片段的多个可能的关键词;以及响应于所述获取并经由互联网提供多个可能的关键词。该方法还可以包括在接收之前:在导航服务处并且经由互联网获取针对网络资源的请求的片段,该请求的片段包括由导航客户端所提供的命令数据的片段,该命令数据的片段包括实体名称的片段;从导航服务的至少一个数据库获取对应于实体名称的至少片段的多个可能的实体名称;以及响应于所述获取并经由互联网提供多个可能的实体名称。该方法可以包括在导航服务处并且经由互联网接收针对网络资源的第二请求,该第二请求包括由导航客户端所提供的第二命令数据,该第二命令数据包括第二实体名称,其中第二实体名称不包含在至少一个数据库中作为实体名称,其中第二实体名称出现在对应于第三方服务的第三方名称空间中;从第三方服务获取对应于第二实体名称的内容;以及响应于所述接收并经由互联网而提供针对包括所述内容的资源的网络定位符。实体名称可以包含在至少一个数据库中作为实体名称,并且关键词可以不与实体名称相关联地包含在至少一个数据库中,其中所述获取可以包括与针对涉及关键词的第二关键词的实体名称相关联地搜索至少一个数据库,并且其中网络定位符可以对应于实体名称和第二关键词。该方法可以包括记录不包含在至少一个数据库中作为实体名称的、在针对网络资源的请求中接收的实体名称,以及提供不包含在至少一个数据库中作为实体名称的至少一个实体名称。该方法还可以包括:在导航服务处并且经由互联网接收针对网络资源的第二请求,该第二请求包括由导航客户端所提供的第二命令数据,该第二命令数据包括第二实体名称和第二关键词;将第二请求映射到第三实体名称和第三关键词;从导航服务的至少一个数据库获取对应于第三实体名称和第三关键词的第二网络定位符;以及响应于接收到第二请求并且经由互联网而提供第二网络定位符。导航客户端可以包括web(网络)浏览器。导航客户端可以执行在移动设备上。
根据各种实施例,公开了一种导航服务系统。该系统包括一个或多个服务器计算机,其可操作地耦合到互联网并且配置成经由互联网接收针对网络资源的请求,该请求包括由导航客户端提供的命令数据,该命令数据包括实体名称和关键词。该方法还包括可操作地耦合到一个或多个服务器的至少一个数据库,至少一个数据库与实体名称和关键词相关联地存储网络定位符。该方法还包括配置成经由互联网将网络定位符提供给导航客户端的至少一个电子处理器。
以上实施例的各种可选特征包括以下内容。导航服务可以不是域名系统导航服务。可以从包括毗邻于实体名称的名称空间标识符的命令串导出命令数据。名称空间标识符可以是@、fb、in或者“.”。可以从包括毗邻于关键词的关键词定界符的命令串导出命令数据。关键词定界符可以是#、!、“.”、$或|。该系统可以包括至少一个处理器,其配置成:从域名系统服务提供商的数据库获取对应于网络定位符的网际协议地址,以及提供网际协议地址。该系统可以包括至少一个处理器,其配置成:通过导航服务接收网络定位符、实体名称和关键词,并且与实体名称和关键词相关联地存储网络定位符。至少一个处理器还可以配置成接收实体名称的拥有者的证明。该系统可以包括至少一个处理器,其配置成:经由互联网获取针对网络资源的请求的片段,该请求的片段包括由导航客户端所提供的命令数据的片段,该命令数据的片段包括实体名称和关键词的片段;从至少一个数据库获取对应于关键词标识符的至少片段的多个可能的关键词;以及经由互联网提供多个可能的关键词。该系统可以包括至少一个处理器,其配置成:经由互联网获取针对网络资源的请求的片段,该请求的片段包括由导航客户端所提供的命令数据的片段,该命令数据的片段包括实体名称的片段;从至少一个数据库获取对应于实体名称的至少片段的多个可能的实体名称;以及经由互联网提供多个可能的实体名称。至少一个处理器还可以配置成经由互联网接收针对网络资源的第二请求,该第二请求包括由导航客户端所提供的第二命令数据,该第二命令数据包括第二实体名称,其中第二实体名称不包含在至少一个数据库中作为实体名称,其中第二实体名称出现在对应于第三方服务的第三方名称空间中;从第三方服务获取对应于第二实体名称的内容;以及经由互联网提供针对包括所述内容的资源的网络定位符。实体名称可以包含在至少一个数据库中作为实体名称,并且关键词可以不与实体名称相关联地包含在至少一个数据库中,至少一个处理器还可以配置成与针对涉及关键词的第二关键词的实体名称相关联地针对所述关键词搜索至少一个数据库,并且网络定位符可以对应于实体名称和第二关键词。至少一个处理器还可以配置成记录不包含在至少一个数据库中作为实体名称的、在针对网络资源的请求中接收的实体名称,以及提供不包含在至少一个数据库中作为实体名称的至少一个实体名称。该系统可以包括至少一个处理器,其配置成:经由互联网接收针对网络资源的第二请求,该第二请求包括由导航客户端所提供的第二命令数据,该第二命令数据包括第二实体名称和第二关键词;将第二请求映射到第三实体名称和第三关键词;从至少一个数据库获取对应于第三实体名称和第三关键词的第二网络定位符;以及经由互联网提供第二网络定位符。导航客户端可以包括web浏览器。
根据各种实施例,公开了一种使用计算机系统实现的方法。该方法包括通过导航客户端接收包括实体名称和关键词的命令串;从命令串导出针对资源的请求,该请求包括实体名称和关键词;向导航服务并且经由互联网提供针对资源的请求;以及从导航服务获取对应于实体名称和关键词的网络定位符。
以上实施例的各种可选特征包括以下内容。导航服务可以不是域名系统导航服务。命令串可以包括毗邻于实体名称的名称空间标识符。名称空间标识符可以是@、fb、in或者“.”。该方法可以包括基于名称空间标识符选择导航服务。命令串可以包括毗邻于关键词的关键词定界符。关键词定界符可以是#、!、“.”、$或|。该方法可以包括请求与网络定位符相关联的网际协议地址,接收与网络定位符相关联的网际协议地址,以及导航到网际协议地址。所述导出可以包括解析命令串和构造请求。该方法可以包括从域名系统服务提供商请求对应于网络定位符的网际协议地址,以及自动导航到网际协议地址。该方法可以包括接收显示网络定位符的请求,并且提供用于显示的网络定位符。该方法可以包括在导航客户端中的字段处接收到实体名称时提供视觉指示。
根据各种实施例,公开了一种系统。该系统包括至少一个电子处理器,其配置成:通过导航客户端接收包括实体名称和关键词的命令串;从命令串导出针对资源的请求,该请求包括实体名称和关键词;向导航服务并且经由互联网提供针对资源的请求;以及从导航服务获取对应于实体名称和关键词的网络定位符。
以上实施例的各种可选特征包括以下内容。导航服务可以不是域名系统导航服务。命令串可以包括毗邻于实体名称的名称空间标识符。名称空间标识符可以是@、fb、in或者“.”。至少一个处理器还可以配置成基于名称空间标识符选择导航服务。命令串可以包括毗邻于关键词的关键词定界符。关键词定界符可以是#、!、“.”、$或|。至少一个处理器还可以配置成:请求与网络定位符相关联的网际协议地址;接收与网络定位符相关联的网际协议地址;以及导航到网际协议地址。至少一个处理器还可以配置成解析命令串并且构造请求。至少一个处理器还可以配置成:从域名系统服务提供商请求对应于网络定位符的网际协议地址;以及自动导航到网际协议地址。至少一个处理器还可以配置成:接收显示网络定位符的请求;以及提供用于显示的网络定位符。至少一个处理器还可以配置成在导航客户端中的字段处接收到实体名称时提供视觉指示。
附图说明
并入并且构成本说明书的一部分的附图图示了本发明的实施例并且连同描述一起用于解释本发明的原理。在图中:
图1是图示了与某些公开的实施例一致的示例性关键词导航系统的图;
图2是图示了与某些公开的实施例一致的关键词管理服务器所执行的示例性过程的流程图;
图3是与某些公开的实施例一致的由关键词解析服务器提供以使得内容提供商能够创建、修改和删除关键词网页映射的示例性接口;
图4是图示了与某些公开的实施例一致的解析向内容提供商指定的网页的用户供应的关键词的示例性方法的流程图;
图5是与某些公开的实施例一致的包含URL关键词的示例性URL的列表;
图6是与某些公开的实施例一致的由包含URL关键词的URL的输入所致的示例性HTTP请求;
图7是与某些公开的实施例一致的来自关键词启用web服务器的示例性HTTP响应;
图8是与某些公开的实施例一致的用于请求URL关键词的解析的示例性URL;
图9是与某些公开的实施例一致的对应于内容提供商指定的关键词网页映射的示例性URL;
图10是与本发明一致的示例性实施例的示例性实现;
图11是与本发明一致的服务器侧上的关键词/URL映射的示例性实现;
图12是与本发明一致的客户端侧上的关键词/URL映射的示例性实现;
图13是使用HTTP重定向的关键词/URL映射的示例性实现;
图14是图示了与某些公开的实施例一致的关键词管理服务器的品牌管理组件所执行的示例性品牌管理过程的流程图;
图15是与某些公开的实施例一致的由关键词解析服务器提供以使得内容提供商能够管理品牌驱动关键词映射的示例性接口;
图16是与某些公开的实施例一致的由关键词解析服务器提供以使得第三方能够参与品牌驱动关键词映射中的示例性接口;
图17图示了与本发明的原理一致的用于从代理导航到期望网络资源的系统和方法的示例;
图18是图示了根据各种实施例的从导航服务的视角的方法的流程图;
图19是图示了根据各种实施例的从代理的视角的方法的流程图;以及
图20示出了可以用于实现与本发明一致的实施例的示例性计算系统。
具体实施方式
本公开提供用于从代理向用户所期望的网络资源的直接导航的方法、系统、计算机可读介质和制造商产品。本公开还提供使得代理的用户能够导航到或连接到期望的网络资源而不必知晓或不必输入对应于期望的网络资源的确切域名、URI、URL等的方法、系统、计算机可读介质和制造商产品。
首先考虑在寻找诸如销售产品、皮鞋的零售网站之类的期望网络资源时的常规互联网用户的行为的用例示例。在该用例示例中,用户期望从用户所指定的特定实体的网站(已知为Gimbels的虚构零售商)购买皮鞋。为了这样做,用户通常首先向浏览器的导航条或地址栏中键入一般描述所期望的内容的字符的串,诸如“gimbels皮鞋”(不具有双引号),并且按下回车键。浏览器然后通常将该字符串发送到返回浏览器所显示的许多结果的搜索引擎。在该常规场景中,零售品牌和域拥有者Gimbels不能控制搜索引擎显示给用户的内容——在大多情况下,搜索引擎将显示到与Gimbels无关的许多网络资源的链接,诸如到竞争零售商、离题(off-point)产品(例如,凉鞋而不是皮鞋)、Gimbels网站的无关页面、或者可能向搜索引擎支付费用以显示的广告商的几乎任何其它内容的链接。类似地,在该常规场景中,用户可能不会得到他指定和期望的确切网络资源——销售皮鞋的Gimbels网页——因为搜索引擎将通常在到Gimbels网页的链接前面返回到与Gimbels无关的许多不同网页的链接。
与本发明一致的各种实施例允许诸如像Gimbels那样的域拥有者之类的实体形成、指定或以其它方式引导响应于可以相关联、相关或以其它方式映射到实体所控制或操作的一个或多个网络资源的期望网络资源的一般描述而提供的导航结果。
I.基于URL的智能导航
图1是图示了可以用于实现各种公开的实施例的包括示例性系统组件的示例性URL关键词解析系统100的图。然而,组件和布置可以变化。URL关键词解析服务器120可以包括处理器122、存储器123、输入/输出(I/O)设备(未示出)和存储装置121。URL关键词解析服务器120可以以各种方式实现。例如,URL关键词解析服务器120可以是通用计算机、服务器、大型计算机或这些组件的任何组合。URL关键词解析服务器120可以通过链接与网络115通信。例如,链接可以是直接通信链接、LAN、WAN或其它合适的连接。网络115可以包括互联网。URL关键词解析服务器120可以是独立式的或者其可以是子系统的部分,所述子系统可以继而为诸如合法域注册系统之类的较大系统的部分。
处理器122可以包括一个或多个已知处理设备,诸如来自IntelTM所制造的PentiumTM或XeonTM系列的微处理器、AMDTM所制造的TurionTM系列、或者SunMicrosystems所制造的各种处理器中的任何一种。存储器123可以包括配置成存储由处理器122用来执行涉及所公开的实施例的某些功能的信息的一个或多个存储设备。存储装置121可以包括易失性或非易失性、磁性、半导体、带、光学、可移除、不可移除或者其它类型的存储设备或计算机可读介质。
在一个实施例中,存储器123可以包括从存储装置121或其它地方所加载的一个或多个关键词解析程序或子程序124,其在由URL关键词解析服务器120执行时执行与所公开的实施例一致的各种进程、操作或过程。例如,存储器123可以包括:关键词注册程序,其认证域名并且允许域名控制器设立并维持用于域名的关键词;关键词解析程序,其接收解析域内的一个或多个关键词的用户请求,将关键词/域名组合与目标URL相匹配,并且将目标URL提供给用户;报告程序,其显示关于关键词使用、解析请求和其它度量的统计;综合支持程序,其链接其它程序并且允许它们使用共同数据库,提供共同用户接口,执行基本簿记(bookkeep)任务,(诸如存储用户的输入等),并且提供用户引导和帮助;以及品牌管理程序,其允许域名控制器使得第三方能够提供用于域的关键词。存储器123还可以包括执行其它功能和过程的其它程序,诸如提供通信支持、互联网接入等的程序。
与所公开的实施例一致的方法、系统和制造商产品不限于配置成执行专用任务的单独的程序或计算机。例如,存储器123可以配置有在由处理器122执行时执行若干功能的关键词解析程序124。例如,存储器123可以包括执行关键词解析系统的功能的单个程序124,或者程序124可以包括多个程序。此外,处理器122可以执行与URL关键词解析服务器120远程地定位的一个或多个程序。例如,URL关键词解析服务器120可以访问一个或多个远程程序,其在执行时执行涉及所公开的实施例的功能。
存储器123还可以配置有操作系统(未示出),其在由URL关键词解析服务器120执行时执行现有技术中公知的若干功能。经由示例,操作系统可以是微软WindowsTM、UnixTM、LinuxTM、SolarisTM、苹果计算机操作系统、诸如微软CETM之类的个人数字助理操作系统或者某种其它操作系统。操作系统的选择以及甚至操作系统的使用对于任何实施例不是关键的。
URL关键词解析服务器120可以包括一个或多个I/O设备(未示出),其允许由URL关键词解析服务器120接收和/或发送数据。I/O设备还可以包括一个或多个数字和/或模拟通信输入/输出设备,其允许URL关键词解析服务器120与诸如web服务器140或客户端计算机150之类的其它机器和设备通信。URL关键词解析服务器120可以经由I/O设备从外部机器和设备接收数据并且将数据输出到外部机器和设备。I/O设备中并入的输入和/或输出设备的配置和数量可以针对某些实施例而适当地变化。
URL关键词解析服务器120还可以例如通过网络115通信连接到一个或多个数据储存库130。数据储存库130可以包括一个或多个文件或数据库131,其存储信息并且通过URL关键词解析服务器120被访问和/或管理。经由示例,数据库可以是OracleTM数据库、SybaseTM数据库或其它相关数据库、或不相关数据库,诸如Hbase或Cassandra。数据库或其它文件可以包括例如涉及域名的数据和信息、用于域名的关键词、描述、统计以及涉及关键词的其它数据等。然而,所公开的实施例的系统和方法不限于单独的数据库。
URL关键词解析服务器120还可以通过网络115通信连接到一个或多个客户端计算机150。客户端计算机150可以包括处理器151、存储器152和web浏览器153以与URL关键词解析服务器120和/或web服务器140通信。客户端计算机150还可以通过网络115通信连接到web服务器140。在一些实施例中,URL关键词解析服务器120可以将数据发送给处理器151和web浏览器153,并且web浏览器153可以作为关键词注册接口而显示数据。在一些实施例中,客户端计算机150可以使用HTTP协议与web服务器140通信以检索和显示由web服务器140提供的网页。在一些实施例中,客户端计算机150可以将URL和关键词数据发送给URL关键词解析服务器120并且可以接收回与由内容提供商针对特定域/关键词对所指定的URL对应的目标URL数据。
web服务器140可以由内容提供商或域名控制器所拥有或操作并且可以存储与一个或多个域名相关联的web页面和其它互联网资源。web服务器140可以包括处理器142、存储装置141和存储器143。存储装置141可以是易失性或非易失性、磁性、半导体、带、光学、可移除、不可移除或其它类型的存储设备或计算机可读介质,并且可以包含用于显示各个web页面的数据。在所公开的实施例中,存储器143可以包括用于接收和响应于HTTP请求的一个或多个web服务器程序;用于提供动态网页的一个或多个服务器侧脚本145;以及用于接收和解析针对URL/关键词对的请求的一个或多个关键词解析程序146。每一个这样的程序例如可以从存储装置141或其它地方加载。
图2是图示了与所公开的实施例一致的关键词管理服务器所执行的示例性过程的流程图。关键词解析服务提供商可以提供用于使得内容提供商能够实现与本发明一致的URL关键词功能的大部分技术基础结构。例如,关键词解析服务提供商可以使用关键词管理服务器来为内容提供商提供接口,诸如在图3中描绘的用于注册和管理URL关键词的接口。
在步骤205中,在代表内容提供商发挥作用的用户登录到关键词管理接口300中之后,关键词管理服务器从用户接收域名(其也可以包括路径或查询串信息),指示用户想要针对其注册关键词的域名。域名标识互联网资源的控制或权限的范围。域名通常是标识网站的主机名。例如,acmecorp.cc可以是由Acme公司使用的域名。域名通常通过域名注册器注册以表示使用与域名相关联的互联网资源的排他性权利。
在步骤210中,出于安全性目的,关键词管理服务器可以首先要求用户通过展示出用户具有针对所输入的域名注册关键词的权限而认证所输入的域名。例如,关键词管理服务器可以创建元标签以供用户插入到域的主页中。这样的元标签可以看起来像是“<metaname=“keyword-verification”content=“djkaoieiosldisa”/>”。关键词管理服务器可以将域名和内容字段的值存储在数据库或其它文件中。在元标签已经被插入到主页中之后,用户可以返回到认证过程。关键词管理服务器然后可以检查域的主页以便检测元标签的存在。如果元标签存在并且具有与由关键词管理服务器所存储的值相匹配的内容值,则用户可以被验证为具有对域名的控制。
在可替换实施例中,可以请求用户设立域名系统(DNS)中的CNAME记录。DNS记录存储用于将互联网地址请求解析成物理资源的信息。CNAME记录指定域名是另一域名的化名。关键词管理服务器可以例如指令域名控制器将CNAME主机“djkaoieiosldisa”和CNAME文本“www.resolvecom.com”添加到DNS。关键词管理服务器可以将具有域名的CNAME主机存储在本地数据库中。在CNAME记录已经设立之后,用户可以返回到认证过程。关键词管理服务器然后可以查询域的DNS以寻找CNAME主机,并且如果其被找到并且与所存储的CNAME主机相匹配,则用户可以被验证为域名的拥有者。
对于经认证的域名,在步骤215中,关键词管理服务器可以允许域名控制器提供用于域的关键词。关键词管理服务器可以提供接口,诸如图3中所示的接口,其允许内容提供商或域名控制器设立关键词。关键词可以与域名相关联,并且关键词管理服务器可以在接口中显示当前域名305。如图3中所示,关键词管理服务器可以从域名控制器接收至少关键词310和URL315,从而形成关键词-URL对。URL标识域名控制器期望与关键词相关联的具体web页面,使得适当格式化到向还包括关键词310的域名305的请求将自动把用户重定向到URL315。
URL315可以是在域305处所托管的web页面,但是其不需要如此。URL315可以是域名控制器选择的任何域的任何web页面的地址。在接收到关键词和URL之后,关键词管理服务器可以将关键词-URL对存储在数据库或其它文件中。关键词-URL对与当前域名305相关联。
除该信息之外,关键词管理服务器还可以例如通过图标320搜集涉及关键词的附加信息或元数据。该附加信息可以包括但不限于URL的描述或关键词的描述。URL描述可以是域名控制器选择的URL的业务描述。描述还可以在关键词统计报告和关键词管理服务器所生成的其它报告上使用。
接口还可以包括品牌管理组件,其允许域名控制器使得不拥有域的一个或多个第三方能够提供针对域的关键词。例如,用户可以按下按钮350以请求关键词管理服务器生成第三方的建议列表。关键词管理服务器可以将该列表显示给域名控制器。域名控制器还可以将所建议的第三方提供给不在所生成的列表上的关键词管理服务器。品牌管理组件还在下文详细描述。
关键词-URL对还可以映射到位置。位置可以指定邮政编码、州、区域代码、国家、地理位置代码或者某种其它地理标识符。例如,域名控制器可能期望具有用于位于Hawaii中的网站访问者而不是用于位于Minnesota中的网站访问者的不同web页面显示。关键词解析服务器可以从设备支持GPS接收地理位置代码或者可以使用网站访问者的源IP地址来确定网站访问者的位置。关键词解析服务器可以使用该信息来选择关键词-URL对。位置允许域名控制器运行地区广告活动并且将网站访问者定向到适当的地区提供。
关键词还可以具有相关联的设备元数据。设备可以例如代表个人数字助理(PDA)、智能电话、膝上型电脑、平板等。设备可以使得关键词解析服务器能够将网站访问者重定向到对于设备类型适当的web页面。例如,域可以具有用于诸如PDA或智能电话之类的移动设备的一个web页面,以及用于所有其它设备的另一web页面。关键词解析服务器可以配置成确定发起针对所提供的域/关键词的关键词解析请求的设备的类型并且使用该设备类型来选择适当的关键词-URL对。
关键词管理服务器可以使用图3的关键词类型325来标识关键词与位置或设备。例如,具有类型“R”的关键词可以不具有任何相关联的位置或设备。具有类型“L”的关键词可以具有与关键词相关联的位置,并且具有类型的“D”关键词可以具有与关键词相关联的设备。
在步骤220中,在内容提供商或域名控制器已经按需注册、修改或删除关键词映射之后,用户可以按下按钮330以请求关键词管理服务器生成适当的客户端可执行程序以用于嵌入在内容提供商HTTP响应中,以使得能够删除和解析用户提供的URL关键词,如下文进一步描述的。并且,在步骤225中,可以显示诸如JavaScript程序之类的适当的客户端可执行程序以供用户复制和放置在内容提供商的服务器逻辑中。
图14是图示了与所公开的实施例一致的关键词管理服务器的品牌管理组件所执行的示例性品牌管理过程的流程图。在步骤1410中,关键词管理服务器可以接收品牌管理参与信息,其指示代表内容提供商(诸如域名控制器)发挥作用的用户想要通过使得第三方能够提供用于域名的关键词而参与在品牌管理中。用户可以通过在关键词管理接口300的按钮350上点击而将品牌管理参与信息提供给关键词管理服务器,或者可以使用任何其它已知方法来将品牌管理参与信息发送至关键词管理服务器。在按钮350上点击可以将用户从关键词管理接口300重定向到域拥有者品牌管理接口。在图15中示出示例性域拥有者品牌管理接口。尽管在该示例性实施例中域拥有者品牌管理接口与关键词管理接口分离,但是品牌管理接口和域拥有者关键词管理接口可以组合成单个接口或者可以分离成多于两个接口。
在步骤1420中,关键词管理服务器可以生成所建议的第三方的列表。该列表可以从域名注册或者从已经向关键词管理服务器提供了指示第三方对参与在品牌管理中感兴趣的信息的第三方自动生成。可以在域拥有者品牌管理接口上向用户显示该列表,诸如在图15中示出的接口1500的部分1510。域名控制器可以回顾可用第三方的列表并且选择那些第三方中的一个或多个以使得第三方能够提出针对域的品牌驱动关键词映射。如果域名控制器想要启用未显示在部分1510上的第三方,则域名控制器可以使用一个或多个文本框1515来输入该第三方的名称。域名控制器可以将第三方的选择提交至关键词管理服务器。例如,域名控制器可以通过点击接口1500上的提交按钮1514将选择提交至关键词管理服务器。
在步骤1430中,关键词管理服务器可以接收域名控制器对一个或多个第三方的选择。关键词管理服务器可以使用接收数据的任何已知方法来接收域名控制器对一个或多个第三方的选择。
在步骤1440中,关键词管理服务器可以将第三方选择信息发送给第三方。第三方选择信息可以包括涉及已经授权第三方提交所提出的品牌驱动关键词映射的域名的信息。例如,第三方选择信息可以包括域名、域名的拥有者、站点类型以及第三方授权的日期和时间。关键词管理服务器可以在第三方品牌管理接口上显示第三方选择信息,诸如图16中所示的示例性第三方品牌管理接口。
如图16中所示,第三方品牌管理接口可以包括部分1610、1620、1630、1640和1650。关键词管理服务器可以在部分1610中显示最近授权第三方提出品牌驱动关键词映射的域名,并且可以在部分1620中显示已经接受一个或多个第三方的品牌驱动关键词映射的一个或多个参与方的名称。关键词管理服务器还可以显示部分1630,其允许第三方输入所提出的关键词和所提出的相关联URL以作为品牌驱动关键词映射通过例如按提交按钮1632而提交至用户。在图16中所示的示例中,第三方“AlphaCorp.”处于将关键词“Alpha,”“AlphaWidgets”和“AlphaMerger”以及相关联的URL提交至针对“Acmecorp.com”的域名控制器的过程中。
关键词管理服务器可以在部分1640中显示由一个或多个域名所批准的关键词并且可以在部分1650中显示由一个或多个域名控制器所拒绝的品牌驱动关键词映射。尽管在图16中未示出,但是部分1650还可以包括域名控制器拒绝品牌驱动关键词映射的原因。例如,域名控制器可能由于关键词或相关联URL是不适当的而拒绝品牌驱动关键词映射。作为另一示例,域名控制器可能拒绝与已经由用户或由另一第三方使用中的关键词的品牌驱动关键词映射。
返回到图14,在步骤1450中,关键词管理服务器从第三方接收品牌驱动关键词映射。例如,第三方可以输入关键词1634和相关联URL1636(在图16中示出),并且通过按下提交按钮1632而将品牌驱动关键词映射提交至关键词管理服务器。如果第三方想要改变品牌驱动关键词映射,则第三方将把新映射提交至关键词管理服务器以供由域名拥有者的重新批准。域名控制器可以回顾每一个经修订的关键词映射,或者可以“选择退出”针对受信任的第三方的批准。附加地,域名控制器可以禁用第三方在任何时间提供关键词映射。
在步骤1460中,关键词管理服务器可以将品牌驱动关键词映射发送至域名控制器。关键词管理服务器然后可以在域拥有者品牌管理接口上显示品牌驱动关键词映射,诸如在图15中的品牌管理接口1500的部分1520上。域名控制器然后可以确定是接受还是拒绝品牌驱动关键词映射。例如,如图15中所示,如果域名控制器接受关键词映射,则域名控制器可以选择对应于“是”的按钮,或者如果域名控制器拒绝关键词映射,则域名控制器可以选择对应于“否”的按钮。尽管在图15中未示出,但是域名控制器也可以输入指示域名控制器选择拒绝关键词映射的理由的注释,或者也可以向关键词管理服务器或第三方提供所提出的可替换关键词或相关联的URL。附加地,域名控制器可以通过请求关键词管理服务器将第三方的名称与所提出的关键词相比较而自动启用选择。如果第三方名称和所提出的关键词是类似或相同的,则域名控制器可以定向关键词管理服务器以自动接受所提出的关键词映射。类似地,如果第三方的名称和关键词不匹配,或者如果关键词与由关键词管理服务器和/或由域名控制器所生成的禁止关键词的列表相匹配,则域名控制器可以定向关键词管理服务器以自动谢绝所提出的关键词映射。
在步骤1470中,关键词管理服务器基于域名控制器的选择而接受或谢绝品牌驱动关键词映射。一旦接受或谢绝关键词,则关键词管理服务器告知第三方。例如,关键词管理服务器可以在第三方品牌管理接口1600上(诸如在部分1640或1650上)显示涉及所批准或拒绝的品牌驱动关键词映射的信息。
在步骤1480中,关键词管理服务器将由域名控制器所接受的品牌驱动关键词映射存储在品牌驱动关键词注册数据库中。品牌驱动关键词映射被用于响应于与品牌驱动关键词映射中的关键词相同或类似的用户供应的URL关键词而将客户端定向到网页。品牌驱动关键词注册数据库还可以存储涉及品牌驱动关键词映射的附加信息,诸如第三方的身份、是否已经给予第三方自动更新品牌驱动关键词映射的准许、统计信息、以及与品牌驱动关键词映射相关联的各种其它信息。
尽管图14示出了使用特定步骤执行的过程,但是与本发明一致的实施例不需要执行图14中所示出的所有步骤,可以执行附加步骤,或者可以以不同顺序执行所述步骤。
图4是描绘了与某些所公开的实施例一致的响应于用户供应的URL关键词而将客户端定向到网页的示例性方法的流程图。在图4中所描绘的实施例中,诸如最终用户之类的客户端410可以将HTTP请求发送给内容提供商服务器420以得到与URL相关联的网页(步骤411)。
例如,如图5中所描绘的,用户可以将URL510“http://www.newnews.com/#earthquake”键入到浏览器的地址栏中,其可以使浏览器向托管“www.newnews.com”域名的web服务器420做出HTTPGET请求600,如图6中所描绘的。特别地,响应于用户指定URL510,来自用户的浏览器的HTTP请求600可以请求资源610,其对应于来自托管域名620“www.newnews.com”的web服务器420的根“/”目录。通常,web服务器将被配置成响应于针对根目录的请求而发送默认HTML文件,诸如“index.html”。
URL510可以包括资源串510a和关键词510b,如由井号或井字符号“#”所指示的。出于句法的目的,使用井字符号划分URL关键词的该技术类似于URL中的片段标识符的使用,其由互联网工程任务组的RFC3986URL规范所定义。
在常规使用中,片段标识符可以用于标识从web服务器所接收的HTML页面内的具体部分并且指令浏览器在渲染HTML页面时直接导航到该部分。例如,在网页的HTML文本内,网页的作者可以在逻辑上将网页的内容划分成“介绍”部分、“分析”部分和“结论”部分。作者还可以在对应部分的内容之前放置HTML锚定(anchor)标签‘<ahref=“#introduction”>’、‘<ahref=“#analysis”>’和‘<ahref=“#conclusion”>’。如果用户请求包括片段标识符“#analysis”的URL并且存在用于“#analysis”片段标识符的HTML锚定标签,则用户的浏览器将不仅下载并渲染所检索的HTML文档的HTML,而且还将直接自动滚动直接到前面有“#analysis”片段标识符的HTML文档的部分。因而,常规上,片段标识符如在图6中描绘的那样在浏览器内整体处理,不包括在向web服务器的浏览器的HTTP请求600的指定资源610中,并且在经由HTTP请求600检索内容之后进行处理。此外,片段标识符的常规使用不生成附加HTTP请求并且仅用于决定在浏览器中执行渲染时将所返回的内容的什么部分显示给用户。
然而,如下文进一步描述的,依照本发明,可以代替地使用片段标识符的句法来指示URL关键词。也就是说,片段标识符510b“#earthquake(地震)”可以不指示用户向浏览器指定由文本“earthquake”所锚定的网页的部分上的初始滚动焦点,而是用户请求内容提供商服务器420通过将用户定向到内容提供商已经针对关键词“earthquake”所指定的不管什么具体网页而做出响应,其可以是与最初请求的网页不同的网页。在其中存在诸如当内容提供商使用片段标识符作为向初始页面的锚定和作为将用户定向到特定网页的方法二者时的冲突的情况下,内容提供商和/或关键词解析服务可以确定是否使锚定或关键词占优势。例如,如果不存在与关键词的冲突,则关键词解析服务可以自动承兑锚定,并且如果存在冲突,则关键词可以居先。因而,客户端将被定向到特定网页。
继续以该特定示例,用户可能已经听说牵涉某一外国中的地震的最近显著世界事件。并且,用户还可能期望咨询网站www.newnews.com以得到关于事件的信息。然而,不是首先去往newnews.com主页以及要么针对范围可能从地震的科学解释到地震的历史总结的讨论地震的文章的搜索要么尝试通过诸如菜单和子目录之类的传统导航技术进行导航以找到关于最近地震的信息(针对其用户可能不具有足够信息,诸如相关国家,以甚至知晓从何处开始寻找),用户可以代替地简单指定用于URL中所寻求的话题的基本域名510a和关键词510b。
通过使浏览器做出向该基本域名/关键词组合的HTTP请求,用户基本上请求托管www.newnews.com域名的web服务器为用户提供NewNews内容提供商已经针对该关键词所指定的不管什么具体网页。例如,一旦NewNews内容提供商意识到大型国外地震,则其编辑员工可以创建详述全部有关信息的网站,相信所述信息是用户将在寻找提供最近地震新闻事件的基本预览的网页的情况下寻求的。一旦该网页被创建并且被分配URL,诸如图3的URL315,则编辑或其它非技术内容提供商可以登录到关键词系统接口300中以注册用于www.newnews.com域名的新关键词“earthquake”并且将其与URL315相关联。
图5描绘了与本发明的实施例一致的其中可以嵌入关键词的URL的其它潜在形式。例如,如在可以为优选实施例的URL520中那样,关键词(此处“anvil”)可以嵌入在任何形式的URL中,针对其浏览器可以具有充足信息以做出HTTP请求,并且因此可以不存在方案或机制(此处“http”),并且根目录“/”符号也可以在域名与关键词之间省略。在URL520的示例中,用户可以将关键词添附到在线零售商的域名(此处“acmecorp.cc”)以便针对用于购买的特定类型的产品(此处“anvil”)请求内容提供商指定的网页。
如URL530中所示,关键词可以包括非允许URL字符,诸如空格,其可以在HTTP响应中的发送之前经历URI编码以便使用分离的空格划界的词或者以包括特殊字符,诸如非ASCII字符。在URL530的示例中,用户可以将关键词添附到本地商户的域名(此处“momandpopshop.com”)以便请求内容提供商指定的网页以得到关于在本地商户处所发生的特定促销或事件(此处“绿灯特别(greenlightspecial)”)的信息。
如URL540中所示,关键词还可以包括通配符、规则表述或其它字符以虑及关键词的灵活串匹配;或者可以包括可替换关键词,例如其中通过管线“|”字符分离的可替换物。URL540还展示出关键词不需要直接遵循域名,而是可以代替地放置在目录结构或者URL内的其它路径内。放置在路径内的关键词可以以各种方式处理。例如,可以相对于任何路径信息给予关键词偏好,使得URL中的任何路径在找到关键词的情况下被简单地省略。
可替换地,先于关键词的任何路径可以限制范围或者以其它方式提供用于该关键词的相关名称空间。例如,内容提供商可以在其放置于URL中的“/students/undergraduate/”路径内的情况下指定用于关键词“录取”的第一网页(例如提供用于本科生的录取信息)并且在其放置于URL中的“/students/graduate/”路径内的情况下指定用于关键词“录取”的第二网页(例如提供用于研究生的录取信息)。可以将类似技术用于将单个域名内的“无用(vanity)”URL供应给各种不同公司或组织的内容提供商。例如,在供应诸如“www.facebook.com/cocacola”或“www.facebook.com/toyota”之类的无用URL的Facebook.com的情况下,相同关键词(例如“#2011challenge”)可以取决于其是发生在“/cocacola”路径内还是“/toyota”路径内而链接到不同网页。
在URL540的示例中,用户可以将关键词添附到大学(此处“www.vanderbilt.edu”)或其它非盈利组织(以及进一步地在遵循该域名的路径内)的域名,以针对关于特定主题(此处“录取”)的一般信息(例如内容表格)请求内容提供商指定的网页。
如URL550中所示,关键词还可以嵌入在URL内的查询串内或者添附到它。类似于URL540,URL550内的查询串可以在一旦删除关键词的情况下被省略或者可以提供关键词在其内具有单独或不同的含义的名称空间。在一些实施例中,URL查询串可以简单地提供附加参数以应用到响应于用户指定的关键词而返回的任何网页,诸如这样的网页应当以特定语言(此处“fr”针对法语)或者以特定格式(此处针对移动设备上的显示而格式化)提供的指令。在URL550的示例中,用户可以将关键词添附到在线信息服务提供商的域名(此处“site.netops.globalsecuritiestrade.org”)以请求提供关于特定话题(此处“ETFs”)的状态或实时信息的内容提供商指定的网页。
如URL550中所示,关键词可以添附到包括多个子域名的域名。并且,类似于URL540的路径,在先域名的特异性可以限定关键词在其内具有单独或不同的含义的名称空间。例如,内容提供商可以在其遵循更通用的第二等级域名“globalsecuritiestrade.org”的情况下指定用于关键词“ETFs”的第一网页(例如一般提供关于ETF产品的信息)并且在其遵循更具体的子域名“netops.globalsecuritiestrade.org”或该子域名内的任何其它子域名的情况下指定用于关键词“ETFs”的第二网页(例如提供用于各种交换交易基金的实时交易价格)。尽管图5示出包括顶级域、跟着顶级域的具有片段标识符和关键词的第二等级域、第三等级域和第四等级域的URL,但是与本发明一致的实施例可以实现URL内的任何域等级处的片段标识符和关键词和/或实现包括任何域等级中的一个或多个的URL中的片段标识符。
并且,如URL560中所示,多个关键词560a、560b和560c可以放置在URL中。在URL560的示例中,用户可以将多个关键词添附到在线销售商的域名以针对特定产品名称请求一个或多个内容提供商指定的网页。可以将各种技术用于处理多个关键词,包括处理每一个关键词以确定是否存在匹配以及响应于具有指定网页的第一关键词而提供网页;分配用于各关键词的优先排序并且提供指定用于URL中的最高排名关键词的网页;或者提供用于不同关键词组合的具体网页映射(例如用于关键词560a的第一网页,用于关键词560b的第二网页,用于关键词560c的第三网页,以及用于关键词560a、560b和560c的组合的第四网页)。
其它技术或句法可以用于标识URL关键词。例如,URL关键词可以可替换地通过诸如“$”、“|”或“@”之类的一个或多个字符而标识,所述字符不是有效的URL字符,除非被转换成十六进制格式。然而,由于这样的字符还可以用于限定URL内的文件名称或有效路径,所以在一些实施例中,其可能优选的是代替地使用井字符号,由于大多数web浏览器被配置成从HTTP请求省略任何片段标识符(由井字符号标识),并且因而可以不存在未提供用于域特定关键词的功能的web服务器将尝试定位实际将关键词文本包含在其文件名称中的文件的危险。
本发明的URL关键词还可以包括以其它方式不允许用于URL的国际或特殊字符,因为任何这样的字符可以简单地通过用户的浏览器在HTTP请求中发送之前转换成十六进制形式。例如,内容提供商(诸如期望创建用于定向到简历起草的书的关键词网页的书商)可以创建使用适当的国际字符的关键词,从而知晓用户可以简单地指定关键词“#résumé”,其可以经受URI编码以在做出HTTP请求时通过用户的浏览器变为“#r%C3%A9sum%C3%A9”。
返回到图4,在步骤421中,内容提供商服务器420接收HTTP请求610并且通过发送HTTP响应700而做出响应,如在图7中描绘的。HTTP响应700包括报头信息710和有效载荷数据720二者。因为关键词510b可以不包括在向内容提供商服务器420的HTTP请求600中(因为在格式化为片段标识符时,其可以由客户端的浏览器省略),所以在此时,内容提供服务器420可以不知晓针对“www.newnews.com/”的请求是否意为针对www.newnews.com处的根网页的实际请求或者只是用于指定针对域特定关键词的域名。因此,内容提供商服务器420可以发送有效载荷720,其包括针对服务器上的“index.html”文件的HTML文本。
然而,为了虑及客户端410可以请求域特定关键词的可能性,内容提供商服务器420还可以包括HTML文档/有效载荷720内的少量客户端可执行代码,诸如例如“<head>”部分721。尽管在该示例性实施例中,客户端可执行代码包括在“<head>”部分中,但是客户端可执行代码可以包括在HTML文档中的任何地方。客户端可执行代码可以包括JavaScript?或其它客户端可执行程序721b,其内容由内容提供商服务器420直接提供。可替换地,内容提供商服务器420可以仅包括到驻留在另一服务器(诸如关键词解析服务器430)上的程序文件的链接721a。使用该方案,客户端410可以向关键词解析服务器430做出针对由链接721a所指定的程序文件的单独HTTP请求,并且一旦接收到程序文件,则可以执行客户端的浏览器程序内的程序文件。
在步骤412中,客户端410可以执行客户端可执行程序,例如在包含在“<head>”部分721内的任何脚本要在剖析或渲染HTML文档720的“<body>”722部分中的任何内容之前执行的浏览器规则之下。客户端可执行程序可以标识用户包括在所请求的URL中的任何URL关键词。例如,如果关键词被格式化为片段标识符,则因为客户端可执行程序在客户端410内执行,所以与在内容提供商服务器420上执行相反,客户端可执行程序可以访问这样的片段标识符。在URL510的示例中,客户端可执行程序将把“#earthquake”片段标识符标识为域特定关键词。
在步骤412中,响应于标识一个或多个域特定关键词的存在,客户端可执行程序可以使客户端410向单独的关键词解析服务器430做出单独的HTTP请求,以针对一个或多个关键词请求用于特定内容提供商指定的网页的URL。例如,如图8中所描绘的,在URL510的情况下,客户端410可以使用URL800来向关键词解析服务器430做出HTTPGET请求。URL800可以包括:关键词解析服务器的域名810;能够执行关键词查找操作的关键词解析服务器430上的服务器侧脚本的路径820;以及指定原始URL830a和客户端410所请求的域特定关键词830b二者的查询串830。
例如,客户端可执行程序可以使用本领域技术人员所已知的异步JavaScript和XML(“AJAX”)或JQuery技术来向关键词解析服务器430做出同步或异步HTTP请求。客户端可执行程序还可以使用具有指向解析服务器所托管的URL的目标的HTML“<script>”元素或HTML“<IFrame>”元素来向关键词解析服务器做出HTTP请求。本领域技术人员将领会到用于向关键词解析服务器430提供用户请求的URL和域特定关键词以用于解析的其它方法。
在431中,关键词解析服务器430可以确定内容提供商的网站上的哪些具体网页(如果存在任何的话)已经被指定以服务于所请求的关键词,并且将对应于该具体网页的目标URL提供回到客户端。例如,在URL510的情况下,关键词解析服务器430可以为客户端410提供URL900(如在图9中所描绘的),其是与内容提供商已经指定为关键词规范接口300中的URL315相同的URL。关键词解析服务器430可以向客户端410提供URL900作为AJAX响应中的简单文本串。可替换地,关键词解析服务器430可以例如使用HTTP301或302重定向而将客户端410重定向到URL900。
在步骤413中,客户端410可以针对关键词解析服务器所提供的目标URL而向内容提供商服务器420做出新的HTTP请求。例如,客户端410可以针对与URL900相关联的网页而向内容提供商服务器420做出HTTP请求。并且作为响应,内容提供商服务器420可以提供HTTP响应,其包括用于URL900所指定的网页的HTML文本,由此为客户端410提供内容提供商已经指定用于关键词“earthquake”的网页。客户端然后可以在主要浏览器窗口中渲染和显示URL900所指定的网页以供用户看和交互。
用于响应于用户指定的关键词而提供内容提供商指定的网页的前述技术呈现若干附加益处,其有益于此处的简要处理。客户端可以使用现有浏览器程序请求域特定关键词网页而不需要修改或增强浏览器程序的功能,诸如通过浏览器插件或附加件。更确切地说,为了实施本发明,浏览器仅需要为用户提供包括URL中的片段标识符和包括用于执行诸如JavaScript?之类的客户端可执行程序的基本功能的能力。
内容提供商可以同样地在具有仅对现有服务器侧脚本或程序的微小修改的情况下响应于HTTP请求而实现域特定关键词功能。特别地,内容提供商仅需要包括内容提供商针对其想要提供域特定关键词功能的域中的每一个网页内的少量客户端可执行代码。内容提供商然后可以将其留给客户端的浏览器和相关关键词解析服务器以执行实际关键词解析操作。实际上,假定内容提供商包括用于网页的HTTP请求中的必需客户端可执行程序的情况下,内容提供商的服务器可以就客户端是已经请求域特定关键词还是响应于之前的关键词解析而做出针对特定网页的请求保持完全不可知。因为内容提供商服务器总是返回任何所请求的网页连同客户端可执行关键词解析程序,所以内容提供商可以确保请求网页的客户端以便实际使他们接收这样的网页,而仅仅作为指定针对特定URL关键词的域名空间的方法而请求网页的客户端被提供以解析关键词所必需的客户端可执行程序。
类似地,通过使用片段标识符的句法来指定域特定关键词,用户可以向任何内容提供商做出包括URL关键词的HTTP请求,不管该内容提供商是否具备关键词能力,而不具有生成服务器响应错误的任何危险。因为浏览器未将片段标识符文本发送给web服务器,所以向不具备关键词能力的web服务器的HTTP请求中的域特定URL关键词的包括不应当生成任何错误,而是应当代替地简单导致在不具有片段标识符的情况下下载和显示URL的网页。并且,甚至对于具备关键词能力的web服务器而言,如果用户指定内容提供商尚未针对其指定网页的域特定关键词,则关键词解析服务器可以简单地响应于解析查询而提供空串,从而再一次导致下载和显示基本URL的网页。
在找到对应于内容提供商指定的网页的关键词的情况下,因为用于请求关键词的解析和将客户端重定向到所解析的目标URL的可执行代码处于由内容提供商服务器所返回的原始HTML文档的“<head>”部分内,所以这样的代码可以在原始HTML文档的任何渲染发生之前执行。因而,用户绝不应当看到原始请求的HTML文档被显示,即便是仅简要的,但是其应当对用户看起来像他或她直接去往与关键词相关联的网页。
同样地,使用单独的关键词解析服务器连同关键词管理接口300允许内容提供商的非技术雇员按业务需要规定而创建、修改或删除关键词-网页映射,而不需要牵涉诸如IT人员之类的技术雇员。实际上,由于内容提供商本身可以维持关键词而不需要任何具体IT技能,所以成本可以减少。此外,内容快速改变并且现有传统导航技术将要求IT专业人员再配置web服务器。
在另一实施例中,内容提供商本身可以执行关键词解析服务提供商的角色。特别地,由内容提供商服务器提供给客户端的客户端可执行程序可以指令客户端在标识一个或多个URL关键词之后查询内容提供商本身,而不是单独的关键词解析服务器,以得到对应于所标识的关键词的内容提供商指定的网页。
本发明不限于其中用户将域特定关键词手动键入到URL中的情况。更确切而言,域特定关键词可以以任何方式包括在所请求的URL中,诸如指定在现有HTML文档中的超链接内,包括在导航“书签”中,由web服务器提供(诸如以HTTP重定向的形式),或者包括在本机移动电话应用内。
本发明还可以允许用户使用关键词中的通配符或规则表述,诸如“engineer*”,其可以解析成“engineer,”“engineers,”“engineering,”“engineeringschools,”等。在一些实施例中,如果存在用于通配符或规则表述关键词的充足数目的潜在解析,则用户可以被提示以选择的列表。
本领域技术人员还将领会到,尽管步骤411的原始请求的基本URL和步骤413的目标URL二者可以由相同内容提供商实体托管,但是由相应URL托管的资源可以由单独的web服务器托管。同样地,尽管在该应用中主要描述为“域特定”关键词,但是本领域技术人员认识到概念可以扩展到提供商特定关键词。例如,单个内容提供商可以拥有和托管不同的域名“zulumail.tv”和“zmail.tv”,这二者定向到相同托管服务或由相同web服务器托管。并且,内容提供商可以指定用于关键词“#forwarding”的单个网页,而不管其是否由用户请求作为基于任一域的URL的部分。也就是说,“http://zulumail.tv/#forwarding”和“http://zmail.tv/#forwarding”二者可能解析成URL“http://zmail.tv/user_options/mail_handling/automatic_forwarding.htm”。
类似地,概念可以扩展为允许第一内容提供商指定用于给定关键词的另一内容提供商的网页。例如,如果数个较小的天气相关网站依赖于较大的服务提供商来供应实时天气信息,则负责每一个较小网站的内容提供商可以指定用于关键词“#storms”的较大服务提供商所托管的网页。
换言之,内容提供商不以任何方式限于可能指定用于给定关键词的特定网页。然而,如关于图2所描述的,内容提供商可以在如下的方面是受限的:它可能不指定针对它不拥有或不控制或不具有对其的权限的网站或域的关键词。并且此外,给定内容提供商指定的关键词可以具有仅在特定域名内的含义,其还可以包括URL路径、查询串和/或端口数目。
此外,存在用于关键词/URL映射的实施例的数个实现选项。如图10中所示,在通用情况下,用户1010可以将诸如“example.com#keyword”之类的直接导航URL输入到浏览器1020中,从而使浏览器1020向example.com服务器1030做出HTTPGET请求。响应于用户指定直接导航URL,来自浏览器1020的GET请求可以从托管域名“example.com”的服务器1030请求对应于根“/”目录的资源。一般地,web服务器响应于针对根目录的请求而发送诸如“index.html”之类的默认HTML文件连同必需的关键词/URL映射和关键词解析程序(诸如例如JavaScript代码)。浏览器1020然后可以实现关键词解析程序以确定向关键词映射的URL和所映射的URL。浏览器1020然后可以针对所映射的URL页面将请求发送给服务器1030,并且响应于该请求,服务器可以返回目标页面(即与关键词相关联的页面)。可替换地,内容提供商服务器可以请求来自单独服务器(诸如关键词解析服务器)的关键词的解析,或者指令客户端请求其解析。
关键词/URL映射可以以数个方式执行。例如,关键词/URL映射可以在服务器侧上执行、基于云的或者在客户端侧上执行。图11是在服务器侧上执行的关键词/URL映射的示例性实现。如图11中所示,可以存在互联网用户1110、浏览器1020、服务器1130和关键词注册1140。关键词注册1140可以由域拥有者1150以域拥有者1150将关键词与域中的特定网站相关联的方式来配置,并且可以是单独的服务器或者可以是服务器1130本身的一部分。附加地,品牌驱动的关键词注册(未示出)可以单独地提供,或者可以是组合的关键词注册1140。
如图11中所示,用户1110可以将诸如“example.com#keyword”之类的直接导航URL输入到浏览器1120中。浏览器1120可以将“#”翻译成诸如“@”的某种其它字符并且使用关键词和新字符向服务器侧做出请求。服务器1130然后可以与关键词注册1140通信以确定映射到关键词的URL,并且服务器1130可以响应于请求而发送诸如“index.html”之类的默认HTML文件连同诸如例如JavaScript代码之类的关键词解析程序。浏览器1020然后可以将请求发送给服务器1130以得到所映射的URL页面,并且响应于该请求,服务器可以返回目标页面。
图12是在客户端侧上执行的关键词/URL映射的示例性实现。如图12中所示,用户1210可以将诸如“example.com#keyword”之类的直接导航URL输入到浏览器1220中,从而使浏览器1220向example.com服务器1230做出HTTPGET请求。响应于用户指定直接导航URL,来自浏览器1220的GET请求可以从托管域名“example.com”的服务器1230请求对应于根“/”目录的资源。一般地,web服务器响应于针对根目录的请求而发送诸如“index.html”之类的默认HTML文件,连同必需的关键词/URL映射和关键词解析程序,诸如例如JavaScript代码。浏览器1220然后可以实现关键词解析程序以与可以包括关键词注册1242的云基础结构1240通信。云基础结构1240将确定到关键词映射的URL和所映射的URL,并且将所映射的URL发送到浏览器1220。浏览器1220然后可以将请求发送给服务器1230以得到所映射的URL页面,并且响应于该请求,服务器可以返回目标页面。
关键词/URL映射还可以整体在客户端侧上执行。在一些实施例中,客户端可以维持用于URL关键词的解析的本地文件系统或数据库,而不是依赖于内容提供商或第三方解析服务提供商来解析关键词/URL映射。例如,HTML5允许诸如JavaScript?之类的客户端可执行代码访问或查询本地数据库以便检索数据或内容。从内容提供商所接收的客户端可执行程序可以依赖于这样的本地数据库来查找关键词与URL之间的映射,并且一旦相关URL被定位,则可以将浏览器直接定向到URL,由此从过程切出从客户端到远程服务器的至少一个HTTP请求。在其它实施例中,客户端可执行代码本身可以生成用于URL关键词的解析的本地文件系统或数据库。
在另一实施例中,URL关键词解析操作可以在服务器侧上整体执行而不依赖于客户端来执行任何客户端可执行代码。例如,如图13中所示,用户1310可以将诸如“example.com#keyword”之类的直接导航URL输入到浏览器1320中。如果URL关键词通过除井字符号之外的字符(例如“@”字符)划界,则不像片段标识符,关键词可以作为客户端1320的初始HTTP请求的部分而发送到内容提供商服务器1330。内容提供商服务器1330例如可以标识关键词,确定用于关键词的适当URL映射,并且将客户端1320重定向到用于关键词的适当URL(例如使用HTTP301重定向指令),所有不依赖于客户端1320执行任何客户端可执行代码。可替换地,内容提供商服务器可以请求来自单独的服务器(诸如关键词解析服务器)的关键词的解析,或者指令客户端请求其解析。
在另一实施例中,如果客户端请求尚未由内容提供商创建或指定的关键词,则客户端可执行程序、关键词解析服务器或者内容提供商服务器可以提供某些默认选项。例如,响应于针对不存在的关键词的请求,客户端可以简单地渲染由初始HTTP请求的基本URL所标识的网页。可替换地,客户端可以被提供以网页、JavaScript警报或者用户请求了不存在的关键词的其它通知。用户还可以被提供以代替不存在的原始请求的关键词用户可以选择的潜在类似现有关键词的列表。用户还可以被提供以使用传统关键词搜索技术所生成的传统网页列表。用户还可以被提示以用户可以从其选择的潜在匹配关键词列表。
在又一实施例中,如果用户输入散列(hash)标签以向内容提供商请求关键词,则散列模块可以提供与特定域相关联的所有可用关键词的列表。例如,散列模块可以是实时地确定用户是否已经将散列标签输入到浏览器的地址栏中的附加件或插件。如果是如此,则自动完成模块将与内容提供商、客户端可执行程序、关键词解析服务器或者内容提供商服务器中的一个或多个通信以确定任何关键词是否与该特定域相关联。由用户输入到浏览器中的字母数字字符越多,与特定域相关联的可用关键词列表越窄。如果存在与域相关联的关键词,则散列模块可以生成包括那些关键词的弹出列表。如果不存在与域相关联的关键词,则散列模块可以将用户重定向到搜索服务页面。
在另一实施例中,可以提供智能导航模块以告知用户特定域是否具有关键词智能导航。例如,智能导航模块可以是浏览器附加件或插件,其实时地回顾输入到地址中的域并且通过与内容提供商、客户端可执行程序、关键词解析服务器或内容提供商服务器中的一个或多个通信来确定该特定域是否具有相关联的关键词。如果是如此,则智能导航模块可以提供以下的指示:域具有相关联的关键词,诸如例如改变地址栏的颜色或者将特定图形插入到浏览器或相关联的网页中。
除提供关键词管理接口和/或关键词解析服务之外,解析服务提供商还可以为内容提供商提供对涉及来自客户端的关键词解析请求的丰富度量和统计的访问。例如,图3的接口300还可以允许用户和/或内容提供商查看和/或下载从客户端请求每一个创建的关键词的次数。作为另一示例,解析服务提供商可以追踪已经使用多少次关键词、谁使用关键词、所使用的关键词类型、所光顾的网站、以及使用例如cookies(信息记录程序)的各种其它信息。接口300还可以提供关于用户针对各种不存在的关键词的请求的数目的信息,由此允许内容提供商确定针对作为用户需求的结果而创建附加关键词的需要。这样的不存在的关键词信息还可以包括关于存在的关键词的拼写错误的信息以告知内容提供商创建附加关键词的需要以计及现有关键词的拼写错误或同音字或者以对可准许通配符或规则表述匹配功能进行改进。在品牌驱动的方案中,可以将类似信息提供给第三方。
解析服务提供商还可以提供无恶意软件的安全导航。由于互联网上可用的网站数目是巨大的,所以针对恶意软件对它们全部进行扫描实际上是不可能的。然而,由于解析服务提供商知晓与特定关键词相关联的URL,所以解析服务提供商可以扫描URL以使用例如美国专利申请号12/982,508和12/982,540中所公开的用于恶意软件检测和扫描的系统和方法来确定其是否免于恶意软件,所述美国专利申请的整体内容以其整体通过引用并入本文中。因而,当用户将诸如“example.com#keyword”之类的直接导航URL输入到浏览器中时,用户具有URL对于浏览是安全的并且不包括恶意内容的高等级保证。
在另一实施例中,内容提供商、客户端可执行程序、关键词解析服务器或内容提供商服务器中的一个或多个可以基于客户端设备的标识而自动地优化特定网站。例如,客户端可执行程序可以标识用户的设备(例如移动电话)以将用户转到网站的特定设备的版本。客户端可执行程序可以使用例如2011年4月1日提交的题为“Systems,Apparatus,andMethodsforMobileDeviceDetection”的美国专利申请号13/078,680中所公开的方法来自动地优化网站,该美国专利申请以其整体通过引用并入本文中。
II.基于名称空间的智能导航
与本发明一致的各种实施例利用来自包括非DNS(例如非URL)名称空间的一般名称空间的名称。也就是说,所公开的实施例可以与任何名称空间(并且甚至一次与多于一个名称空间)一起工作。一般地,名称空间包括名称,并且名称拥有者具有针对名称空间(子空间)的权限,其中该权限在一些情况下可以是委派的。名称空间可以是公共的或私用的、分层的或平的(flat)。下面是名称空间的具体的非限制性示例。
所有顶级域名的集合形成名称空间。另外,所有域名的某些字集合形成名称空间,诸如顶级域的所有第二等级域、第三等级域、所有子域等的集合。术语“域名”中的“域”是指每一个名称具有针对与名称相关联的“空间”有权限的“拥有者”。在具有分层结构的传统DNS中,名称拥有者对域之下的任何子域有权限,例如“example.com”的拥有者对“a.example.com”、“b.example.com”等有权限。名称拥有者可以将针对那些子域的权限委派给另一方,但是其是名称拥有者对其被委派的“域”之上的权限。
存在许多非DNS名称空间。例如,TWITTER?名称空间是非DNS的、平的、公共名称空间。TWITTER是用户可以通过其与其关注者共享短消息的微型博客服务。每一个TWITTER账户具有唯一名称或“句柄”,以“@”字符开始的串,诸如“@example_brand”。
其它示例名称空间包括FACEBOOK?名称空间和LINKEDIN?名称空间。关于这些资源,一般地,用户可以分别通过输入URL形式http://www.facebook.com/example_user_name或http://www.linkedin.com/example_user_name而导航到示例用户的页面。这些URL的形式提供包括针对其账户存在于相应资源中的所有名称形式example_user_name的名称空间。
另一名称空间是电子邮件地址的空间。本文公开的实施例可以允许一般用户通过电子邮件使用以诸如“user@example.com!home”之类的形式的命令串来查找诸如示例用户的个人主页之类的信息,其中“user@example.com”是电子邮件地址。
又一示例是由缩短的URL限定的名称空间。缩短的URL已经作为潜在的长且复杂的URL的简化版本而被采用。它们通常具有形式“name/code”,其中“name”是短域名并且“code”是标识到完整URL的特定引用的短串。形式“bitly:name/code!keyword”的条目可以由根据本文公开的实施例的导航服务处理以作为查找关于缩短的URL或其引用的资源的附加信息的方式。
私人名称空间的示例包括公司内的用户的列表,以及局域网内的资源和/或设备的列表,诸如在用户的家里。
出于解释的清楚性,本文中,在其中品牌(例如Gimbels)的拥有者也是对应于该品牌的域(例如“.gimbels”)的注册方的用例的上下文中描述各种实施例。然而,本发明不仅限于该上下文并且具有远超出该上下文的应用。
图17图示了与本发明的原理一致的用于通过代理1710导航到期望的网络资源的系统1700的示例。连同图17的描述一起描述了补充方法。如所示出的,系统1700包括与代理1710通信的用户1705,该代理1710与导航服务1780通信。
在各种实施例中,用户1705可以是可以提供表征、关于、指定或以其它方式描述期望网络资源的输入导航数据1751并且可以提供指定或选择至少一个所呈现的建议1714(在下文进一步描述)的输入数据1726的任何事物。用户可以通过例如将其键入到适当字段中、点击在具有兼容句法的链接上或者向可以捕获反映这样的数据的声音的麦克风说话而指定导航数据1751。输入导航数据1751的一个示例可以是字符串“gimbelsshoes”。在一些实施例中,用户1705可以是人类用户或者被编程为执行提供输入导航数据1751a和输入数据1726的功能的计算系统。
因而,用户1705可以是计算机或执行计算机代码。这样的用户可以提供输入导航数据1751、选中选择数据1771和输入数据1726中的任一个或组合。例如,执行计算机代码(例如应用)可以通过以自动方式将导航数据1751提供给导航服务1780而以自动方式导航到与一个或多个定义的关键词相关联的内容。这样的执行计算机代码在其将导航数据提供给导航服务时不需要人类交互。
在各种实施例中,代理1710(还称为“导航客户端”,其是代理1710的示例)可以是可以与用户1705并与如本文所描述的导航系统1780交互的任何事物。在一些实施例中,代理1710还可以连接到由网络位置数据1772或由网络定位符1735-1737所指定的网络资源并且与其交互。代理1710一般接受、接收、获取或以其它方式访问来自用户1705的输入数据,并且接受、接收、获取或以其它方式访问来自导航服务1780的建议数据1762和网络位置数据1772。用户1705可以通过例如将这样的字符键入到字段中、点击在提供这样的字符的链接上或者提供音频输入而将字符输入到代理1710中。关于音频输入,可以通过诸如代理1710、导航服务1780或者通信耦合到代理1710和/或导航服务1780的单独的计算机之类的各种工具中的任何一种使用已知技术将原始音频数据转换成可由实施例使用的字符串。进一步关于音频输入,可以采用触发工作使得当用户1705发出触发词时,音频接口激活。触发词可以是例如“at”或者另一名称空间前缀。代理1710还一般输出、发送、打开或以其它方式为用户1705提供涉及建议数据1762和网络位置数据1772的访问,并且一般输出、发送、打开或以其它方式为导航服务1780提供涉及导航数据1751和建议选择数据1771的访问。代理1710的各种实施例也可以执行其它功能。在各种实施例中,代理1710可以以软件、固件、硬件或其任何组合实现。在一些示例性实施例中,除其它之外,代理1710尤其可以是浏览器、独立应用、向另一程序的插件或附加件(例如浏览器插件)或者服务(例如web服务)。代理可以存在于诸如智能电话之类的移动设备中的导航应用(例如浏览器)中。代理1710可以与web浏览器、web浏览器内的接口或控件、或者甚至web浏览器的地址栏的修改相分离。在一些实施例中,代理1710可以在客户端计算机上或者如以上章节I中所公开的web浏览器中实现。更具体地,代理1710可以包括以上章节I中所公开的web浏览器的一些或全部特征、功能、通信、实现细节、代码、算法、架构、结构和性质。
在各种实施例中,导航服务1780可以是可以与如本文所描述的代理1710和用户1705交互的任何事物。导航服务1780一般接受、接收、获取或以其它方式访问来自用户1705的输入数据,并且接受、接收、获取或以其它方式访问来自代理1710的导航数据1751和建议选择数据1771。导航服务1780还一般输出、发送、打开或以其它方式为代理1710提供涉及建议数据1762和网络位置数据1772的访问。在各种实施例中,导航服务1780可以以软件、固件、硬件或其组合实现。在一些示例性实施例中,除其它之外,导航服务1780可以是独立应用、服务器应用、向另一程序的插件或附加件(例如浏览器插件)或者服务(例如web服务)。在一些实施例中,导航服务1780和代理1710可以实现在单独的计算系统上并且可以经由(多个)网络(未示出)通信,所述网络诸如互联网或互联网与蜂窝电话网络的组合。在其它实施例中,导航服务1780和代理1710可以实现在相同计算系统上,要么作为单独的程序要么在相同程序中。在一些实施例中,导航服务1780可以实现在以上章节I中所描述的URL关键词解析服务器中或者作为其实现。更特别地,导航服务1780可以包括在章节I中所公开的URL关键词解析服务器的一些或全部特征、功能、通信、实现细节、代码、算法、架构、结构和性质。
如图17的示例中所示,系统1700还包括实体表示1720,其由导航服务1780和代理1710咨询、访问和以其它方式利用。在一些实施例中,实体表示1720可以实现为如上文章节I中所公开的关键词注册数据库的内容和/或所存储的关键词映射。更特别地,实体表示1720可以包括在章节I中所公开的关键词注册数据库的内容和/或所存储的关键词映射的一些或全部特征、功能、通信、实现细节、代码、算法、架构、结构和性质。
在各种实施例中,实体是控制或者有权控制(多个)网络资源(包括例如域或名称空间)或者对其具有某些其它兴趣的任何事物。从以上用例示例来看,Gimbels因为其拥有(可能地商标)品牌“Gimbels”并且因为其是域“.gimbels”的注册方而是实体并且因此有权控制指定网络资源的以“.gimbels”结尾的域,诸如Gimbelsweb页面。实体可以是如以上章节I中所描述的内容提供商和/或域名控制器。在一些实施例中,实体可以是名称拥有者或者名称拥有者的代表,其中术语“名称拥有者”一般是指名称主要与其相关联并且已经在给定名称空间中注册该名称的用户或实体。取决于知识产权布置,“名称拥有者”实际上可以不具有对名称的合法所有权,但仍旧是具有对促使使用该名称标识相关联的信息和服务的主要兴趣的方。在一些实施例中,诸如“zoo(动物园)”之类的通用实体名称经由诸如例如名称拍卖之类的各种技术而与特定实体相关联。也就是说,通用名称有时候可以具有相关联的实体。
在一些实施例中,实体表示1720可以存储在一个或多个数据库(例如一个或多个目录)中。这样的(多个)数据库可以在第一列中包括实体名称,例如来自第三方名称空间。因而,用于实体名称“gimbels”的第一列条目可以包括例如“@gimbels”(对应于TWITTER名称空间)、“fb:gimbels”(对应于FACEBOOK名称空间)以及“.gimbels”(对应于DNS名称空间)。这些条目可以包括在相同实体表示数据库、单独的实体表示数据库或者一个或多个数据库内的单独表格中。在针对每一个名称空间利用单独数据库或表格的实施例中,名称空间标识符可以从所存储的实体名称省略,其中每一个数据库或表格代替地利用特定名称空间进行标识。
在各种实施例中,实体(例如名称拥有者)可以向导航服务1780供应、定向、设立、指令或以其它方式指定建议数据1762以针对具有某些特性(诸如具有与实体匹配、映射到实体或者以其它方式与实体对应的实体标识(ID)数据1752(例如实体名称))的导航数据1751而生成或返回。在一些实施例中,这方面的实体的指定或指令可以存储或以其它方式表示在实体表示1720中和/或影响映射1782、映射1784和/或查找1787的起作用。在一些实施例中,实体可以在导航服务1780的操作期间操纵实体表示1720和/或映射1782、映射1784和/或查找1787的起作用,使得建议数据1762和/或网络位置数据1772频繁地变化。在其它实施例中,除实体之外的某些事物可以向导航服务1780定向、设立、指令或以其它方式指定建议数据1762以根据导航数据1751的特性而生成或返回。在一些实施例中,建议数据1762包括或包含一个或多个关键词。要指出的是,“关键词”可以是级联的多个单独的词,例如“shoesonsale”。
在图17的示例性描绘中,实体表示1720的每一行1731-1734包含表示不同实体或与不同实体相关联的数据。如所示的,可以存在所表示的任何数目“n”的实体。如所示的,每一行的第一(最左)列包括用于实体的标识符——在该示例中,行1731以实体标识符“实体1”开始;行1732以实体标识符“实体2”开始等。在一些实施例中,实体标识符是来自名称空间的名称。每一行的接下来两列包含与第一列中所标识的实体相关联的任何数目“m”的建议和网络定位符。因而在该示例中,存在每一个实体与其相关联的建议和网络定位符之间的一对多关系(例如1对m)。
图1的项目1735-1737示出用于“实体n”123的行1734的至少两个列的扩展或附加细节。项目1735-1737指示存在针对实体n的“m”个网络定位符,并且因此高达“m”个网络资源。如所示的,每一个项目1735-1737包括与右手边列中的每一个网络定位符相关联的左手边列中的一个或多个建议(其可以是关键词)。例如,用于实体n1723的项目1735包括用于“网络定位符1”1725的一个或多个“建议”1724。因而在该示例中,存在建议与其相关联的网络定位符之间的(一或多)对一的关系(例如>=1对1)。
在各种实施例中,网络定位符(例如“网络定位符1”1725)是足以允许代理1710和/或用户1705定位网络资源的数据和/或足以允许代理1710和/或用户1705访问网络资源的信息。除其它之外,网络定位符的示例尤其包括URL、URI、URN、IP地址和DNSA记录。在各种实施例中,建议(例如“(多个)建议”1724)是建议或以其它方式描述使用建议与其相关联的网络定位符而可访问的网络资源的数据或代码。在一些实施例中,建议包括或者使得能够呈现词语、图像、视频等,其使人类(例如用户1705)被引向想起、考虑或以其它方式提醒对应网络资源。建议可以包括应用,包括由导航服务1780运行以产生建议数据1762的应用和/或在建议数据1762中发送以由代理1710运行的应用。在一些实施例中,建议数据1762包括或包含一个或多个关键词。建议的一个示例是与网络定位符相关联的字符“gimbels.shoes”,其指向用于购买皮鞋的Gimbels零售web页面(例如网络定位符“http://www1.gimbels.com/shop/clothing/shoes”)。建议的另一示例,在该情况下关键词,是与“Gimbels”的实体名称和指向用于购买皮鞋的Gimbels零售web页面的网络定位符相关联的字符“shoes”。
如本文所使用的术语“供应”是指实体(例如名称拥有者)通过其创建、更新和删除实体表示条目并且以其它方式维持关于名称和关键词组合的信息的管理服务的集合。供应接口可以使用例如web接口实现。
在一些实施例中,在准许名称拥有者供应其相关联的实体表示数据之前,可以要求名称拥有者认证自己,并且存在用于这样做的许多可能的技术。在一些实现中,名称拥有者展示出其实际上与所讨论的实体名称相关联。这可以在首先建立认证凭证时达成,例如在名称拥有者利用导航服务注册账户时。例如,如果名称空间包括电子邮件地址,则可以将确认消息发送给指定电子邮件地址。该确认消息的成功接收的证明(例如通过返回电子邮件或者通过在电子邮件消息中的URL处接收特定数据)可以展示出电子邮件地址的所有关系。作为另一示例,如果名称空间来自一个社交网络(例如FACEBOOK),则可能的是名称拥有者使用来自该社交网络的凭证登录到导航服务中,这可以展示出对应名称的所有关系。用于展示出域名的所有关系的机制在域名管理领域中是已知的并且可以用于供应如本文所讨论的操作。
在TWITTER名称空间中供应可以使用现有TWITTER认证技术达成。也就是说,TWITTER本身在用户向TWITTER的服务张贴消息时认证TWITTER用户,因此推文自动承载相关联名称的所有关系的证明。因而,向导航服务的供应操作的直接推文可以作为认证请求接受以更新导航服务的实体表示中的信息。例如,从形式“update#news<URL>”的“@example_brand”到“@provisioning_operation”的一个或多个推文“直接消息”可以用于将与“@example_brand#news”相关联的网络定位符更新为“<URL>”。继续该示例,并且对于一些实施例而言,不要求web接口或电子邮件,更确切而言,仅仅直接向供应操作的推文。向供应操作的“推文”频道还可以支持更宽的命令集,包括设定新实体名称、关键词和网络定位符。
诸如FACEBOOK和LINKEDIN之类的社交网络中的供应可以通过经由相应环境内的特殊用途应用与某些关键词“共享”内容而达成。
在各种实施例中,实体表示1720可以以任何数目的方式实现,包括目录、数据库、数据结构、查找表、阵列、记录、直线代码等,如计算机科学领域中所已知的。同样地,在各种实施例中,实体表示1720可以实现为导航服务1780的部分、实现为单独的服务、实现在单独的数据库系统中或者以计算机科学领域中所已知的各种其它方式实现。确切的实现对于本发明不是重要的。
在操作中,图1中所示的系统1700的实施例可以以下文关于皮鞋购物用例示例所描述的方式起作用。在该示例中,用户1705是期望连接到用于零售店Gimbels的web页面并且与其交互以购买皮鞋的人类。为此,用户1705将输入导航数据1751(还称为“命令串”)提供给代理1710,该数据1751一般描述所期望的是什么。用户1705可以是人类或经编程计算机,并且命令串1751可以通过键入字段中、点击在链接上或者向麦克风说话而获取。代理1710可以具有针对硬编码到其软件中的导航服务的网络定位符。在一些实施例中,用户1705可以将字符串作为输入导航数据1751键入到代理1710。在特定示例中,用户1705可以将“gimbelsshoes”、“@gimbels!shoes”、“gimbels.shoes”或“.gimbels!shoes”键入到包括代理1710的浏览器的导航条或地址栏中。代理1710可以将导航数据1751提供给导航服务1780。因而,代理1710可以处理导航数据1751的句法以便导出要给导航服务的请求消息。
在一些实施例中,代理1710可以在其输入时顺序地提供导航数据1751(例如一次一个字符)。在其它实施例中,代理1710可以在部分、分段或其它部分中提供导航数据1751,可能地如通过指定的名称空间标识符、定界符、触发字符、符号等(例如句号“.”;斜线“/”;冒号“:”;空格“”;“@”;“!”;“|”;“fb:”;“in:”;等可以区分一个部分与另一部分)而区分或分离的。例如在这样的实施例中,输入数据“gimbels.shoes”可以基于将“.”识别为定界符或触发字符而在两个部分“gimbels.”和“shoes”中提供。在其它实施例中,连同相关联名称空间的指示(此处通过“@”符号标识为TWITTER)一起,命令串“@gimbels!shoes”可以作为“gimbels”和“shoes”而在两个部分中提供给导航服务1780。在其它实施例中,命令串“@gimbels!shoes”可以一次一个字符地提供给导航服务1780,导航服务1780对其进行累加以形成最终命令串。在这样的实施例中,可以或者可以不传达定界字符。在又另外的实施例中,命令串“@gimbels!shoes”可以在命令串的多个迭代中在接连地更完整部分中提供给导航服务1780,其中最终版本是完整命令串,例如首先“@”、然后“@g”、然后“@gi”、然后“@gim”、然后“@gimb”等。在又其它的实施例中,代理1710可以仅以其整体将导航数据1751提供给导航服务1780。
在一些实施例中,代理1710可以通过从所输入的命令串导出查询串并且作为请求将它发送给导航服务而处理命令串的句法。在这样的实施例中,导航数据1751“@example_brand#news”例如转换成“example_navigation_service.com/lookup?name=%40example_brand&keyword=news”以用于发送给导航服务。(此处,查询串是以“?name”开始的部分。标注“%40”表示“@”符号,其在传统URL的该部分中是不允许的)。这样的实施例的优点在于句法可以继续演进,并且解析仅取决于导航服务1780的可用性,其中可以存在多于一个。
在一些实施例中,代理1710将导航数据1751直接映射到具有特定格式的传统URL。例如,命令串“@example_brand#news”可以转换成“twitternavigator.net/example_brand/news”以用于作为请求发送给导航服务1780,或者用于使用传统DNS(在图17中未示出)的解析。用于这样的实施例的导航服务可以实现为对应于不同句法的web服务的集合,例如一个用于TWITTER名称,一个用于FACEBOOK名称等。
在一些实施例中,代理1710基于句法确定所输入的导航数据1751是在该情况下代理1751可以使用传统DNS系统处理它的传统URL,还是在该情况下代理1791可以如本文所公开的那样处理它的智能导航命令串。
关于命令串句法处理的其它实施例是可能的,包括以上示例性实施例的组合,这取决于导航数据1751的类型和格式。
对于其中代理1710在用户已经完成输入完整命令串之前向导航服务提供命令串的初始部分的实施例,代理1710可以显示针对与完整实体名称的已经输入部分一致的实体名称的建议。也就是说,当实体名称由用户输入时,代理1710可以将实体名称的初始片段传达给导航服务1780。导航服务1780可以基于初始片段与实体表示1720的内容的匹配而将以字符的相同(和/或相似)初始片段开始的实体名称的列表提供给代理1710。代理可以接收该列表并且诸如在菜单(例如下拉菜单)中向用户显示或以其它方式呈现该列表的全部或一些内容。用户1705可以以常规方式选择在菜单中所呈现的完整(或部分完全)实体名称,例如通过点击在其上。在这样的实施例中,点击在所呈现的实体名称上可以自动地利用(完整或部分完全)实体名称以及任何相关联的名称空间标识符符号来填充条目字段。在一些实施例中,一旦这发生,则代理1710与导航服务1780通信以获取并且向用户1705呈现与所选实体名称相关联的关键词的列表。该选项在下文进一步讨论。
作为经由所提供的建议完成实体名称的示例,考虑向代理1710提供部分串“@thenew”。如果配置成向导航服务1780提供部分数据,则代理可以将该部分数据提供给导航服务1780。导航服务可以将部分串“@thenew”匹配到多于一个实体名称,例如“@thenewyorktimes”和“@thenewyorkyankees”。导航服务1780继而可以将所建议的完成“@thenewyorktimes”、“@thenewyorkyankees”and“@thenewyork”提供给代理1710。要指出的是,前两个建议属于由导航服务1780存储的实际实体名称,而第三个建议是所建议的部分完成,其可以以多于一个方式完成以得到所存储的实体名称。代理1710可以将三个所建议的完成呈现给用户1705,例如在弹出菜单中。一方面,如果用户选择前两个建议中的任一个,则过程可以例如向用户1705呈现与所选实体名称相关联的关键词列表,在本文进一步讨论的。另一方面,如果用户选择第三个所建议的完成,则代理1710可以向导航服务1780传送该选择,导航服务1780可以确定其可以通过“@thenewyorktimes”或“@thenewyorkyankees”的任一完成。导航服务1780可以通过向代理1710提供这些建议而做出响应,代理1710可以将它们呈现给用户1705,例如在弹出菜单中。在此时,用户1705可以选择任一个建议,并且过程可以例如通过代理1710从导航服务1780获取并向用户1705提供用于关键词的所建议的完成而继续。如在该段落中所讨论的,提供实体名称建议的过程可以在将部分数据从代理1710提供给导航服务1780的实施例中是交互式的,因为其可以牵涉在由用户1705选择最终实体名称之前的多个交互。
关于响应于所提供的实体名称而提供实体名称建议,注意实施例不限于严格的初始分段完成。因而例如,如果用户要将部分串“@gimb”提供给代理1710,则在一些实施例中,代理1710和导航服务1780可以交互并且向用户1705提供所建议的完成“@gimbels”和“@bimbals”(假定“@bimbals”是具有导航服务1780的所供应实体名称)。可以使用各种已知技术执行该匹配,例如有限编辑距离检测等。
在一些实施例中,代理1710提供所输入(或选择)的实体名称或实体标识具有相关联的关键词和/或建议的指示。也就是说,当用户输入命令串时,代理1710可以在用户输入包含于实体表示1720中的实体名称时警告用户。这些实施例特别适于其中代理1710在部分、分段或其它部分中将导航数据1751提供给导航服务1780的实现,例如在输入关键词定界符时提供实体标识。示例指示包括改变代理1710的输入字段的颜色(例如将浏览器地址栏的背景颜色从白色改变成绿色)、发出可听警报(例如“哔哔声”)、以及提供存在于与所输入实体名称相关联的实体表示1720中的关键词列表。这后一变形可以采用向用户呈现预览页面的形式,其中预览页面呈现实体名称连同相关联供应的关键词。在接收到导航数据1751之后,导航服务1780可以处理数据以将导航数据1751分类、分离、剖析或以其它方式分离为实体ID数据1752和补充数据1753。在一些实施例中,补充数据1753可以是一个或多个关键词,例如预先添附有关键词定界符字符或符号,诸如“!”。在这样的实施例中,一些或全部建议1724-1728可以是关键词。在一些实施例中,导航数据1751可以在其由导航服务1780接收之前由代理1710分离。在各种实施例中,实体ID数据1752是足以允许导航服务1780尝试标识或映射到1782或以其它方式确定实体表示1720的至少一个对应实体的数据,诸如如由图17中的箭头1783所表示的“实体n”1723。
在继续之前用例示例的上下文中考虑该功能,导航服务1780可以将实体ID数据1752“gimbels.”映射到实体表示1720的第一列中的标识符“.gimbels”。在该示例中,实体表示1720中的标识符“.gimbels”是由注册方销售商Gimbels控制的顶级域,并且导航服务1720因为确切的字符串匹配“gimbels”到“gimbels”而将“gimbels.”映射到它,从而忽略触发字符“.”。作为另一示例,对于来自导航数据1751的命令串“@gimbels!shoes”,导航服务1780可以将实体名称“@gimbels”映射到实体表示1720的第一列中的标识符“@gimbels”,从而计及名称空间标识符“@”。除确切的字符匹配之外或者替代确切的字符匹配,各种实现可以使用各种其它现有技术中已知的技术和算法以用于将实体ID数据1752映射到实体标识符1723或者以其它方式标识对应于实体表示1720中的实体ID数据1752的一个或多个实体标识符1723。此外,各种实现可以包括根据用户1705的身份或上下文受约束的映射,例如在移动设备的上下文中利用代理1710的用户1705的情况下,导航服务可以将映射1782和/或1784约束到名称空间(例如实体标识符1723)和/或到对于移动设备适当的建议(例如关键词)1724和网络定位符1725(例如对应于用于购买皮鞋的Gimbels零售web页面的移动设备版本的网络定位符1725)。确切映射实现对于本发明不是关键的。
在已经将实体ID数据1752映射到实体标识符“实体n”1723的情况下,导航服务1780接下来可以将补充数据1753映射1784到与实体标识符“实体n”1723相关联的一个或多个建议。在各种实施例中,补充数据1753是足以允许导航服务1780尝试标识或映射1784到或以其它方式确定与对应于补充数据1753(例如关键词)的实体n1723相关联的至少一个建议的数据。在所示示例中,导航服务1780将补充数据1753映射到建议1724和1728(例如关键词),如箭头1785和1786所表示的。作为另一示例,对于所输入的命令串“@gimbels!shoes”,导航服务可以使用关键词“shoes”作为补充数据1753;在该示例中,关键词“shoes”可以映射1784到存储于实体表示1720中的建议1724或1728“shoes”,因为关键串“shoes”和建议串“shoes”彼此确切地匹配。
在继续前一用例示例的上下文中考虑该功能,导航服务1780可以将补充数据1753“shoes”映射1784到与实体标识符“.gimbels”相关联的建议1724“gimbels.shoes”并且还可以将补充数据1753“shoes”映射到与实体表示1720中的实体标识符“.gimbels”相关联的建议1728“gimbels.shoes-on-sale”。在一些实施例中,导航服务1780将以一个或多个关键词形式的补充数据1753映射1784到以与实体表示1720中的已经输入的实体名称1723相关联的一个或多个关键词形式的建议。除部分字符匹配之外或者代替部分字符匹配,各种实现可以使用各种其它现有技术中已知的技术和算法以用于映射1784,其可以包括根据用户1705的身份或上下文受约束的映射。确切映射实现对于本发明不是关键的。
如图17的示例中所示,导航服务1780将映射到建议1724和映射到建议1728发送给代理1710作为建议数据1762。在各种实施例中,建议数据1762是表示实体表示1720中的映射到建议(例如建议1724和建议1728)并且可以数字地、视觉地、可听地或以其它方式呈现给用户1705的数据。如之前指出的,在一些实施例中,建议数据1762可以包括可以由代理1710运行的可执行代码等。在一些实施例中,建议数据1762可以针对由托管用户代理1710的设备的呈现而定制。继续前一用例示例,导航服务1780可以发送包括串“gimbels.shoes”和串“gimbels.shoes-on-sale”的建议数据1762。(要指出的是,严格片段完成仅是建议针对关键词的完成的一种方式。还可以使用确定部分匹配的其它方式。例如,如果用户将“@gimbels!skoes”提供给代理1710,则实施例可以使用已知的启发式匹配技术(例如有限的编辑距离)将部分串“!skoes”映射到“!shoes”。
在接收到建议数据1762后,代理1710可以将建议数据呈现给用户1705并且使得用户1705能够选择至少一个建议(1714)。继续该用例示例,实现代理1710的浏览器可以在允许用户1705使用触摸屏或鼠标选择建议之一的可选列表或下拉菜单中显示建议数据1762“gimbels.shoes”和“gimbels.shoes-on-sale”,如输入数据1726所表示的。该过程因而可以是交互式的,如关于针对部分实体名称提供所建议的完成的过程那样。如用户接口技术中已知的,用户可以在可选列表或下拉菜单中选中或选择项目的许多方式之一的示例是通过将鼠标指针定位在期望的菜单项目之上并且点击鼠标左键以创建输入数据1726。在计算机科学领域中存在许多其它方式和技术以用于呈现各种数据选择和允许用户选择或选中一个或多个,其可以用于实现1714,并且确切的实现对于本发明不是重要的。
在一些实施例中,在输入所识别的实体名称或者实体标识或者其它名称空间标识之后,代理1710可以提供存在于与所输入的实体名称相关联的实体表示1720中的关键词建议列表中的一些或全部,这是通过在例如下拉菜单之类的菜单中将它们提供给用户。用户1705可以以常规方式选择菜单中所呈现的关键词,例如通过点击在其上。在这样的实施例中,选择所呈现的关键词可以利用关键词以及任何相关联的定界字符自动地填充输入字段,以及将所输入的实体名称和所选关键词传达给导航服务1780以作为请求(例如导航数据1751)。作为具体示例,用户可以将“@gimbels”输入到代理1710的输入字段中,并且代理1710可以将该信息传达给导航服务1780。导航服务1780可以以相关联建议(关键词)的列表做出响应,代理1710可以在用户可以从其选择的下拉菜单(例如包含“shoes”、“men’sclothes”、“women’sclothes”等)中将其显示给用户。因而,为用户呈现对应于所输入实体名称的多个所建议关键词。另外,在从导航服务1780接收到列表之后,由此确认用于该实体名称的条目的存在,代理1710可以提供以下指示:实体名称例如通过将输入字段的颜色从灰色改变成蓝色而识别。
基于指示所呈现建议的选择的用户输入1726,代理1710将建议选择数据1771发送给导航服务1780。在各种实施例中,建议选择数据1771对应于之前在建议数据1762中发送给代理1710的建议之一。在图17的示例中,导航服务1780使用建议选择数据1771来查找1787或以其它方式寻找实体表示1720中的(多个)对应建议1728,如箭头1788所表示的。导航服务1780然后可以标识对应于查找建议的网络定位符——在图17的示例中,“网络定位符m”1729对应于建议1728,因为其存储在相同的行中——并且在网络位置数据1772中将网络定位符返回到代理1710。
在一些实施例中,导航服务1780在提供建议的同时将网络定位符提供给代理1710(例如作为建议数据1762的部分)。在这样的实施例中,代理1710不需要参与在与导航客户端1780的附加通信(例如发送建议选择数据1771和接收网络位置数据1772)中以便获取对应于用户所选择的建议的网络定位符。然而,在一些这样的实施例中,代理1710可以将数据发送给导航服务1780,该数据指示用户选择哪个网络定位符。
如上文指出的,一些实施例可以使用根据用户1705的身份或上下文受约束的映射。因而,代理1710可以利用1727诸如网络位置数据1716的上下文数据,这是通过将它提供给导航服务1780的。这可以自动地完成,而不需要用户输入。导航服务1780可以使用网络地址数据1716查找1787或以其它方式确定网络定位符1737,其不仅对应于实体表示1720中所匹配的(多个)建议1728,而且也基于上下文数据在拓扑上位于代理1710附近。一些实施例可以通过存储包括与对应于不同地理或网络位置的不同网络定位符配对的相同建议1728的多个行而达成这一点。要指出的是,在可替换实施例中,导航服务1780向代理1710提供多个网络定位符连同反映其地理或网络位置的信息。在这样的实施例中,代理1710可以使用上下文信息来选择在拓扑上或地理上最接近的网络定位符。
在一些实施例中,上下文数据可以连同初始导航数据由代理1710供应。例如,导航服务1780可以接收诸如“@zoo”之类的通用实体名称的串,连同作为导航数据1751的部分的地理信息。导航服务1780可以将该实体ID匹配到多个实体1723,并且选择最接近于所提供的地理数据的一个。在可替换实施例中,导航服务1780将多个网络定位符提供给代理1710,并且代理1710基于其上下文数据而选择最接近的网络定位符。
要指出的是,网络位置数据1716仅仅是实施例可使用的一种类型的上下文数据。其它类型的上下文数据可以包括但不限于语言类型、认证信息、IP地址、名誉(reputation)数据、用户名/密码、加密方案、硬件密钥、地理位置信息、指纹标识、使用私用/公共密钥认证方案的加密的分组、机器硬件ID、产品或执照ID、安全策略证书、或者任何其它可想象的用户标识或机器标识信息。这些以及另外的示例在2013年3月14日提交的题为“AdaptiveNameResolution”美国专利申请号13/828,070中详细讨论,该专利申请的内容以其整体通过引用由此并入本文中。
继续Gimbels用例示例,如果用户1705从下拉菜单选择“gimbels.shoes”,则导航服务1780可以在实体表示1720中查找1787建议“gimbels.shoes”并且找到作为对应网络定位符的“http://www1.gimbels.com/shop/clothing/shoes”。导航服务1780然后可以在网络位置数据1772中发送该串“http://www1.gimbels.com/shop/clothing/shoes”。
如图17中所示,代理1710可以出于各种目的而利用网络位置数据1772。在各种实施例中,代理1710可以利用网络位置数据1772来导航到由网络位置数据1772所寻址或标识的网络资源、直接连接到其、与其交互或者以其它方式访问其。在其中网络定位符1725-1729与建议1724-1728一起在建议数据1762中发送的一些实施例中,代理1710在用户选择诸如关键词之类的对应建议之后自动地导航到由网络定位符标识或寻址的网络资源、直接连接到其、与其交互或者以其它方式与其交互。
继续Gimbels用例示例,代理1710可以从网络位置数据1772提取串“http://www1.gimbels.com/shop/clothing/shoes”并且将它输入到浏览器中。浏览器可以如其将任何其它URL那样对串进行解析并且渲染对应的Gimbelsweb页面以供用户1705购买皮鞋。例如,浏览器可以联系域名服务器以获取对应于网络位置数据的网际协议地址,并且然后导航到该网际协议地址。
为了结束Gimbels用例示例,代理1710(例如浏览器)可以可选地显示实体名称和建议(例如关键词)组合。这样的显示可以在导航条或地址栏中。在一些实施例中,代理可以在浏览器的导航条或地址栏中显示网络定位符1725-1729或网络位置数据1772,例如URL。在一些实施例中,代理1710可以在显示一方面的实体名称和建议(例如关键词)组合与另一方面的网络定位符或网络地址数据(例如URL)之间切换。这样的切换可以通过用户输入发起,例如用户1705激活专用软按钮。一些实施例显示实体名称和建议(例如关键词)组合以及网络定位符或网络位置数据二者。
一般地,一些实施例可以采用重定向。在这样的实施例中,一旦用户1705选择或以其它方式向代理1710中输入包括实体ID数据1752(例如可以包括名称空间标识符的实体名称)和补充数据1753(例如关键词)的命令串,并且代理1710向导航服务1780传达对应请求,则导航服务1780可以执行利用相同特殊格式的重定向。重定向可以基于实体名称拥有者(例如名称空间拥有者)的所供应偏好。偏好可以反映时间敏感或者其它特殊顾虑。例如,用户可以将“@gimbels!shoes”输入到装备有代理1710的浏览器的导航条中。代理1710将对应请求传达(例如经由导航数据1751)给导航服务1780。导航服务1780可以将请求的数据匹配或以其它方式映射到对应于不同命令串的不同数据,例如“@gimbels!shoes_on_sale_January_2014”。这样的映射可以由名称拥有者自身指定并且对于用户不可见。导航服务1780然后可以将适当的对应数据(例如网络定位符1725-1729)提供给代理1710。该数据可以连同反映原始命令串(此处“@gimbels!shoes”)的数据一起提供使得重定向对于用户不可见,或者连同反映新命令串的数据一起提供(此处“@gimbels!shoes_on_sale_January_2014”)。
一些实施例以各种方式执行错误处理。也就是说,导航服务可以以各种方式对包括不处于实体表示1720中的关键词(例如补充数据1753)和/或实体名称(例如实体ID数据1752)的请求(例如导航数据1751)做出响应。如果导航服务1780接收包括存在于导航服务1780的实体表示1720中的实体名称的请求,但是名称和关键词组合不存在,则导航服务1780可以:返回针对错误页面的网络定位符、返回针对名称和关键词的相关组合的网络定位符、对名称和关键词的相关组合的自动校正、向名称和关键词的相关组合的重定向、或者尝试寻找可能对应于该关键词但是尚未在实体表示中注册的内容。后四个中的每一个牵涉使用已知技术的名称拥有者(或用户)的偏好的启发式确定。错误处理还可以提供用于使名称拥有者供应大组关键词的方式。名称拥有者可能向导航服务1780指定如果其接收到包括具有某种性质的关键词的请求(例如等同于所指定的关键词的SOUNDEX,与所指定的关键词同义等),则根据由名称拥有者指定的规则来映射它。
如果导航服务1780接收到包括不存在于其实体表示1720中但是存在于某种名称空间中的名称(例如实体ID数据1752)的请求,则除以上公开的选项之外,导航服务1780可以返回针对来自名称空间的搜索结果的网络定位符。例如,如果用户输入“@gimbels!shoes”并且“@gimbels”存在于TWITTER名称空间中,但是未在导航服务的实体表示1720中,则导航服务可以通过关于“shoes”的“@gimbels”提供针对推文页面(即TWITTER微型博客条目)的网络定位符。页面还可以包括信息消息,其为名称拥有者提供利用导航服务1780注册关键词的机会。类似结果页面也可以针对其它名称空间构造。
如果导航服务1780接收到包括既不存在于其实体表示1720又不处于某种其它名称空间中的名称(例如实体ID数据1752)的请求,则导航服务1780可以返回针对建议或针对错误页面的网络定位符。
本领域普通技术人员将认识到,系统1700的组件和实现细节是出于解释的简明和清楚而呈现的简化示例。可以使用其它组件、实现细节和变形。例如,在适当的情况下,建议数据1762和网络位置数据1772中的任一个可以包括错误代码或者映射或查找已经失败或者定向导航服务1780不能返回期望响应的其它指示。许多其它变形是可能的。
图18是图示了根据各种实施例的从导航服务的视角的方法的流程图。图18的方法可以通过如本文公开的导航服务实现。更具体地,图18的方法可以通过图17的导航服务1780或者通过以上章节I中所描述的URL关键词解析服务器而执行。
在框1802处,导航服务接收针对网络资源的请求。在一些实施例中,请求包括实体名称和关键词。请求可以包括名称空间标识符,或者以其它方式指示与实体名称相关联的名称空间。请求可以从代理(例如图17的代理1710)、或者从客户端计算机或从以上章节I中所公开的web浏览器接收。代理可以从用户所输入的命名串导出请求,如本文讨论的。导航服务可以通过诸如互联网之类的网络从代理获取请求。导航服务可以一次全部地或者在部分中接收请求,如以上章节II中所公开的。
在框1804中,导航服务获取对应于在框1802处所接收的请求的统一资源定位符或其它网络定位符(例如网络定位符1725-1729中的一个或多个)。在一些实施例中,导航服务从一个或多个数据库或目录(例如包含实体表示的一个或多个数据库)、或者从如以上章节I中所公开的数据储存库130中存储的一个或多个数据库获取统一资源定位符。导航服务可以执行框1802处所接收的实体名称与存储在(多个)数据库中的实体名称之间的、以及框1802处所接收的关键词与关联于所匹配的实体名称地存储的关键词之间的匹配。实体名称和/或关键词的匹配可以是确切匹配,或者利用启发式或其它模糊匹配技术。一旦匹配,则导航服务从数据库(例如从与所匹配的实体名称和关键词相同的行)检索对应的统一资源定位符(或其它网络定位符)。
在框1806处,导航服务向请求者(例如代理)提供统一资源定位符(或其它网络定位符)。这可以通过导航服务经由诸如互联网之类的网络向请求者发送统一资源定位符而发生。在一些实施例中,导航服务还提供用于补充数据(例如关键词)的所建议实体名称和建议中的一个或两个。
图19是图示了根据各种实施例的从代理的视角的方法的流程图。图19的方法可以通过如本文公开的代理实现。更具体地,图19的方法可以通过图17的代理1710、或者通过在如以上章节I中公开的web浏览器中或客户端计算机而实现。
在框1902处,代理接收命令串,例如在用户点击在链接上时,或者当由用户输入到诸如导航条或地址栏的字段中时。命令串可以包括实体名称和关键词。命令串还可以包括接着实体名称的名称空间标识符和/或接着关键词的关键词定界符。
在框1904处,代理从框1902处所接收的命令串导出针对网络资源的请求。代理可以通过使用已知技术剖析命令串以提取实体名称和关键词而导出请求。请求可以包括实体名称、关键词以及可能地对应于实体名称的名称空间标识符。
在框1906处,代理通过诸如互联网之类的网络将针对网络资源的请求提供给导航服务。导航服务可以是例如图17的导航服务1780或者以上章节I中所描述的URL关键词解析服务器。为了传达请求,代理可以将它定向到统一资源定位符或者编码到代理的软件中的其它网络定位符。
在框1908中,代理获取对应于框1906处所提供的请求的统一资源定位符或其它网络定位符。代理可以从导航服务获取统一资源定位符,该导航服务本身通过寻找向如本文所公开的实体名称和关键词的匹配而从一个或多个数据库获取它。一旦代理获取统一资源定位符,则其可以例如采取诸如导航到由统一资源定位符所标识的资源之类的动作。
存在就本文所公开的实施例可能的许多变形。例如,导航服务不限于仅处理实体名称和关键词组合。更确切而言,导航服务可以仅仅处理实体名称、组合或两个或更多实体名称(例如形成分层)、或两个或更多关键词的组合(假定至少一个关键词的适当所有关系的话)或者某种其它组合。考虑如由名称拥有者所限定的名称空间,导航服务可以提供供应和查找关于一个或多个名称的组合的信息的方式,如由至少一个名称拥有者所指定的。
另一变形涉及导航服务1780如何物理和逻辑地实现的。在一些实施例中,导航服务1780可以提供查找操作的多个实例(例如分布式服务器)以增加可用性,从而平衡跨实例的负载。一些实施例可以利用与代理1710交互的导航服务1780的前端服务实例,以及保持实体表示条目的后端实例,其在结构方面类似于递归和有权限的名称服务器的DNS概念。前端实例可以缓冲目录条目使得它们可以快速地对请求做出响应。此外,代理1710本身可以缓冲实体表示条目。也可以应用数据整体性和数据源认证机制,诸如在DNSSEC中的那些。类似实现选择也可以应用于建议和供应操作。
另一变形涉及代理1710如何处理渲染。除显示用户寻找的结果(如由名称拥有者所定向的)之外,代理1710可以呈现附加引导。要输入的名称和关键词的建议是一种可能形式的反馈。确认用户已经输入所识别或注册的名称是另一种。如本文公开的,与基于浏览器的代理1710相关联的用户接口可以高亮图标的显示或文本;其还可以播放声音,启动应用和/或在浏览器窗口或其它接口中呈现初始结果。特别地,与用户的交互不限于“地址栏”或等同方案。正如最终web页面或其它内容可以在用户直接输入导航数据的接口外部渲染那样,中间反馈也可以在不同编程位置中渲染。
另一变形涉及可替换字母表。尽管本公开关于标准英语字母表而编写,但是本发明不如此限制。实施例可以支持其它字母表,包括但不限于中文(例如繁体、简体)、日语字母表(例如日本汉字、平假名、片假名)、韩语、北印度语、西里尔字母、他加禄语、泰米尔语、匈牙利语、非英语拉丁字母表(例如葡萄牙语、西班牙语、法语)、乌尔都语、希腊语、希伯来语、亚美尼亚语、阿拉伯语等。实体名称和关键词可以以各种字母表中的任一个或甚至组合而表述。例如,以下是用于命令串的有效句法:@医生杜明!décoratif,其中“医生杜明”是以汉语的实体名称并且“décoratif”是以法语的关键词。要指出在该示例中,实体名称和关键词在不同的字母表中。
一般地,搜索引擎抓取web以便检索和存储搜索结果。搜索引擎可以扩增成搜索导航服务空间以标识已经供应的网络定位符。这样的搜索引擎可以特别地标识恰好对应于所供应网络定位符的搜索结果。例如,搜索引擎可以接收其匹配到各种链接的查询。搜索引擎可以借助于结果web页面将这些链接提供给用户。一些链接可以是在实施例中由实体所供应的链接。在该示例中,搜索引擎可以在视觉上区分由实体提供的链接与其它链接,例如通过以不同颜色、字体、大小、位置等呈现它们。作为继续本文所呈现的进行示例的具体示例,用户可以将“gimbelsshoes”键入到搜索引擎的查询字段中。搜索引擎可以提供包括各种链接的结果页面,诸如关于Gimbels的新闻文章、关于皮鞋的博客以及链接http://www1.gimbels.com/shop/clothing/shoes,Gimbels实体将其提供给实施例,即作为要与命令串(例如@gimbels!shoes)相关联的网络定位符。这样,搜索空间扩展成并入来自导航服务的数据库。在结果页面中,这后一链接可以与其它相区分,如本文所讨论的。
在一些实现中,导航服务返回内容而不是网络定位符或者除网络定位符之外返回内容。在这样的实现中,实体表示1720可以包括与实体名称和关键词相关联地存储内容的额外字段(例如一个或多个列)。导航服务然后可以通过直接检索存在于适当实体表示中或从其链接的内容、或者通过使用存储在实体表示中的适当网络定位符检索内容来获取内容(一旦用户已经选择对应建议)。在任一变形中,导航服务可以将内容返回给用户自身,而代理不必导航到相关联的网络定位符并检索内容。
在一些实现中,代理1710可以将图像用于导航数据1751的全部或部分。图像可以采用任何各种格式,例如位图、GIP、JPEG、MPEG等。在这样的实施例中,图像可以用于使用任何各种装置生成实体ID数据1752、补充数据1753或二者。例如,代理1710本身、导航服务1780或者单独的系统可以从代理1710或者导航服务1780获取图像,并且使用已知技术将它转换成字符串。然后可以将字符串提供给导航服务,并且过程可以如本文所公开的那样继续。
作为具体示例,用户1705可以获取公司标志的图像,例如以JPEG格式的Gimbels标志。用户可以使用例如图形用户接口将代理1710定向到标志。代理1710可以将图像提供给导航服务1780,其可以使用已知图像识别技术将图像匹配到字符串“gimbels”。导航服务然后可以像其已经直接接收到串那样处理串“gimbels”,例如通过将它匹配到所供应的名称空间标识符并且然后提供所匹配关键词建议数据的列表以供代理显示给用户。
要指出的是,图像的使用不限于实体标识。例如,用户可以将“@gimbels”键入到代理1710的字段中,并且当代理显示建议列表时,用户可以将代理定向到皮鞋的图像。代理1710自身可以使用已知技术识别图像,或者将图像提供给导航服务1780以执行识别功能。不管怎样,导航服务可以像其已经直接接收到串“@gimbels!shoes”那样做出响应。
一些实施例利用成对名称空间标识符字符和/或成对关键词定界符字符,例如“[”与“]”成对、“{”与“}”成对或者“(”与“)”成对。在这样的实施例中,合适命令串句法的示例可以包括例如{gimbels}(shoes)、@gimbels(shoes)、{gimbels}shoes等。
III.计算系统实现
图20是可以用于实现与本发明一致的实施例的示例性计算系统或数据处理系统2000的框图。也可以使用其它组件和/或布置。在一些实施例中,计算系统2000可以用于实现如图17中所示的导航服务,例如要么是独立式的要么是作为较大导航服务的部分。在各种实施例中,计算系统2000可以用于实现如图17中所示的代理1710。
计算系统2000包括数个组件,诸如中央处理单元(CPU)2005、存储器2010、(多个)输入/输出(I/O)设备2025和非易失性存储设备2020。系统2000可以以各种方式实现。例如,作为集成平台的实现(诸如工作站、服务器、个人计算机、平板计算机、膝上型计算机、智能电话等)可以包括CPU2005、存储器2010、非易失性存储装置2020和I/O设备2025。在这样的配置中,组件2005、2010、2020和2025可以通过本地数据总线连接和通信并且可以经由外部I/O连接访问数据库(实现为例如单独的数据库系统)。(多个)I/O组件2025可以通过直接通信链接(例如硬线或本地wifi连接)、通过诸如局域网(LAN)或广域网(WAN)之类的网络和/或通过其它合适连接而连接到外部设备。系统2000可以是独立式的或者其可以是较大系统的子系统。
CPU2005可以是一个或多个已知处理设备,诸如来自由CA,SantaClara的Intel?公司所制造的Xeon?系列的微处理器等。存储器2010可以是配置成存储指令和信息的一个或多个固态存储设备或介质,该指令和信息由CPU2005执行或以其它方式使用以执行涉及本发明的实施例的某些功能、方法、操作和过程。存储装置2020可以是易失性或非易失性、磁性、半导体、带、光学或其它类型的存储设备或计算机可读存储介质,包括诸如CD和DVD之类的设备,其意味着长期存储。
在所图示的实施例中,存储器2010包含一个或多个程序或子程序2015,所述程序可以从存储装置2020或从远程系统(未示出)加载并且在由CPU2005执行时执行与本发明一致的各种操作、进程、功能、过程或方法。可替换地,CPU2005可以执行与系统2000远程地定位的一个或多个程序。例如,系统2000可以经由网络2035访问一个或多个远程程序,所述程序在执行时执行涉及或实现本发明的实施例的功能和过程。
在一个实施例中,存储器2010可以包括(多个)程序2015,其实现关于导航服务1780所描述的通信、映射和查找功能。在另一实施例中,存储器2010可以包括(多个)程序2015,其实现关于导航服务1780所描述的通信、显示、导航和连接功能。在又一实施例中,存储器2010可以包括(多个)程序2015,其执行参照图18所描述的接收、获取和提供功能。在又一实施例中,存储器2010可以包括(多个)程序2015,其执行参照图19所描述的接收、导出、提供和获取功能。在一些实施例中,存储器2010还可以包括其它程序或应用,其实现向本发明提供辅助功能的其它方法和过程。例如,存储器2010可以包括与实体拥有者或名称空间拥有者对接的程序,使得拥有者可以针对其实体ID或名称空间配置实体表示1720。
存储器2010还可以配置有与本发明无关的其它程序(未示出)和/或在由CPU2005执行时执行现有技术中公知的若干功能的操作系统(未示出)。经由示例,操作系统可以是微软Windows?、Unix?、Linux?、anAppleComputers?操作系统或者其它操作系统。操作系统的选择以及甚至为操作系统的使用对于本发明不是关键的。
(多个)I/O设备2025可以包括允许由系统2000接收和/或发送数据的一个或多个输入/输出设备。例如,I/O设备2025可以包括一个或多个输入设备,诸如键盘、触摸屏、鼠标等,其使得能够从诸如用户105之类的用户输入数据。另外,I/O设备2025可以包括一个或多个输出设备,诸如显示屏、CRT监视器、LCD监视器、等离子体显示器、打印机、扬声器设备等,其使得能够向用户呈现或输出数据。I/O设备2025还可以包括一个或多个数字和/或模拟通信输入/输出设备,其允许计算系统2000与其它机器和设备例如数字地通信,例如当计算系统2000充当web服务器时。输入/输出设备的其它配置和/或数目可以并入在I/O设备2025中。
在所示出的实施例中,系统2000连接到网络2035(诸如互联网、蜂窝网络、私用网络、虚拟私用网络或其它网络),其继而可以连接到各种系统和计算机器,诸如用户1705的台式计算机、智能电话、平板计算机或膝上型计算机,其装备有代理1710或者实现导航服务1780的服务器计算机。一般地,系统2000可以经由网络2035从外部机器和设备输入数据并且向外部机器和设备输出数据。
数据库2030还可以与系统2000结合地使用。在所示出的实施例中,可以使用在系统2000外部的独立式数据库。在其它实施例中,数据库可以由系统2000托管。数据库可以用于管理和存储用来实现与本发明一致的方法和系统的数据。例如,数据库2030可以包含系统1700的实体表示1720。一般地,数据库2030可以存储通过系统2000访问和/或管理的信息。经由示例,这样的数据库可以是Oracle?数据库、Sybase?数据库或者其它相关数据库。然而,与本发明一致的系统和方法不限于单独的数据结构或数据库,或者甚至为数据库或数据结构的使用。
应当理解到,前述描述仅仅是示例性且解释性的而不是限制性的。一般地,能够执行所呈现的技术的系统可以采取许多不同形式。另外,配置和实现方面的变形是可能的。例如,被描述为单个的资源可以是多个,并且被描述为集成的资源可以是分布式的。另外,被描述为多个或分布式的资源可以进行组合。所呈现的技术的范围因而意图仅由以下权利要求限制。
Claims (30)
1.一种使用计算机系统实现的提供导航服务的方法,包括:
在导航服务处并且经由互联网接收针对网络资源的请求,所述请求包括由导航客户端提供的命令数据,所述命令数据包括实体名称和关键词;
从导航服务的至少一个数据库获取对应于实体名称和关键词的网络定位符;以及
响应于所述接收并且经由互联网而提供网络定位符。
2.权利要求1的方法,其中导航服务不是域名系统导航服务。
3.权利要求1的方法,其中从包括毗邻于实体名称的名称空间标识符的命令串导出命令数据。
4.权利要求3的方法,其中名称空间标识符选自包括@、fb、in和“.”的组。
5.权利要求1的方法,其中导航客户端基于名称空间标识符而选择导航服务。
6.权利要求1的方法,其中从包括毗邻于关键词的关键词定界符的命令串导出命令数据。
7.权利要求6的方法,其中关键词定界符选自包括#、!、“.”、$和|的组。
8.权利要求1的方法,进一步包括:
从域名系统服务提供商的数据库获取对应于网络定位符的网际协议地址;以及
提供网际协议地址。
9.一种导航服务系统,包括:
一个或多个服务器计算机,其可操作地耦合到互联网并且配置成经由互联网接收针对网络资源的请求,所述请求包括由导航客户端提供的命令数据,所述命令数据包括实体名称和关键词;
至少一个数据库,其可操作地耦合到一个或多个服务器,所述至少一个数据库与实体名称和关键词相关联地存储网络定位符;以及
至少一个电子处理器,其配置成经由互联网向导航客户端提供网络定位符。
10.权利要求9的系统,其中导航服务不是域名系统导航服务。
11.权利要求9的系统,其中从包括毗邻于实体名称的名称空间标识符的命令串导出命令数据。
12.权利要求11的系统,其中名称空间标识符选自包括@、fb、in和“.”的组。
13.权利要求9的系统,其中从包括毗邻于关键词的关键词定界符的命令串导出命令数据。
14.权利要求13的系统,其中关键词定界符选自包括#、!、“.”、$和|的组。
15.权利要求9的系统,还包括至少一个处理器,其配置成:
从域名系统服务提供商的数据库获取对应于网络定位符的网际协议地址;以及
提供网际协议地址。
16.一种使用计算机系统实现的方法,包括:
通过导航客户端接收包括实体名称和关键词的命令串;
从命令串导出针对资源的请求,所述请求包括实体名称和关键词;
向导航服务并且经由互联网提供针对资源的请求;以及
从导航服务获取对应于实体名称和关键词的网络定位符。
17.权利要求16的方法,其中导航服务不是域名系统导航服务。
18.权利要求16的方法,其中命令串包括毗邻于实体名称的名称空间标识符。
19.权利要求18的方法,其中名称空间标识符包括选自包括@、fb、in和“.”的组的符号。
20.权利要求16的方法,还包括基于名称空间标识符而选择导航服务。
21.权利要求16的方法,其中命令串包括毗邻于关键词的关键词定界符。
22.权利要求21的方法,其中关键词定界符包括选自包括#、!、“.”、$和|的组的符号。
23.权利要求16的方法,还包括:
请求与网络定位符相关联的网际协议地址;
接收与网络定位符相关联的网际协议地址;以及
导航到网际协议地址。
24.一种系统,包括至少一个处理器,所述处理器配置成:
通过导航客户端接收包括实体名称和关键词的命令串;
从命令串导出针对资源的请求,所述请求包括实体名称和关键词;
向导航服务并且经由互联网提供针对资源的请求;以及
从导航服务获取对应于实体名称和关键词的网络定位符。
25.权利要求24的系统,其中导航服务不是域名系统导航服务。
26.权利要求24的系统,其中命令串包括毗邻于实体名称的名称空间标识符。
27.权利要求26的系统,其中名称空间标识符包括选自包括@、fb、in和“.”的组的符号。
28.权利要求24的系统,其中至少一个处理器还配置成基于名称空间标识符而选择导航服务。
29.权利要求24的系统,其中命令串包括毗邻于关键词的关键词定界符。
30.权利要求29的系统,其中关键词定界符包括选自包括#、!、“.”、$和|的组的符号。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361809377P | 2013-04-07 | 2013-04-07 | |
US61/809377 | 2013-04-07 | ||
US201361811234P | 2013-04-12 | 2013-04-12 | |
US61/811234 | 2013-04-12 | ||
US201361820391P | 2013-05-07 | 2013-05-07 | |
US61/820391 | 2013-05-07 | ||
US14/176723 | 2014-02-10 | ||
US14/176,723 US10185741B2 (en) | 2011-03-14 | 2014-02-10 | Smart navigation services |
PCT/US2014/032339 WO2014168774A1 (en) | 2013-04-07 | 2014-03-31 | Smart navigation services |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105378697A true CN105378697A (zh) | 2016-03-02 |
Family
ID=51689921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480032381.XA Pending CN105378697A (zh) | 2013-04-07 | 2014-03-31 | 智能导航服务 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP2984576A4 (zh) |
JP (1) | JP2016515740A (zh) |
KR (1) | KR20150140298A (zh) |
CN (1) | CN105378697A (zh) |
WO (1) | WO2014168774A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111199427A (zh) * | 2019-12-31 | 2020-05-26 | 上海移为通信技术股份有限公司 | 网络用户的分组管理方法、装置、电子设备及存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220260B (zh) * | 2016-03-22 | 2020-07-24 | 阿里巴巴集团控股有限公司 | 一种页面显示的方法及装置 |
US11275811B2 (en) * | 2018-09-21 | 2022-03-15 | Citrix Systems, Inc. | Systems and methods for deep linking of SaaS application via embedded browser |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2672938A1 (en) * | 2006-12-18 | 2008-06-26 | Razz Serbanescu | System and method for electronic commerce and other uses |
US20120173565A1 (en) * | 2010-12-30 | 2012-07-05 | Verisign, Inc. | Systems and Methods for Creating and Using Keyword Navigation on the Internet |
US9811599B2 (en) * | 2011-03-14 | 2017-11-07 | Verisign, Inc. | Methods and systems for providing content provider-specified URL keyword navigation |
-
2014
- 2014-03-31 WO PCT/US2014/032339 patent/WO2014168774A1/en active Application Filing
- 2014-03-31 JP JP2016506345A patent/JP2016515740A/ja active Pending
- 2014-03-31 EP EP14783257.0A patent/EP2984576A4/en not_active Withdrawn
- 2014-03-31 CN CN201480032381.XA patent/CN105378697A/zh active Pending
- 2014-03-31 KR KR1020157030452A patent/KR20150140298A/ko not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111199427A (zh) * | 2019-12-31 | 2020-05-26 | 上海移为通信技术股份有限公司 | 网络用户的分组管理方法、装置、电子设备及存储介质 |
CN111199427B (zh) * | 2019-12-31 | 2023-09-29 | 上海移为通信技术股份有限公司 | 网络用户的分组管理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP2984576A1 (en) | 2016-02-17 |
EP2984576A4 (en) | 2016-10-26 |
JP2016515740A (ja) | 2016-05-30 |
KR20150140298A (ko) | 2015-12-15 |
WO2014168774A1 (en) | 2014-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10185741B2 (en) | Smart navigation services | |
US11372935B2 (en) | Automatically generating a website specific to an industry | |
US10075423B2 (en) | Provisioning for smart navigation services | |
US20190362403A1 (en) | Methods and systems for annotation of digital information | |
US9811599B2 (en) | Methods and systems for providing content provider-specified URL keyword navigation | |
US20160253700A1 (en) | System and method for automated advocate marketing with digital rights registration | |
US9715694B2 (en) | System and method for website personalization from survey data | |
CN104903886B (zh) | 基于社交图谱信息的结构化搜索查询 | |
US20170083518A1 (en) | System and Method for Launching a Process Using a Keyword Identifier | |
US9613374B2 (en) | Presentation of candidate domain name bundles in a user interface | |
US9684918B2 (en) | System and method for candidate domain name generation | |
US8930237B2 (en) | Using web-mining to enrich directory service databases and soliciting service subscriptions | |
US20110125831A1 (en) | Tools for redirecting to a book website | |
US9866526B2 (en) | Presentation of candidate domain name stacks in a user interface | |
US20110125830A1 (en) | Redirecting to a book website | |
WO2013063328A1 (en) | Context aware tagging interface | |
EP2686786A1 (en) | Methods and systems for providing content provider-specified url keyword navigation | |
US20110022635A1 (en) | Method and System to Formulate Queries With Minivisuals | |
US20150026304A1 (en) | System for maintaining common data across multiple platforms | |
US9576065B2 (en) | Method for maintaining common data across multiple platforms | |
EP2711852A1 (en) | Methods and systems for providing content provider-specified URL keyword navigation | |
CN105378697A (zh) | 智能导航服务 | |
US8131752B2 (en) | Breaking documents | |
JP2016045965A (ja) | スマートナビゲーションサービスのためのプロビジョニング | |
EP2991022A1 (en) | Provisioning for smart navigation services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160302 |