CN100565521C - 用于从数据库生成xml文档的动态方法 - Google Patents

用于从数据库生成xml文档的动态方法 Download PDF

Info

Publication number
CN100565521C
CN100565521C CNB200680015662XA CN200680015662A CN100565521C CN 100565521 C CN100565521 C CN 100565521C CN B200680015662X A CNB200680015662X A CN B200680015662XA CN 200680015662 A CN200680015662 A CN 200680015662A CN 100565521 C CN100565521 C CN 100565521C
Authority
CN
China
Prior art keywords
template
instruction
xml document
xml
currentelement
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.)
Active
Application number
CNB200680015662XA
Other languages
English (en)
Other versions
CN101171582A (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.)
Amadeus SAS
Original Assignee
Amadeus SAS
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 Amadeus SAS filed Critical Amadeus SAS
Publication of CN101171582A publication Critical patent/CN101171582A/zh
Application granted granted Critical
Publication of CN100565521C publication Critical patent/CN100565521C/zh
Active 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/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明描述了一种用于自动生成XML文档的方法,该XML文档包括从源数据库所提取出的数据。所述方法包括:以数据库的格式定义多个模板,这些模板包括可执行的指令。还定义了与每个所述模板相关的查询。这些查询被用于从所述源数据库中以记录集的形式提取数据。模板指令的执行生成至少一个XML文档,它包含来自记录集的数据。通过使用调用指令,模板可以调用任何其它模板,以便创建一个XML文档。本发明借助于从数据库直接操作的嵌套模板,实现了对来自数据库的数据的访问的动态定义。

Description

用于从数据库生成XML文档的动态方法
技术领域
本发明总的来说涉及由计算机生成的数据库,且更具体地涉及在询问数据库时自动生成采用标记语言XML(可扩展标记语言)类型的文档。
背景技术
从计算机或通过网络直接生成的数据库已经由许多公司、行政部门以及各种商业组织或其它组织使用了非常长的时间。数据库是在其中可以通过最少可能的冗余度以结构化的方式存储数据的实体。因此,事实上利用数据库的主要优点是,可以同时通过多个不同的用户访问这些数据库。
例如,存在包含所有时间表、和全世界范围内的所有航线的航班的预定状态、或所有国际旅馆连锁店报价的数据库。特别是现在互联网允许所有专用网络和公用网络互联,使得旅行社可以访问来自世界任何地方的信息。因此,数据库的概念通常与网络相关联,以便能够结合并共享该信息。
为了控制数据以及用户,需要数据库管理系统(DBMS)。DBMS是软件应用程序的组合,这些软件应用程序能够管理数据库,即允许简单的存取数据、授权访问多个用户的信息、以及处理存在于数据库中的数据(输入、删除、修改)。
在大多数情况下,根据所谓的关系模型构建数据库,其以表形式组织数据。根据基于组合理论(即,关系代数,其由对关系的形式运算的组合构成)的数学概念处理数据。关系运算使得能够由对其他表的初等运算(例如,组合、相交、或平均差)来建立新的关系(表)。
已经广泛采用查询的结构化语言。以缩写SQL、“结构化查询语言”公知的是,它同时是数据定义语言以及数据处理和控制语言。数据的定义是管理员的工作。使用SQL语言的大多数人仅使用数据处理语言,它能够使其选择对他们来说感兴趣的数据。从用户的观点来看,用于数据处理语言的最重要的命令是SELECT命令。基于关系代数,其能够对多个关系表执行数据操作以使其对用户可用。
随着互联网的超常规发展,以及已经允许共用网络和专用网络的互连,已经通过采用被称为HTTP协议(超文本传输协议)以及通过以Web(环球网)的名称已知的通信系统的发展来标准化数据交换。环球网允许搜索信息,其允许利用超文本或HTML(超文本链接标识语言)访问该信息及其可视化。该语言能够建立可以由Web浏览器显示的超文本文档。
HTML语言是在20世纪80年代采用的用来描述文档及其格式化的以缩写词SGML(标准通用标记语言)已知的更为复杂的标准的专用的、非常简单的版本。SGML语言是仍用于描述文档的逻辑结构而不是其拓扑方面的符号语言。应用的原理是通过标记符对文档的章节、段、序言、导言及其它部分进行类属标记。尽管HTML语言的简单性已经有助于其大范围采用,且在Web开发的开始阶段完全适合,但更多应用需求很快表现出其局限性。由于以不存在进一步开发范围的代价实现HTML的简单性,因此需要很快找到类似于源自HTML标准的提供开发和适应的可能性的语言,即SGML,但避免了后者的复杂性。响应于此的是,通过被委托标准化Web的任务的组织在1996年末提出的新标准,该标准被称为XML(可扩展标记语言)。正如SGML,但无需其复杂性,XML是能够使HTML语言扩展的元语言。特别是,其使得能够定义新的标记符,例如对于文本的更清晰的描述,且其能够使文档完全个性化。XML的成功在于,由于其可扩展性其能够描述任何数据域。它能够构造和建立其所包含的数据的词汇和语法。
因此,毫不奇怪的是,自其被创建以用于格式化包含来自数据库(特别是上述关系数据库)的数据的文档之后,XML语言已经被使用。通过SQL查询而获得数据。
然而,所获得的数据的使用,及其包含在用于在通过用户的Web浏览器打开的窗口中显示的文档中,可能要求主要的编码工作。在上面已经引用的通过旅行社、用户询问的数据库实例中,显示的个性化所要求的水平可能非常高。事实上,这些旅行社的客户具有非常不同的要求。根据他们是度假者还是商人或女商人,数据及其呈现的选择是非常不同的,以方便这些旅行社中的职员工作,提高其生产率并得到更大的客户满意度。
因此,XML文档的自动生成已经引起了这些应用的开发者的特别关注。例如,参考美国专利局(USPTO)授予的申请US 6,636,845,其描述了用于从单个SQL查询中生成XML文档的方法,名为“从单个SQL查询中生成一个或多个XML文档”。然而,所描述的方法缺乏灵活性。特别是,它依赖于描述访问数据的静态定义。因此,存在与相应的XML文档中存取的数据类型同样多的定义。
发明内容
本发明的主要目的是,提出一种用于从数据库生成XML文档的改进方法。
本发明的一个特殊目的是,能够从访问数据库中的数据的动态定义生成XML文档。
本发明的另一目的是,通过使用以数据库格式描述的嵌套模板的组合来获得该动态定义。
本发明的进一步的目的是,简化和减少将被生成的XML文档的数量,同时保持高的个性化程度。
本发明的其他目的、特征和优点对于本领域技术人员在考查以下的描述和附图时将变得很清楚。要理解的是,其他的优点也被包括在内。
描述了一种用于自动地生成至少一个XML文档的方法,该XML文档包含从源数据库提取出的数据,所述方法包括以数据库格式定义多个模板;这些模板包含可执行指令。还定义了与每一个模板相关的查询。这些查询用于从源数据库以记录集的形式提取数据。这些模板的指令被执行以生成至少一个包含源自于记录集的数据的XML文档。这些指令包括至少一个调用指令,用于调用其他模板中的任意模板。所述XML文档由包含属性的元素组成。所述方法的特征在于,它包含一个当前元素的概念。所述方法还包括用于创建一个新的元素的指令,这个新元素被分配给当前元素。然后这个新元素又顺次变为当前元素。本方法还包括用于创建一个新属性给当前元素的指令,以及用于关闭当前元素的指令,该指令包括将当前元素的角色再次分配给所述当前元素的父元素。该方法包括文件定义,它使得能够构建所述XML文档的名称、创建变为当前元素的根元素;以及指定哪个模板为根模板。这些参数用来在所述模板调用指令执行时或在所述文件定义被打开且所述根模板被使用时链接各模板。所述模板指令中的每一个指令都被应用于所述记录集中的每一个记录。所述指令是通过XML生成器进行解释的。所述源数据库是关系数据库,并且所述查询是遵守作为SQL已知的结构化查询语言的规则的查询。所述模板、查询、指令、文件定义和参数以表的形式包含在至少一个关系数据库中并且可以包含在源数据库中。
附图说明
本发明的目的、特征和优点将从本发明的实施例的详细描述中变得更加显而易见,其通过以下附图示出,其中:
图1示出了实施本发明的总体方法。
图2描述了XML生成器的定义表的结构。
图3描述了涉及基于文件定义内容的文件生成的过程。
图4描述了创建目标XML文件的阶段。
图5描述了模板的处理。
图6描述的模板的指令。
图7是本发明的示例性实施例。
通过实例给出了附图但并不限制本发明的范围。
具体实施方式
图1示出了本发明的实施的总体方法,用于下面作为VISTA100提及的软件应用程序,其目的是通过以可以容易由用户的浏览器解释的形式将其自动格式化来使从源数据库140中提取的信息对于这些远程的用户可用。例如,数据库将包括国际旅馆连锁的报价和预定状况。因此在该实例中,用户是旅行社,其然后可以经由互联网从公用网络或专用网络从世界任何地方访问该信息。
如在背景技术部分的章节中所讨论的,XML语言最适用于该目的。通过主要Web标准化组织即,W3C(“环球网协会”)提出的,其已被广泛采用。因此,VISTA是基于以用于显示其内容的XML文件110的形式的文档的生成,由此使搜索的信息对用户可用。为此,应用程序100必须通过语义分析程序(解析器)读取XML文档。
解析器是由软件提供商诸如著名的美国微软公司开发和销售的标准工具。
在解析器的执行过程中,对目标文件的分析生成对象105,其构成可以通过应用程序用户的浏览器显示的页面。
用于生成XML文件的XML生成器120是基于模块或模板术语“模板(template)”被用在关于这些主题的英语技术文献中。以所使用的关系数据库的格式及语言将其存储在XML生成器的定义表130中。这些模板可以被嵌套以增加其被再次使用的可能性。根据本发明的模板是可以由XML生成器解释并可在其上下文中被再次使用的指令集。根据英语技术术语,模板的上下文应用于一组记录或记录集,即通过向后者发布的特定查询而获得的数据库的局部示图。这些查询符合如前所述的结构化查询语言SQL。根据本发明,以每个都可以访问一组特定记录的对象的形式定义查询并将其存储在数据库135中。查询对象可包含参数。然后所述参数用于修改查询。例如,在列出图书馆中所有书籍的数据库中,查询可以被定义为能够按特定作者的名字来搜索书籍,且因此它包括“作者”参数。对于特定查询,然后作者参数可以由特定作者的名字来代替。将由数据库响应于查询返回的相应记录集将由图书馆中保留的那个作者的书的列表组成。
如果XML是将数据分配给用户的最合适的手段,则关系数据库140对于存储与产品有关的数据是理想的。特别是,被很好结构化的数据库的使用保证了信息容易且有效的维护,该信息包含并防止冗余。因此,数据库140是将被包括在对于应用程序100的用户生成的XML文件中的主要数据源。特别是,本发明的方法利用了已经提到的结构化查询语言SQL的使用的优点。以数据库的格式,能够生成目标XML文档的模板的使用并不要求将软件资源分配给用户,此时它们与其浏览器相连接,否则的话,它们就需要该软件资源以直接访问源数据库。这必然增加访问搜索信息所需的时间、阻塞网络并使得所搜索的信息可用性变得非常复杂。事实上,尽管数据库的结构和组织有助于保证其效率并避免冗余,显示给用户的信息满足其它的标准。数据库中的数据结构与用户所要求的数据相匹配同样可以通过XML生成器120在源处被执行,如本发明所推荐的那样,该XML生成器取决于定义表110的模板和相关的查询定义135,以创建包含足够用户信息的较少数量的目标XML文件110。
根据本发明的定义表、模板和查询可被包含在与源数据库140分开的数据库中,如在图1中示意性示出的那样,但可以同样构成唯一的数据库150的一部分,这是没有问题的。
因此,本发明的目的是从由软件应用程序管理的单独的源140、即关系数据库生成XML文档110,所述软件应用程序构成了实际标准,其中存在许多已知的商业方案,例如那些已知名为“Oracle”、“IBMDB2”或“Microsoft Access”,由其相应公司开发和销售的产品。因此,通过使用已被广泛测试并使用的标准产品来提供数据本身的管理和完整性。因此,通过将用于生成并测试XML文档的规则包括在后者格式的数据库本身中,可以从中得到许多优点。特别是缩短了开发时间。在数据库中的改变和自动重新生成给定应用(诸如VISTA 100)的所有XML文件,因此比更新和校正特定代码花费的时间更少。此外,这可以通过专门负责开发应用程序本身(在该实例中的VISTA)的专业人员来直接执行,而特定软件的开发总是要求非常专业的程序人员的昂贵的编码工作。
图2描述了XML生成器的“定义表”的结构。每个表包括:
表1
 文件定义200模板220指令230参数210,240   文件定义被要求来创建目标XML文件。文件定义包括下述信息:-将被创建的XML文件的名称-将被调用的根模板-用于在数据库中寻找合适记录集的相关查询-将被创建的根元素(可选)-参数(如下面所定义的)模板包括如下面定义的可执行指令。模板可以调用另一模板225。模板的执行指令是多种类型,其用来:-创建XML元素-创建XML属性-关闭XML元素-调用模板(可以指定参数)参数用作为调用模板的记录集和被调用模板的记录集之间的链接,且必须在它们之间进行区别;
  参数定义:在模板240和文件定义210中存储的参数。该定义包括当前记录集的名称和字段名,其将包含下述参数组中的参数的值。<u>参数组:</u>源自数据库的记录集的临时参数组。<u>查询参数:</u>用于寻找数据库中的适当的记录集。
利用参数210的文件定义200包括将被应用于数据库以查找适当记录集的特殊查询的定义。文件定义参考利用指令230的模板。当指令是调用另一模板225的类型时,然后参数必须被传到所调用的模板240。
上述表中提及的XML文档的元素和属性构成XML语言的整体部分且是本领域技术人员已知的概念。通常,XML文档将包括由分别以<xxxElement>和</Element>的形式开始和结束的标记符限定的一个或多个元素。然后每个元素可以具有一种或多种属性,每种属性具有在模板指令中指定的名称和值。
图3描述了基于上述“文件定义”的内容生成文件并构成“XML生成器的定义表”的一部分的过程。
在打开用于该定义的每个记录314的文件定义300之后,测试320是否存在相关的“查询定义”。如果是这种情况322,则执行相应的查询。然后打开从数据库获得的“记录集”330。存在与记录集中记录的文件一样多的所创建的目标文件360。记录集中的所有记录被滚动显示350。当最后一个记录已经被处理时334,处理转到文件定义370的下一个记录。
当检测相关查询定义是否存在时320,如果回答是否定的324,则在进行到文件定义的下一个记录之前创建一个单独的目标文件380。如果不存在其它记录,则处理过程结束312。
在图4中描述了“目标文件”创建阶段380和用于创建“目标XML文件”的类似阶段360。
首先目标文件的创建包括构建400文件名称。如前所述,如果相同的“文件定义”被用于创建多个目标文件,则从下述连接中构造名称:
-源自文件定义的前缀
-源自记录集中的当前记录的动态部分
-源自文件定义的后缀
然而,如果不存在相关的查询定义,则正如刚刚所示,必须创建一个单独的文件。在这种情况下,仅使用前缀和后缀,不存在动态部分。
在该目标XML文档以表示XML文档结构并符合已经提及的由Web标准化组织发布的DOM规范(文档对象模型)的对象的形式被有效创建410。
如果根元素出现在文件定义中422,则创建它430。在此后,如果参数存在于文件定义中422,则定位这些参数以便传递到模板444。
在图5中更详细地描述了可以是根模板或嵌套模板即,由另一模板调用的模板处理450。
通过调用模板(或文件定义)所定义的参数必须与所调用的模板的那些参数相匹配。为此,基于参数定义构建一个临时“参数组”500。当这一步骤完成时,从“记录集”的当前记录获得适当值。
在图5的右面部分中详细示出了阶段500被中止。通过其名称501以及由参数定义的字段找到每个参数502。从“记录集”获得字段值503,其能够固定参数值504。只要存在将被处理的参数505就重复该处理506。
然后找到被调用的模板510。相关的“查询定义”的参数必须与在执行数据库之前调用模板的那些参数相匹配,以获得适当的“记录集”520。这些参数完全应用于在“记录集”中的每个记录530以及每个指令540,直到不再存在待处理的任何指令或“记录集”中的记录550。
图6更详细地描述了指令处理阶段。当执行指令时,系统保留当前元素概念。它正是作为下面所述每个指令的目标的这个元素。如果不存在当前元素,则使用模板的根元素或第一元素。
指令具有以下多种类型:元素的创建600、属性的创建610、元素的关闭620以及调用模板630。在前两种情况中,首先必须得到620在当前“记录集”中指定的字段值。在最后一种情况下,首先必须得到632需要被传递到所调用的模板的参数。
因此,指令可能必须创建一个携带如前所述构建的名称的XML元素600。然后新元素被分配给当前元素605,其因此成为新的子元素的父亲。可选地,可将一个值插入到新元素中且该值必须与“记录集”中指定的字段相对应。
指令可能必须将属性分配610给XML元素。为当前元素创建属性615。如上所述,可选地,一个值可被固定在该属性上,且该值必须与记录集的指定字段相对应。
指令可以关闭元素620,其等同于将当前元素的角色再分配给父元素625。
最后,指令可以由先前指定的名称调用模板630。为了处理所调用的模板635,参数将被从当前模板的记录集传递到所调用的模板的记录集。
图7通过一个具体实例示出了根据本发明用于由关系数据库生成目标XML文件的方法。在该实例中,几乎总是像在要由多国团队在全世界销售的软件产品的开发环境中的情况那样,代码的所有技术术语都是用英语定义的。然而,这将妨碍以下描述的清楚理解。在需要时,术语被理解为或者能容易地被考虑为一系列字母和数字,而没有特定的意义,即使出于显而易见的记忆和实践的原因而尝试赋予它们一些含义。
如已经描述的那样,XML文件的创建开始于“文件定义”的打开700,它表现为数据库中的表705的形式。通过包含在该表中的信息,然后能够创建一个XML文件,它具有特定的名称(codesList_CAR.xml),包含第一个空的元素(codes_list)。该元素变成当前的元素。该文件定义包含已经使用的根模板710的名称。
上述的模板然后被处理720。第一阶段包括在数据库上执行为模板(CarCodesList)所定义的查询722,以便获得相应的记录集730。模板710的指令,在这个例子中为指令5,被应用于由此获得的记录集中的每个记录。
这以先前所创建的当前元素的子元素(列表)的创建724开始。该元素顺次变为当前元素。模板710的下两个指令、即索引2和3,然后被处理。它们用来创建726两个分别对应于一个在模板中指定的字段名的属性(名称、区域)。XML文件728的当前元素(列表)然后包括这些属性。
模板710的下一指令、即索引4利用另一模板(CodeListItem),为该模板定义了一个参数715。所调用的模板740也具有一个查询定义(CodeListItem),它使得在进行调用的模板715的参数已经使字段742能够被找到以便有效地执行该查询之后能够得到数据库中的相应的记录集750。
所调用的模板以和上面所述类似的方式被处理,以使XML文件更为丰富760。

Claims (16)

1.一种用于自动生成(120)至少一个XML文档(110)的方法,该XML文档包括从源数据库(140)所提取的数据,所述源数据库包括用于生成所述至少一个XML文档的装置,其中所述用于生成所述至少一个XML文档的装置包括一个利用以所述源数据库的格式和语言所定义的表(130、135)的XML生成器(120),所述方法包括:
在至少一个定义表(130)中定义多个模板(220、225),所述多个模板(220、225)包括由所述XML生成器(120)可执行的指令(230),其中所述可执行的指令(230)包括至少一个调用指令(630),用于调用所述多个模板(220、225)中的任意模板;
定义与每个所述模板(220、225)相关的查询(135),其中所述查询用于从所述源数据库(140)中以记录集(730)的形式提取数据;
在执行阶段(700)期间执行来自包括在所述至少一个定义表(130)中的文件定义(200)中的所述指令(230),其中所述执行阶段(700)包括由所述多个模板(220、225)中的至少一个模板对所述多个模板中的至少另一个模板的调用,以便能够生成所述至少一个包含从所述记录集(730)得到的所述数据的XML文档。
2.如权利要求1所述的方法,其中所述至少一个XML文档包括能够包含属性(726)的元素(702),所述方法的特征在于,所述执行阶段包括一个用于创建所述元素及其所述属性的阶段。
3.如权利要求1或2所述的方法,其中所述文件定义使得能够:构建所述XML文档的名称(400);为所述XML文档创建目标文件(410);创建一个根元素(430),所述根元素分配有当前元素的功能;处理一个根模板(710),所述根模板能够调用所述多个模板中的任意一个模板。
4.如权利要求3所述的方法,其中所述可执行的指令(230)至少包括:用于创建所述当前元素的一个新的子元素(600)的指令,该新的子元素(600)又顺次分配有所述当前元素(605)的功能;用于创建一个新属性(610)的指令,该指令为所述当前元素创建所述新属性;用于关闭(620)所述当前元素的指令,该指令包括将当前元素的功能再分配给所述当前元素的父元素。
5.如权利要求3所述的方法,其中参数(210、240)被使用,所述参数用来在所述模板调用指令执行时或者在所述文件定义被打开且所述根模板被使用时链接所述模板。
6.如权利要求1或2所述的方法,其中所述模板的所述指令中的每一个指令都被应用于所述记录集中的每个记录(530)。
7.如权利要求6所述的方法,其中所述指令是通过XML生成器(120)进行解释的。
8.如权利要求1或2所述的方法,其中所述源数据库(140)是关系数据库,并且所述查询(135)是遵循作为SQL已知的结构化查询语言的规则的查询。
9.一种用于自动生成(120)至少一个XML文档(110)的设备,该XML文档包括从源数据库(140)所提取的数据,所述源数据库包括用于生成所述至少一个XML文档的装置,其中所述用于生成所述至少一个XML文档的装置包括一个利用以所述源数据库的格式和语言所定义的表(130、135)的XML生成器(120),所述设备包括:
在至少一个定义表(130)中定义多个模板(220、225)的装置,所述多个模板(220、225)包括由所述XML生成器(120)可执行的指令(230),其中所述可执行的指令(230)包括至少一个调用指令(630),用于调用所述多个模板(220、225)中的任意模板;
定义与每个所述模板(220、225)相关的查询(135)的装置,其中所述查询用于从所述源数据库(140)中以记录集(730)的形式提取数据;
在执行阶段(700)期间执行来自包括在所述至少一个定义表(130)中的文件定义(200)中的所述指令(230)的装置,其中所述执行阶段(700)包括由所述多个模板(220、225)中的至少一个模板对所述多个模板中的至少另一个模板的调用,以便能够生成所述至少一个包含从所述记录集(730)得到的所述数据的XML文档。
10.如权利要求9所述的设备,其中所述至少一个XML文档包括能够包含属性(726)的元素(702),所述设备的特征在于,所述执行阶段包括一个用于创建所述元素及其所述属性的阶段。
11.如权利要求9或10所述的设备,其中所述文件定义使得能够:构建所述XML文档的名称(400);为所述XML文档创建目标文件(410);创建一个根元素(430),所述根元素分配有当前元素的功能;处理一个根模板(710),所述根模板能够调用所述多个模板中的任意一个模板。
12.如权利要求11所述的设备,其中所述可执行的指令(230)至少包括:用于创建所述当前元素的一个新的子元素(600)的指令,对该新的子元素(600)又顺次分配有所述当前元素(605)的功能;用于创建一个新属性(610)的指令,该指令为所述当前元素创建所述新属性;用于关闭(620)所述当前元素的指令,该指令包括将当前元素的功能再分配给所述当前元素的父元素。
13.如权利要求11所述的设备,其中参数(210、240)被使用,所述参数用来在所述模板调用指令执行时或者在所述文件定义被打开且所述根模板被使用时链接所述模板。
14.如权利要求9或10所述的设备,其中所述模板的所述指令中的每一个指令都被应用于所述记录集中的每个记录(530)。
15.如权利要求11所述的设备,其中所述指令是通过XML生成器(120)进行解释的。
16.如权利要求9或10所述的设备,其中所述源数据库(140)是关系数据库,并且所述查询(135)是遵循作为SQL已知的结构化查询语言的规则的查询。
CNB200680015662XA 2005-05-09 2006-05-05 用于从数据库生成xml文档的动态方法 Active CN100565521C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP05103829A EP1722307A1 (fr) 2005-05-09 2005-05-09 Méthode dynamique de génération de documents XML à partir d'une base de données
EP05103829.7 2005-05-09
US60/679,232 2005-05-10

Publications (2)

Publication Number Publication Date
CN101171582A CN101171582A (zh) 2008-04-30
CN100565521C true CN100565521C (zh) 2009-12-02

Family

ID=34939745

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200680015662XA Active CN100565521C (zh) 2005-05-09 2006-05-05 用于从数据库生成xml文档的动态方法

Country Status (13)

Country Link
US (1) US8468446B2 (zh)
EP (2) EP1722307A1 (zh)
JP (1) JP4977128B2 (zh)
KR (1) KR101331532B1 (zh)
CN (1) CN100565521C (zh)
AT (1) ATE414303T1 (zh)
AU (1) AU2006248984B2 (zh)
BR (1) BRPI0611363A2 (zh)
CA (1) CA2603908C (zh)
DE (1) DE602006003649D1 (zh)
ES (1) ES2317546T3 (zh)
WO (1) WO2006122886A1 (zh)
ZA (1) ZA200709325B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962443B2 (en) 2007-02-08 2011-06-14 Interactive Documents, Llc Method and system for replacing data in a structured design template
US8321846B2 (en) * 2008-11-13 2012-11-27 Oracle International Corporation Executable template
US20100332192A1 (en) * 2009-04-27 2010-12-30 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Method and Tools for Self-Describing Data Processing
US8615526B2 (en) * 2010-06-21 2013-12-24 Tata Consultancy Services Limited Markup language based query and file generation
CN101866361A (zh) * 2010-06-30 2010-10-20 山东中创软件工程股份有限公司 一种异构数据集成方法及装置
US9846693B2 (en) * 2010-07-23 2017-12-19 Ibm International Group Bv Document tracking in heterogeneous application environments
CN102622219B (zh) * 2011-01-31 2015-06-17 富士通株式会社 对动态调用服务的执行结果进行渲染的方法、装置及系统
US8850306B2 (en) * 2011-03-28 2014-09-30 Microsoft Corporation Techniques to create structured document templates using enhanced content controls
US9128986B2 (en) * 2011-06-29 2015-09-08 Infosys Limited Method and system for managing a database having a plurality of tables
KR101122629B1 (ko) * 2011-11-18 2012-03-09 김춘기 데이터베이스의 데이터를 변환하여 xml 문서를 생성하는 방법
KR101416712B1 (ko) * 2012-07-12 2014-07-09 김영근 정형 및 비정형 데이터를 xml 문서에 구현하는 방법
KR101449725B1 (ko) * 2012-11-12 2014-10-16 한국과학기술정보연구원 Pdf 문서 파일을 자동 변환하는 장치 및 방법
CN103902634B (zh) * 2012-12-30 2017-09-29 航天信息股份有限公司 利用Adapter实现View组件与数据库字段自动绑定的方法
CN104063468B (zh) * 2014-06-27 2017-11-10 北京思特奇信息技术股份有限公司 一种数据报表自动生成及提取方法及装置
CN104537103B (zh) * 2015-01-12 2018-11-16 用友医疗卫生信息系统有限公司 数据处理方法和数据处理装置
CN104679909B (zh) * 2015-03-25 2018-07-17 郑州悉知信息科技股份有限公司 一种设置网站tdk的方法及装置
US10552425B1 (en) * 2016-04-28 2020-02-04 Jpmorgan Chase Bank, N.A. System and method for automated data utilization
CN110222236B (zh) * 2016-06-06 2021-05-04 福建榕基软件股份有限公司 Xml报文模板的生成及更新方法及其系统
CN106202008B (zh) * 2016-06-28 2019-04-05 武汉斗鱼网络科技有限公司 一种MySQL数据库结构化文档生成方法及装置
KR102157218B1 (ko) * 2018-12-28 2020-09-18 인천대학교 산학협력단 공간 데이터의 의미론적 주석을 위한 데이터 변환 방법
CN110569456B (zh) * 2019-07-26 2022-03-08 广州视源电子科技股份有限公司 Web端数据离线缓存方法及装置、电子设备
CN113742375A (zh) * 2020-06-18 2021-12-03 北京沃东天骏信息技术有限公司 一种目标对象搜索方法和装置
KR102253751B1 (ko) * 2020-10-15 2021-05-20 주식회사 위키랩 워드프로세서와 데이터베이스를 연동하여 문서를 생성하는 시스템 및 방법
US11755647B2 (en) 2020-12-03 2023-09-12 International Business Machines Corporation XML production through database mining and blockchain

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1555534A (zh) * 2001-09-13 2004-12-15 �Ҵ���˾ 用于在网络中传送动态信息的方法和系统
CN1560763A (zh) * 2004-02-19 2005-01-05 北京大学 一种可扩展标记语言路径查询翻译为结构查询的方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835712A (en) * 1996-05-03 1998-11-10 Webmate Technologies, Inc. Client-server system using embedded hypertext tags for application and database development
JP2000250841A (ja) * 1999-03-02 2000-09-14 Hitachi Ltd ページ生成方法及び装置並びにページ生成プログラムを記録した記憶媒体および電子モールシステム
JP2001092695A (ja) * 1999-09-24 2001-04-06 Hitachi Information Systems Ltd 構造化文書とデータベースのデータ交換処理方法及びそのプログラムを記録した媒体
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US6721727B2 (en) * 1999-12-02 2004-04-13 International Business Machines Corporation XML documents stored as column data
US7213017B2 (en) * 2000-03-17 2007-05-01 Microsoft Corporation Systems and methods for transforming query results into hierarchical information
US6963875B2 (en) * 2000-03-23 2005-11-08 General Atomics Persistent archives
US6941510B1 (en) * 2000-06-06 2005-09-06 Groove Networks, Inc. Method and apparatus for efficient management of XML documents
US7076534B1 (en) * 2000-06-30 2006-07-11 Microsoft Corporation Server-side scripting that enables creation of customized documents for clients
US6708186B1 (en) * 2000-08-14 2004-03-16 Oracle International Corporation Aggregating and manipulating dictionary metadata in a database system
US6725231B2 (en) * 2001-03-27 2004-04-20 Koninklijke Philips Electronics N.V. DICOM XML DTD/schema generator
US7210097B1 (en) * 2002-05-22 2007-04-24 Pitney Bowes Inc. Method for loading large XML documents on demand
US20040002907A1 (en) * 2002-06-28 2004-01-01 Tosswill Andrew R. Template for inputting customized processing features in an electronic bill presentment and payment system
CA2414053A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for manipulating a document object model
US7627479B2 (en) * 2003-02-21 2009-12-01 Motionpoint Corporation Automation tool for web site content language translation
US20040268238A1 (en) * 2003-06-30 2004-12-30 Peiya Liu Systems and methods for processing documents using an XML-based process flow description language
US7496840B2 (en) * 2003-10-13 2009-02-24 Wolters Kluwer Financial Services, Inc. Document creation system and method using a template structured according to a schema
US7458022B2 (en) * 2003-10-22 2008-11-25 Intel Corporation Hardware/software partition for high performance structured data transformation
US7640497B1 (en) * 2003-12-22 2009-12-29 Apple Inc. Transforming a hierarchical data structure according to requirements specified in a transformation template
US7500185B2 (en) * 2004-04-29 2009-03-03 Koninklijke Philips Electronics N.V. Framework of validating DICOM structured reporting documents using XSLT technology
US7721195B2 (en) * 2004-08-24 2010-05-18 Oracle International Corporation RTF template and XSL/FO conversion: a new way to create computer reports
US7966286B2 (en) * 2005-02-14 2011-06-21 Microsoft Corporation Hierarchical management of object schema and behavior
US7949941B2 (en) * 2005-04-22 2011-05-24 Oracle International Corporation Optimizing XSLT based on input XML document structure description and translating XSLT into equivalent XQuery expressions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1555534A (zh) * 2001-09-13 2004-12-15 �Ҵ���˾ 用于在网络中传送动态信息的方法和系统
CN1560763A (zh) * 2004-02-19 2005-01-05 北京大学 一种可扩展标记语言路径查询翻译为结构查询的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SGML Template Driven Database Extract: A New Approachto Report Generation. Chahuneau F. et at.SGML '96 GCA Conference. 1996
SGML Template Driven Database Extract: A New Approachto Report Generation. Chahuneau F. et at.SGML '96 GCA Conference. 1996 *

Also Published As

Publication number Publication date
JP2008541254A (ja) 2008-11-20
DE602006003649D1 (de) 2008-12-24
WO2006122886A1 (fr) 2006-11-23
CN101171582A (zh) 2008-04-30
AU2006248984B2 (en) 2010-12-23
EP1880325A1 (fr) 2008-01-23
EP1722307A1 (fr) 2006-11-15
JP4977128B2 (ja) 2012-07-18
AU2006248984A1 (en) 2006-11-23
CA2603908A1 (fr) 2006-11-23
US8468446B2 (en) 2013-06-18
ES2317546T3 (es) 2009-04-16
EP1880325B1 (fr) 2008-11-12
ATE414303T1 (de) 2008-11-15
CA2603908C (fr) 2014-03-25
KR101331532B1 (ko) 2013-11-20
BRPI0611363A2 (pt) 2010-09-08
ZA200709325B (en) 2008-11-26
KR20080027251A (ko) 2008-03-26
US20090265608A1 (en) 2009-10-22

Similar Documents

Publication Publication Date Title
CN100565521C (zh) 用于从数据库生成xml文档的动态方法
US5913214A (en) Data extraction from world wide web pages
US6502112B1 (en) Method in a computing system for comparing XMI-based XML documents for identical contents
EP1657649B1 (en) System and method for transforming legacy documents into XML documents
US5752021A (en) Document database management apparatus capable of conversion between retrieval formulae for different schemata
JP4141556B2 (ja) 構造化文書管理方法及びその実施装置並びにその処理プログラムを記録した媒体
US7756819B2 (en) Integrated authoring system for electronic technical manual and paper technical manual using logistics support analysis data and authoring method therefor
EP1430423A1 (en) Database management system
JP2007102814A (ja) ファイルを定義し管理する方法
WO2001018656A1 (en) Virtual server system for dynamic content in world wide web pages
JPH0830620A (ja) 構造検索装置
US20020002566A1 (en) Transfromation of marked up documents using a base architecture
US20050050444A1 (en) Cross-reference generation
JP2003281149A (ja) アクセス権限設定方法および構造化文書管理システム
WO2001018630A2 (en) Xml dynamic content retrieval using style and content definition sheets
Yu et al. Metadata management system: design and implementation
Song et al. Repox: An xml repository for workflow designs and specifications
JP3842572B2 (ja) 構造化文書管理方法および構造化文書管理装置およびプログラム
US20040024742A1 (en) Computer system
WO2001018657A1 (en) Dynamic content identifier for xml web pages
JP2003288365A (ja) 付加情報管理方法及び付加情報管理システム
Ghiselli et al. A unified access to extract knowledge from heterogeneous web archives
Benoit et al. IDUX: Internationalization of Data Using XML.
Müldner et al. Generic approach to internationalization of websites.
JP2002297603A (ja) 情報抽出方法および構造化文書管理装置およびプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant