将文档的元素与数据库中相应的字段、查询和/或过程相链接的制作方法

文档序号:6382807阅读:198来源:国知局
专利名称:将文档的元素与数据库中相应的字段、查询和/或过程相链接的制作方法
技术领域
本发明主要涉及将计算机生成文档中的元素与数据库中相应数据相链接的方法和系统。
背景技术
计算机软件应用程序允许用户创建各种有利于他们工作、教育和休闲的文档。例如,字处理应用程序允许用户创建信件、文章、书、备忘录等等。电子制表软件应用程序允许用户存储、处理、打印和显示各种字母数字数据。这样的应用程序具有大量众所周知的能力,包括丰富的编辑、格式化、打印和计算。
随着现代数据库的出现,用户能够收集和处理大量的与各种不同主题有关的数据。通常,数据库设置于用户的计算机,或者数据库可包括在远程服务器上,远程服务器包括远程基于因特网的服务器。许多用户常常可对一个单一的数据库存取,这些用户中的每一个用于都可以添加、删除和处理在这个数据库中所包含的数据。例如,如果许多用户组成一个项目小组来开发一种新型计算机软件的说明,则可以被指派每个用户在一给定数据库上所包含的共享文档库的访问。因此,如果第一用户修改了说明书中所包含的一部分数据,那么将在数据库上更新这种修改,并将可由其他用户访问。继而,另一个被授权的用户可获得对数据库的访问,来看看由第一用户所做的修改并进行其它的修改或更新。因此,每一个用户都可以合作的方式来开发和提供数据库中所包含和管理的数据。
通常,一个用户或一组用户必须使用给定的数据库向数据来组合成信件、备忘录、文章、电子制表或其它文档,用于向其他人显示数据。继续上述的实例,软件开发小组的成员可能需要在项目的各个节点上将在共享数据库中所包含他们的数据组合成一单独的文件,诸如说明书文档,以向新软件未来的用户或该项目的审查者显示该文档。遗憾的是,一旦准备了文档,该文档就变成由数据库组合数据的静态表示,象它在准备文档之前就存在的那样。如果项目小组的成员在准备了文档初始草案之后要更新数据库中的数据,那么就必须手工更新文档以反映文档所基于的数据中的变化。同样地,如果在文档的准备期间,成员修改了在文档中使用的数据,那么也必须手工修改数据库中的相应数据,以反映文档所做的修改,因为该文档不再反映数据库中所包含的数据。
因此,就需要有一种方法和系统,它能够将文档内容的部分与数据库中相应的字段或查询相映射和链接,以便对数据库中相应数据的更新能自动更新文档的相应部分,以及对文档各部分的更新也能自动更新数据库中相应的数据。这就是本发明所做的各种考虑。
发明概述本发明的实施例提供了用于将文档中的元素与数据库中相应的字段或查询相映射和链接的方法和系统。诸如字处理文档或电子制表文档这样的计算机生成文档的用户,将该文档的各个部分与数据库中的相应数据关联。按照本发明的一个方面,用诸如可扩展标记语言(XML)的标记语言的结构化元素来标注文档,以便将文档的各部分映射至数据库的相应数据。如果是用XML结构来标记文档的,则将一XML大纲附属于或关联于文档,用于设置文档的数据类型、数据结构和XML元素规则,因此用户可用符合选定大纲的适当的XML结构来标注文档。可替换地,用户可利用已经包含XML结构化的标注并已关联于XML大纲的文档。
在已经用一或多个元素来构成文档后,可选择一数据库用于关联于该文档。选择数据库可包括在数据库所保存的文档库内选择一特定的表,在文档库中该特定的表关联于该文档。在数据库中选定关联于文档的特定的表后,文档内的各个元素被映射至所选择的表内的相应数据字段或查询。查询可以表示为以诸如SQL这样的数据库语言编写的程序。可用存储过程表示查询,在这种情况下,文档中的元素可被映射至数据库中一特定的存储过程。将文档中的各个元素映射至所选择的数据库表内相应的数据字段或查询可包括,在文档中提供一唯一的文档标识符,以将每一个单个的元素链接(用于数据发送与接收)至所选择中的相应数据字段、查询或过程或存储过程。同样地,可在所选数据字段、查询或存储过程中提供唯一的标识符,以将各个数据字段、查询或过程链接至文档内相应的元素。
一旦文档内的各个元素与所选择的表或数据库内的相应数据相映射和链接,则对文档内的各个元素所做的修改就会自动引起与这些元素相映射和链接的相应数据字段、查询和/或过程的更新。如果文档元素链接至为这些元素提供数据的查询,那么它们一般也会链接至适合于更新能够用文档中元素内容更新数据库的查询,以便维护文档和数据库之间的双向链接。反过来,对所选择的数据库表内的各个数据字段、查询和/或过程所做的修改也会自动更新文档内相应的元素。如果元素与查询相链接,那么当文档中的元素刷新其数据时,它们将调用与最新一组结果相关联的查询。
可从以下对所揭示实施例的详细描述的考察及通过参考所附的附图和权利要求书,清楚地理解和认识到本发明的这些或其它特点、优点及方面。


图1是一提供适用于本发明典型操作环境的计算机及其相关外部设备和网络化设备的方框图。
图2是一说明文档和数据库之间交互的简化方框图,其中文档内的各个元素与数据库内的相应的数据字段、查询和/或过程相映射和链接。
图3示出用于创建文档和将文档内的元素与数据库中相应的数据字段、查询和/或过程链接的软件应用程序的计算机屏幕显示。
图4示出用于创建文档和将文档内的元素与数据库中相应的数据字段、查询和/或过程链接的软件应用程序的计算机屏幕显示。
图5是一映射用户界面的数据字段的简化方框图,该用户界面可允许用户将文档内的各个元素映射至数据库内相应的数据字段、查询和/或过程。
图6和7是流程图,说明了文档元素与数据库的相应数据字段、查询和/或过程相映射和链接的方法。
详细说明本发明实施例的下列描述参考了上述附图,在上述附图中,相同的数字在各图中表示相同的部分或组件。本发明专注于将文档的元素与数据库中的数据字段、查询和/或过程相映射和链接的方法和系统。
操作环境图1和以下的讨论试图提供一个适合于实现本发明的计算环境的简洁、概括的描述。当采用在结合个人计算机的操作系统上运行应用程序的基本内容描述本发明时,本领域的熟练技术人员都会认识到还可结合其它程序模块来实现本发明。一般来说,程序模块包括完成具体任务或实现具体抽象数据类型的例程、程序、组件、数据结构等等。而且,本领域熟练技术人员还会理解到本发明还采用其它计算机系统结构来实践,包括手持设备、微处理器系统、基于微处理器或可编程的消费电子产品、蜂窝电话、小型计算机、大型计算机等等。本发明还可以分布式计算环境来实践,在该计算环境中,任务由通过通信网络连接的远程处理设备完成。在分布式计算环境中,程序模块可设置在本地和远程存储器设备中。
参考图1,实现本发明的典型系统包括传统的个人计算机20,它包括处理单元21、系统存储器22,将系统存储器与处理单元21相耦合的系统总线23。系统存储器22包括只读存储器(ROM)24和随机存取存储器(RAM)25。基本输入/输出系统26(BIOS)存储在ROM24中,它包含帮助在个人计算机20内的部件之间传递信息的基本例程,诸如在启动期间。个人计算机20还包括硬盘驱动器27、磁盘驱动器28,例如,可读写的移动磁盘29,以及光盘驱动器30,例如,可读取的CD-ROM盘31或可读写的其它光介质。硬盘驱动器27、磁盘驱动器28和光盘驱动器30分别通过硬盘驱动器接口32、磁盘驱动器接口33和光盘驱动器接口34连至系统总线23。驱动器及其相关的计算机可读介质为个人计算机20提供非易失性的存储。尽管以上计算机可读介质的描述是指硬盘、可移动磁盘和CD-ROM盘,但本领域熟练技术人员应该理解,典型的操作环境也可以使用计算机可读的其它类型介质,诸如磁带盒、闪存卡、数字视盘、伯努利盒(Bernoulli cartridge)等等。
在驱动器和RAM25中可以存储许多程序模块,包括操作系统35、一或多个应用程序100、字处理程序模块37(或其它类型的程序模块)、诸如旅客名单38的程序数据及其它程序模块(未示出)。
用户可通过键盘40和诸如鼠标42的定点设备,将命令和信息输入个人计算机20。其它输入设备(未示出)可包括话筒、操纵杆、游戏垫、卫星天线、扫描仪或其它等等。这些或其它输入设备常常通过连接在系统总线的串行端口接口46连至处理单元21,但也可通过其它接口连接,诸如游戏端口或通用串行总线(USB)。监视器47或其它类型的显示设备也是通过诸如视频适配卡48的接口连至系统总线23。除了监视器,个人计算机一般包括其它外围输出设备(未示出),诸如扬声器或打印机。
个人计算机20可利用逻辑连接一或多台远程计算机,诸如远程计算机49,运行于网络环境中。远程计算机49可以是服务器、路由器、对等设备或其它普通网络节点,且一般包括许多或所有有关个人计算机20所述的部件,尽管在图1中只示出了存储器设备50。图1所示的逻辑连接包括局域网(LAN)51和广域网(WAN)52。这样的网络环境在办公室、企业范围的计算机网络、企业内部互联网和因特网中是常见的。
当用于LAN网络环境中,个人计算机20是通过网络接口53连至LAN51的。当用于WAN网络环境中,个人计算机20一般包括调制解调器54或其它在诸如因特网这样的WAN52上建立通信的工具。调制解调器54可以是内置的或外置的,它通过串行端口接口46连至系统总线23。在网络环境中,有关个人计算机20所述的程序模块,或其部分,可存储在远程存储器设备中。应该理解的是所示的网络环境只是用于举例,且也可以使用在计算机间建立通信连接的其它方式。
运行图2是示出文档和数据库之间交互的简化方框图,其中,文档内的各个元素与数据库内相应的数据字段、查询和/或过程相映射和链接。依照本发明实施例,用户将文档内的元素关联于数据库中的相应数据字段、查询和/或过程。如图2所示,示出的例示文档210可用于将文档内的元素链接包含在数据库205中相应的数据字段、查询和/或过程。本领域熟练技术人员应该理解,文档210是例示文档,可由各种软件应用程序创建和使用,包括字处理应用程序、电子制表应用程序、网络浏览器应用程序等等。仅仅为了示例,文档210是例示性的字处理文档,其中用户在准备一份具有标题212和教育部分213的简历。本领域的熟练技术人员应理解,图2所示的文本只是为了示例,而输进文档的数据可以是任意类型的格式,包括用于创建文档的软件应用程序所允许的字母数字文本和图像。
为了规范文档210内的元素与数据库205中相应数据字段、查询和/或过程的映射和链接,文档210内的元素采用结构化的标注,以便这些元素可以被识别并能指向数据库内的相应数据字段、查询和/或过程。依照本发明实施例,使用诸如可扩展标记语言(XML)这样的标记语言为文档210提供结构化标注。如文档210所示,XML元素<title>元素应用于该文档来为该文档的标题部分212提供结构,而<education>元素215应用于该文档为该文档的教育部分213提供结构。
通过为该文档提供唯一的标识符(ID)编号和通过将该唯一文档ID关联于数据库的一给定表中的一给定记录,将文档元素与数据库中相应的数据字段、查询和过程相链接和映射。因此,当修改文档中相应元素时,就可在数据库中找到正确的记录,而当修改数据库中相应记录时,可在文档中找到正确的元素。最好将唯一的ID编号存储在文档中。
为了给文档提供一组语法规则,以管理在文档中可能包括的数据的类型和结构,如图2所示的,将XML大纲(XML schema)附属于或关联于文档,以提供管理用户用来标注文档的每个XML元素的规则。例如,简历文档可有一个诸如“resume-schema.xsd”这样的附属的或关联的大纲文件230,以提供诸如<title(标题)>、<education(教育)>、<experience(经历)>、<personalinterest(个人兴趣)>等许用的XML元素组。大纲(schema)文件包括管理可将那些元素应用于文档的顺序的规则和与应用于文档的各个元素关联的具体规则。例如,图2所示的附属于或关联于简历文档的大纲可规定,关联于<education(教育)>元素的数据必须包括学院或大学的名称,后面跟着该学院或大学的地址。
正如本领域熟练技术人员所理解的,XML大纲文件的开发者确定XML元素的名字以及该元素所允许的相关数据类型和数据结构。那么,所有按照给定大纲文件230以XML结构来标注文档的用户,均可利用包含于XML结构内的数据而不用考虑文档的总体类型和结构。例如,如果将示于图2的简历文件传给预期的雇主,预期的雇主可开发软件应用程序,用于解析该文档以在文档内找到适用于预期雇主使用的特定类型的数据。例如,预期的雇主,可能想要创建一个预期的雇员是从那些学院和大学毕业的学院和大学的数据库。使用附属于文档的大纲文件230,预期的雇主将了解到与<education>元素有关的数据已按照管理该文档的大纲文件准备好。因此,预期的雇主可开发软件应用程序,用于找到<education>元素并提取与其关联的数据,插入到预期的雇主的数据库中。如上所述,为了能链接<education>元素,例如,与数据库中的一个教育记录和链接,就必须在文档中存储唯一的标识符(ID)编号,用于将该文档及其元素与数据库中相应的记录关联起来。
按照这个实例,预期的雇主不用考虑文档的其它方面,诸如标题部分的位置和其中所包含的数据,就可提取这个数据。文档的每个用户都遵循附属于或关联于文档的大纲文件中所规定的数据类型和数据结构规则的事实,使这成为可能。大纲文件230可附属于该文档,或者大纲文件可保存在一个单独的地方,诸如文档可访问的大纲文件库。也就是说,文档可包含一文件路径指针或一唯一的名字空间标识符(例如,URI或URN),用于定位和/或识别大纲文件230,以提供管理文档的XML结构的文档规则。
如上简述,文档的元素,诸如<title>和<education>元素可与数据库205内的数据字段、查询和/或过程相链接,因此,相应的数据字段、查询和/或过程中所更新的信息将自动地更新在文档内所包含的相应的元素中的数据,反之亦然,如下所述。
对数据库的更新可通过各种影响数据库多个字段和表的查询完成,例如使用结构化查询语言(SQL)。除了直接来自于各个数据字段,文档中的数据可来自一个查询的结果,这个查询根据各种选择标准将来自数据库中的许多字段和/或表的信息来组合。此外,正如本领域熟练技术人员所理解的,许多数据库可支持存储过程的使用,存储过程是对数据库执行命令以向数据库写入数据、从数据库提取数据及处理数据库中数据的程序。
除将数据字段与文档中的元素关联之外,也可将查询和存储过程与文档中的元素关联。为了使元素和查询之间的链接“双向”(读-写),或者“单向”(只读),可为每个元素创建两种类型的查询。如果只为从数据库读取数据而提供一个查询,那么对数据的改变只能在允许只读文档的数据库中进行。另一方面,如果只提供根据文档中的数据来更新数据库的一个查询,那么只能改变文档来更新数据库。如果提供两个查询,其中一个查询是用于从数据库读取数据而一个查询是用于写入数据库,则需要创建双向链接。因此,可更新文档或数据库,且另一个将自动继承所更新的内容。在一些实施例中,只具有单向链接可能是较佳的。例如,数据库管理员可能更喜欢对具体数据字段的改变只可由更新数据库而不是文档来进行。那么将只需要从数据库读取最新数据的查询,来保持文档相对于数据库是最新的。
例如,假设用户是专利代理人,其任务是写专利申请。在他/她的公司里的每个专利申请都分配一个唯一的文档标识符(ID)编号。还假设他的公司使用数据库来存储专利代理人名字和分配给每个代理人的专利申请之间的关联。如果已为他/她分配了特定的专利申请文档,那么数据库包含一条记录,通过将他/她的名字与文档ID存储在一给定数据库表中的同一数据记录中,将他/她识别为该专利申请文档的所有者。除将这条信息存储于数据库中以外,申请文档本身的格式要求文档ID和代理人名字出现在其中。如果没有本发明,代理人的名字就不得不输入数据库,且如果在数据库中代理人名字改变(例如,该申请被重新分配给公司的另一个代理人),将不得不手工编辑申请文档,用新的代理人名字来取代先前的代理人名字。
依照本发明的一个实施例,提供一种装置将与数据库中相应数据的合适关联插入文档,因此如果修改给定数据库表中的相应数据记录时(例如,不同的代理人所分配到的申请文档),文档将自动反映这个改变并更新出现在文档中的代理人名字。如果关联是“双向”的,意味着也为文档指定了一种更新数据库的方式,即可在文档中改变代理人名字,并且也在数据库中更新这个改变。通过在文档中用适当的标记元素来标记代理人的名字(例如<AttoreyName>,如果用XML)并指定该元素与数据库中适当的查询之间的映射(例如,由数据库中用于读取数据库的称为“GetCurrentAttorneyName”的存储过程和另一个用于写入数据库的称为“SetCurrentAttorneyName”的过程代表),可创建“双向”的关联或通信。可将这种关联本身存储在文档中或在与文档关联的程序模块的某一部分中。
在数据库205中,可创建相应于在文档210内所包含的规定元素的数据字段、查询和/或过程,以接收、存储、排序和维护关联于该元素的数据。例如,图2所示的简历文档210的用户,可在数据库205中准备一条包含关联于<education>元素215的数据字段的数据库记录,来维护放置在简历文档210的教育部分213中的数据。应该理解的是,可按照各种数据的逻辑关联来组织数据库。特定的数据、查询或过程可存储在特定的字段中。许多关联于文档的字段可组合在一条数据库记录中。数据库表可包括许多关联于一类文档的记录。
一旦在数据库205中建立了相应的数据字段,如上所述的唯一文档ID使写入文档210并关联于<education>元素的,将该元素指向包含具有<education>元素数据的数据字段的数据库205中的相应记录。同样地,唯一的文档ID可用于将包含教育数据的数据字段向后链接至文档210的<education>元素。因此,当相应于这个具体文件的数据库(205)记录的教育字段中的数据被更新时,在简历文档210中所包含的教育部分213中的数据也被自动更新。反之,如果用户改变了在文档210中所包含的教育部分213中的数据,那些改变被自动地送到数据库205中适当记录的教育数据字段,以更新那里所包含的数据。
正如本领域熟练技术人员应当理解的,软件应用程序模块可以写入到文档软件应用程序和数据库软件应用程序中,当数据在数据库或者文档中被修改时,用于调用相应的数据字段、查询和/或过程或者调用相应的文档元素,以请求更新相应数据字段或相应文档的元素数据。用于控制文档元素和相应数据字段之间以及反过来的通信的软件应用程序模块,可以是为文档应用程序和/或数据库应用程序所编写的软件程序模块,或者程序模块可作为文档应用程序和/或数据库应用程序访问的应用程序编程接口或动态链接库来使用。数据库205的数据库应用程序和相应的存储器可设置于远离用户计算机20的、通过基于因特网的网络服务器或数据库服务器或通过与远程数据库服务器的因特网连接可访问用户的计算机的远程计算机服务器49上。
依照本发明的一个实施例,数据库205可包含文档库220,在文档库220中,可将各种规定的文档类型连同关联的数据字段、查询和/或过程一起保存。如下面将描述的,用户可通过用户的文档应用程序从文档库220中选择一种文档类型,来打开一个已经被结构化标注的并关联于数据库内相应数据字段、查询和/或过程的特定文档。例如,如果用户是准备专利申请说明书文档的项目小组成员,则可将专利申请说明书文档包含在文档库220中。当用户想要工作于专利申请说明书文档时,用户可通过数据库205从文档库选择专利申请说明书文档。打开专利申请说明书文档,使得用户可使用具有所有结构化标注的用户文档来取代原文档。例如,专利申请说明书文档可以采用包含XML标记标注和关联XML大纲和文件路径指针的模板的形式,允许用户从数据据库205中相应数据字段、查询和/或过程下载数据开始准备文档,或者用户可以通过向文档插入数据来准备文档,并随后将文档自动发送至在数据库205内的所包含相应数据字段、查询和/或过程。
如图2所示,一旦从数据库侧的文档库220中选择了一个给定文档之后,用户就可访问与简历文档210关联的、用于简历文档的数据字段、查询和/或过程。因此,用户可更新在各个数据字段、查询和/或过程225中所它含的数据,以便能自动更新在相应文档210中的数据。数据库205可运行在共享数据环境中,在这样的数据环境中,许多用户可访问诸如简历文档数据库225这样的单一数据库,来添加、删除和一般地更新在相应数据字段、查询和/或过程中包含的数据。因为诸如简历文档225中标题数据字段的各个数据字段都可与简历文档210的相应标题段212相映射和链接,所以对在简历文档225包含的标题数据字段中的数据的修改都将引起在文档标题段212中包含的信息的更新。例如,如果简历文档225的标题段中的数据从“John Doe”修改为“JaneDoe”,包含在简历文档210的标题段中的信息将自动从“John Doe”修改为“Jane Doe”。同样地,如果用户打开简历文档210,并将标题从“John Doe”修改为“Jane Doe”,则在数据库205包含的简历文档数据字段225的标题段中的数据同样将被自动更新。
图3示出了一个创建文档和将文档内的元素链接至数据库中相应数据字段、查询和/或过程的软件应用程序的计算机屏幕显示。依照本发明的一个实施例,且如上简述,可在数据库205访问文档库220,用于获得映射至相应的数据库的先前所创建的文档,或用于获得一个文档模板,可用于创建映射至相应的数据库的文档。参考图3,一旦选择了用户文档应用程序300的典型文档库按钮310后,就可启动文档库用户界面320来为用户提供适用文档或文档类型的列表。例如,用户可从文档库用户界面320选择简历文档325来着手图2所示的简历文档210的编辑。
一旦用户通过从文档库用户界面320中选择简历文档来着手简历文档210的编辑时,就向用户显示简历文档210用于编辑。依照本发明的一个实施例,所编辑的简历文档可包括简历文档210的最新版本,它包括填充在每一个文档元素中的、来自数据库205的相应数据字段、查询和/或过程的数据,因为文档元素是通过将唯一文档ID与相应数据库记录匹配来关联于相应数据库记录。如以上参考图2所述,一旦用户更新了在简历文档210的各种元素中所包含的数据时,也更新了在数据库205的相应数据字段、查询和/或过程中所包含的数据。同样,对在数据库205的相应数据字段、查询和/或过程中所包含的数据的修改将自动更新在简历文档210的数据元素中所包含的相应数据。
可替换地,列于文档库用户界面320的文档可包括各种可由用户访问的模板文档,用于关联于数据库205中的相应数据字段、查询和/或过程。依照本发明的一个实施例,各种文档类型可包括许多诸如XML元素的结构化元素来形成所要求的文档的模板。在用户完成了所选定的文档后,例如,完成了简历文档210的教育部分,用户可在数据库205上选择一个数据位置,该数据库205包含相应于所选定的文档的预格式化的数据元素的数据字段、查询和/或过程。因此,当用户保存准备好的文档时,插入文档的数据也将被保存到数据库205的相应数据字段、查询和/或过程中。然后,如上所述,任何时候数据库中相应数据字段、查询和/或过程被修改或更新,则文档中的相应元素将同样被修改或更新,反之亦然。如果创建新文档并保存到文档库或数据库中,可为它自动生成一个新文档ID,因此能在数据库中创建相应于该文档的一条记录。
参考图4,并依照本发明的一个实施例,可结构化目前未被映射或链接至相应数据库的文档,以便将各种文档元素链接至数据库中的相应数据字段、查询和/或过程。例如,如果用户准备诸如简历文档210这样的一个文档时,通过在他/她的字处理器300的数据输入区305中准备文档,用户可从文档库用户界面320中选择简历的文档类型,参考图3所述,以便为用户提供建议的元素列表来应用于用户正在准备的文档。如在图4中所示,在响应简历文档类型的选择时,可为用户提供一个建议的简历元素窗格350,来为用户提供建议的元素,用于使用XML结构标注的简历文档。依照本发明的一个实施例,用户可输入文档并手工插入XML元素,诸如<education>元素360,或者用户可将他的光标365放在文档的教育部分内并从窗格350中选择教育元素355来用<education>元素自动标注文档的所选区域。用户用XML结构标注文档时,可提供XML树视图窗格340来向用户显示XML应用于文档的架构。
一旦用结构诸如XML元素结构来标注新创建文档,文档元素可被链接至相应的数据字段、查询和/或过程来允许文档和数据库205之间的通信,如上所述。依照本发明的一个实施例,向用户提供用于标注文档的建议元素,可采用背射方式预先填充在数据库205的相应数据字段、查询和/或过程中。因此,具有建议的元素之一的文档的标注不仅可为文档提供所要求的结构,而且还指向数据库205中相应的数据字段。
可替换地,参考图5,可为用户提供映射数据字段的用户界面500,用于将文档的元素映射至数据库205中的相应数据字段、查询和/或过程。如图5所示,可将文档的元素列表连同一个可将文档元素映射和链接到的数据字段、查询和过程的关联列表一起填充到用户界面500中。应该理解的是,用户界面500可同样应用于将文档元素映射至查询540和过程545。也就是说,如图5中所示,可将用户界面扩展到包括用于文档和数据库之间数据读与写的查询(例如,SQL语句)或存储过程的名称。
例如,如果用户要求插入文档的标题段的数据应该映射和链接至数据库205的标题字段,用户可选择标题数据字段后再选择<title>元素,以便将文档的标题元素映射和链接至数据库205的标题数据字段。因此,在将标题元素映射至数据字段之后,对文档的标题部分或者数据库205的数据字段中所包含的数据的其它修改,都将引起相应文档元素或数据字段的修改,且反之亦然。一旦所有要求的文档和元素都映射和链接至相应的数据字段、查询和/或过程之后,用于将文档与记录或适当的数据组相关联的唯一ID就存在了,从而建立了文档元素和相应数据字段、查询和/或过程之间的数据通信。
图6和7是流程图,说明了将文档元素映射和链接至数据库的相应数据字段、查询和/或过程的方法。600的方法始于开始步骤605,并运行至步骤610,在这里为保存和处理数据建立数据库或表205。为了图6和7的讨论,例如,假设在数据库205建立一个表,以保存用于准备最后的专利申请说明书文档的数据。在步骤615,对用户是否必须创建新文档做出判定。如果否,方法继续至步骤635,且可将诸如“patentspecificationdocumentschema.xsd”这样的大纲附属于一个现有的专利申请说明书文档,以提供可用于以XML结构来标注文档的规则和过程。在步骤640,将这个大纲附属于现有文档。可替换地,文档可已具有附属的或关联的大纲。
如果在步骤615做出必须创建新文档的判定,则方法继续至步骤620,且用户可创建新的专利申请说明书文档并在文档中存储用来将文档元素链接至记录在数据库中的唯一文档ID,如上面参考图3、4和5所述。在步骤625,执行对数据库205的检查来判定用户所创建的新文档的大纲是否是可用的。如上面参考图3和4的所讨论的,可通过选择文档库来确定在数据库205的文档库是否包括可与用户创建的新文档关联的文档类型来做出这一判定。例如,如在图3中所示,用户可从文档库用户界面320选择专利揭示文档类型,且在步骤630,可获得关联于专利公开文档类型的大纲并将它附属于用户正在准备的新文档。
在步骤645,按用户要求用XML元素标注由用户所创建和/或选择的文档。应该理解的,如果用户在步骤615选择了一个现有的文档,则可要求这个文档不附加结构化标注。在步骤650,用户可指定数据库205内的表来将文档元素关联于数据库205的那张表中所保存的相应数据字段、查询和/或过程。在步骤655,如上面参考图4和5所述,文档中的元素映射和链接至数据库205中给定表内的数据字段、查询和/或过程,以帮助文档中元素与数据库205中的数据字段、查询和/或过程之间的数据通信。
再参考步骤645,如果未在数据库205准备好了用于保存关联于由用户所创建文档的数据的表,则用户可为在文档中包括的XML元素指定具有在选定表中的相应数据字段、查询和/或过程。例如,数据库205可包含许多表,这些表又包括许多数据字段、查询和/或过程或文档类型。可在数据库205内建立这个表,用于保存关联于专利申请说明书文档的数据。在为专利申请说明书文档创建的表内,也可创建各种子文件来保存各个专利申请说明书文档的数据。在每个子文件内,可创建各种数据字段、查询和/或过程以关联在由用户创建的专利申请说明书文档内包含的各个元素。
在步骤660,可在选定表内建立各个数据字段、查询和/或过程,用于关联应用于文档的XML元素。依照一个实施例,文档的标注和将文档映射至建议的数据字段、查询和/或过程,如上面参考图5所述,在选定表内建立了相应的数据字段、查询和/或过程。可替换地,在步骤665,用户可直接输入数据库205,并创建具有数据字段、查询和/或过程的表,当应用于用户所创建的文档时,这些数据字段、查询和/或过程可映射至所选定的文档元素。
一旦准备了文档并用XML结构来标注这个文档,且一旦建立了包含相应于文档元素的数据的数据字段、查询和/或过程,方法继续至图7的步骤670,这时可开始表和文档的正式使用。在步骤675,如果用户修改并保存文档,该方法继续至步骤680,且通过更新表中相应的数据字段、查询和/或过程,在表中更新在文档各种元素中所修改和保存的数据。另一方面,在步骤685,如果用户直接对在相应于文档中元素的数据字段、查询和/或过程中包含的数据做出修改,方法继续至690,且在相应数据字段、查询和/或过程中的相应数据修改时,自动更新关联于文档中相应数据元素的数据。这个方法在步骤695结束。
如上所述,提供了用于将文档的元素与数据库中相应的数据字段、查询和/或过程相映射和链接的方法和系统。对于那些本领域熟练技术人员来说,在不脱离本发明的范围和精神的情况下,对本发明做出各种修改或改变将是显而易见。通过研究在此所揭示的本发明的说明与实践,本发明的其它实施例对于那些本领域熟练技术人员将是显然的。
权利要求
1.一种将一计算机生成文档中的元素与一数据库中的相应数据相链接的方法,包括将一标记语言的元素应用于所述文档;将所述文档中一或多个标记语言元素与所述数据库中的相应数据相链接;将数据输入至关联于所述文档中给定标记语言元素的所述数据库中;以及响应将数据输入至关联于所述文档中给定标记语言元素的所述数据库中,自动将数据写至所述文档的一位置中,所述位置在所述文档中关联于给定标记语言元素。
2.如权利要求1所述的方法,还包括,在所述数据库内建立数据字段,用于链接至所述文档中的相应标记语言元素。
3.如权利要求2所述的方法,还包括,编写所述文档的一唯一文档标识符,用于将所述数据库中的数据字段与所述文档相链接。
4.如权利要求3所述的方法,还包括编写对数据库的一数据库查询,用于采用所述数据库内的一或多个数据字段来组合数据;以及将所述数据库查询的结果写入所述文档的一位置中,所述位置在所述文档中关联于所述数据库查询。
5.如权利要求4所述的方法,还包括,将所述数据库查询与所述文档中的一给定标记语言元素关联,用于将所述数据库查询的结果写入所述文档的一位置中,所述位置在所述文档中关联于所述数据库查询。
6.如权利要求5所述的方法,还包括,将一编程过程存储在所述数据库中,用于从所述数据库读取数据,以及用于将数据写至所述文档的一位置中,所述位置在所述文档中关联于所述给定标记语言元素。
7.如权利要求6所述的方法,还包括当更新关联于所述数据库查询的所述数据库中数据时,更新所述数据库查询的结果;以及当更新所述数据库查询结果时,执行所述编程过程。
8.如权利要求7所述的方法,其特征在于,所述过程采用“GetCurrentMarkupElementData(取当前标记元素数据)”的格式。
9.如权利要求3所述的方法,还包括将数据输入至关联于一给定标记语言元素的所述文档;以及响应将数据输入至关联于一给定标记语言元素的所述文档,自动将输入所述文档的数据写至链接于所述给定标记语言元素的所述数据库中的一数据字段。
10.如权利要求9所述的方法,还包括编写一对所述数据库的数据库查询,用于将输入所述文档的数据写至链接于所述给定标记语言元素的所述数据库中的一数据字段。
11.如权利要求10所述的方法,还包括,将所述数据库查询与所述文档中一给定标记语言元素关联,用于将输入所述文档的数据写至链接于所述给定标记语言元素的所述数据库中的一数据字段。
12.如权利要求11所述的方法,还包括,在所述数据库中存储一编程过程,用于如所述查询所要求的将输入所述文档的数据写至链接于所述给定标记语言元素的所述数据库中的一数据字段。
13.如权利要求12所述的方法,其特征在于,所述过程采用“SetCurrentMarkupElementData(设置当前标记元素数据)”的格式。
14.如权利要求1所述的方法,在对所述文档应用一标记语言的元素之前,将一大纲附属于所述文档来定义关联于要应用于所述文档的一标记语言的规则。
15.如权利要求14所述的方法,其特征在于,所述标记语言是可扩展标记语言。
16.如权利要求14所述的方法,其特征在于,所述标记语言是超文本标记语言。
17.如权利要求1所述的方法,其特征在于,所述将文档中的一或多个标记语言元素链接至数据库中相应数据字段的步骤还包括提供一在所述文档内包含的标记语言元素的列表;提供一用于链接至所述文档中相应的标记语言元素的数据字段的列表;从所述标记语言列表中选择一标记语言列表;从所述数据字段列表中选择一数据字段,用于将所述选择的数据字段链接至所述选择的标记语言元素;以及在从所述数据字段列表中选择所述数据字段用于将所述选择的数据字段链接至所述选择的标记语言元素后,将所述选择的数据字段链接至所述选择的标记语言元素。
18.一种将在一计算机生成的文档中的元素与一数据库中的相应数据相链接的方法,包括将一标记语言的元素应用于所述文档;将在所述文档中一或多个标记语言元素与所述数据库中的相应数据相链接;为所述文档编写一唯一文档标识符,用于将在所述文档中的一或多个标记语言元素与在所述数据库中的相应数据相链接;将数据输入与在所述文档中一给定标记语言元素关联的所述数据库中;在响应将数据输入至与在所述文档中给定的标记语言元素关联的所述数据库中时,自动将所述数据写入所述文档的一位置中,所述位置在所述文档中关联于所述给定的标记语言元素;将数据输入与一给定的标记语言元素关联的文档中;以及响应将数据输入与一给定的标记语言元素关联的文档中,自动将所述输入到文档中的数据写入链接至所述给定的标记语言元素的数据库中的一数字字段中。
19.如权利要求18所述的方法,还包括在所述数据库内建立数据字段,用于链接至在所述文档中的相应标记语言元素。
20.如权利要求19所述的方法,还包括将一第一数据库查询写入所述数据库中,用于采用所述数据库内的一或多个数据字段来组合数据,以及用于将所述第一数据库查询的结果写入到所述文档的一位置中,所述位置在所述文档中关联于所述数据库查询;将一第二数据库查询写入所述数据库中,用于将输入到所述文档的数据写入关联于所述给定的标记语言元素的数据库中的一数据字段中。
21.如权利要求20所述的方法,还包括将所述第一和第二数据库查询与所述文档中一给定的标记语言元素关联。
22.如权利要求21所述的方法,还包括将一第一编程过程存储在所述数据库中,用于从所述数据库中读取数据以及用于将数据写入所述文档的一位置中,所述位置在所述文档中关联于所述给定的标记语言元素。
23.如权利要求22所述的方法,还包括当更新在关联于所述数据库查询的数据库中的数据时,更新所述数据库查询的结果;以及当更新所述数据库查询的结果时,执行所述第一编程过程。
24.如权利要求23所述的方法,还包括将一第二编程过程存储在所述数据库中,用于如所述查询所要求的将所述输入到文档的数据写入被链接到所述给定的标记语言元素的数据库的一数据字段中。
25.如权利要求24所述的方法,其特征在于,所述标记语言是可扩展标记语言。
26.如权利要求25所述的方法,其特征在于,所述标记语言是超文本标记语言。
27.如权利要求18所述的方法,其特征在于,所述将所述文档中一或多个标记语言元素与所述数据库中相应的数据字段相链接的步骤还包括提供一在所述文档中包含的标记语言元素列表;提供一为链接至所述文档中相应的标记语言元素而建立的数据字段列表;从所述标记语言元素列表中选择一标记语言元素;从所述数据字段列表中选择一数据字段,用于将所述选择的数据字段链接至所述选择的标记语言元素;以及一旦从所述数据字段列表中选择所述数据字段,用于将所述选择的数据字段链接至所述选择的标记语言元素时,所述选择的数据字段与所述选择的标记语言元素相链接。
28.一种可存储计算机可执行指令的计算机可读介质,当由一计算机执行所述指令时,执行权利要求18所述的步骤。
29.一种将在一计算机生成的文档中的元素与一数据库中相应数据字段相链接的方法,包括在所述文档中一或多个标记语言元素和所述数据库中相应的数据字段之间提供一通信链接;将数据输入至关联于一给定标记语言元素的文档中;以及响应将将数据输入至关联于所述给定标记语言元素的文档中,所述数据自动保存到相应于所述给定标记语言元素的数据库中的一数据字段。
30.如权利要求29所述的方法,在提供所述文档中一或多个标记语言元素与数据库中相应的数据字段之间一通信链接的步骤之前,从一包含用一或多个标记语言元素标注的文档和关联于所述数据库的文档的文档库中选择所述文档,所述数据库包含为链接至所述一或多个标记语言元素而建立的数据字段。
31.如权利要求30所述的方法,其特征在于,提供所述文档中一或多个标记语言元素与数据库中相应的数据字段之间一通信链接的步骤还包括提供一在所述文档中包含的标记语言元素列表;提供一为链接至所述文档中相应的标记语言元素而建立的数据字段列表;从所述标记语言元素列表中选择一标记语言元素;从所述数据字段列表中选择一数据字段,用于将所述选择的数据字段链接至所述选择的标记语言元素;以及一旦从所述数据字段列表中选择所述数据字段,用于将所述选择的数据字段链接至所述选择的标记语言元素时,所述选择的数据字段与所述选择的标记语言元素相链接。
32.如权利要求31所述的方法,其特征在于,所述选择的数据字段与所述选择的标记语言元素相链接的步骤包括,为所述文档编写一唯一的文档标识符,以及将所述唯一的文档标识符与所述选择的标记语言元素关联,以及将所述唯一的文档标识符与所述选择的数据字段关联,以将所述选择的标记语言元素指向所述数据库中选择的数据字段。
33.一种可存储计算机可执行指令的计算机可读介质,当由一计算机执行所述指令时,执行下列步骤将一文档中的一或多个XML元素与一数据库中相应的数据字段相链接;将数据输入关联于一给定XML元素的文档中;以及响应将数据输入关联于所述给定XML元素的文档中,所述数据自动保存到所述数据库中相应于所述给定XML元素的一数据字段。
34.如权利要求33所述的计算机可读介质,在所述将文档中的一或多个XML元素与数据库中相应的数据字段相链接的步骤之前,从一包含用所述一或多个XML元素标注的文档和所述关联于数据库的文档的文档库中选择所述文档,所述数据库包含为链接至所述一或多个XML元素的数据字段。
35.如权利要求34所述的计算机可读介质,其特征在于,所述将文档中的一或多个XML元素与数据库中相应的数据字段相链接的步骤还包括提供一包含在所述文档中的XML元素列表;提供一为链接至所述文档中相应的XML元素而建立的数据字段列表;从所述XML元素列表中选择一XML元素;从所述数据字段的列表中选择一数据字段,用于将所述选择的数据字段链接至所述选择的XML元素;以及一旦从所述数据字段列表中选择所述数据字段,用于将所述选择的数据字段链接至所述选择的标记语言元素时,所述选择的数据字段与所述选择的标记语言元素相链接。
36.如权利要求35所述的计算机可读介质,其特征在于,所述将文档中的一或多个XML元素与数据库中相应的数据字段相链接的步骤包括,为所述文档编写一唯一的文档标识符,以及将所述唯一的文档标识符与所述选择的XML元素关联,以及将所述唯一的文档标识符与所述选择的数据字段关联,以将所述选择的XML元素指向所述数据库中选择的数据字段。
37.如权利要求36所述的具有可存储计算机可读指令的计算机可读介质,当由一计算机执行所述指令时,还执行下列步骤将数据输入至一给定的数据字段中;将所述数据保存到所述给定的数据字段中;以及响应将所述数据保存到所述给定的数据字段中,所述数据自动保存所述文档的一位置中,所述位置在所述文档中关联于一给定的相应于所述给定的数据字段的XML元素。
全文摘要
提供用于将文档中的元素与数据库中相应的字段或查询相映射和链接的方法和系统。采用诸如可扩展标记语言(XML)的标记语言的结构化元素来标注文档,以便将文档各部分映射至相应的数据库。一旦文档内的各个元素与一选定的数据库内的相应数据字段或查询相映射和链接,对文档内各个元素所做的修改会自动引起那些元素所映射和链接的数据库中相应数据的更新。反之,对所选数据库内各个数据字段的修改也会自动更新文档内相应的元素。
文档编号G06F17/21GK1527226SQ200410005390
公开日2004年9月8日 申请日期2004年2月12日 优先权日2003年2月13日
发明者B·M·琼斯, B M 琼斯, M·萨维基 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1