可扩展标记语言文档管理请求方法和管理方法及相关设备的制作方法

文档序号:6611884阅读:122来源:国知局
专利名称:可扩展标记语言文档管理请求方法和管理方法及相关设备的制作方法
技术领域
本发明涉及信息管理技术领域,具体涉及可扩展标记语言(XML: extensible Markup Language )文档管理请求方法和相应的XML文档管理方法 以及XML文档管理客户端和XML文档管理服务器。
背景技术
XML是一套定义语义标记的规则,所定义的标记将文档分成许多部件并 对这些部件加以标识,符合XML规则的文档即为XML文档。XML文档具有 易于阅读和编写的优点,是网络应用中描述数据和交换数据的理想格式。
XML文档管理客户端(XDMC: XML Document Management Client)可 使用文档管理请求,例如XML配置访问协议(XCAP: XML Configuration Access Protocol)或超文本传输协议(HTTP: Hypertext Transfer Protocol)中 的"GET"、 "PUT"、 "DELETE"等方法,对XML文档管理服务器(XDMS: XML Document Management Server)上以XML才各式存4诸的应用配置数据进行 读、写和修改、删除等操作。
在实际应用中,有时用户还需要对XML文档中的节点作"移动"操作。 例如,XDMS上以XML文档的形式存储了用户的联系人列表,列表中的联系 人分为"同事"、"朋友"、"家人,,等类;当用户对某个联系人进行重新分类时, 如,将某个本来属于"同事"类的联系人重新分入"朋友"类,就需要对该联 系人信息进行"移动"操作,从"同事,,类转移到"朋友"类中。目前,XDMC 采用组合^f吏用"PUT"和"DELETE"两个方法来完成移动才喿作,即,先通过 PUT消息将该联系人信息添加到"朋友"类,然后再通过DELETE消息将该 联系人信息从"同事"类中删除;当然,顺序也可以相反。
本发明的发明人在对现有技术的研究和实践过程中,发现目前执行移动操 作的方法具有如下缺点1、 XDMC需要依次向XDMS发送两条信令,使得 整个"移动"操作过程时延比较大;2、在现实情况下,若XDMS对第二条信 令接收失败或出错,则除了导致"移动"操作的失败,还会导致数据出现异常情况;例如,若失败的第二条信令是"增加",则XDMS上的原始凄t据会丢失, 若失败的第二条信令是"删除",则XDMS上会出现重复的数据;并且,无论 XDMC进行重复操作来完成"移动",或进行回滚来消除异常,都增加了 XDMC 的代价。

发明内容
本发明实施例提供一种能够简单可靠的执行移动操作的可扩展标记语言 文档管理请求方法,包括接收用户的节点移动指示;根据所述节点移动指示 生成节点移动请求,所述节点移动请求中包括需要被移动的节点的原位置和目 标位置;将所述节点移动请求发送给服务器。
以及相应的可扩展标记语言文档管理方法,包括接收客户端发送的文档 管理请求;确定所述文档管理请求为节点移动请求;从所述节点移动请求中获 取需要被移动的节点的原位置和目标位置;执行将所述需要被移动的节点从所 述原位置移动到所述目标位置的事务。
本发明实施例还提供一种可扩展标记语言文档管理客户端,包括用户操 作单元,用于接收用户的节点移动指示;请求生成单元,用于根据所述节点移 动指示生成节点移动请求,所述节点移动请求中包括需要^L移动的节点的原位 置和目标位置;请求发送单元,用于将所述节点移动请求发送给il良务器。
和一种可扩展标记语言文档管理服务器,包括请求接收单元,用于接收 客户端发送的文档管理请求;请求解析单元,用于确定所述文档管理请求为节 点移动请求;从所述节点移动请求中获取需要被移动的节点的原位置和目标位 置;请求处理单元,用于执行将所述需要被移动的节点从所述原位置移动到所 述目标位置的事务。
上述技术方案中采用客户端将需要被移动的节点的原位置和目标位置通 过一条节点移动请求发送给服务端,服务端在确定为节点移动请求时执行相应 的移动操作的方法;由于客户端只发送一条信令来进行移动梯:作,过程筒单, 时延小;并且,即便服务器对该信令接收失败或出错,也不会导致所保存的数 据出现异常情况,提高了数据操作的可靠性。


图l是本发明实施例的XML文档管理请求方法流程示意图; 图2是本发明实施例的XML文档管理方法流程示意图; 图3是本发明实施例的XML文档管理客户端的逻辑结构示意图; 图4是本发明实施例的XML文档管理服务器的逻辑结构示意图。
具体实施例方式
本发明实施例提供一种XML文档管理请求方法,客户端将需要^皮移动的 节点的原位置和目标位置通过一条节点移动请求发送给服务端,服务端在确定 为节点移动请求时执行相应的移动操作。本发明实施例还提供相应的XML文 档管理方法、XML文档管理客户端和XML文档管理服务器。以下分别进行详 细i兌明。
本发明实施例的XML文档管理请求方法,流程如图l所示,包括步骤 Al、接收用户的节点移动指示。
所称节点移动指示是指用户需要将某个节点>(人原位置移动到目标位置的 操作需求,XDMC可通过提供给用户的操作界面获取用户的节点移动指示。
A2、根据节点移动指示生成节点移动请求,生成的节点移动请求中包括 需要被移动的节点的原位置和目标位置。
所称需要被移动的节点的原位置和目标位置可以位于同 一 篇XML文档 中,也可以在不同的XML文档中。XDMC可根据与XDMS共同遵守的约定,采 用任何XDMS可理解的方式来构造节点移动请求,包括但不限于以下两种方 式
一、定义新的用于"移动"揭:作的方法。
可以参照现有XML文档管理请求,例如XCAP协议和HTTP协议中"GET"、 "PUT"、 "DELETE"等方法来定义新的用于"移动"操作的方法,使用新的 方法名,例如"MOVE"、 "MOVETO"等,来标识节点移动请求。需要被移 动的节点的原位置和目标位置可以放置在,例如,节点移动请求的请求行、某 个设定的消息头域或消息体中,具体携带方式本实施例不作限定,包括但不限 于
①将需要被移动的节点的目标位置放置在请求行的Request-URI中,原位
置放置在某个设定的消息头域,例如内容位置(Content-Location)头域中;或 者相反。
② 将需要^C移动的节点的目标位置放置在请求行的Request-URI中,原位 置放置在消息体中;或者相反。
③ 将需要被移动的节点的原位置和目标位置顺序放置在消息体中。
④ 将需要被移动的节点的原位置和目标位置放置在两个设定的消息头域中。
以"MOVE"为新方法名、目标位置放置于Request-URI、原位置》文置于 Content-Location头域的节点移动请求的 一个示例如下 MOVE
http:〃xcap.example.com/resource-lists/users/sip:bill@example.com/index/ ~~/resource-lists/list%5b@name=%22colleague%22%5d /entry0/05b@uri=%22sip:petri@example.com%22%5d HTTP/1.1
Host:xcap.example.com
Content-Location:http:〃xcap.example.com/resource-lists/users/sip:bill@ex ample.com/index/
~/resource-lists/list%5b@name=%22friends%22%5d /entry%5b@uri=0/o22sip:petri@example.com%22%5d
该节点移动请求表示的操作为,将同 一篇文档中某一个list下的entry节点 移动到另外一个list下。
二、使用已有的方法类型,定义消息头域的新的取值来标识"移动"操作。
例如,可选择HTTP协议中的"POST"方法,为某个"i更定的消息头域扩展 定义一个新的取值来标识"移动"#喿作。与方式一类似,需要^C移动的节点的 原位置和目标位置可以任意选择放置在节点移动请求的请求行、某个设定的消 息头域或消息体等处。
假设使用HTTPPOST方法、以内容类型(Content-Type)头域扩展定义的 新的取值"application/move-node+xml"来标识"移动,,操作、目标位置放置 于Request-URI、原位置》文置于消息体中的节点移动请求的一个示例如下
POST
http:〃xcap.example.com/resource-lists/users/sip:bill@example.com/index/ —/resource-lists/list%5b@name=%22colleague%22%5d /entry%5b@uri=%22sip:petri@example.com%22%5d HTTP/1.1
Content-Type:application/move-node+xml
Host:xcap.example.com
< xml version="1.0" encoding="UTF-8" > <original-location xmlns="com:huawei:xml:xdm:move-node ">http:〃xcap.example.com/resource-lists/users/sip:bill@example.com/index/ ~/resource-lists/list%5b@name=%22friends%22%5d /entry%5b@uri=0/o22sip:petri@example.comyo22yo5d</original-location> A3、将生成的节点移动请求发送给服务器。
XDMC可参照发送现有其他类型的文档管理请求的方式将节点移动请求 发送给XDMS。
通常XDMC会收到XDMS对文档管理请求的处理结果,例如成功或失败, XDMC可根据XDMS返回的处理结果通过操作界面反馈给用户,也可以在处理 失败时自动重新发起请求。
本发明实施例的XML文档管理方法,流程如图2所示,包括步骤 Bl、接收客户端发送的文档管理请求。 此步骤可参照现有文档管理请求的接收方式进行。 B2、确定收到的文档管理请求为节点移动请求。
XDMS可根据与XDMC共同遵守的约定,通过解析收到的文档管理请求, 来确定其类型。例如
一、 节点移动请求釆用新定义的方法来标识。
XDMS可根据文档管理请求的方法名确定所述文档管理请求为节点移动 请求。
二、 节点移动请求采用已有的方法类型中消息头域新定义的取值来标识。 XDMS可根据文档管理请求的方法名和设定的消息头域的取值确定所述
文档管理请求为节点移动请求。
B3、从收到的节点移动请求中获取需要被移动的节点的原位置和目标位置。
在确定收到的文档管理请求的类型为节点移动请求后,XDMS可根据与 XDMC共同遵守的约定,通过解析收到的节点移动请求获取需要被移动的节点 的原位置和目标位置。例如
从节点移动请求的请求行、设定的消息头域、消息体的任意一处中获取需 要移动的节点的原位置和目标位置;或者,
从节点移动请求的请求行、设定的消息头域、消息体的任意两处中分别获 取需要移动的节点的原位置和目标位置。
B4、执行将需要被移动的节点从原位置移动到目标位置的事务。
XDMS可设计新的"移动"事务执行机制来执行该事务。此外,基于现有 的"增加"和"删除,,事务执行机制,也可以将"移动,,事务的执行表现为 联合执行将需要被移动的节点从原位置删除的事务和将需要被移动的节点增 加到目标位置的事务;在Jf关合执行中,"增加,,和"删除,,事务的4丸行顺序可 根据需要任意设置。
通常XDMS会将文档管理请求的处理结果,例如成功或失败,返回给 XDMC。在本发明实施例情况下,即便XDMS没有成功接收到节点移动请求, 导致返回"移动,,操作失败,也不会造成XDMS上的数据异常。
上述方法实施例中采用客户端将需要被移动的节点的原位置和目标位置 通过一条节点移动请求发送给服务端,服务端在确定为节点移动请求时执行相 应的移动操作的方法;由于客户端只发送一条信令来进行移动操作,过程简单, 时延小;并且,即便服务器对该信令接收失败或出错,也不会导致所保存的数 据出现异常情况,提高了数据操作的可靠性。
下面对与上述方法实施例相应的XML文档管理客户端和XML文档管理服 务器进行详细说明。
本发明实施例的XML文档管理客户端的逻辑结构示意图如图3所示,该客 户端可用于执行上述方法实施例中的XML文档管理请求方法,具体结构包括
用户操作单元11,用于接收用户的节点移动指示;
请求生成单元12,用于根据用户操作单元ll收到的节点移动指示生成节点 移动请求,所述节点移动请求中包括需要被移动的节点的原位置和目标位置; 请求发送单元13,用于将请求生成单元12生成的节点移动请求发送给服务器。
本发明实施例的XML文档管理服务器的逻辑结构示意图如图4所示,该服 务器可用于执行上述方法实施例中的XML文档管理方法,具体结构包括
请求接收单元21,用于接收客户端发送的文档管理请求;
请求解析单元22,用于确定请求接收单元21收到的文档管理请求为节点移 动请求;从所述节点移动请求中获取需要被移动的节点的原位置和目标位置;
请求处理单元23,用于根据请求解析单元22的解析结果,执行将所述需要 被移动的节点从所述原位置移动到所述目标位置的事务。请求处理单元23具体 可包括
删除子单元231,用于执行将所述需要被移动的节点从所述原位置删除的
事务;
增加子单元232,用于执行将所述需要被移动的节点增加到所述目标位置 的事务;
联合子单元233,用于触发删除子单元231和增加子单元232的联合执行。 通过上述实施例可以看出,本发明实施例采用客户端将需要被移动的节点 的原位置和目标位置通过一条节点移动请求发送给服务端,服务端在确定为节 点移动请求时执行相应的移动操作的方法;由于客户端只发送一条信令来进行 移动操作,过程简单,时延小;并且,即便服务器对该信令接收失败或出错, 也不会导致所保存的数据出现异常情况,提高了数据操作的可靠性。
以上对本发明实施例所提供的XML文档管理请求方法和相应的XML文档 管理方法以及XML文档管理客户端和XML文档管理服务器进行了详细介绍, 本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的 说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般 技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处, 综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1、一种可扩展标记语言文档管理请求方法,其特征在于,包括:接收用户的节点移动指示;根据所述节点移动指示生成节点移动请求,所述节点移动请求中包括需要被移动的节点的原位置和目标位置;将所述节点移动请求发送给服务器。
2、 一种可扩展标记语言文档管理方法,其特征在于,包括 接收客户端发送的文档管理请求; 确定所述文档管理请求为节点移动请求;从所述节点移动请求中获取需要被移动的节点的原位置和目标位置; 执行将所述需要被移动的节点从所述原位置移动到所述目标位置的事务。
3、 根据权利要求2所述的可扩展标记语言文档管理方法,其特征在于,所 述执行将需要被移动的节点从原位置移动到目标位置的事务的步骤具体为联 合执行将所述需要被移动的节点从所述原位置删除的事务和将所述需要被移 动的节点增加到所述目标位置的事务。
4、 根据权利要求2或3所述的可扩展标记语言文档管理方法,其特征在于, 所述确定文档管理请求为节点移动请求的步骤具体为纟艮据所述文档管理请求 的方法名确定所述文档管理请求为节点移动请求。
5、 根据权利要求4所述的可扩展标记语言文档管理方法,其特征在于,所 述从节点移动请求中获取需要被移动的节点的原位置和目标位置的步骤具体 为从所述节点移动请求的请求行、设定的消息头域、消息体的任意一处中获 取所述需要移动的节点的原位置和目标位置;或者,从所述节点移动请求的请求行、设定的消息头域、消息体的任意两处中分 别获取所述需要移动的节点的原位置和目标位置。
6、 根据权利要求2或3所述的可扩展标记语言文档管理方法,其特征在于, 所述确定文档管理请求为节点移动请求的步骤具体为根据所述文档管理请求 的方法名和设定的消息头域的取值确定所述文档管理请求为节点移动请求。
7、 根据权利要求6所述的可扩展标记语言文档管理方法,其特征在于,所 述设定的消息头域为内容类型头域;在根据所述文档管理请求的方法名和所述 内容类型头域的取值确定所述文档管理请求为节点移动请求后,所述从节点移 动请求中获取需要被移动的节点的原位置和目标位置的步骤具体为从所述节点移动请求的请求行获取需要移动的节点的原位置和目标位置 中的一个;从所述节点移动请求的消息体获取需要移动的节点的原位置和目标位置 中的另一个。
8、 一种可扩展标记语言文档管理客户端,其特征在于,包括 用户操作单元,用于接收用户的节点移动指示;请求生成单元,用于4艮据所述节点移动指示生成节点移动请求,所述节点 移动请求中包括需要被移动的节点的原位置和目标位置;请求发送单元,用于将所述节点移动请求发送给服务器。
9、 一种可扩展标记语言文档管理服务器,其特征在于,包括 请求接收单元,用于接收客户端发送的文档管理请求; 请求解析单元,用于确定所述文档管理请求为节点移动请求;从所述节点移动请求中获取需要被移动的节点的原位置和目标位置;请求处理单元,用于执行将所述需要被移动的节点从所述原位置移动到所 述目标位置的事务。
10、 根据权利要求9所述的可扩展标记语言文档管理服务器,其特征在于, 所述请求处理单元包括删除子单元,用于执行将所述需要被移动的节点从所述原位置删除的事务;增加子单元,用于执行将所述需要被移动的节点增加到所述目标位置的事务;联合子单元,用于触发所述删除子单元和增加子单元的联合执行。
全文摘要
本发明公开了一种可扩展标记语言文档管理请求方法,客户端将需要被移动的节点的原位置和目标位置通过一条节点移动请求发送给服务端,服务端在确定为节点移动请求时执行相应的移动操作。本发明还提供相应的可扩展标记语言文档管理方法以及可扩展标记语言文档管理客户端和可扩展标记语言文档管理服务器。由于本发明方案的客户端只发送一条信令来进行移动操作,过程简单,时延小;并且,即便服务器对该信令接收失败或出错,也不会导致所保存的数据出现异常情况,提高了数据操作的可靠性。
文档编号G06Q10/00GK101383837SQ20071014607
公开日2009年3月11日 申请日期2007年9月7日 优先权日2007年9月7日
发明者方 季 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1