专利名称:使用图形显示语言和本地ui对象进行显示的制作方法
使用图形显示语言和本地UI对象进行显示
背景技术:
扩展标记语言(XML) 1.0 (第三版)是2004年2月4日的万维 网联盟(W3C)推荐,可在www.w3.org上获得,在此引入其内容以作 参考。为了给信息赋予结构,XML将信息包装(wrap)到XML标签 中,从而使得不同程序和不同计算机更容易地使用上述信息。可縮放 矢量图形(SVG)版本1.1是2003年1月14日的W3C推荐,可在 www.w3.org上获得,在此引入其内容以作参考。SVG是描述(静态和 动画的)XML中的二维图形的语言。由于SVG准许对图形的精细控 制,SVG作为传送网络内容的语言越来越流行。
SVG的缺点是SVG不适合于支持具有用户输入的网页。例如, 因而SVG不定义下拉菜单。当程序员从SVG中可用的原始图形创建 具有下拉菜单的网页时,这期间含有大量的编程。此外,即使在SVG 中创建了下拉菜单,SVG不支持捕获和提交网页用户使用菜单输入的 任何信息。由于SVG是开放的标准,可修改SVG语言来支持用户在 网页中输入,但是这需要大量的工作。
本发明寻求提供一种能提供SVG功能性和用户在网页中输入的更 经济的方式。更主要的,本发明具有扩展图形语言功能性的应用。
发明内容
指令集包括以图形显示语言编写的指令和以网络形式创建语言 编写的指令。依照根据图形显示语言的指令,在设备的显示器上呈现 图形。从根据网络形式创建语言的指令中提取参数,并且使用这些参 数来创建本地用户接口对象。网络形式创建语言可修改成包括指示用 户输入区域的尺寸和位置的参数,从而使得这些参数还可用于创建本 地用户接口对象。本地用户接口对象可用于允许用户通过设备的用户 控制来输入信息。图形显示语言的图形元素可被绑定到网络形式创建Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028) 语言的提交操作,以允许提交输入的信息。另一图形元素可被绑定到 网络形式创建语言的复位操作。根据本发明,优选地提供一种设备操作方法,包括接收指令集;根据所述指令集中的图形指令,在所述设备的显示器上呈现图形,所述图形指令根据图形显示语言;从所述指令集中的其它指令提取参数,所述其它指令包括根据网络形式创建语言的指令;以利用所述参数创建本地用户接口对象。根据本发明的另一方面,优选地提供一种设备,包括显示器; 至少一个用户输入控制;保持指令集的存储器,所述指令集包括用于在所述显示器上呈现图形的图形指令以及其它指令,所述图形指令根 据图形显示语言,所述其他指令包括根据网络形式创建语言的指令, 所述其它指令包括参数;控制器,根据所述指令集而操作,从而(i) 在所述显示器上呈现图形,(ii)从所述指令集中的所述其它指令提取 参数,以及(iii)利用所述参数创建本地用户接口对象。结合附图,通过下文的描述,本发明的其它特征和优点将显而易见。
在示出本发明的示例实施例的附图中, 图l是根据本发明的系统的示意视图, 图2是图1的无线通信网络和手持设备的示意视图, 图3A至3C示出图1的网络内容服务器上的示范性源代码,以及 图4示出由图3A至图3C的源代码产生的示例屏幕显示。
具体实施方式
图1示出根据本发明的系统80。系统包括公共互联网82,网络内容 服务器84、编译器86、中继服务器87与公共互联网82连接。无线通信 网络88与中继服务器87连接,无线通信网络88与手持移动通信设备90 无线连接。手持移动通信设备90具有壳体、 一个或多个输入控制—— 如键盘92和姆指轮94一一以及输出设备,显示器96,优选地为全图形Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)LCD。可替换地使用其它类型的输出设备。与图1一起参考图2,示意 性地示出处理设备,微处理器98,其耦合在键盘92、姆指轮94和显示 器96之间。微处理器98响应于用户对键盘92上按键和/或姆指轮94的动 作而控制显示器96的操作,以及移动通信设备90的整个操作。壳体可垂直延长,或可具有其它尺寸和形状(包括挖斗壳体结构)。 键盘可包括模式选择按键,或用于文本输入和电话输入之间切换的其 它硬件或软件。除了微处理器98,在图2中示意性地示出移动通信设备90的其它部分。这些包括通信系统(或收发机)100;近程通信子系统102;键盘92,姆指轮94和显示器96,以及包括一套辅助I/0设备106、串行端 口108、扬声器lll和麦克风112的其它输入/输出设备;还有存储器设 备,包括闪存116和随机存取存储器(RAM) 118;以及各种其它设备 子系统120。移动通信设备90优选地是具有语音和数据通信能力的双向 RF通信设备。此外,移动通信设备90优选地具有通过互联网与其它计 算机系统通信的能力。操作系统软件由微处理器98执行,优选储存在永久性存储器中, 如闪存116中,但也可存储在其它类型的存储器设备中,如只读存储器 (ROM)或相似的存储元件中。此外,系统软件、特定设备应用或其 部分,可临时载入易失性存储器中,如RAM118。移动通信设备接收 的通信信号也可存储在RAM 118中。除了其操作系统的功能外,微处理器98能操作JAVA虚拟机128, 并通过JAVA虚拟机操作软件应用130A-130N ,所有软件应用 130A-130N可储存在设备卯上的闪存116中。所属领域技术人员可以理 解,JAVA是平台无关语言,并且创建的JAVA虚拟机允许JAVA程序在 特定设备上运行。可由手持90使用的特定JAVA虚拟机是JAVA2平台微 型版本(J2ME)的一咅卩分,可通过www.sun,com从Sun Microsystems, Inc. 获得。可从许多来源获得关于JAVA的细节,包括http:〃java.sun.com, 在此引入其内容以作参考。控制基本设备操作的预定的一组应用,如 数据和语音通信130A和130B,可在制造期间安装在设备90上。此外, 可在制造期间安装个人信息管理器(PIM)应用130C。优选的,PIMSpecification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)
能组织和管理数据项,如电子邮件(e-mail)、日程事件、语音邮件、 约会、和任务项。优选的,PIM应用还能通过无线网络88发送和接收 数据项。优选的,PIM数据项通过无线网络88和设备用户的与主机系 统存储或关联的相应数据项无缝集成、同步和更新。其它制造厂安装 的应用可包括媒体引擎130D和JAVA用户结构(UI)对象130E,两者 都将在此后进一步讨论。
通信功能,包括数据和语音通信,通过通信子系统100来执行,以 及可能通过近程通信子系统102来执行。通信子系统100包括接收机 150、发射机152、以及一个或更多个天线154和156。此外,通信子系 统100还包括处理模块,如数字信号处理器(DSP) 158,以及本地振 荡器(LO) 160。通信子系统100的特定设计和实现取决于移动通信设 备90将在其中进行操作的通信网络。例如,移动通信设备90的通信子 系统100可设计成与Mobitex 、 DataTAC 或通用分组无线业务 (GPRS)移动数据通信网络进行操作,还可设计成与多种不同的语音 通信网络进行操作,如AMPS、 TDMA、 CDMA、 PCS、 GSM等。其 它类型的数据和语音网络,分离的和集成的,也可由移动通信设备90 来利用。
网络访问要求取决于通信系统的类型而变化。例如,在MobitexTM 和DataTACTM网络中,移动通信设备使用与每一个设备关联的唯一个 人身份号码或PIN在网络上注册。然而,在GPRS网络中,网络访问与 设备的订户或用户关联。因此,为了在GPRS网络上操作,GPRS设备 需要订户身份模块,通常称为SIM卡。
当要求的网络注册或激活过程完成时,移动通信设备90可通过通 信网络88发送和接收通信信号。由天线154从通信网络88接收的信号被 路由至接收机150,接收机150提供了信号放大、下变频、滤波、信道 选择等,并且可提供模数转换。接收信号的模数转换允许DSP 158执 行更复杂的通信功能,如解调和解码。以相似的方式,发送给网络88 的信号由DSP 158处理(例如,调制和编码),之后提供给发射机152 进行数模转换、上变频、滤波、放大并通过天线156发送给通信网络88 (或网络)。Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)除了处理通信信号,DSP 158提供了对接收机150和发射机152的 控制。例如,可通过DSP 158中实现的自动增益控制算法自适应地控 制施加到接收机150和发射机152中的通信信号的增益。在数据通信模式中,接收的信号,如文本消息或下载的网页,由 通信子系统100处理,并输入微处理器98。然后,接收的信号进一步由 微处理器98处理,以输出到显示器96,或备选地输出到一些其它辅助 1/0设备106。设备用户还可使用键盘92、姆指轮94和一些其它辅助I/0 设备106,如触摸板、摇臂开关、或其它类型的输入设备中的一个或更 多个,来组成数据项,如电子邮件消息。然后,所组成的数据项可通 过无线通信网络88经通信子系统100而发送。在语音通信模式中,除了接收的信号输出到扬声器lll以及要发 送的信号由麦克风112产生外,设备的整个操作基本与数据通信模式相 似。备选的语音或音频I/0子系统,如语音消息记录子系统,也可在设 备卯上实现。此外,显示器96还可在语音通信模式中使用,例如显示呼叫方的身份、语音呼叫的持续时间或其它语音呼叫相关信息。近程通信子系统102能实现移动通信设备90和其它接近的 (proximate)系统或设备之间的通信,接近的系统或设备不一定为相 似的设备。例如,近程通信子系统可包括红外设备和相关联的电路及 部件,或蓝牙TM通信模块,以提供与类似能力的系统和设备的通信。 设备90可具有电池121,用于为设备中的有源元件供电。 编译器86可包含在软件控制下操作的处理器,以接收输入源代码 文件,并将其解析(parse)为输出机器可读对象文件。如同此后进一 步所述,该编译器特别适合解析包含图形显示语言,如SVG,以及修 改的网络形式创建语言的源代码。网络形式创建语言可以是XForms: XForms版本1.0是2003年10月14日的万维网联盟(W3C)推荐,可从 www.w3.org获得,在此引入其内容以作参考。如同SVG, XForms是 XML的扩展。在操作概括中,内容提供商可使用图形显示语言和网络形式创建 语言来开发网络内容。每种语言的语句在源代码中单独识别。网络形 式创建语言可修改为包括用户输入的位置和尺寸的详细说明,该用户Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)输入由网络形式创建语言所定义。源代码可包括将图形元素与网络形 式创建语言的提交操作绑定的图形显示语言语句。另一语句可将图形 元素与网络形式创建语言的复位操作绑定。源代码可载入网络内容服务器84。设备90可通过无线通信网络88、中继服务器87和互联网82, 从网络内容服务器84请求此内容。当内容返回时,在中继87处截取并 重定向到编译器86。编译器将内容源代码编译成对象(二进制)文件 并将其返回到中继87,之后中继87通过无线通信网络88将其传给设备 卯。设备90的微处理器98使用在JAVA虚拟机128上运行的媒体引擎 130D在显示器96上呈现对象文件中发现的图形元素。对网络形式创建 语句进行解析,以提取从UI类中创建本地(native) UI对象所需的参 数。这些参数之后用于创建本地UI。之后,本地UI对象允许用户在各 个指定UI区域中输入并显示数据。当用户选择绑定到提交操作的图形 时,用户输入的数据可提交为特定(本地或远程)应用,如网络内容 服务器84 (经由网络88、中继87、和互联网82)上的应用。可通过图3A至3C的源代码示例更完全地理解该操作。此示例代码 含有SVG和XForms语句,XForms语句的前缀为"XForms:",从而认 为没有此前缀的其余语句是SVG语句。回到这些图,行l声明代码为 XML代码。行2指定SVG语句的文档类型声明(DTD)文件的位置。 行3设置可包含SVG图形元素的显示区域。行3还定义了有关的名字空 间(namespace)。具体的,为XForms扩展"pz"定义名字空间,为Xforms 自身定义名字空间,以及为SVG定义名字空间。行4至行24给出了定义 形式模型"forml"的XForms模型定义。更具体的,行7至11定义了从 用户收集的信息的结构。行12是关于当触发第一提交—— "formlSubmission"——时所提交内容的指令,行13规定了传输实例 (instance)数据和实例数据的目的地URL所使用的协议。行14和15 提供了当触发第二提交一一 "form 1 Submission" —一时的类似信息。 行17至20,同样以XForms,初始化每次提交所绑定的实例数据的提交。 行21至23以XForms定义了用户触发的动作,这里是复位以删除该形式 的任何信息。行25是SVG语句,其建立蓝色边界的空矩形。矩形的左上角设置Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)
于显示位置(80, 0),矩形宽度为100 (像素),高度为20 (像素)。行 26至30采用参考"CustomerName"以及描述性标志,艮口, "Enteryour name",为"forml"形式定义自由形式的XForms输入。在标准XForms 输入语句中,将建立标记的显示位置以及创建并定位相关文本输入框 留给了网络浏览器。然而,标准形式的自由形式输入语句由包含4个
"pz"参数的行27修改。这些pz参数在显示位置定义矩形,并且可注 意到,此矩形反映出行25处的SVG语句所定义的内容。
行31使用SVG语句在显示器上放置词语"Description",行32使用 另一SVG语句在该词语旁放置矩形。行33至35定义了关于参考
"Description"的、针对"forml"形式的XForms用户输入文本区域。 Xforms形式的标准文本区域语句通过行33中包含的四个"pz"参数来 修改,这些参数反映出行32处以SVG创建的矩形的参数。
行36至37建立词语"Favourite Ice Cream Flavour:"的显示和该文 本旁的矩形。行38至55定义XForms选择菜单,以允许用户选择四个项 目中的一个。每个选择的值属性建立了选择项目时所存储的值。再次,
"pz"参数反映出行37处以SVG创建的矩形的参数。
行56至61将行17和18的"formlSubmit" XForms操作绑定到SVG 图形,即含有词语"Submitl"的无边界有色矩形。相似的,行62至67 将行19和20的"formlSubmit2" XForms操作绑定到SVG图形,即含有 词语"Submit2"的无边界有色矩形。同样相似的,行68至73将行21 和23的"form 1 Reset "XForms操作绑定到SVG图形,即含有词语"Reset"
的无边界有色矩形。
参考图l,图3A至3C的源代码可储存在服务器84上。如果手持设 备90请求此源代码,则此源代码首先由编译器86编译。参考图2,处理 器98然后通过在JAVA虚拟机128上运行的媒体引擎130D来运行编译 后的代码。当媒体引擎遇到建立图形的SVG目标代码时,该引擎直接 应用代码以在显示器96上呈现图形。当引擎遇到能使用户进行输入的 修改的XForms代码时,该引擎从该代码中提取参数,并利用这些参数 建立本地UI对象。例如,当引擎遇到与行26至30的源代码相对应的目 标代码时,该引擎可提取四个pz参数、"CustomerName"参考和"EnterSpecification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)your name:"标志,并利用这些参数建立本地UI对象。之后,本地UI 对象使用这些参数以使用户能够进行输入。因此,按照此示例,本地 UI对象控制词语"Enter your name:"以及由四个pz参数所定义的文本 框的显示。适于手持设备90的本地UI对象使得能够通过键盘92、姆指 轮94和任何辅助输入设备106向此框输入文本,并存储在参考 "CustomerName"下输入的文本。相似的,建立本地UI对象以显示用 户接口,并允许输入和存储源代码行33至35的文本框的输入值以及源 代码行38至55的选择菜单。在这点上,应注意到,通过选择"pz"参 数,使得用户输入区域与SVG图形元素同扩展(co-extensive)或包含 在SVG图形元素中,SVG可用于可视地定义这些用户输入区域,如区 域周长和填充颜色的性质。SVG还可用于定义这些用户输入区域的动 画(例如,闪烁的区域)。通过将SVG图形与XForms提交操作绑定,用户可通过选择(例如, 点击)SVG "submit"图形来实现提交操作。相似的,通过将SVG图 形与Xforms复位操作绑定,用户可通过选择(例如,点击)SVG"reset" 图形来实现复位。因此,引起不需要建立本地UI对象来提供此功能。所属技术领域技术人员应理解,媒体引擎从目标代码创建树结 构,然后遍历树以执行由目标代码建立的指令。该引擎按需要遍历树, 以响应于有效的动画和用户动作而刷新显示。图4示出媒体引擎遍历由目标代码建立的树之后的手持设备的显 示器96。图形元素210、212和214是由源代码行25、32和37分别定义的。 "Submitl"图形216由源代码行56至61定义,"Submit2"图形218由行 62至67定义,"Reset"图形220由行68至73定义。微处理器98可被任何合适的控制器代替,如,现场可编程门阵列 (FPGA)。虽然软件应用130A至130N——包括媒体引擎130D和从类130E实 例化(instantiate)的本地UI对象——被描述为在JAVA虚拟机128上运 行时,然而利用合适的调整,这些软件应用可在另一平台上运行,如 Microsoft Windowstm。备选地,媒体引擎可以是设备的操作系统的一 部分。虽然图形显示语言被描述为SVG,然而同样可使用另外的图形Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)显示语言。虽然网络形式创建语言被描述为XForms,然而有可能使用 另外的网络形式创建语言,如超文本标记语言(HTML)形式,即1999 年12月24日的HTML4.01W3C推荐的一部分。手持设备90的本地UI对象是被开发用于与手持设备的特定用户 接口控制(例如,姆指轮)进行交互的对象。这些对象在示范性实施 例中被描述为JAVA对象,其中手持设备在JAVA虚拟机上运行。然而, 在不同平台上操作的设备中,这些本地UI对象将有所不同,从而使得 它们适于在不同的平台上运行。如实施例所描述的,显而易见的是,本发明的教导可应用于有线 设备而不是无线设备。此外,例如,该设备可以是个人计算机或笔记 本电脑,而不是手持设备。依据设备的能力,该设备有可能从网络内 容服务器84接受(并运行)源代码本身,而不是源代码的编译形式。 在此情况下,编译器86是多余的。其它修改对于所属领域技术人员而言是显而易见的,因而本发明 由权利要求限定。
权利要求
1. 一种设备操作方法,包括步骤 接收指令集;根据所述指令集中的图形指令,在所述设备的显示器上呈现图 形,所述图形指令根据图形显示语言;从所述指令集中的其它指令提取参数,所述其它指令包括根据网 络形式创建语言的指令;以及利用所述参数创建本地用户接口对象。
2. 根据权利要求l所述的方法,其中,所述参数包括提供所述显 示器上用户输入区域的位置和尺寸信息的参数。
3. 根据权利要求1或2所述的方法,其中,所述图形显示语言的 图形元素绑定到所述网络形式创建语言的操作。
4. 根据权利要求3所述的方法,其中,所述操作是提交操作或复 位操作。
5. 根据权利要求1至4的任一所述的方法,还包括利用所述本地用户接口对象来解析用户输入控制。
6. 根据权利要求5所述的方法,还包括使得能够利用所述本地 用户接口对象来提交用户输入。
7. 根据权利要求2所述的方法,其中,所述图形指令定义了所述 显示器的第一区域处的图形,并且其中,所述参数提供所述显示器上 用户输入区域的位置和尺寸信息,以定义所述显示器的第二区域,所 述第二区域与第一区域同扩展或包括在所述第一区域中。
8. 根据权利要求1至7的任一所述的方法,其中,所述指令集包括标识符,根据所述网络形式创建语言来标识所述指令集的部分。
9. 根据权利要求1至8的任一所述的方法,其中,所述图形显示 语言和所述网络形式创建语言是可扩展标记语言(XML)。
10. 根据权利要求1至8的任一所述的方法,其中,所述图形显示 语言是可缩放矢量图形(SVG)。
11. 根据权利要求10所述的方法,其中,所述网络形式创建语言Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)是XForms 。
12. 根据权利要求ll所述的方法,其中,所述本地用户接口对象 是JAVA对象。
13. 根据权利要求ll所述的方法,其中,所述SVG图形元素被绑 定到XForms提交操作。
14. 一种设备,包括至少一个用户输入控制;保持指令集的存储器,所述指令集包括用于在所述显示器上呈现 图形的图形指令以及其它指令,所述图形指令根据图形显示语言,所 述其他指令包括根据网络形式创建语言的指令,所述其它指令包括参数;控制器,根据所述指令集而操作,从而(i)在所述显示器上呈现 图形,(ii)从所述指令集中的所述其它指令提取参数,以及(iii)利 用所述参数创建本地用户接口对象。
15. 根据权利要求14所述的设备,其中,所述本地用户接口对象 使得能够利用所述至少一个用户输入控制来实现用户输入。
16. 根据权利要求14或15所述的设备,其中,所述控制器包括JAVA 虚拟机,并且其中,所述本地用户接口对象是JAVA对象。
17. 根据权利要求14至16的任一所述的设备,其中,所述图形指 令包括将图形元素绑定到所述其它指令的提交操作的指令。
18. 根据权利要求14至17的任一所述的设备,其中,所述参数包 括设置用户输入区域的位置和尺寸的参数。
19. 根据权利要求14至18的任一所述的设备,其中,所述图形显 示语言是可縮放矢量图形,而且所述网络形式创建语言是XForms。
20. 根据权利要求14至19的任一所述的设备,还包括收发机, 用于接收所述指令集,并响应于提交操作而发送数据。
21. 根据权利要求14至20的任一所述的设备,其中,所述设备包 括移动通信设备。
22. —种包括多个如权利要求21所述的移动通信设备的无线通信Specification in Chinese(Y/R: 93422-289, RIM Ref: 30462-CN-PCT, O/R: PA084028)系统。
23. —种计算机程序产品,用于在计算设备的显示器上呈现图形, 所述计算机程序产品包括计算机可读介质,所述计算机可读介质保持 可由所述计算设备的处理器执行的指令集,所述指令集用于实现如权 利要求1至13的任一所述的方法。
全文摘要
指令集包括以图形显示语言(如,SVG)编写的指令和以网络形式创建语言(如,XForms)编写的指令。依照根据图形显示语言的指令,在设备的显示器上呈现图形。从根据网络形式创建语言的指令中提取参数,并且将上述参数利用于创建本地用户接口对象。网络形式创建语言可修改为包括指示用户输入区域的尺寸和位置的参数,从而使得上述参数还可用于创建本地用户接口对象。本地用户接口对象可用于允许用户通过设备的用户控制来输入信息。图形显示元素的图形元素可绑定到网络形式创建语言的提交操作以允许提交输入的信息。
文档编号G06F9/44GK101313274SQ200680043446
公开日2008年11月26日 申请日期2006年10月13日 优先权日2005年10月14日
发明者劳拉·多克托罗娃, 斯图尔特·加鲁德, 斯科特·海曼, 米克海尔·弗米切夫, 约戴维·莱恩, 约翰·海曼, 肯尼思·瓦里斯 申请人:捷讯研究有限公司