CN101523386A - 用于针对远程设备渲染内容的平台 - Google Patents

用于针对远程设备渲染内容的平台 Download PDF

Info

Publication number
CN101523386A
CN101523386A CNA2007800364167A CN200780036416A CN101523386A CN 101523386 A CN101523386 A CN 101523386A CN A2007800364167 A CNA2007800364167 A CN A2007800364167A CN 200780036416 A CN200780036416 A CN 200780036416A CN 101523386 A CN101523386 A CN 101523386A
Authority
CN
China
Prior art keywords
document
remote equipment
specific language
device specific
played
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
CNA2007800364167A
Other languages
English (en)
Other versions
CN101523386B (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.)
Fly Upward Management Co Ltd
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 CN101523386A publication Critical patent/CN101523386A/zh
Application granted granted Critical
Publication of CN101523386B publication Critical patent/CN101523386B/zh
Expired - Fee Related 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/114Pagination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Document Processing Apparatus (AREA)

Abstract

一种平台,用于将标记语言(ML)文档定制式地渲染为设备特定语言的文档,该设备特定语言的文档随后被提供来供目标远程设备显示。目标远程设备和ML文档的渲染上下文被平台所接收,该平台执行可对页面进行分页和完全渲染的过程,这些页面随后被递送以供目标远程设备显示。还可以提供渲染后过程,以为设备特定语言文档执行对媒体项目的额外处理。该额外处理可包括在设备特定语言文档的页面中包括链接或嵌入媒体项目。远程设备可被布置为支持经由网络的有线和/或无线通信的客户端设备。

Description

用于针对远程设备渲染内容的平台
本发明要求2006年9月29日提交的美国申请No.11/537,593的优先权,特此通过引用将该申请全部并入。
技术领域
本发明一般地涉及经由网络提供内容,更具体而言涉及使得来自不同来源的内容能够被渲染(render)以便结合特定的位于远方的设备使用。
背景技术
近来的调查已经识别出在全世界工作的超过10,000种不同型号的移动设备,例如移动电话。为了应对移动设备越来越高的流行性,每星期有十个或更多个新的型号被引入到市场中。另外,世界上有数百个不同的运营商,它们使得能够实现很多种无线服务和通信链路,这些无线服务和通信链路具有向移动设备和其他位于远方的设备提供内容的不同能力。因此,提供和渲染内容以便结合目标和/或运营商使用的上下文可能大有不同。
例如,对于显示屏幕来说,没有标准尺寸或调色板。因此,被渲染来结合一种尺寸的彩色显示屏使用的内容可能能够也可能不能够被一种不同尺寸的单色显示屏准确显示(也可能根本不能显示)。另外,运营商为其各自的客户提供的不同通信链路的容量和可靠性可能严重影响为了在远程设备上显示而对内容进行的准确且及时的渲染。此外,诸如浏览器之类的客户端应用中的一般操作和已知缺陷可能大大不同。另外,开发者可利用一种或多种具有参数的不同语言来创建内容,为了准确地渲染内容以便在目标远程设备上显示,必须考虑到这些参数。
附图说明
参考以下附图来描述本发明的非限制性、非穷举性实施例。在附图中,除非另有指明,否则在各幅图中,相似的标号指代相似的部件。
为了更好地理解本发明,将参考以下对实施例的详细描述,这些描述应当结合附图来理解,附图中:
图1示出了本发明可在其中实现的示例性***的一个实施例的示图;
图2示出了示例性移动设备的一个实施例;
图3示出了示例性网络设备的一个实施例;
图4示出了用于渲染标记语言文档以供目标远程设备显示的示例性平台的一个实施例;
图5A示出了采用流水线阶段来渲染标记语言文档以供目标远程设备显示的示例性平台的另一种实施例;
图5B示出了一种平台用来渲染标记语言文档以供目标远程设备显示的示例性流水线阶段的一个实施例;
图6示出了使一平台能够渲染标记语言文档以供目标远程设备显示的模块的示例性类树(class tree)的另一个实施例;
图7示出了用于一般地采用一平台来渲染标记语言文档以供目标远程设备显示的过程的概况;
图8示出了用于采用一平台来渲染标记语言文档以供目标远程设备显示的过程的概况;
图9示出了用于将类树用于使得能够渲染标记语言文档以供目标远程设备显示的模块的过程的概况;
图10示出了渲染标记语言文档以供目标远程设备显示的流水线阶段的过程;
图11A示出了用于采用临时ID和索引来对供目标远程设备显示的标记语言文档的渲染进行流水线处理的过程;并且
图11B示出了根据本发明用于采用临时ID和临时索引来渲染标记语言文档以供目标远程设备显示的过程。
具体实施方式
现在在下文中将参考附图来更充分地描述本发明,附图形成了本发明的一部分,并且以示例方式示出了可用来实现本发明的特定示例性实施例。但是,本发明可通过许多不同形式来实现,并且不应当被理解为限于这里阐述的实施例;更确切地说,提供这些实施例是为了使本公开详尽并且完整,并且将本发明的范围充分传达给本领域的技术人员。本发明可实现为方法或设备,等等。因此,本发明可以采取完全硬件的实施例、完全软件的实施例或者结合了硬件和软件方面的实施例的形式。因此,不应当在限制意义上理解以下的详细描述。
在说明书和权利要求中,除非上下文另有明确指示,否则以下的术语采取与这里明确相关联的含义。这里使用的短语“在一个实施例中”不一定指的是同一实施例,但也可以指同一实施例。另外,这里使用的短语“在另一实施例”不一定指的是不同的实施例,但也可以指不同的实施例。因此,如下所述,在不脱离本发明的精神或范围的情况下,可以很容易地组合本发明的各种实施例。
此外,除非上下文另有明确指示,否则这里使用的术语“或”是包含性“或”算子,并且等同于术语“和/或”。除非上下文另有明确指示,否则术语“基于”并不是排他性的,而是允许基于没有描述的其他因素。“在……中”的含义包括“在……中”和“在……上”。
这里使用的术语从一设备或组件“接收”诸如请求、响应或其他消息之类的项目包括间接接收该消息,例如在由一个或多个其他设备或组件转发时。类似地,向一设备或组件“发送”项目包括间接发送该项目,例如在由一个或多个其他设备或组件转发时。
这里使用的术语“移动标识号码”(MIN)指的是在移动运营商的网络内唯一地标识移动设备的号码。蜂窝电话的电话号码可用作MIN。
这里使用的术语“移动客户端应用”指的是在移动设备上运行的应用。移动客户端应用可以用诸如“C”、“C++”、“J2ME”、“Brew”、Java等等之类的多种语言中的一个或多个来编写,浏览器、电子邮件客户端、文本消息传递客户端、日历以及游戏是存储器客户端应用的示例。
这里使用的术语“网络应用”指的是通过网络与至少一个其他组件直接或间接通信的基于计算机的应用。网站、电子邮件服务器、消息传递服务器以及游戏服务器是网络应用的示例。
这里使用的术语“统一资源标识符”(URI)指的是用于标识抽象或物理资源的标识符。术语URI包括统一资源定位符(URL)和统一资源名称(URN)。RFC 3986描述了URI的语法。这里使用的术语URI不限于该语法,而是可包括其他语法。
简短地说,本发明涉及一种平台,用于对经由网络提供的标记语言页面进行定制渲染,以便随后由远程设备显示。目标远程设备和标记语言(ML)文档的渲染上下文被平台所接收,这使得能够实现可以进行分页并且将页面完全渲染为设备特定语言(device specific language)的过程。设备特定语言文档随后被递送以供目标远程设备显示。还可以提供渲染后过程,以为设备特定语言的文档执行对媒体项目的额外处理。该额外处理可包括检索图像并将图像嵌入在设备特定文档的页面中。例如,如果页面被用设备特定语言来渲染并且包括指向图像的链接,则后处理组件可检索该图像并将其以base 64编码数据的形式或者另外的形式嵌入在页面内。该后处理还可支持改写设备特定语言文档中的指向媒体项目的链接,例如指向存储在特定位置处的、采取诸如GIF或JPEG之类的适合于供目标远程设备显示的设备特定格式的图像的链接。该平台对于标记语言是不了解的,并且可以在定制渲染过程中采用模板。另外,在至少一个实施例中,远程设备被布置为支持经由网络的有线和/或无线通信的客户端设备。
标记语言文档可以利用几乎任何标准或非标准格式来提供,所述格式包括但不限于标准通用标记语言(SMGL)、超文本标记语言(HTML)、可扩展标记语言(XML),等等。此外,用于远程设备的设备特定语言可包括但不限于手持设备标记语言(HDML)、无线标记语言(WML)、WMLScript、紧凑型HTML(cHTML)、可扩展HTML(XHTML),等等。
在至少一个实施例中,可利用移动标记语言(MML)来将ML文档提供给平台,该语言包括独立于目标远程设备的模块。在此情况下,平台遍历MML文档以识别MML模块,并且基于所包括的模块来实例化类树。诸如平台之类的资源随后可以解析该树,以便完全渲染的MML文档可被提供来供目标远程设备随后显示。
渲染上下文可被布置为数据结构,该数据结构包含各种参数和数据,这些参数和数据被平台用来优化对ML文档中的每个页面的渲染,以供特定远程设备显示。渲染上下文一般是由可由内容提供者、运营商和/或另外的第3方服务所管理的单独的应用、平台或者过程提供给该平台的。远程设备的渲染上下文包括但不限于屏幕尺寸、颜色容量、标记语言的类型、浏览器应用、移动设备或网络网关的软件或硬件版本中的已知缺陷,等等。另外,该平台可存储与多种远程设备和网络运营商的属性有关配置数据以及存储和检索该配置数据的方法。在至少一个实施例中,对与目标远程设备的渲染上下文相关联的数据和/或参数的存储和检索是在HTTPcookie中提供的。
将ML文档渲染为设备特定语言文档可包括多个不同的过程,其中包括:(1)判定是否能够响应于请求提供关于目标远程设备的位置信息;(2)通过去除无关表单来缩小层叠样式表(cascading style sheet,CSS);(3)通过剥出层叠样式表并改写为ML代码来对层叠样式表进行字体化(fontify);(4)收缩ML文档以去除与目标远程设备无关的任何ML代码;(5)指定将被嵌入或链接在页面中的每个媒体项目的一个或多个属性;(6)采用对每个页面尺寸的估计来将ML文档页面重新分页成不大于目标远程设备的有效显示屏幕尺寸的尺寸;(7)裁剪/去除估计将被渲染为大于目标远程设备的有效显示屏幕尺寸的页面中的ML代码;和/或(8)将页面中的URL改写为包括内容的位置和/或会话标识信息。
针对目标远程设备的ML文档的页面的渲染还可包括改写文档内的链接或URL。例如,如果ML文档包括指向一种格式的图像的链接,那么若目标远程设备不能显示该第一格式,则链接可被修改成指向第二格式的替换图像。链接还可被改写为包括参数,例如用于标识持续的会话的值,从而使得使用该链接的新请求返回会话标识符。
此外,为了帮助通过多种不同过程中的至少一种来更快速和/或更高效地渲染标记语言文档,临时标记语言标识(ML ID)可被添加到文档的不具有现有ML ID的页面的每个唯一串。可为每个现有的临时ML ID构建临时索引,该临时索引随后被多个过程用于迅速查找和渲染ML文档中的相应元素(唯一串)。一旦完成了渲染为设备特定语言,临时ML ID和临时索引就被去除。对临时ML ID和临时索引的使用可以降低特定过程为了执行针对目标远程设备的设备特定语言文档的渲染中它的那部分而必须解析整个ML文档的可能性。另外,在至少一个实施例中,临时ML ID是XML ID。
示例性操作环境
图1示出了本发明可在其中实现的环境的一个实施例的组件。实现本发明并不需要所有组件,在不脱离本发明的精神或范围的情况下可对组件的布置和类型作出变化。如图所示,图1的***100包括局域网(“LAN”)/广域网(“WAN”)-(网络)105、无线网络110、内容渲染平台(CRP)106、移动设备(客户端设备)102-104、客户端设备101、以及内容提供者107。
移动设备102-103的一个实施例在文中结合图2来更详细描述。但是,一般来说,移动设备102-104可包括几乎任何能够经由网络(例如网络105、无线网络110等等)接收和发送消息的便携式计算设备。移动设备102-104还可被一般地描述为被配置成便携式的客户端设备。因此,移动设备102-104可包括几乎任何能够连接到另外的计算设备并接收信息的便携式计算设备。这种设备包括便携式设备,例如蜂窝电话、智能电话、显示寻呼机、射频(RF)设备、红外(IR)设备、个人数字助理(PDA)、手持计算机、膝上型计算机、可佩戴计算机、平板计算机、组合前述设备中的一种或多种的集成设备,等等。这样,移动设备102-104就能力和特征而言通常大有不同。例如,蜂窝电话可具有数字小键盘和几行单色LCD显示,其上只能显示文本。在另一示例中,具备web能力的移动设备可具有触摸敏感型屏幕、触笔、以及若干行彩色LCD显示,其上既可显示文本也可显示图形。
具备web能力的移动设备可包括被配置为接收和发送网页、基于web的消息等等的浏览器应用。浏览器应用可被配置为采用几乎任何基于web的语言来接收和显示图形、文本、多媒体等等,所述语言包括无线应用协议消息(WAP)等等。在一个实施例中,移动设备的浏览器应用能够采用手持设备标记语言(HDML)、无线标记语言(WML)、WMLScript、JavaScript、标准通用标记语言(SMGL)、超文本标记语言(HTML)、可扩展标记语言(XML)等等来显示内容和传输消息。
移动设备102-104还可包括被配置为从另外的计算设备接收内容的至少一个其他客户端应用。客户端应用可包括提供和接收文本内容、图形内容、音频内容等等的能力。客户端应用还可提供标识自身的信息,包括类型、能力、名称等等。在一个实施例中,移动设备102-104可以通过多种机制中的任何一种来唯一地标识自身,所述机制包括电话号码、移动标识号码(MIN)、电子序号(ESN)或者其他移动设备标识符。该信息还可指示出移动设备能够采用的内容格式、移动设备制造商、型号、显示颜色、显示尺寸、启用的特征、以及无线运营商。这种信息可利用发送到CRP 106、客户端设备101或其他计算设备的消息等等来提供。
移动设备102-104还可被配置为例如通过短消息服务(SMS)、多媒体消息服务(MMS)、即时消息传递(IM)、互联网中继聊天(IRC)、Mardam-Bey的IRC(mIRC)、Jabber等等在另外的计算设备(例如CRP106、客户端设备101等等)之间传输消息。但是,本发明并不限于这些消息协议,而是几乎任何其他消息协议都可被采用。
移动设备102-104还可被配置为使得用户能够参与诸如IM会话之类的通信会话。这样,移动设备102-104可包括被配置为代表客户端设备管理各种动作的客户端应用。例如,客户端应用可使得用户能够与浏览器应用、电子邮件应用、IM应用、SMS应用、MMS应用等等交互。
移动设备102-104还可被配置为包括一客户端应用,该客户端应用使得端用户能够登录到由诸如内容提供者107之类的另外的计算设备所管理的端用户账户中。这种端用户账户例如可被配置为使得端用户能够接收电子邮件、发送/接收IM消息、SMS消息、访问所选择的网页、参与社交联网活动,等等。但是,对各种社交联网活动的参与也可在不登录到端用户账户中的情况下执行。此外,移动设备102-104还可与诸如客户端设备101等等之类的非移动客户端设备通信。
客户端设备101可包括几乎任何能够经由网络通信以发送和接收信息(包括社交联网信息)等等的计算设备。这种设备的集合可包括通常利用有线或无线通信介质来进行连接的设备,例如个人计算机、多处理器***、基于微处理器的或可编程的消费者电子设备、网络PC,等等。
无线网络110被配置为将移动设备102-104及其组件与网络105耦合。无线网络110可包括多种无线子网中的任何一种,所述无线子网可进一步覆盖独立的自组织网络等等,以为移动设备102-104提供面向基础设施的连接。这种子网可包括网格网络、无线LAN(WLAN)网络、蜂窝网络,等等。
无线网络110还可包括通过无线无线电链路等等连接的终端、网关、路由器等等的自治***。这些连接器可被配置为自由并随机地运动并且任意地组织自身,从而无线网络110的拓扑可迅速改变。
无线网络110还可采用多种接入技术,其中包括用于蜂窝***的第2代(2G)、第3代(3G)和第4代(3G)无线电接入、WLAN、WiMax、无线路由器(WR)网格,等等。诸如2G、3G、3G和未来的无线接入网络之类的接入技术可以为具有各种程度的移动性的移动设备(例如移动设备102-104)实现广域覆盖。例如,无线网络110可以通过诸如全球移动通信***(GSM)、通用分组无线电服务(GPRS)、增强数据GSM环境(EDGE)、宽带码分多址(WCDMA)、通用移动电话***(UMTS)等等之类的无线电网络接入来实现无线电连接。实质上,无线网络110可包括几乎任何下述无线通信机制:利用这些无线通信机制,信息可在移动设备102-104和另外的计算设备、网络等等之间传播。
网络105被配置为将CRP 106及其组件与包括移动设备102-104、客户端设备101在内的其他计算设备相耦合,并且通过无线网络110耦合到移动设备102-104。网络105能够采用任何形式的计算机可读介质来将信息从一个电子设备传输到另一个。另外,网络105可包括因特网,以及局域网(LAN)、广域网(WAN)、直接连接(例如通过通用串行总线(USB)端口)、其他形式的计算机可读介质、或其任何组合。在一组互连的LAN(包括那些基于不同的体系结构和协议的LAN)上,路由器充当LAN之间的链路,从而使得消息能够被从一个发送到另一个。另外,LAN内的通信链路通常包括双绞线或同轴线缆,而网络之间的通信链路可利用模拟电话线、完全或部分专用数字线路(包括T1、T2、T3和T4)、综合服务数字网络(ISDN)、数字订户线路(DSL)、无线链路(包括卫星链路)、或者本领域的技术人员已知的其他通信链路。另外,远程计算机和其他有关电子设备可经由调制解调器和临时电话链路远程连接到LAN或WAN。实质上,网络105包括任何下述通信方法:利用这些通信方法,信息可在CRP 106、客户端设备101和其他计算设备之间传播。
此外,通信介质通常包含在诸如载波之类的经调制数据信号、数据信号或其他传输介质中的计算机可读指令、数据结构、程序模块、或其他数据,并且包括任何信息递送介质。术语“经调制数据信号”和“载波信号”包括这样一种信号,该信号的特性中的一个或多个是以将信息、指令、数据等等编码在该信号中的方式而被设定或改变的。例如,通信介质包括诸如双绞线、同轴线缆、光纤、波导和其他有线介质之类的有线介质,以及诸如声、RF、红外和其他无线介质之类的无线介质。
CRP 106的一个实施例在下文中结合图3来更详细描述。但是,简短地说,CRP 106可包括任何能够连接到网络105以实现下述平台的计算设备:该平台对标记语言模板和页面进行语言不知式渲染(language agnosticrendering),以供特定的远程设备(例如移动设备102-104和客户端设备101)随后显示。特定远程设备的渲染上下文和标记语言文档被该平台所接收,该平台对两者进行处理以生成设备特定语言的文档,该文档随后被递送到特定远程设备并被其所显示。可充当CRP 106的设备包括个人计算机桌面计算机、多处理器***、基于微处理器的或可编程的消费者电子设备、网络PC、服务器,等等。
虽然图1将CRP 106示为单个计算设备,但本发明并不限于此。例如,CRP 106的一个或多个功能可分布在一个或多个不同的计算设备上。例如,在不脱离本发明的范围或精神的情况下,内容渲染等等可由多个计算设备来执行。
内容提供者107也可包括用于向远程设备提供内容的多种服务。这种服务包括但不限于web服务、第三方服务、音频服务、视频服务、电子邮件服务、IM服务、SMS服务、MMS服务、VOIP服务、视频游戏服务、游戏服务、日历服务、购物服务、照片服务,等等。可充当内容提供者107的设备可包括个人计算机桌面计算机、多处理器***、基于微处理器的或可编程的消费者电子设备、网络PC、服务器,等等。
示例性的移动设备
图2示出了可包括在实现本发明的***中的移动设备200的一个实施例。与图2所示的相比,移动设备200可包括许多更多或更少的组件。但是,所示出的组件足以公开用于实现本发明的示例性实施例。移动设备200例如可表示图1的移动设备102-104。
如图所示,移动设备200包括经由总线224与大容量存储器230通信的处理单元(CPU)222。移动设备200还包括电源226、一个或多个网络接口250、音频接口252、显示屏254、小键盘256、照明器258、输入/输出接口260、触觉接口262、以及可选的全球定位***(GPS)接收器264。电源226向移动设备200提供电力。可充电电池或不可充电电池可用于提供电力。电力也可由外部电源提供,所述外部电源例如是对电池进行补充和/或充电的被供电对接支架或者AC适配器。
移动设备200可以可选地与基站(未示出)通信,或者直接与另外的计算设备通信。网络接口250包括用于将移动设备200耦合到一个或多个网络的电路,并且被构造为结合一个或多个通信协议和技术使用,所述通信协议和技术包括但不限于全球移动通信***(GSM)、码分多址(CDMA)、宽带CDMA(CDMA)、时分多址(TDMA)、通用移动电话服务(UMTS)、用户数据报协议(UDP)、传输控制协议/因特网协议(TCP/IP)、SMS、通用分组无线电服务(GPRS)、WAP、超宽带(UWB)、IEEE 802.16全球微波接入合作(WiMax)、SIP/RIP、或者多种其他无线通信协议中的任何一种。网络接口250有时被称为收发器、收发设备或网络接口卡(NIC)。
音频接口252被布置为产生和接收音频信号,例如人类语音的声音。例如,音频接口252可耦合到扬声器和麦克风(未示出),以便能够与他人通信和/或为某种动作生成音频确认。显示屏254是液晶显示屏(LCD)、气体等离子、发光二极管(LED)、或结合计算设备使用的任何其他类型的显示屏。显示屏254还可包括触摸敏感屏,该触摸敏感屏被布置为从诸如触笔之类的物体接收输入,或者从人手接收数字。
小键盘256可包括任何被布置为从用户接收输入的输入设备。例如,小键盘256可包括按钮数字拨盘,或者键盘。小键盘256还可包括与选择和发送图像相关联的命令按钮。照明器258可提供状态指示和/或提供光。照明器258可在特定的时间段中或者响应于事件而保持活动。例如,当照明器258活动时,它可以作为小键盘256上的按钮的背光,并且在客户端设备被加电的同时保持开启。另外,照明器258可以在特定的动作被执行(例如拨叫另外的客户端设备)时以各种模式作为这些按钮的背光。照明器258还可使得位于客户端设备的透明或半透明外壳内的光源响应于动作而照明。
移动设备200还包括输入/输出接口260,用于与外部设备通信,所述外部设备例如是头戴式送受话器,或者图2中没有示出的其他输入或输出设备。输入/输出接口260可以利用一种或多种通信技术,例如USB、红外、BluetoothTM,等等。触觉接口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。将会明白,该组件可包括诸如某个版本的UNIX或LINUXTM之类的通用操作***,或者诸如Windows MobileTM或Symbian
Figure A200780036416D0018102241QIETU
操作***之类的专用客户端通信操作***。操作***可包括Java虚拟机模块或与该模块相接口,该模块使得能够经由Java应用程序来对硬件组件和/或操作***操作进行控制。
存储器230还包括一个或多个数据存储装置244,这些数据存储装置可被移动设备200用于存储应用242和/或其他数据,等等。例如,数据存储装置244可用于存储描述移动设备200的各种能力的信息。该信息随后可基于多种事件中的任何一种而被提供给另外的设备,包括在通信期间作为头部的一部分发送、在请求时发送,等等。
应用242可包括计算机可执行指令,这些指令在被移动设备200执行时,对消息(例如,SMS、MMS、IM、电子邮件和/或其他消息)进行发送、接收和/或其他处理,并且使能与另外的客户端设备的另外的用户进行通信。应用程序的其他示例包括日历、浏览器、电子邮件客户端、IM应用、SMS应用、VOIP应用、联系人管理器、任务管理器、代码转换器、数据库程序、字处理程序、安保应用、电子数据表程序、视频游戏、游戏程序、搜索程序、购物车程序,等等。应用242还可包括浏览器245。
浏览器245可被配置为从内容提供者107接收并使能由CRP 106提供的对所渲染的内容的显示。另外,浏览器245使得移动设备200的用户能够选择由所渲染的内容所显示的不同动作。在至少一个实施例中,浏览器245使得用户能够选择以下各项中的一种或多种:购买产品、搜索内容并显示结果、呼叫移动电话设备、显示消息并对其作出响应,等等。用于渲染内容以便在移动设备上显示的各种实施例在下文中更详细描述。
示例性的网络设备
图3示出了根据本发明一个实施例的网络设备的一个实施例。与图示的相比,网络设备300可包括许多更多的组件。但是,所示出的组件足以公开用于实现本发明的示例性实施例。网络设备300例如可表示图1的CRP 106、客户端设备101和/或内容提供者107。
网络设备300包括均经由总线322与彼此通信的处理单元312、视频显示适配器314和大容量存储器。大容量存储器一般包括RAM 316、ROM 332、以及一个或多个永久大容量存储设备,例如硬盘驱动器328、磁带驱动器、光驱、和/或软盘驱动器。大容量存储器存储用于控制网络设备300的操作的操作***320。可以采用任意通用操作***。还提供了基本输入/输出***(“BIOS”)318,用于控制网络设备300的低级操作。如图3所示,网络设备300还可经由网络接口单元310与因特网或者某种其他通信网络通信,所述网络接口单元被构造为结合包括TCP/IP协议在内的各种通信协议使用。网络接口单元310有时被称为收发器、收发设备或网络接口卡(NIC)。
上述的大容量存储器例示了另一种类型的计算机可读介质,即计算机存储介质。计算机存储介质可包括利用任何方法或技术实现来存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的易失性、非易失性、可移除和不可移除的介质。计算机存储介质的示例包括RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或者任何其他可用于存储期望的信息并能够被计算设备所访问的介质。
大容量存储器还存储程序代码和数据。一个或多个应用350被加裁到大容量存储器中并在操作***320上运行。应用程序的示例可包括代码转换器、调度器、日历、数据库程序、字处理程序、HTTP程序、可定制的用户界面程序、IPSec应用、加密程序、安保程序、VPN程序、SMS消息服务器、IM消息服务器、电子邮件服务器、账户管理,等等。内容渲染平台(CRP)354也可作为应用程序被包括在应用350内。
CRP 354可被配置为从一个或多个资源接收渲染上下文信息和标记语言文档的平台和/或服务器。CRP 354至少部分基于渲染上下文,以适合于目标远程设备上的后续显示和/或交互的方式,自动以设备特定语言文档来渲染和裁剪标记语言文档。
示例性平台
图4示出了平台400的一个实施例的概况,该平台用于采用复合标记语言(ML)文档和渲染上下文来将文档渲染为设备特定语言文档,以便随后在目标远程设备上显示。另外,复合ML文档406可被分解成更多ML代码。渲染上下文404可包括用于标识针对目标远程设备的数据和参数的特定组合的唯一标识符。
从一个或多个其他服务、平台和/或应用,主组件402接收复合ML文档406和渲染上下文404两者。主组件402验证复合ML代码并检查渲染上下文404中包括的数据、参数和唯一标识符。如果检测到差错,主组件402则提供对这种差错的通知,该通知可被提供给目标远程设备和/或向主组件提供复合ML文档的提供者。
在至少一个实施例中,复合ML文档是由内容提供者、其他平台和/或应用提供给平台400的。类似地,渲染上下文是以实时和/或带外的方式从一个或多个服务、平台、应用和/或源单独确定的,其中包括远程设备的制造商、来自远程设备的消息中的头部信息、来自与远程设备通信的运营商的网关的信息、移动设备的软件和/或硬件中的已知缺陷。
缓存412被布置为针对复合ML文档中包括的代码存储文档对象模型树。另外,如果文档对象模型树最初不存在于缓存412中,ML解析器410则解析文档以创建复合ML文档对象模型树414,该复合ML文档对象模型树随后被存储在缓存中。在任何一种情况下,被缓存的树都被传递到标记扩展器414,该标记扩展器生成固有ML标签(native ML tag)。资源管理器434采用组件436来实现对被命名的资源的替代,并且采用组件438来扩展来自库的合成标签。
标记扩展器418向调节器426提供固有ML树424,在该调节器处,执行预解析过程,例如,去除空白空间并且进行分页以供目标远程设备随后显示。经调节的固有ML树被提供给标记解析器428,在该标记解析器处,组件430执行模板的渲染,并且组件432对缓存中包括的标签进行渲染。标签模板是由与资源管理器434相关联的组件440提供的。标记解析器428基于最初提供的合成ML文档来向主组件402提供设备特定语言的文档。主组件402随后提供设备特定语言文档416,以便递送到目标远程设备。
渲染可包括多个不同的过程,这些过程促成了将ML文档完整渲染为设备特定语言的文档,这些过程包括:(1)判定是否能够响应于请求提供关于目标远程设备的位置信息;(2)通过去除无关表单来缩小层叠样式表(CSS);(3)通过剥出层叠样式表并改写为ML代码来对层叠样式表进行字体化;(4)收缩ML文档以去除与目标远程设备无关的任何ML代码;(5)指定将被嵌入或链接在页面中的每个媒体项目的一个或多个属性;(6)采用对每个页面尺寸的估计来将ML文档页面重新分页成不大于目标远程设备的有效显示屏幕尺寸的尺寸;(7)裁剪/去除估计将被渲染为大于目标远程设备的有效显示屏幕尺寸的页面中的ML代码;和/或(8)将URL改写为包括媒体项目的位置和/或会话标识信息。
分页过程一般是结合标记解析器428和调节器426的组合操作来执行的。对于每个页面,调节器426查询渲染上下文404,以了解目标远程设备的有效/最大页面尺寸。对要渲染的每个页面的尺寸的大体估计是通过分析每个页面中包括的节点来确定的。该估计被与目标远程设备的有效页面尺寸相比较,以判定是否存在必须被重新分页到另外的新页面中和/或被从现有页面中裁剪/剪切掉的一定偏移量的页面数据。调节器426还遍历固有ML树,以识别该偏移量可落于其上的、被定义为可断的每个节点。该可断节点之后的容器被调节器426用标签来标识,作为标记解析器428随后进行的标记解析的断点。
另外,分页过程是由标记解析器428完成的,该标记解析器对页面中被调节器426标示为供渲染的节点进行渲染,而不对其他节点进行渲染。但是,每当节点被渲染时,被渲染的节点的尺寸就被记录在该特定页面的不断变化的总尺寸中。在标记解析器428对被标示为供分割的容器进行渲染之后,解析器进行检查以查明分割是否发生在另一标签内。如果分割发生在标签上,则分割被设定为跟随先前的标签或数据。但是,如果分割不发生在标签上,则执行断开方法,以找出一偏移量,从而使得分割发生在过长的单词(例如,100个字符长)的空白空间上,其中该单词可被资源管理器434调整。此外,在将分割***在页面中之后,标记解析器428可根据需要渲染页面标签的结尾,该结尾包括指向被分割页面的下一页和前一页的可显示链接。
另外,虽然没有示出,但该平台可以帮助渲染后组件将媒体项目嵌入在设备特定语言文档中,以便随后利用目标远程设备来显示/重放。媒体项目可包括图像、音频文件、声音、图形、视频、动画,等等。此外,在向目标远程设备提供文档之前可执行针对设备特定语言文档本地化文本和任何其他元素的操作。
图5A示出了用于至少部分基于目标远程设备的相应渲染上下文506来对标记语言(ML)文档504进行流水线式渲染的平台502的一个实施例的概况500。渲染上下文506和ML文档504可被主文档汇编器508预处理,在该主文档汇编器处可以处理形式问题,例如添加单位、填充空白和/或添加页脚。主文档汇编器508将(经过预处理的)ML文档504和渲染上下文506提供给平台502,在该处,流水线构建器组件512解析文档以确定并识别促成了将ML文档完全渲染为设备特定语言的文档的不同处理阶段,并且该处理也至少部分基于目标远程设备的渲染上下文。流水线构建器组件512采用流水线阶段库514来生成流水线阶段组件516,该流水线阶段组件被布置为对于促成了将ML文档504完全渲染为设备特定语言文档的每个过程包括一个阶段。另外,主组件510生成基于ML文档504和渲染上下文506的文档对象模型(DOM)树。DOM树和渲染上下文506都被提供给流水线阶段组件516的多阶段中的至少一部分。
这些阶段可以实现促成了将ML文档504完全渲染为设备特定语言文档的多个不同过程,其中包括:(1)判定是否能够响应于请求提供关于目标远程设备的位置信息;(2)通过去除无关表单来缩小层叠样式表(CSS);(3)通过剥出层叠样式表并改写为ML代码来对层叠样式表进行字体化;(4)收缩ML文档以去除与目标远程设备无关的任何ML代码;(5)指定将被嵌入或链接在页面中的每个媒体项目的一个或多个属性;(6)采用对每个页面尺寸的估计来将ML文档页面重新分页成不大于目标远程设备的有效显示屏幕尺寸的尺寸;(7)裁剪/去除估计将被渲染为大于目标远程设备的有效显示屏幕尺寸的页面中的ML代码;和/或(8)将URL改写为包括媒体项目的位置和/或会话标识信息。
此外,临时索引添加和临时索引去除阶段(未示出)可以可选地被包括在流水线阶段库514中,并且被包括作为流水线阶段组件516中的处理阶段。临时索引添加阶段可被布置为解析ML文档504并识别文档中尚不具有XML ID标签的每个唯一串,并随后向这些唯一串提供临时ID标签。另外,该阶段可以为所有临时和现有的XML ID标签实时地构建临时索引。组件516中的其他流水线阶段随后可以使用临时索引来迅速访问ML文档中将被特定阶段渲染为设备特定语言的那些元素。一旦其他流水线阶段完成了渲染,临时索引去除阶段就去除临时XML ID和临时索引。对临时XML ID和临时索引的使用可以降低特定过程为了执行完全渲染为针对目标远程设备的设备特定语言文档的操作中它的那部分操作而必须解析整个ML文档的可能性。
串行化器518接收针对目标远程设备的设备特定语言文档,并且将其转换成适合于经由与该设备的通信链路传输的字符字节流。此外,可以布置单独的组件来针对特定语言本地化字符字节,并且可以布置另一个组件来针对目标远程设备将媒体项目嵌入在字符流中。
图5B示出了可被包括在如图5A所示的流水线阶段组件516中的多个示例性阶段的一个实施例的概况。组件516被示为包括以下各项:临时索引添加阶段530、位置请求阶段532、缩小阶段534、分页阶段536、字体化阶段538、媒体项目阶段540、以及临时索引去除阶段542。包括在组件516中的阶段对应于特定的目标远程设备,并且,如果要为一个不同的目标远程设备执行渲染的话,则这些阶段中的一些但非全部以及可能的其他阶段也可被包括在组件516中。
示例性的移动标记语言
图6示出了可根据以移动标记语言(MML)创建的文档中包括的模块来实例化的类树的概况600。MML相对独立于目标远程设备的考虑因素,并且其类至少可由上述平台的不同实施例或者另外的资源来实例化。平台的主组件可自动解析MML文档以识别每个MML模块,并随后基于所识别的模块来实例化类树。在另一个实施例中,这些类被布置为生成几乎任何类型的可被渲染以便随后在目标远程设备处显示的标记语言文档。
将MML文档渲染为设备特定语言文档的操作可包括促成该渲染的多个不同过程,其中包括:(1)判定是否能够响应于请求提供关于目标远程设备的位置信息;(2)通过去除无关表单来缩小层叠样式表(CSS);(3)通过剥出层叠样式表并改写为ML代码来对层叠样式表进行字体化;(4)收缩ML文档以去除与目标远程设备无关的任何ML代码;(5)指定将被嵌入或链接在页面中的每个媒体项目的一个或多个属性;(6)采用对每个页面尺寸的估计来将ML文档页面重新分页成不大于目标远程设备的有效显示屏幕尺寸的尺寸;(7)裁剪/去除估计将被渲染为大于目标远程设备的有效显示屏幕尺寸的页面中的ML代码;和/或(8)将URL改写为包括媒体项目的位置和/或会话标识信息。
此外,MML文档可包括至少两种类别的数据结构,例如结构和模块标签。结构类别可包括内容标签、表单标签、模式标签和组织标签,等等。同样,模块类别可包括通用模块标签、全局模块标签和属性模块标签。此外,一些模块标签可被布置用于对MML文档的渲染进行裁剪。
至少一部分MML标签的列表在以下列出。
结构标签
内容标签-<text>
类型标签-<media>;<mi>(媒体项目)
表单标签-<input>,<submit>,<hidden>,<label>,<value>
模式标签-<a>,<heading>,<subheading>
组织标签-<p>,<item>,<array>,<join>,<yml>
模块标签
通用模块-<module.container>,<module.grid>,<module.pane>,<module.list>,<module.plain>
样式设置(属性)
全局模块-<yahoo.header>,<yahoo.footernav>,<yahoo.footerlegal>
属性模块-<yahoo.sch.result>
虽然两种类别中的标签的名称往往描述了其功能(这在某种程度上类似于其他标记语言中的听起来相似的标签),但MML标签主要是用来捕捉编程者的意图的,而不是为了在目标远程设备上显示而实际渲染页面所必需的样式设置。例如,通用模块标签<module.list>被平台当作要求渲染列表以便在目标远程设备上显示的请求。但是,由于<module.list>标签不指定实际执行渲染所必需的实质细节,因此平台通过使用渲染上下文中包括的数据和参数来处理这些细节,例如列表的纵向或横向朝向、有效显示屏幕的宽度和高度、以及显示页面的分页尺寸。对MML标签的意图的渲染由上述平台中的至少一个或者其他资源以基本上类似于其他类型的标记语言文档中提供的其他标签的方式来进行。
平台的一般操作
现在将针对图7-11B来描述本发明的某些方面的方法和过程。
图7示出了本发明的平台的任何实施例为呈现标记语言(ML)文档以供目标远程设备显示而一般采用的过程的概况700。离开开始块后,过程步进到块702,在该块中,接收特定目标远程设备的渲染上下文。在块704,还接收标记语言文档。ML文档和渲染上下文是由相同或不同资源中的一个或多个来生成并随后提供的,所述资源包括但不限于内容提供者、运营商、web服务、成员、用户和网站。
流到块706,目标远程设备的渲染上下文中包括的数据和参数被一个或多个过程用来针对远程设备将ML文档完全渲染为设备特定语言的文档。转移到块708,过程可以可选地提供可通过链接来引用或嵌入在设备特定语言文档中的媒体项目。在块710,设备特定语言文档被提供给目标远程设备以便随后显示。在一个实施例中,运营商经由通信链路将设备特定语言文档以字符串的形式提供给目标远程设备。接下来,过程返回以执行其他动作。
图8示出了至少可由图4所示的平台执行的过程的概况800。离开开始块后,过程步进到块802,在该块中,从另外的资源接收目标远程设备的渲染上下文和标记语言(ML)文档。转移到块804,过程检查ML文档和渲染上下文中包括的数据和参数的有效性。在块806,生成文档对象模型树。在块808,渲染上下文使得DOM树能够被填充以目标远程设备固有的ML代码。
步进到块810,过程为ML文档的被渲染页面确定分页。过程对这些页面进行分页,以使得它们的尺寸不大于目标远程设备的显示屏幕的有效尺寸。在一些情况下,为新分页的页面创建下一页和前一页链接。过程还可以去除ML文档中的相对不必要的空白空间。在块812,过程解析被填充的DOM树并且将固有ML代码解析成设备特定语言的文档。前进到块814,一个或多个媒体项目可以可选地被链接所引用或者被嵌入在设备特定语言文档中。在块816,设备特定语言文档被提供给目标远程设备以便随后显示。在一个实施例中,运营商经由通信链路将设备特定语言文档以字符串的形式提供给目标远程设备。接下来,过程返回以执行其他动作。
图9示出了用于采用所公开的平台实施例中的至少一个来将以移动标记语言(MML)编写的文档完全渲染为设备特定语言文档以供目标远程设备随后显示的过程的概况900,其中该移动标记语言被布置为提供编程者的意图,而不是与该文档的实际渲染相关联的特定细节。
离开开始块后,过程步进到块902,在该块中,从另外的资源接收目标远程设备的渲染上下文和移动标记语言(MML)文档。转移到块904,过程检查ML文档和渲染上下文中包括的数据和参数的有效性。在块906,生成文档对象模型树。在块908,渲染上下文使得DOM树能够被填充目标远程设备固有的ML代码。
步进到块910,过程为ML文档的被渲染页面确定分页。过程对这些页面进行分页,以使得它们的尺寸不大于目标远程设备的显示屏幕的有效尺寸。在一些情况下,为新分页的页面创建下一页和前一页链接。过程还可以去除ML文档中的相对不必要的空白空间。在块912,过程解析被填充的DOM树并且将固有ML代码解析成设备特定语言的文档。前进到块914,一个或多个媒体项目可以可选地被链接所引用或者被嵌入在设备特定语言文档中。在块916,设备特定语言文档被提供给目标远程设备以便随后显示。在一个实施例中,运营商经由通信链路将设备特定语言文档以字符串的形式提供给目标远程设备。接下来,过程返回以执行其他动作。
图10示出了用于采用一平台来完全渲染标记语言(ML)文档的过程的概况1000,其中利用了提供用于渲染ML文档的不同部分的流水线阶段的平台。离开开始块后,过程流到块1002,在该块中,从一个或多个相同或不同的资源接收目标移动设备的渲染上下文和ML文档。在块1004,对ML文档进行汇编以便处理。例如,共同的页眉和页脚、单位和其他附带元素可被添加到ML文档。接下来,在块1006,过程解析ML文档并审阅渲染上下文的数据和参数,以构建能够实现对ML文档中包括的元素的完全渲染的流水线阶段的实例。过程还将汇编的ML文档转换成文档对象模型(DOM)文档。
在块1008,过程至少部分基于目标远程设备的渲染上下文来对DOM文档中包括的元素执行流水线阶段渲染和分页,使之成为设备特定语言文档。流到块1010,过程将被渲染的DOM文档(现在是设备特定语言文档)串行化为字符串,该字符串可以可选地被本地化为针对目标远程设备的特定口头语言。
转移到块1012,过程可以可选地提供可通过链接来引用或者嵌入在完全渲染的字符串中的媒体项目。在块1014,使该字符串以及所包括的任何媒体项目可用于供目标远程设备随后显示。在一个实施例中,运营商经由通信链路将设备特定语言文档以字符串的形式提供给目标远程设备。接下来,过程返回以执行其他动作。
示例性的临时索引编制
图11A示出了用于一平台的过程1100,该平台实时地为接收到的XML文档中的唯一串临时创建临时XML ID并对这些临时XML ID进行索引编制,以便加快为了供目标远程设备随后显示而对文档的页面进行流水线阶段渲染的操作。另外,在至少一个其他实施例中,临时的实时索引和XML ID可用于加快对XML文档的渲染,以供本地设备或分布式计算设备进一步处理。
离开开始块后,过程流到块1102,在该块中,解析接收到的标记语言(XML)文档以识别每个唯一串。还接收目标远程设备的渲染上下文。在判决块1106,如果对于某个唯一串存在XML ID,则过程转移到块1108。但是,如果所识别的唯一串不对应于现有的XML ID,则在块1104向该唯一串添加临时XML ID。在任何情况下,在每个识别出的唯一串对应于现有或临时XML ID之后,过程流到块1108,在该块中,至少部分基于现有或临时XML ID来为XML文档生成临时索引,该临时索引列出了每个唯一串在XML文档中的位置。
在块1110,临时索引和渲染上下文被用于估计供目标远程设备上显示的XML文档的页面尺寸,并随后对估计尺寸过大的页面进行裁剪和/或重新分页。另外,可根据需要添加会话ID和改写URL。前进到块1112,过程采用临时索引和渲染上下文来对每个唯一串执行流水线阶段渲染,直到整个XML文档被完全渲染为设备特定语言的文档为止。
在块1114,从设备特定语言文档中去除临时索引和临时XML ID。转移到块1116,过程可以可选地提供可通过链接来引用或者嵌入在设备特定语言文档中的媒体项目。在块1118,使该设备特定语言文档以及所包括的任何媒体项目可用于供目标远程设备随后显示。在一个实施例中,运营商经由通信链路将设备特定语言文档以字符串的形式提供给目标远程设备。接下来,过程返回以执行其他动作。
图11B示出了用于一平台的过程1120,该平台实时地为接收到的标记语言(ML)文档中的唯一串临时创建临时ID并对这些临时ID进行索引编制,以便加快为了供目标远程设备随后显示而将文档的页面渲染为设备特定语言文档的操作。但是,在至少一个其他实施例中,临时的实时索引和ML ID可用于加快对ML文档的渲染,以供本地设备或分布式计算设备进一步处理。
离开开始块后,过程流到块1122,在该块中,解析接收到的标记语言(ML)文档以识别每个唯一串。还接收目标远程设备的渲染上下文。在判决块1124,如果对于某个唯一串存在XML ID,则过程转移到块1128。但是,如果所识别的唯一串不对应于现有的ML ID,则在块1126向该唯一串添加临时ML ID。在任何情况下,在每个识别出的唯一串对应于现有或临时ML ID之后,过程流到块1128,在该块中,至少部分基于现有或临时ML ID来为ML文档生成临时索引,该临时索引列出了每个唯一串在ML文档中的位置。
在块1130,临时索引和渲染上下文被用于估计供目标远程设备上显示的XML文档的页面尺寸,并随后对估计尺寸过大的页面进行裁剪和/或重新分页。另外,可根据需要添加会话ID和改写URL。前进到块1132,过程采用临时索引和渲染上下文来对每个唯一串执行渲染,直到整个ML文档被完全渲染为设备特定语言的文档为止。
在块1134,从设备特定语言文档中去除临时索引和临时ML ID。转移到块1136,过程可以可选地提供可通过链接来引用或者嵌入在设备特定语言文档中的媒体项目。在块1138,该设备特定语言文档以及所包括的任何媒体项目被提供给目标远程设备以便随后显示。在一个实施例中,运营商经由通信链路将设备特定语言文档以字符串的形式提供给目标远程设备。接下来,过程返回以执行其他动作。
应当理解,以上流程图图示的每个块和流程图图示中的块的组合可由计算机程序指令来实现。这些程序指令可被提供给处理器以产生机器,从而使得在处理器上运行的指令产生用于实现一个或多个流程图块中指定的动作的装置。计算机程序指令可被处理器运行以使一系列操作步骤被处理器执行,以产生计算机实现的过程,从而在处理器上运行的指令提供用于实现上述流程图中列出的动作的步骤。
因此,流程图图示的块支持用于执行指定动作的装置的组合、用于执行指定动作的步骤的组合、以及用于执行指定动作的程序指令装置。还应当理解,流程图图示的每个块以及流程图图示中的块的组合可通过执行指定的动作或步骤的专用的基于硬件的***或者专用硬件和计算机指令的组合来实现。
在以上说明中,已参考本发明的特定示例性实施例描述了本发明。但是,很明显,在不脱离由所附权利要求限定的本发明的更宽精神和范围的情况下,可对这些特定示例性实施例进行各种修改和改变。因此,说明书和附图应当被视为示例性的而非限制性的。

Claims (20)

1.一种用于渲染标记语言(ML)文档以供远程设备显示的方法,包括:
接收所述ML文档;
接收所述远程设备固有的渲染上下文,其中,所述渲染上下文包括使得能够渲染所述ML文档以供所述远程设备随后显示的信息;
采用所述渲染上下文来使得能够对所述ML文档进行分页,其中,被渲染的ML文档中的每个页面的尺寸被分页为不大于所述远程设备进行显示的有效尺寸;
采用所述渲染上下文来使得至少一个过程能够将所述ML文档完全渲染为设备特定语言的文档;以及
使得设备特定语言文档能够被提供给所述远程设备。
2.如权利要求1所述的方法,还包括:
将媒体项目嵌入在所述设备特定语言文档中;或者
在所述设备特定语言文档中包括指向所述媒体项目的链接。
3.如权利要求1所述的方法,还包括:
确定为完全渲染所述ML文档而要执行的多个过程中的每一个;
构建每个所确定的过程的流水线,该流水线总体上使得能够对所述ML文档进行完全渲染;以及
将所述ML文档布置成树,其中,所述渲染上下文和过程的流水线被用来将该树解析成使所述ML文档成为所述设备特定语言文档的完全渲染。
4.如权利要求1所述的方法,还包括对接收到的ML文档进行汇编,其中,所述汇编包括以下各项中的至少一项:向模块添加单位、填充空白、添加页眉、或者添加页脚。
5.如权利要求1所述的方法,其中,使得所述设备特定语言文档能够被提供给所述远程设备还包括将所述设备特定语言文档串行化为字符串。
6.如权利要求1所述的方法,还包括:
为当前不与现有标记语言(ML)ID相关联的每个唯一串创建临时ML ID;
生成每个临时ML ID和每个现有ML ID的临时索引;
采用所述临时索引和多个过程中的至少一个以对所述ML文档中的每个唯一串进行渲染;以及
在所述设备特定语言文档被提供给所述远程设备之前从所述设备特定语言文档中去除所述临时索引和每个临时ML ID。
7.如权利要求1所述的方法,其中,所述标记语言是支持作者在所述远程设备上显示所述ML文档中的内容的意图的移动标记语言,并且,被渲染来供所述远程设备显示的内容的实际布置至少部分基于所述渲染上下文。
8.如权利要求1所述的方法,其中,对所述ML文档的渲染包括多个过程中的至少一个,该多个过程包括:
判定是否能够响应于请求提供关于所述远程设备的位置信息;
通过去除无关表单来缩小层叠样式表(CSS);
通过剥出层叠样式表并改写为ML代码来对层叠样式表进行字体化;
收缩所述ML文档以去除与所述远程设备无关的任何ML代码;
指定将被包括在被渲染的ML文档中的每个媒体项目的一个或多个属性;
采用对每个页面尺寸的估计来将所述ML文档的页面重新分页成不大于所述远程设备的有效尺寸的尺寸;
裁剪所述ML文档的估计将被渲染为比所述远程设备的有效尺寸大的页面中的ML代码;
将URL改写为包括媒体项目的位置;或者
将URL改写为包括会话标识信息。
9.如权利要求1所述的方法,其中,所述远程设备支持经由网络进行的有线或无线通信中的至少一种。
10.一种用于渲染标记语言(ML)文档以供显示的***,包括:
适用于显示被渲染的ML文档的远程设备;以及
被布置为执行动作的平台,所述动作包括:
从另外的资源接收所述ML文档和渲染上下文,其中,所述渲染上下文包括使得能够渲染所述ML文档以供所述远程设备随后显示的信息;
采用所述渲染上下文来对所述ML文档进行分页,其中,被渲染的ML文档中的每个页面的尺寸被分页为不大于所述远程设备进行显示的有效尺寸;
采用所述渲染上下文来使得至少一个过程能够将所述ML文档完全渲染为设备特定语言的文档;以及
经由网络提供所述设备特定语言文档以供所述远程设备显示。
11.如权利要求10所述的***,其中,所述平台执行另外的动作中的至少一个,所述另外的动作包括:
将媒体项目嵌入在所述设备特定语言文档中;或者
在所述设备特定语言文档中包括指向所述媒体项目的链接。
12.如权利要求10所述的***,其中,所述平台执行另外的动作中的至少一个,所述另外的动作包括:
确定为了将所述ML文档完全渲染为所述设备特定语言文档而要执行的多个过程中的每一个;
构建每个所确定的过程的流水线,该流水线总体上使得能够将所述ML文档完全渲染为所述设备特定语言文档;以及
将所述ML文档布置成树,其中,所述渲染上下文和过程的流水线被用来将该树解析成所述设备特定语言文档。
13.如权利要求10所述的***,其中,所述平台执行另外的动作,所述另外的动作包括对接收到的ML文档进行汇编,其中,所述汇编包括以下各项中的至少一项:向模块添加单位、填充空白、添加页眉、或者添加页脚。
14.如权利要求10所述的***,其中,使得所述设备特定语言文档能够被提供给所述远程设备的动作还包括将所述设备特定语言文档串行化为字符串。
15.如权利要求10所述的***,其中,所述平台执行另外的动作中的至少一个,所述另外的动作包括:
为当前不与现有标记语言(ML)ID相关联的每个唯一串创建临时ML ID;
生成每个临时ML ID和每个现有ML ID的临时索引;
采用所述临时索引和多个过程中的至少一个以对所述ML文档中的每个唯一串进行渲染;以及
在所述设备特定语言文档被提供给所述远程设备之前从所述设备特定语言文档中去除所述临时索引和每个临时ML ID。
16.如权利要求10所述的***,其中,所述标记语言是支持作者在所述远程设备上显示所述ML文档中的内容的意图的移动标记语言,并且,供所述远程设备显示的内容的实际布置至少部分基于所述渲染上下文。
17.如权利要求10所述的***,其中,对所述ML文档的渲染包括执行多个过程中的至少一个,该多个过程包括:
判定是否能够响应于请求提供关于所述远程设备的位置信息;
通过去除无关表单来缩小层叠样式表(CSS);
通过剥出层叠样式表并改写为ML代码来对层叠样式表进行字体化;
收缩所述ML文档以去除与所述远程设备无关的任何ML代码;
指定将被包括在被渲染的ML文档中的每个媒体项目的一个或多个属性;
采用对每个页面尺寸的估计来将所述ML文档的页面重新分页成不大于所述远程设备的有效尺寸的尺寸;
裁剪所述ML文档的估计将被渲染为比所述远程设备的有效尺寸大的页面中的ML代码;
将URL改写为包括媒体项目的位置;或者
将URL改写为包括会话标识信息。
18.如权利要求10所述的***,其中,所述远程设备支持经由网络进行的有线或无线通信中的至少一种。
19.一种包括多个组件的处理器可读介质,该多个组件使得能够进行用于渲染标记语言(ML)文档以便由远程设备显示的动作,包括:
第一组件,用于接收所述ML文档;
第二组件,接收所述远程设备固有的渲染上下文,其中,所述渲染上下文包括使得能够将所述ML文档渲染为设备特定语言的文档以供所述远程设备随后显示的信息;
第三组件,用于采用所述渲染上下文来使得能够对所述ML文档进行分页,其中,所述设备特定语言中的每个页面的尺寸被分页为不大于所述远程设备进行显示的有效尺寸;
第四组件,用于采用所述渲染上下文来使得至少一个过程能够将所述ML文档完全渲染为设备特定语言文档;以及
第五组件,用于使得所述设备特定语言文档能够被提供给所述远程设备。
20.一种使得能够渲染标记语言(ML)文档以供远程设备显示的服务器,包括:
用于存储数据的存储器;以及
用于实现动作的处理器,所述动作包括:
接收所述ML文档;
接收所述远程设备固有的渲染上下文,其中,所述渲染上下文包括使得能够将所述ML文档渲染为设备特定语言的文档以供所述远程设备随后显示的信息;
采用所述渲染上下文来使得能够对所述ML文档进行分页,其中,设备特定语言文档中的每个页面的尺寸被分页为不大于所述远程设备进行显示的有效尺寸;
采用所述渲染上下文来使得至少一个过程能够将所述ML文档完全渲染为所述设备特定语言文档;以及
使得所述设备特定语言文档能够被提供给所述远程设备。
CN2007800364167A 2006-09-29 2007-07-03 用于针对远程设备渲染内容的平台 Expired - Fee Related CN101523386B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/537,593 2006-09-29
US11/537,593 US10452756B2 (en) 2006-09-29 2006-09-29 Platform for rendering content for a remote device
PCT/US2007/072796 WO2008039581A1 (en) 2006-09-29 2007-07-03 Platform for rendering content for a remote device

Publications (2)

Publication Number Publication Date
CN101523386A true CN101523386A (zh) 2009-09-02
CN101523386B CN101523386B (zh) 2013-05-22

Family

ID=39230517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800364167A Expired - Fee Related CN101523386B (zh) 2006-09-29 2007-07-03 用于针对远程设备渲染内容的平台

Country Status (7)

Country Link
US (2) US10452756B2 (zh)
EP (1) EP2069970A4 (zh)
JP (1) JP5108016B2 (zh)
KR (1) KR101117396B1 (zh)
CN (1) CN101523386B (zh)
HK (1) HK1137534A1 (zh)
WO (1) WO2008039581A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035856A (zh) * 2010-12-31 2011-04-27 深圳瑞高信息技术有限公司 游戏社区的管理方法、游戏客户终端及其***
CN105284095A (zh) * 2013-05-07 2016-01-27 耐瑞唯信有限公司 用于接收来自远程服务器的媒体内容的媒体播放器
CN107526716A (zh) * 2016-09-30 2017-12-29 腾讯科技(深圳)有限公司 邮件显示方法和装置
CN109863527A (zh) * 2016-12-30 2019-06-07 谷歌有限责任公司 用于展现的本地内容的服务器侧渲染的方法和***
CN111338628A (zh) * 2020-03-10 2020-06-26 中国联合网络通信集团有限公司 组件渲染方法及设备
CN112416478A (zh) * 2019-08-20 2021-02-26 北京国双科技有限公司 信息展示方法及***
CN112817915A (zh) * 2021-02-01 2021-05-18 浪潮云信息技术股份公司 一种自动化的多产品文档统一发布展示方法
CN113704824A (zh) * 2021-08-31 2021-11-26 平安普惠企业管理有限公司 页面引导标记的同步生成方法、装置、设备及存储介质

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US7707039B2 (en) 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US8442331B2 (en) 2004-02-15 2013-05-14 Google Inc. Capturing text from rendered documents using supplemental information
US7812860B2 (en) 2004-04-01 2010-10-12 Exbiblio B.V. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US20060041484A1 (en) 2004-04-01 2006-02-23 King Martin T Methods and systems for initiating application processes by data capture from rendered documents
US8799303B2 (en) 2004-02-15 2014-08-05 Google Inc. Establishing an interactive environment for rendered documents
US10635723B2 (en) 2004-02-15 2020-04-28 Google Llc Search engines and systems with handheld document data capture devices
US8081849B2 (en) 2004-12-03 2011-12-20 Google Inc. Portable scanning and memory device
US8621349B2 (en) 2004-04-01 2013-12-31 Google Inc. Publishing techniques for adding value to a rendered document
US7894670B2 (en) 2004-04-01 2011-02-22 Exbiblio B.V. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US8793162B2 (en) 2004-04-01 2014-07-29 Google Inc. Adding information or functionality to a rendered document via association with an electronic counterpart
US20080313172A1 (en) 2004-12-03 2008-12-18 King Martin T Determining actions involving captured information and electronic content associated with rendered documents
US8146156B2 (en) 2004-04-01 2012-03-27 Google Inc. Archive of text captures from rendered documents
US7990556B2 (en) 2004-12-03 2011-08-02 Google Inc. Association of a portable scanner with input/output and storage devices
US20060098900A1 (en) 2004-09-27 2006-05-11 King Martin T Secure data gathering from rendered documents
US9143638B2 (en) 2004-04-01 2015-09-22 Google Inc. Data capture from rendered documents using handheld device
US20060081714A1 (en) 2004-08-23 2006-04-20 King Martin T Portable scanning device
WO2008028674A2 (en) 2006-09-08 2008-03-13 Exbiblio B.V. Optical scanners, such as hand-held optical scanners
US9116890B2 (en) 2004-04-01 2015-08-25 Google Inc. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US20070300142A1 (en) 2005-04-01 2007-12-27 King Martin T Contextual dynamic advertising based upon captured rendered text
US8713418B2 (en) 2004-04-12 2014-04-29 Google Inc. Adding value to a rendered document
US8874504B2 (en) 2004-12-03 2014-10-28 Google Inc. Processing techniques for visual capture data from a rendered document
US8489624B2 (en) 2004-05-17 2013-07-16 Google, Inc. Processing techniques for text capture from a rendered document
US9460346B2 (en) 2004-04-19 2016-10-04 Google Inc. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US8620083B2 (en) 2004-12-03 2013-12-31 Google Inc. Method and system for character recognition
US8346620B2 (en) 2004-07-19 2013-01-01 Google Inc. Automatic modification of web pages
US8384925B2 (en) 2004-10-08 2013-02-26 Sharp Laboratories Of America, Inc. Methods and systems for imaging device accounting data management
US8237946B2 (en) 2004-10-08 2012-08-07 Sharp Laboratories Of America, Inc. Methods and systems for imaging device accounting server redundancy
US8230328B2 (en) * 2004-10-08 2012-07-24 Sharp Laboratories Of America, Inc. Methods and systems for distributing localized display elements to an imaging device
US7920101B2 (en) 2004-10-08 2011-04-05 Sharp Laboratories Of America, Inc. Methods and systems for imaging device display standardization
US8213034B2 (en) 2004-10-08 2012-07-03 Sharp Laboratories Of America, Inc. Methods and systems for providing remote file structure access on an imaging device
US8428484B2 (en) 2005-03-04 2013-04-23 Sharp Laboratories Of America, Inc. Methods and systems for peripheral accounting
US8345272B2 (en) 2006-09-28 2013-01-01 Sharp Laboratories Of America, Inc. Methods and systems for third-party control of remote imaging jobs
US8181107B2 (en) 2006-12-08 2012-05-15 Bytemobile, Inc. Content adaptation
US8924352B1 (en) 2007-03-31 2014-12-30 Emc Corporation Automated priority backup and archive
US20080301236A1 (en) * 2007-05-31 2008-12-04 Microsoft Corporation Contextual social language
US8583601B1 (en) 2007-09-28 2013-11-12 Emc Corporation Imminent failure backup
US8762854B2 (en) * 2007-11-07 2014-06-24 Cabot Communications Limited Systems and methods for itemising web pages for display on a screen
US8019863B2 (en) 2008-03-28 2011-09-13 Ianywhere Solutions, Inc. Synchronizing events between mobile devices and servers
US8370737B2 (en) * 2008-12-27 2013-02-05 Flash Networks, Ltd Method and system for inserting data in a web page that is transmitted to a handheld device
US8719365B1 (en) * 2009-02-12 2014-05-06 Adobe Systems Incorporated Graphic output from remote execution of applications redirected with dynamically sized virtual screen
WO2010096193A2 (en) * 2009-02-18 2010-08-26 Exbiblio B.V. Identifying a document by performing spectral analysis on the contents of the document
US20100211893A1 (en) * 2009-02-19 2010-08-19 Microsoft Corporation Cross-browser page visualization presentation
WO2010105246A2 (en) 2009-03-12 2010-09-16 Exbiblio B.V. Accessing resources based on capturing information from a rendered document
US8447066B2 (en) 2009-03-12 2013-05-21 Google Inc. Performing actions based on capturing information from rendered documents, such as documents under copyright
US20110074831A1 (en) * 2009-04-02 2011-03-31 Opsis Distribution, LLC System and method for display navigation
US20110093619A1 (en) * 2009-10-16 2011-04-21 Ianywhere Solutions, Inc. Synchronizing Tasks between Mobile Devices and Servers
US20110126113A1 (en) * 2009-11-23 2011-05-26 c/o Microsoft Corporation Displaying content on multiple web pages
US9081799B2 (en) 2009-12-04 2015-07-14 Google Inc. Using gestalt information to identify locations in printed information
US9323784B2 (en) 2009-12-09 2016-04-26 Google Inc. Image search using text-based elements within the contents of images
US9152650B1 (en) 2010-03-31 2015-10-06 Emc Corporation Mobile device data recovery
US8683005B1 (en) 2010-03-31 2014-03-25 Emc Corporation Cache-based mobile device network resource optimization
US8694597B1 (en) 2010-03-31 2014-04-08 Emc Corporation Mobile device group-based data sharing
US8655966B1 (en) 2010-03-31 2014-02-18 Emc Corporation Mobile device data protection
US8694744B1 (en) 2010-03-31 2014-04-08 Emc Corporation Mobile device snapshot backup
US9514089B1 (en) * 2010-03-31 2016-12-06 EMC IP Holding Company LLC Mobile device network data synchronization
JP4818454B1 (ja) * 2010-08-27 2011-11-16 株式会社東芝 表示装置、及び表示方法
CN102074221B (zh) * 2011-01-06 2012-08-22 深圳芯邦科技股份有限公司 一种字符显示方法及装置
US9015576B2 (en) 2011-05-16 2015-04-21 Microsoft Technology Licensing, Llc Informed partitioning of data in a markup-based document
US9361131B1 (en) * 2011-06-24 2016-06-07 Amazon Technologies, Inc. Network resource access via a mobile shell
CN102902692B (zh) * 2011-07-28 2017-11-17 腾讯科技(北京)有限公司 网络媒介信息的处理展示方法及***
US9443029B2 (en) * 2011-08-15 2016-09-13 Verizon Patent And Licensing Inc. Method and system for providing context-based view content management
US20130227398A1 (en) * 2011-08-23 2013-08-29 Opera Software Asa Page based navigation and presentation of web content
US9536251B2 (en) * 2011-11-15 2017-01-03 Excalibur Ip, Llc Providing advertisements in an augmented reality environment
US20130159839A1 (en) * 2011-12-14 2013-06-20 Microsoft Corporation Semantic compression of cascading style sheets
WO2013102802A1 (en) * 2012-01-02 2013-07-11 International Business Machines Corporation Conflict resolution of css definition from multiple sources
US20140047310A1 (en) * 2012-08-13 2014-02-13 Business Objects Software Ltd. Mobile drilldown viewer for standardized data
US20140095988A1 (en) * 2012-09-29 2014-04-03 Bookboard, Inc. Creating and consuming streaming e-book content
US20140272891A1 (en) * 2013-03-15 2014-09-18 Joseph Saladino System and method for remote fitness training
US9836437B2 (en) 2013-03-15 2017-12-05 Google Llc Screencasting for multi-screen applications
CN103294819B (zh) * 2013-06-14 2018-08-31 北京新学堂网络科技有限公司 采用html5技术对网页内容进行分页显示的方法
US9529858B2 (en) 2014-03-06 2016-12-27 Yahoo! Inc. Methods and systems for ranking items on a presentation area based on binary outcomes
US10579713B2 (en) * 2014-05-30 2020-03-03 Apple Inc. Application Markup language
US9898450B2 (en) * 2014-11-07 2018-02-20 Rakuten Kobo Inc. System and method for repagination of display content
US9292482B1 (en) * 2015-04-30 2016-03-22 Workiva Inc. System and method for convergent document collaboration
US10325014B2 (en) 2015-04-30 2019-06-18 Workiva Inc. System and method for convergent document collaboration
US10534852B2 (en) * 2015-09-30 2020-01-14 Samsung Display Co., Ltd. Display system and virtual web device in the cloud
CN106599000A (zh) * 2015-10-19 2017-04-26 阿里巴巴集团控股有限公司 一种页面处理方法及设备
US10552480B1 (en) * 2017-02-21 2020-02-04 Amazon Technologies, Inc. Package management for asset processing
US11755825B2 (en) 2019-09-12 2023-09-12 Workiva Inc. Method, system, and computing device for facilitating private drafting
US11263387B1 (en) * 2020-05-05 2022-03-01 Progress Software Corporation Technology agnostic page builder architecture
US11100281B1 (en) 2020-08-17 2021-08-24 Workiva Inc. System and method for maintaining links and revisions
US11443108B2 (en) 2020-08-17 2022-09-13 Workiva Inc. System and method for document management using branching
US11100277B1 (en) 2021-02-15 2021-08-24 Workiva Inc. Systems, methods, and computer-readable media for flow-through formatting for links
US11354362B1 (en) 2021-05-06 2022-06-07 Workiva Inc. System and method for copying linked documents
US11640495B1 (en) 2021-10-15 2023-05-02 Workiva Inc. Systems and methods for translation comments flowback

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6473609B1 (en) * 1995-12-11 2002-10-29 Openwave Systems Inc. Method and architecture for interactive two-way communication devices to interact with a network
US6278992B1 (en) * 1997-03-19 2001-08-21 John Andrew Curtis Search engine using indexing method for storing and retrieving data
US6178430B1 (en) * 1998-05-11 2001-01-23 Mci Communication Corporation Automated information technology standards management system
FI19992746A (fi) * 1998-12-28 2000-06-28 Spyglass Inc Menetelmä ja järjestelmä elektronisen datasisällön muuntamiseksi langattomille laitteille
CA2374808C (en) * 1999-05-28 2008-05-20 Anoto Ab Recording of information
JP2001195391A (ja) 2000-01-14 2001-07-19 Nec Information Service Ltd フォーマット変換・ページ分割中継サーバ
US7072984B1 (en) * 2000-04-26 2006-07-04 Novarra, Inc. System and method for accessing customized information over the internet using a browser for a plurality of electronic devices
WO2001086462A1 (en) 2000-05-08 2001-11-15 Leap Wireless International, Inc. Method of converting html/xml to hdml/wml in real-time for display on mobile devices
US7210099B2 (en) * 2000-06-12 2007-04-24 Softview Llc Resolution independent vector display of internet content
US20020019812A1 (en) * 2000-06-16 2002-02-14 Board Karen Eleanor System and service for receiving, customizing, and re-broadcasting high-speed financial data to users operating wireless network-capable devices
CA2431762C (en) * 2000-12-18 2011-11-01 Kargo, Inc. A system and method for delivering content to mobile devices
GB0107784D0 (en) * 2001-03-28 2001-05-16 Hewlett Packard Co Improvement relating to developing documents
US20040019628A1 (en) * 2002-07-09 2004-01-29 Puri Anish N. System for remotely rendering content for output by a printer
US7016963B1 (en) * 2001-06-29 2006-03-21 Glow Designs, Llc Content management and transformation system for digital content
US7162221B2 (en) * 2001-12-14 2007-01-09 Inphonic, Inc. Systems, methods, and computer program products for registering wireless device users in direct marketing campaigns
US20040110490A1 (en) * 2001-12-20 2004-06-10 Steele Jay D. Method and apparatus for providing content to media devices
JP2003271508A (ja) 2002-03-14 2003-09-26 Ntt Comware Corp 携帯端末向けコンテンツ変換システム、及びコンテンツ変換方法
US7441047B2 (en) * 2002-06-17 2008-10-21 Microsoft Corporation Device specific pagination of dynamically rendered data
WO2004068320A2 (en) * 2003-01-27 2004-08-12 Vincent Wen-Jeng Lue Method and apparatus for adapting web contents to different display area dimensions
JP2005018390A (ja) 2003-06-26 2005-01-20 Hitachi Ltd 記述言語変換方法及び実施システム並びに処理プログラム
CN100440208C (zh) 2003-06-30 2008-12-03 国际商业机器公司 改进万维网设备中超文本标记语言页面表现的方法和***
US7356843B1 (en) * 2003-10-01 2008-04-08 Symantec Corporation Security incident identification and prioritization
NO20034724D0 (no) * 2003-10-22 2003-10-22 Opera Software Asa Presentasjon av HTML-innhold på en skjermterminal
GB2410814A (en) 2004-02-05 2005-08-10 Stephen John Doyle Document conversion enabling browser content across different types of terminal devices
JP4389707B2 (ja) 2004-07-16 2009-12-24 ソニー株式会社 電子機器装置、サーバ装置、Webページ処理方法及びそのプログラム
EP1842140A4 (en) * 2005-01-19 2012-01-04 Truecontext Corp APPLICATIONS BASED ON MOBILE FORMS ORDERED BY RULES
JP2006243829A (ja) 2005-02-28 2006-09-14 Toshiba Corp ウェブコンテンツ変換方法およびウェブコンテンツ変換システム
US7665016B2 (en) * 2005-11-14 2010-02-16 Sun Microsystems, Inc. Method and apparatus for virtualized XML parsing
US20070288853A1 (en) * 2006-06-09 2007-12-13 Nextair Corporation Software, methods and apparatus facilitating presentation of a wireless communication device user interface with multi-language support

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035856A (zh) * 2010-12-31 2011-04-27 深圳瑞高信息技术有限公司 游戏社区的管理方法、游戏客户终端及其***
CN105284095A (zh) * 2013-05-07 2016-01-27 耐瑞唯信有限公司 用于接收来自远程服务器的媒体内容的媒体播放器
CN105284095B (zh) * 2013-05-07 2019-05-10 耐瑞唯信有限公司 用于接收来自远程服务器的媒体内容的媒体播放器
CN107526716A (zh) * 2016-09-30 2017-12-29 腾讯科技(深圳)有限公司 邮件显示方法和装置
CN107526716B (zh) * 2016-09-30 2020-02-11 腾讯科技(深圳)有限公司 邮件显示方法和装置
CN109863527A (zh) * 2016-12-30 2019-06-07 谷歌有限责任公司 用于展现的本地内容的服务器侧渲染的方法和***
CN109863527B (zh) * 2016-12-30 2023-04-04 谷歌有限责任公司 用于展现的本地内容的服务器侧渲染的方法和***
CN112416478A (zh) * 2019-08-20 2021-02-26 北京国双科技有限公司 信息展示方法及***
CN111338628A (zh) * 2020-03-10 2020-06-26 中国联合网络通信集团有限公司 组件渲染方法及设备
CN111338628B (zh) * 2020-03-10 2023-07-18 中国联合网络通信集团有限公司 组件渲染方法及设备
CN112817915A (zh) * 2021-02-01 2021-05-18 浪潮云信息技术股份公司 一种自动化的多产品文档统一发布展示方法
CN113704824A (zh) * 2021-08-31 2021-11-26 平安普惠企业管理有限公司 页面引导标记的同步生成方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US10452756B2 (en) 2019-10-22
WO2008039581A1 (en) 2008-04-03
US20080155396A1 (en) 2008-06-26
JP2010505194A (ja) 2010-02-18
KR101117396B1 (ko) 2012-03-07
EP2069970A1 (en) 2009-06-17
HK1137534A1 (en) 2010-07-30
US20080177825A1 (en) 2008-07-24
CN101523386B (zh) 2013-05-22
JP5108016B2 (ja) 2012-12-26
EP2069970A4 (en) 2010-01-06
KR20090077807A (ko) 2009-07-15

Similar Documents

Publication Publication Date Title
CN101523386B (zh) 用于针对远程设备渲染内容的平台
US10031908B2 (en) System and method for automatically suggesting diverse and personalized message completions
US9178793B1 (en) Engine for processing content rules associated with locations in a page
US11119728B2 (en) Displaying event records with emphasized fields
JP5095726B2 (ja) ソーシャルネットワークバイタリティ情報に基づくコンテキスチュアルモバイルローカルサーチ
TWI420409B (zh) 行動上下文短訊服務廣告裝置、媒體以及方法
US7904062B2 (en) Scrolling mobile advertisements
US7668942B2 (en) Generating document templates that are robust to structural variations
US7949625B2 (en) Automated management of brand rules for providing content
CN104965842B (zh) 搜索推荐方法和装置
KR101366426B1 (ko) 모바일 장치의 금전적 가치 환산
US20070033255A1 (en) Establishing communication between a messaging client and a remote device
CN105027587B (zh) 利用结构化实体扩充的消息
US20120316972A1 (en) Intelligent feature expansion of online text ads
TW200835224A (en) Employing mobile location to refine searches
WO2007044049A2 (en) Peer-to-peer message chaining for initiating a data exchange with a server
CN102395969A (zh) 基于主题的活力
CN106059894A (zh) 一种消息处理方法和装置
CN109656510B (zh) 一种网页中语音输入的方法及终端
CN110278141A (zh) 一种即时通讯信息的处理方法、装置及存储介质
CN108804469A (zh) 一种网页识别方法以及电子设备
CN108628900A (zh) 一种数据格式获取的方法以及相关装置
CN111506838A (zh) 浏览器中标签页的展示方法和装置、介质、设备
EP1990747B1 (en) Communication system and reply method thereof
CN109240986A (zh) 一种日志处理方法、装置及存储介质

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: 1137534

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: 1137534

Country of ref document: HK

ASS Succession or assignment of patent right

Owner name: FEIYANG MANAGEMENT CO., LTD.

Free format text: FORMER OWNER: YAHOO CORP.

Effective date: 20150331

TR01 Transfer of patent right

Effective date of registration: 20150331

Address after: The British Virgin Islands of Tortola

Patentee after: Fly upward Management Co., Ltd

Address before: California, USA

Patentee before: Yahoo Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130522

Termination date: 20210703

CF01 Termination of patent right due to non-payment of annual fee