专利名称:把xml表述对象转换成oma dm树结构表述对象的系统和方法
背景技术:
设备管理是一种提供移动设备(例如,基于笔和键盘的便携计算机、无线电话、笔图形输入板、笔记本、膝上型计算机、敏感度设备、智能设备、嵌入式设备和交通工具系统,不排除任何其他的移动设备)的用户化、维修和个人化的技术。设备管理也涉及;供给移动设备,或为该移动设备提供这些参数,以允许该移动设备的各项功能进行操作。供给移动设备会既困难、又耗时。随着移动设备的性能继续提高,需要供给的参数数量也增加了。
以前,根据由WAP讨论会作为实际标准协议而制定的“无线应用协议”(WAP),来对移动设备的供给实行标准化。WAP可以被描述为“可视交互式计算机电话语音响应系统”。最近,关于供给的标准化已转变成“开放移动同盟”(OMA)及其“设备管理”(DM)协议。但是,OMA DM的结构和操作不同于WAP的结构和操作。
发明概述本发明针对提供一种系统和方法,用于将WAP结构内的WAP对象自动转换成OMA DM结构内的OMA DM对象。
WAP可以被描述为“可视交互式计算机电话语音响应系统”。WAP支持大多数无线网络,并且,WAP得到大多数操作系统的支持。“WAP客户机供给”(WAP CP)定义一种标准方法,用于使用XML来引导移动设备的连通性设置和应用协议访问参数。这些被管理的参数可以根据卖主特定应用而扩展到更加广泛的范围,同时遵守该WAP CP XML DTD(文档类型定义)。
对比而言,“开放移动同盟(OMA)设备管理(DM)组”将WAP CP定义为“引导移动设备机制”,并将OMA DM协议定义为“使用不同的XML DTD的连续供给机制”。相应地,OMA DM结构也经由XML来启用,而OMA DM被委托在具有内部节点和叶节点的树结构中加以组织。
所以,本发明定义一种自动算法,用于将WAP CP XML表述的卖主特定参数转换成OMA DM下的节点。通过这种转换,OMA DM服务器和客户机可更容易地管理这些被引导的WAP CP卖主特定参数。
附图简述
图1和图2展示了可以根据本发明的示例实施例来加以使用的示例计算设备;图3是功能框图,一般展示了一种移动设备管理供给系统;图4展示了为卖主特定参数而提供的WAP CP XML的示例部分;图5展示了与图4中的WAP CP XML相对应的示例的OMA DM树结构;以及,图6展示了根据本发明的各个方面的示例过程的操作流程图,该示例过程用于将WAP CP XML对象转换成OMA DM树结构对象。
较佳实施例的详细说明现在将在下文中参照附图来更加完全地描述本发明,这些附图构成其一部分,它们用举例说明的方法表现了用于实践本发明的特殊的示例实施例。但是,本发明可以用许多不同的形式来加以具体表现,它不应该被解释为局限于这里所陈述的这些实施例;相反,提供这些实施例,以便该揭示说明将会详尽、完整,并且将会把本发明的范围完全传达给精通该技术领域的人。在其他事物之中,本发明可以被具体表现为各种方法或设备。相应地,本发明可采取完全的硬件实施例、完全的软件实施例或将软件方面和硬件方面结合起来的实施例的形式。所以,以下的详细说明不是起限制的作用。
说明性操作环境参照图1,用于实现本发明的一个示例系统包括计算设备(例如,计算设备100)。计算设备可以被配置成客户机、服务器、移动设备或根据“开放移动同盟”(OMA)指导方针来提供客户机供给的任何其他的计算设备。在非常基本的配置中,计算设备100通常包括至少一个处理单元102和系统存储器104。根据计算设备的确切的配置和类型,系统存储器104可以是易失的(例如,RAM)、非易失的(例如,ROM、闪存等)或这两者的某种组合。系统存储器104通常包括操作系统105、一个或多个应用程序106,并可能包括程序数据107。在一个实施例中,应用程序106包括WAP至OMA DM转换应用程序120。在图1中,通过虚线108内的那些部件,展示了这种基本配置。
计算设备100可能具有额外的特点或功能性。例如,计算设备100也可能包括诸如磁盘、光盘或磁带等额外的数据存储设备(可移动的和/或不可移动的)。在图1中,通过可移动存储器109和不可移动的存储器110,展示了这种额外的存储器。计算机存储介质可包括易失和非易失的可移动和不可移动的介质,该介质用关于信息(例如,计算机可读指令、数据结构、程序模块或其他数据)存储的任何方法或技术来加以实现。系统存储器104、可移动存储器109和不可移动的存储器110都是计算机存储介质的例子。计算机存储介质包括(但不局限于)RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字通用光盘(DVD)或其他光学存储器、盒式磁带、磁带、磁盘存储器或其他磁性存储设备、或可以被用来存储所需信息并可以由计算设备100来存取的任何其他的介质。任何这类计算机存储介质都可能是设备100的一部分。计算设备100也可具有输入设备112(例如,键盘、鼠标、笔、语音输入设备、接触式输入设备等)。诸如显示器、扬声器、打印机等输出设备114也可被包括在内。
计算设备100也包含允许该设备与其他计算设备118进行通信(例如,经过网络)的通信连接116。通信连接116是通信介质的一个例子。通信介质通常可由计算机可读指令、数据结构、程序模块或调制数据信号(例如,载波或其他传送机制)中的其他数据来具体表现,它包括任何信息传递介质。术语“调制数据信号”意味着一种信号,其一个或多个特征按为该信号中的信息编码这样一种方式来加以设置或更改。举例来讲(不作限制),通信介质包括有线介质(例如,有线网络或直接用线连接)和无线介质(例如,声音、RF、红外线和其他无线介质)。如这里所使用的术语“计算机可读介质”包括存储介质和通信介质。
图2表现了关于实质上用于本发明中的移动设备的选择性操作环境。在本发明的一个实施例中,移动设备200被整体化为计算设备(例如,综合的个人数字助理(PDA)和无线电话)。
在这个实施例中,移动设备200具有处理器260、存储器262、显示器228和扩充键盘232。存储器262一般包括易失存储器(例如,RAM)和非易失存储器(例如,ROM、闪存或类似物)。移动设备200包括操作系统264,该操作系统驻留在存储器262中并在处理器260上执行。扩充键盘232可是按钮数字拨号基座(例如,在典型的电话上)、多键键盘(例如,常规键盘),或者,可能不被包括在不同于触屏或针笔的该移动设备内。显示器228可能是液晶显示器或通常在移动计算设备中使用的任何其他类型的显示器。显示器228可能是触敏的,并且随后也会用作输入设备。
一个或多个应用程序266被载入存储器262,并运行于操作系统264上。应用程序的例子包括电话拨号器程序、电子邮件程序、调度程序、PIM(个人信息管理)程序、文字处理程序、电子表格程序、因特网浏览器程序等。在一个实施例中,应用程序266包括WAP至OMA DM转换应用程序280。移动设备200也包括存储器262内的非易失存储器268。可以使用非易失存储器268来存储持久信息,如果移动设备200掉电,则该持久信息不应该丢失。应用程序266可以使用存储器268中的信息并将信息存储在其中,例如电子邮件应用程序所使用的电子邮件或其他消息、PIM所使用的联系信息、调度程序所使用的约会信息、文字处理应用程序所使用的文档、以及类似的信息。同步应用程序也驻留在该移动设备上,并被编程为与驻留在主计算机上的对应的同步应用程序相互作用,以便使存储器268中所存储的信息与该主计算机处所存储的对应的信息同步。
移动设备200具有电源270,该电源可以一节或多节电池来加以实现。电源270可进一步包括外部电源(例如,AC适配器或为这些电池补充电力或再充电的供电托架)。
也利用两种类型的外部通知机构(LED 240和音频接口274)来表现移动设备200。这些设备可能被直接耦合到电源270,以便当被激活时,即使处理器260和其他部件可能关闭以保存电池电力,它们也在该通知机构所规定的期限内保持运行。LED 240可编程为保持无限期的运行,直到该用户采取行动来指出该设备的通电状态为止。使用音频接口274来为用户提供可听信号并从用户那里接收可听信号。例如,音频接口274可耦合到用于提供可听输出的扬声器,并可耦合到用于接收可听输入的话筒,以促进电话交谈。
移动设备200也包括执行传送和接收射频通信的功能的无线电272。无线电272经由通信载波或服务供应者,来促进移动设备200与外界之间的无线连通性。在操作系统264的控制下,实行到和来自无线电272的传输。换言之,无线电272所接收的通信可以经由操作系统264而被传播到应用程序266,反之亦然。
无线电272允许移动设备200与其他计算设备进行通信(例如,经由网络)。无线电272是通信介质的一个例子。通信介质通常可由计算机可读指令、数据结构、程序模块或调制数据信号(例如,载波或其他传送机制)中的其他数据来具体表现,它包括任何信息传递介质。术语“调制数据信号”意味着一种信号,其一个或多个特征按为该信号中的信息编码这样一种方式来加以设置或更改。举例来讲(不作限制),通信介质包括有线介质(例如,有线网络或直接有线连接)和无线介质(例如,声音、RF、红外线和其他无线介质)。如这里所使用的术语“计算机可读介质”包括存储介质和通信介质。
WAP-OMA DM转换算法本发明一般针对将WAP(无线应用协议)CP(客户机供给)XML(可扩展标记语言)对象转换成OMA(开放移动同盟)DM(设备管理)对象。如这里所使用的,“对象”指的是参数、标签、元素、属性、内容、内部节点、叶节点以及与XML和有关OMA DM的该树结构相关联的其他结构。
图3是功能框图,一般展示了根据本发明的各个方面的移动设备管理系统300。服务器310、移动计算设备330和移动计算设备320是计算设备(例如,以上结合图1和图2而描述的那些计算设备)。服务器310被配置成运行设备管理应用程序312。设备管理应用程序312提供涉及关于移动设备的配置设置和参数(例如,与移动计算设备320和移动计算设备330关联的连通性设置和应用参数)的数据和操作。数据存储器316被配置成存储这些配置参数和设置。这些参数和设置可以经广域网(WAN)/局域网(LAN)340或蜂窝寻呼机/网络上被传送到这些移动计算设备。WAN的一个例子是通过许多网关、路由器、交换器、网络集线器和类似物来连接数百万台计算机的因特网。LAN的例子是被用来连接一间办公室内的各台计算机的网络。WAN可以连接多个LAN。网络340和350也可以被直接连接。
最初,在引导时,移动设备320和330并不包括通过各种协议(例如,WAP协议)来联系服务或内容所要求的这些参数或设置。这些非引导的移动设备无法单独联系任何种类的数据服务或通过WAP来联系。这些移动设备需要利用该连通性信息和设置来加以装载或引导。驻留在移动设备320或移动设备330上的供给应用程序(例如,322或332)被配置成与服务器310上的设备管理应用程序312相互作用,以管理与该移动设备关联的这些参数和设置的供给。最初为该移动设备供给的功能性可包括网络传送连通性信息、用于更改默认安全模型的设置、应用程序相关设置和其他设备设置。
引导时,服务器310就利用供给信息来引导这些移动设备,该供给信息定义与该移动设备关联的连通性参数和设置。然后,应用程序322、332和设备管理应用程序312可以使用几个客户机-服务器协议中的任何一个协议来进行通信。
蜂窝/寻呼机网络350是负责将消息传递到无线设备并从无线设备接收消息的网络。蜂窝/寻呼机网络350可以包括无线部件和有线部件。例如,蜂窝/寻呼机网络可包括与有线电话网连接的蜂窝塔。通常,该蜂窝塔将通信传送到移动设备(例如,手机、笔记本、袖珍PCs、长途通信链路和类似物),并从这些移动设备那里传送通信。服务器310也可以经由有线或无线传送而在本地与移动设备连接。
网关360在蜂窝/寻呼机网络350与WAN/LAN 340之间发送消息。例如,服务器310可以通过网关360来发送寻址到移动计算设备320的数据。网关360提供了一种用于将消息从WAN/LAN 340传送到蜂窝/寻呼机网络350的方法。相反,具有连接到蜂窝网络的设备的用户可能正在访问Web。网关360允许在WAN/LAN 340与蜂窝/寻呼机网络350之间传送超链接文本协议(HTTP)消息。可以在该系统(未示出)内使用更多的网关。
图4展示了根据本发明的、为卖主特定参数而提供的WAP CP XML的示例部分。WAP CP XML部分500包括标签、元素、属性和内容。
术语“元素”指的是XML文档的基本单元。该元素可能包含属性、其他元素、内容、以及关于XML文档的其他构件块。
术语“标签”指的是被插入描绘XML文档内的元素的文档中的命令。每个元素可以具有不多于两个标签开始标签和结束标签。可以具有空标签(没有内容),在这种情况下,允许使用一个标签。
这些标签之间的内容被认为是该元素的“子段”(或后裔)。因此,被嵌入该元素的内容中的其他元素被称作该元素的“子元素”或“子节点”。被直接嵌入该元素的内容中的文本被认为是该元素的“子文本节点”。这些子元素和元素内的该文本共同构成那个元素的“内容”。
术语“属性”指的是被设置为特定值并与该元素关联的额外的性质。元素可能具有与它们关联的任意数量的属性设置(包括无)。使用属性来将额外的信息与该元素的内容中不包括的元素联系起来。
在这个例子中,WAP CP XML部分500包括如标签410所指出的WAP供给元素。亲体特征元素被包括在如标签420所指出的类型“TAPI”的WAP供给元素中。TAPI是“电话应用程序编程接口”的简称,它是用于将计算设备连接到电话服务的API。该标准支持单独的计算设备所执行的连接,以及为许多设备提供服务的LAN连接。在每种连接类型内,TAPI定义关于简单呼叫控制的标准和用于处理呼叫内容的标准。
该TAPI元素包括其内容内的许多参数(参数元素),这些参数用于控制计算设备的电话技术方面。例如,参数430是用于跨越蜂窝网络来启用广播的参数,并且,示出它的值被设置为“1”。
子元素被包括在如标签440所指出的类型“Busy”的TAPI元素中。另一个子元素被包括在如标签450所指出的类型“Voice”的Busy元素中。该voice(语音)元素包括与该计算设备的各个语音方面有关的许多其他的参数(例如,460)。所以,关于这些卖主特定参数的WAP CP XML是有些分等级的——具有其他元素内所包括的子元素、连同用于控制该计算设备的电话技术(在这个例子中)的各种参数。其他实施例可包括除所示的这些电话参数以外的其他卖主特定参数和设置。
图5展示了根据本发明的、与图4中的WAP CP XML相对应的示例的OMA DM树结构。OMA DM树500包括与从图4所示的WAP CP XML转换而来的标签和元素相对应的对象和节点。类似于图4,其他实施例可包括除所示的这些电话参数以外的其他卖主特定参数和设置。
OMA DM树500从内部亲体节点510形成,该内部亲体节点展示以下的节点对应于卖主特定参数和设置。内部亲体节点520指出跟随内部节点520的节点与计算设备的TAPI或电话参数(类似于图4中的TAPI元素)有关。如所展示的,TAPI 520包括关于与计算设备的各个电话技术方面关联的各种参数的叶节点(例如,叶节点530)。通过将图4中的TAPI标签内所包括的参数元素转换成OMA DM树结构,来生成这些叶节点。
TAPI 520也可包括其他内部节点(例如,内部节点540)。内部节点540对应于图4中的busy元素(该TAPI元素的子元素)。此外,也生成与图4中的voice元素(该busy元素的子元素)相对应的内部节点550。Voice 550包括与计算设备的各个语音方面关联的叶节点(例如,560)。图5中的这个例子展示了由本发明的算法所实行的从WAP CP XML到OMA DM的转换的结果。以下根据图6来更加充分地描述该转换过程。
图6展示了根据本发明的示例过程的操作流程图,该示例过程用于将WAPCP XML对象转换成OMA DM树结构对象。过程600始于开始方框——在那里,WAP CP XML的一个或多个部分可用于向OMA DM树结构的转换。继续在方框610处进行处理。
在方框610处,WAP CP XML中的顶层特征元素(例如,图4中的420)被转换成OMA DM树结构下的内部亲体节点(例如,图5中的520)。该内部亲体节点可能在任何合理的预定义的OMA DM树内部节点下。例如,该内部亲体节点可能被置于一个节点(例如,图5中的510)下,该节点指出与跟随该内部亲体节点的参数相对应的卖主。一旦该顶层特征元素被转换成内部亲体节点,就继续在方框620处进行处理。
在方框620处,WAP CP XML中的其余的特征元素(例如,图4中的440)被转换成OMA DM树结构下的内部节点(例如,图5中的540)。在一个实施例中,OMA DM结构下的这些内部节点的层级保持与WAP CP XML中的这些特征元素的层级相同。继续在方框630处进行处理。
在方框630处,WAP CP XML中的参数元素(例如,图4中的430)被转换成OMA DM树结构下的叶节点(例如,图5中的530)。在一个实施例中,为每个叶节点分配的名称对应于其对应的参数元素的名称属性。例如,当该对应的参数元素的名称属性是“Voicemail1”时,叶节点的名称是“Voicemail1”。在另外一个实施例中,该叶节点的值对应于该参数元素的值属性。例如,当该对应的参数元素的值等于“+14257059982”时,该叶节点的值是“+14257059982”。在一个实施例中,WAP CP XML中的特殊的特征元素下的所有这些参数元素被转换为与该特征元素相对应的OMA DM下的对应的内部节点的子段。例如,在图4中,具有名称属性“CountryCode”的参数元素是该TAPI特征元素的子段。对应地,在图5中,被命名为“CountryCode”的叶节点也是该TAPI内部节点的子段。一旦这些参数元素被转换成叶节点,处理就前进到结束方框——在那里,过程600结束。
以上的规范、例子和数据完整地描述了本发明的合成物的制造和使用。由于可以在不脱离本发明的精神和范围的前提下制定本发明的许多实施例,因此,本发明驻留在以下所附加的权利要求书中。
权利要求
1.一种用于将WAP(无线应用协议)CP(客户机供给)XML(可扩展标记语言)转换成OMA(开放移动同盟)DM(设备管理)树结构的计算机执行方法,其特征在于包括当该WAP CP XML的元素对应于该WAP CP XML内的特征元素时,将该元素转换成该OMA DM树结构内的内部节点;以及,当该元素对应于该WAP CP XML内的参数元素时,将该元素转换成该OMA DM树结构内的叶节点。
2.权利要求1的计算机执行方法,其特征在于其中,将该元素转换成该内部节点进一步包括当该元素对应于该WAP CP XML内的最高特征元素时,将该元素转换成内部亲体节点。
3.权利要求1的计算机执行方法,其特征在于其中,当该元素是子元素时,该内部节点是子节点。
4.权利要求1的计算机执行方法,其特征在于其中,当该元素是子元素时,该叶节点是子节点。
5.权利要求1的计算机执行方法,其特征在于其中,将该元素转换成该叶节点进一步包括根据与该参数元素关联的名称属性,来命名该叶节点。
6.权利要求1的计算机执行方法,其特征在于其中,将该元素转换成该内部节点进一步包括根据与该特征元素关联的类型属性,来命名该内部节点。
7.权利要求1的计算机执行方法,其特征在于其中,该内部节点是内部亲体节点的子段,该内部亲体节点指出;该内部节点对应于卖主特定参数。
8.权利要求1的计算机执行方法,其特征在于其中,该叶节点是内部亲体节点的子段,该内部亲体节点指出该叶节点对应于卖主特定参数。
9.一种用于将WAP(无线应用协议)CP(客户机供给)XML(可扩展标记语言)转换成OMA(开放移动同盟)DM(设备管理)树结构的系统,其特征在于包括服务器,它包括被耦合到网络的网络通信设备以及被配置成存储与该移动设备关联的参数的数据存储器;以及,设备管理应用程序,它被配置成执行各种动作,包括当该WAP CP XML的元素对应于该WAP CP XML内的特征元素时,将该元素转换成该OMA DM树结构内的内部节点;以及,当该元素对应于该WAP CP XML内的参数元素时,将该元素转换成该OMA DM树结构内的叶节点。
10.权利要求9的系统,其特征在于其中,将该元素转换成该内部节点进一步包括当该元素对应于该WAP CP XML内的最高特征元素时,将该元素转换成内部亲体节点。
11.权利要求9的系统,其特征在于其中,将该元素转换成该内部节点进一步包括根据与该特征元素关联的类型属性,来命名该内部节点。
12.权利要求9的系统,其特征在于其中,将该元素转换成该叶节点进一步包括根据与该参数元素关联的名称属性,来命名该叶节点。
13.权利要求9的系统,其特征在于其中,当该元素是子元素时,该内部节点是子节点。
14.权利要求9的系统,其特征在于其中,当该元素是子元素时,该叶节点是子节点。
15.权利要求9的系统,其特征在于其中,该内部节点是内部亲体节点的子段,该内部亲体节点指出该内部节点对应于卖主特定参数。
16.权利要求9的系统,其特征在于其中,该叶节点是内部亲体节点的子段,该内部亲体节点指出该叶节点对应于卖主特定参数。
17.一种具有计算机可执行指令的计算机可读介质,这些计算机可执行指令用于将WAP(无线应用协议)CP(客户机供给)XML(可扩展标记语言)转换成OMA(开放移动同盟)DM(设备管理)树结构,其特征在于这些指令包括当该WAP CP XML的卖主特定元素对应于该WAP CP XML内的特征元素时,将该卖主特定元素转换成该0MA DM树结构内的内部节点;以及,当该卖主特定元素对应于该WAP CP XML内的参数元素时,将该卖主特定元素转换成该OMA DM树结构内的叶节点。
18.权利要求17的计算机可读介质,其特征在于其中,将该元素转换成该内部节点进一步包括当该元素对应于该WAP CP XML内的最高特征元素时,将该元素转换成内部亲体节点。
19.权利要求17的计算机可读介质,其特征在于其中,将该元素转换成该内部节点进一步包括根据与该特征元素关联的类型属性,来命名该内部节点。
20.权利要求17的计算机可读介质,其特征在于其中,将该元素转换成该叶节点进一步包括根据与该参数元素关联的名称属性,来命名该叶节点。
21.权利要求17的计算机可读介质,其特征在于其中,当该元素是子元素时,该内部节点是子节点。
22.权利要求17的计算机可读介质,其特征在于其中,当该元素是子元素时,该叶节点是子节点。
23.权利要求17的计算机可读介质,其特征在于其中,内部亲体节点被包括在该OMA DM树结构中,该OMA DM树结构指出该内部节点对应于卖主特定元素。
24.权利要求17的计算机可读介质,其特征在于其中,内部亲体节点被包括在该OMA DM树结构中,该OMA DM树结构指出该叶节点对应于卖主特定元素。
全文摘要
一种方法和系统将“无线因特网协议(WAP)客户机供给(CP)”对象自动转换成“开放移动同盟(OMA)设备管理(DM)”对象。WAP CP根据XML(可扩展标记语言)来加以启用,并且定义一种标准方法,用于使用XML来引导移动设备的连通性设置和应用协议访问参数。OMA DM也根据XML来加以启用,并提供类似的功能性,但根据委托的树结构来加以组织。本发明将卖主特定参数从WAP CP自动转换成OMA DM,以便OMA DM服务器和客户机可更容易地管理这些卖主特定参数。
文档编号G06F19/00GK1606308SQ200410079128
公开日2005年4月13日 申请日期2004年9月8日 优先权日2003年9月8日
发明者朱于航 申请人:微软公司