首页> 中国专利> 用于XML文档的结构化流播的方法和装置

用于XML文档的结构化流播的方法和装置

摘要

公开了一种用于以允许接收机(300)译码XML文档的划分优先级的部分的结构化方式流播XML文档/内容的方法和装置。文档模型,例如XML大纲,被用于把XML文档转换成根据预先定义的方案被发送的、划分优先级的部分。因此,本发明允许XML接收机(300)首先以及在传输中开始处理XML流的最重要的XML部分并且允许用户在接收到较低优先级的XML部分之前结束传输。

著录项

  • 公开/公告号CN1662906A

    专利类型发明专利

  • 公开/公告日2005-08-31

    原文格式PDF

  • 申请/专利权人 皇家飞利浦电子股份有限公司;

    申请/专利号CN03814226.0

  • 发明设计人 D·J·皮奥特罗斯基;

    申请日2003-06-11

  • 分类号G06F17/30;

  • 代理机构72001 中国专利代理(香港)有限公司;

  • 代理人程天正;王勇

  • 地址 荷兰艾恩德霍芬

  • 入库时间 2023-12-17 16:29:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2008-11-26

    授权

    授权

  • 2005-10-26

    实质审查的生效

    实质审查的生效

  • 2005-08-31

    公开

    公开

说明书

本发明涉及连续媒体的流播,并且更具体而言,涉及用于以结构化方式流播XML文档的方法及装置。

可扩展标示语言(XML)是已经由万维网协会(W3C)推荐的、用于编码文本信息的标准。对于XML标准的讨论,参见,例如可扩展标示语言(XML)1.0 W3C建议,http://www.w3.org/TR/1998/REC-xml-19980210,该建议在此引入作为参考。XML标准允许XML使能的应用程序与其它兼容系统相互协作用于被编码的信息的交换。

XML文档使用了几个基本的概念。XML文档在分层树结构中存储文本数据。每篇XML文档具有一个根节点,通常被称为根元素,在分层树中的其它节点被安排为根节点的子节点。XML标准详细说明了四种类型的节点,即:字符节点,处理指令(PI)节点,注释节点以及元素节点。基于XML的应用程序能够在所有不同类型的节点中以及在每种节点类型的所有区域中存储数据。XML也使用所谓的文档模型方法,例如文档类型定义或者“DTD”来定义文档的属性。

已经出现了诸如视频点播以及其它连续媒体应用的、用于编码并发送连续的媒体流的多种应用。例如,从运动图像组建议的MPEG-7标准提供了用于编码视频信息以及与视频源有关的文本信息的技术规范。连续的媒体流通常是利用基于分组的通信系统而被发送的。然而由于基于分组的通信系统的不可靠性,接收到的流的质量可能会受到分组丢失的影响。因此,这样的连续媒体传输系统通常必须包括允许接收机适应于分组丢失的机制。已经提出或建议了许多种技术来解决在连续的媒体传输系统中的分组丢失,包括冗余传输,重发,交织以及前向纠错技术。对于用于解决在连续的媒体系统中的分组丢失的这种技术的总的讨论,参见,例如“Options for Repair of Streaming Media(关于流播媒体的修复的选项),”网络工作组,请求注释No.2354(1998年六月),该文档可以从ftp.isi.edu/in-notes/rfc2354.txt下载,在此引入作为参考。

XMLNet是用于流播XML文档的应用程序接口(API)。XMLNet允许信息作为XML文档系列在因特网或另一个网络上实时地被发送。XML文档以系列方式被递送给接收机。然而,在接收机能对包含在XML文档中的任意XML内容进行译码和处理之前,接收机必须接收到完整的XML文档。对于XMLNet的讨论,参见,例如可以从home.earthlink.net/%7Earabbit/xmlnet(1998年12月9日)下载的“XMLNet”。

因此存在对这样一种方法和装置的需要,其允许用户对用于传输的部分XML编码文档划分优先级,并且即使没有接收到完整的XML文档的其它的或优先级较低的部分时,例如如果在接收到完整的XML文档之前发生分组丢失时,也允许接收机译码接收到的部分。还存在对如下方法和装置的需要,即:如果用户期望的话,准许以允许只有部分XML文档被发送并被接收机译码的划分优先级的方式来进行XML文档流播。

通常,公开的方法和装置是用于以结构化方式进行XML文档/内容的流播,该结构化方式允许接收机以划分优先级的方式来译码XML文档的部分。文档模型被用于把XML文档转换成根据预先定义的方案被发送的、划分优先级的部分,元素,段或子树(在下文中被称为“XML部分”)。因此,本发明允许XML接收机首先或者在传输中开始处理XML流的最重要的XML部分并且允许用户在接收到较低优先级的XML部分之前结束传输。

根据本发明的一个实施例,XML文档根据基于特定应用(例如:购货单,发货单等等)的特定XML大纲而被分割成XML部分。例如,用于在因特网上的电子商务交易的购货单的XML文档可被分割成不同的部分,例如,姓名,地址,产品编号,价格等等。然后,这些部分基于用户的准则被划分优先级。这些XML部分然后被分组和或被发送给接收机以首先译码XML文档的最重要的XML部分。具体地,每个XML文档被分解并编码成XML大纲元素的集合,这些元素根据具体的参数组(取决于应用或者预先定义的用户参数)被划分优先级。较大的XML文档的每个被划分优先级的XML部分被XML接收机解析并验证它是不是XML文档。

根据本发明的另一个方面,用户可以在接收到XML文档的几个XML部分之后或者在接收到完整的XML文档之前终止请求。这样,用户(1)可以终止XML部分的其它传输并且能够只译码他或她认为在XML文档中重要的XML部分,以及(2)倘若接收到了足够多的流播的XML部分,即使丢失了某些较低优先级的XML部分,利用已知的XML大纲也可重建整个的XML文档。

通过参考以下的详细描述和附图,将得到本发明的更彻底的理解以及本发明的另外的特征和优点。

图1说明了其中本发明可以运行的典型的网络环境;

图2是显示根据本发明的示例性XML发射机的构造的框图;

图3是显示根据本发明的示例性XML接收机的构造的框图;以及

图4是描述由图3的XML接收机执行的示范流播的XML部分处理的流程图。

图1说明了其中本发明可以运行的网络环境100。如图1中所示,XML发射机200发送被流播的XML文档/内容到XML接收机300。根据下面进一步讨论的本发明的特性,XML发射机200以允许XML接收机300只译码接收到的被发送的XML文档的划分优先级的XML部分的这样方式编码并发送XML内容。例如,如果用户终止其它的传输或者部分XML数据出现分组丢失或者如果整个的XML文档尚未到达,XML接收机300可以只译码部分被流播的XML文档。因此,根据本发明,XML接收机300能在传输中截取XML流并基于XML编码的文档的接收到的XML部分仍能完成有用的任务。以这种方式,用户规定XML文档的最相关的XML部分并且一但接收到这些XML部分就可以停止传输。

每个XML文档被编码成段(例如,XML部分)的集合,这使得接收机300在处理信息之前可以不用等待去接收整个的XML文档。根据指配给本发明的代理人的并在此引入作为参考的、在1999年4月10日提交的、序列号为09/411,756的、题目为“Method and Apparatus forStreaming XML Content(用于流播XML内容的方法和装置)”的美国专利申请的学说,子树被使用。

例如,XML文档被分解并被编码成部分/段的集合或所谓的子树。子树被设置在给定的节点,并且包括这个给定的节点以及分层树结构中的在这个给定的节点以下的所有节点。较大的XML文档树中的每个子树被接收机300分解并验证它是不是独立的树。给定的子树可以包括其它的子树。流播的XML文档中的每个子树使用在每个独立的子树周围用作子树外包功能的结构节点。该结构节点指示了这个子树跟其它子树之间的关系。以这种方式,倘若接收到足够多的流播的XML内容,XML接收机300能重建全部树的结构。

如上面所指出的,XML使用文档模型方法,例如文档类型定义或者“DTD”。特别地,XML大纲表示共享的词表并且提供用于规定XML文档的结构,内容和语义的方法。XML大纲被使用来规定XML文档类或者在应用之间发送的字节流,作为在数据库记录中的域,或者作为XML信息项的集合。这些模型通常提前提供,但是也可以按需要来任意地创建。XML使用DTD或者其它结构化文档模型来把内容与适当的标识指令相联系以使得内容能够以预期的表现形式或风格显示。为了识别的目的,标示语言为文档的每个“元素”或部分添加了标识符。例如,DTD可以规定文档模型为具有标题,主要段落和几个次要段落。然后标示语言添加被称作“标签”的标识符来指明特定的元素的开始和结束。

根据一个实施例,已知的XML大纲被修正和使用以规定XML部分的优先级。例如,用户在XML大纲中预先定义它何时被创建、其中的哪部分具有最高的优先级。此外,用户可以,例如在用于特定的XML文档的请求消息中通过许多常规方法中的任意方法修改XML大纲的优先级。

DTD也可以被修改以允许DTD(DTD段)通过XML部分被呈现。DTD段根据本发明被用于检验正确性并且也可以规定XML部分的优先级。替换地,DTD段如果不被包括在单个的XML部分中,可以作为参考被提供并包括在被给定最高优先级的全部的DTD中。

图2是显示根据本发明的示例性XML发射机200的构造的框图。XML发射机200可以具体是通用计算系统,例如图2中所示的通用计算系统。如图2中所示,XML发射机200优选地包括处理器210以及诸如数据存储设备220的相关存储器,该存储器可以是分布式的或者局部的。处理器210可以具体是单个的处理器,或者并行运行的多个局部的或分布式的处理器。数据存储设备220和/或只读存储器(ROM)(未示出)可操作来存储一条或多条指令,处理器210可操作来取回、解释并执行这些指令。

数据存储设备220包括可以从存储器取回或者实时产生的文本源250。因此,文本源250可以是诸如数据库或其它文档的预先录入的文本文件,或者实时产生的文档,例如,通过用户从键盘(未示出)键入文本信息或者通过语音识别系统(未示出)。数据存储设备220也包括一个或者多个XML部分处理260以及指示在构建XML部分中,文本信息应该如何被分解的划分优先级的XML大纲(或者划分优先级的DTD信息)270。例如,XML部分处理260使用以上所描述的子树方法以及XML大纲270来确定XML文档将如何被分解。然而,其它常规的分段处理也可以被使用,倘若它们能够被修改来结合XML大纲和用户设立的优先级使用的话。如上面所解释的,XML大纲270包括用户给每一个XML部分规定的优先级。重要地,由DTD或XML大纲所规定的每个“元素”被用户指配一个优先级。XML大纲270可以被包括在XML部分处理260中或者可以被处理器210调用来帮助确定XML部分。因此,XML发射机200将利用识别的XML部分处理260处理文本源250以产生流播的XML格式的发送内容(例如,XML部分)。

图3是显示根据本发明的示例性XML接收机300的构造的框图。XML接收机300可以具体是通用计算系统,例如图3中所示的通用计算系统,或者XML接收机300可以与诸如数字电视(DTV)的另外的设备相集成。XML接收机300包括诸如处理器310的某些标准硬件以及诸如数据存储设备320的相关的存储器,如以上结合XML发射机200所讨论的。

数据存储设备320包括下面结合图4讨论的流播的XML部分处理400以及划分优先级的XML大纲(或者划分优先级的DTD信息)270。通常,即使没有接收到较大的XML文档的其它XML部分,流播XML部分处理400处理从XML发射机200接收到的每一个XML部分。

图4是描述由图3的XML接收机300执行的示范流播XML部分处理400的流程图。流播XML部分处理400在步骤410和420中提取在XML部分中接收到的结构(例如DTD或者XML大纲)信息,并且确定相应的在XML接收机300中存储的划分优先级的XML大纲360。这个处理一直重复直到确定了特定的优先级的XML大纲。在步骤430中,接收到的XML部分被直接处理,例如,通过显示内容或者将内容存在特定的位置。此后,在步骤440中执行测试来确定是否已经接收到了与当前的XML文档相关的附加XML部分。如果它被确定,在将被处理的当前的XML文档中存在附加的XML部分的步骤420中,使用确定的划分优先级的XML大纲,程序控制返回步骤410并且以上面所描述的方式继续处理下一个XML部分。此外要确定传输是否已经被终止,例如,在步骤450中由用户通过终止消息或者其它常规方法。同样,终止可以是强制性的,例如由于噪声,其它干扰或者网络拥塞造成的传输错误/故障。如果确定在正被构造的当前的XML文档中没有要被处理的附加XML部分,或者传输已经被终止,那么在步骤460中,如果可能的话,全部的XML文档可以被装配在一起。此后,在步骤470中程序控制终止直到接收到用于处理的附加的XML部分。

应当理解,这里所示出和描述的实施例以及变动只是本发明的原理的说明,而且,本领域的技术人员可以不偏离本发明的范围和精神来实现不同的修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号