CN102142014A - 导入和导出位于元数据注册***中的元数据的***和方法 - Google Patents
导入和导出位于元数据注册***中的元数据的***和方法 Download PDFInfo
- Publication number
- CN102142014A CN102142014A CN2011100325052A CN201110032505A CN102142014A CN 102142014 A CN102142014 A CN 102142014A CN 2011100325052 A CN2011100325052 A CN 2011100325052A CN 201110032505 A CN201110032505 A CN 201110032505A CN 102142014 A CN102142014 A CN 102142014A
- Authority
- CN
- China
- Prior art keywords
- metadata
- user definition
- definition object
- accreditation system
- processor
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
公开了导入和导出位于元数据注册***中的元数据的***和方法。一种用于传送元数据的方法,包括:使用处理器将元数据注册***中的对象分离为***定义对象和用户定义对象;使用该处理器识别用户定义对象的协调集合,以基于该用户定义对象与其它对象之间的关系而进行导出;以及使用该处理器导出该用户定义对象的协调集合。用于传送元数据的方法还可以包括:使用处理器接收用于导入到元数据注册***中的用户定义对象的协调集合;以及使用该处理器将该用户定义对象的集合导入到所述元数据注册***中,所述导入包括验证该用户定义对象的集合的协调性。
Description
技术领域
本发明总体上涉及传送数据,更具体地,涉及用于导入和导出位于元数据注册***(metadata registry)中的元数据的***、方法和计算机程序产品。
背景技术
面向服务的架构典型地使用元数据注册***来存储与已知服务相关的信息。然而,通常的设置使用多于一个的元数据注册***。存在若干使用多于一个的元数据注册***的原因,例如但不限于开发环境与生产环境之间的差别、利用不同的注册***实施不同的管理场景、或者可扩展性需求等。
当在元数据注册***之间传送元数据时,典型地,将源元数据注册***的全部内容复制到目的元数据注册***。创建源元数据注册***的完全备份,并且在目的元数据注册***上恢复该完全备份。然而,可能期望导入和导出元数据注册***的子集。简言之,在仅导入和导出注册***的内容的子集时,对元数据注册***的子集的导入和导出与整个注册***的完全备份和恢复不相同。
由于注册***中的元数据保持元数据的对象之间的语义关系,并且作为导入和导出的一部分来传输这些关系的图示,因此对元数据注册***的子集的导入和导出是不简单的。元数据注册***不应包括导致未定义的或缺失的对象的关系。然而,由于在许多情况下元数据注册***的所有元数据对象均以某种方式相互关联,因此在不具有导致未定义的或缺失的对象的关系的情况下对导出元数据注册***的子集的尝试将导致完全备份。美国专利公开2009/0024561描述了对与服务元数据相对应的数据的子集的导出、规范表示和导入。然而,美国专利公开2009/0024561的方法专用于导出服务元数据,而并不是提供用于其它类型的元数据或普通元数据的导出。
因此,需要可以克服先前的***和方法的缺点的***和方法。
发明内容
在本发明的说明性实施例中,公开了一种方法和计算机可读介质。根据一个实施例,可以提供一种用于传送元数据的方法。该方法可以包括:使用处理器将元数据注册***中的对象分离为***定义对象和用户定义对象;使用该处理器识别该用户定义对象的协调集合(consistent set),以基于该用户定义对象与其它对象之间的关系而进行导出;以及使用该处理器导出该用户定义对象的协调集合。
根据另一实施例,一种用于传送元数据的方法,可以包括:使用处理器接收用于导入到元数据注册***中的用户定义对象的协调集合;以及使用该处理器将该用户定义对象的集合导入到该元数据注册***中,所述导入包括验证该用户定义对象的集合的协调性(consistency)。
根据另一实施例,一种用于传送元数据的方法,可以包括:提供用于基于元数据对象的对象类型而导出一个或更多个元数据对象的协调集合中的元数据对象的通用函数。
根据另一实施例,可以提供一种计算机可读介质,该计算机可读介质存储有用于使计算机执行用于传送元数据的方法的计算机可读程序代码。该方法可以包括:使用处理器将元数据注册***中的对象分离为***定义对象和用户定义对象;使用该处理器识别该用户定义对象的协调集合,以基于该用户定义对象与其它对象之间的关系而进行导出;以及使用该处理器导出该用户定义对象的协调集合。
根据另一实施例,一种计算机可读介质,该计算机可读介质存储有用于使计算机执行用于传送元数据的方法的计算机可读程序代码,该用于传送元数据的方法可以包括:使用处理器接收用于导入到元数据注册***中的用户定义对象的协调集合;以及使用该处理器将该用户定义对象的集合导入到该元数据注册***中,所述导入包括验证该用户定义对象的集合的协调性。
下面参考附图详细描述本发明的另外的特征和优点以及本发明的各个示例性实施例的结构和操作。
附图说明
从下面的对附图中所示出的本发明的优选实施例的更具体的描述来看,本发明的前述的和其它的特征和优点将变得明显,在附图中,相似的附图标记通常表示相同的、功能上类似的、和/或结构上类似的要素。
图1示出了根据本发明的示例性实施例的对象集合的示例性关系图;
图2示出了根据本发明的示例性实施例的标识***定义对象(system-defined object)的对象集合的示例性关系图;
图3示出了根据本发明的示例性实施例的标识***定义对象的对象集合和用户定义对象(user-defined object)的集合的示例性关系图;
图4示出了根据本发明的示例性实施例的被分离并被导入到两个独立的元数据注册***中的图3的对象集合的示例性关系图;
图5示出了依赖于第二用户定义集合的第一用户定义集合的关系图的示例性实施例;
图6示出了依赖于第二用户定义集合的第一定义集合和第三用户定义集合的关系图的示例性实施例;
图7示出了被导入到独立的元数据注册***中的图6的第一用户定义集合、第二用户定义集合和第三用户定义集合的关系图的示例性实施例;
图8示出了根据本发明的示例性实施例的导出一个或更多个对象的示例性流程图处理;
图9示出了根据本发明的示例性实施例的缺省的导出插件的示例性流程图处理;
图10示出了根据本发明的示例性实施例的导入一个或更多个对象的示例性流程图处理;
图11示出了根据本发明的示例性实施例的缺省的导入插件的示例性流程图处理;以及
图12示出了根据本发明的示例性实施例的示例性计算机。
具体实施方式
虽然下面讨论了使用JAXR(Java API for XML Registries,用于可扩展标记语言注册***的Java应用程序接口)标准的面向服务架构(SOA)元数据注册***,但是应当理解,本发明不仅仅限于使用JAXR标准的(SOA)元数据注册***,并且可以等同地应用于在其它类型的数据库之间传送相关的对象的集合。
元数据注册***的典型的实现使用JAXR标准。JAXR标准提供用于访问不同种类的基于XML的元数据注册***的统一的标准的Java API。特别地,JAXR定义了以下对象类型:组织、用户、服务、普通注册***对象、分类、关联、可审计事件、外部链接、概念和分类方案。
元数据注册***还可以提供附加功能,例如但不限于用户定义类型和用户定义类型分类的定义、注册***对象的生命周期管理、以及用于存储在注册***中的服务的管理。
为了提供增添的功能,可以利用附加功能(例如但不限于:允许具备关联的生命周期模型的有生命周期的注册***对象、包括关于创建新对象类型的管理功能、或者允许安全功能)来扩展标准JAXR数据模型。在包括管理功能的情况下的新对象类型可以是策略。可以将策略建模为关联的注册***对象的图示。安全功能可以允许关于用户、任务、组、许可的安全模型。
此外,用于附加功能的元数据可以包括类型的分类和分级元数据、生命周期模型元数据、以及关于其相关的安全对象用户、任务、组、许可的管理策略。
当与JAXR数据模型的这些增强相对应地导入和导出注册***中的元数据对象时,JAXR数据模型的这些增强可能提出了新的挑战。功能的增强可以作为多个相互连接的注册***对象来实现。当寻求导出这些注册***对象时,应当仍保持导出的元数据的完整性。可以通过导出与要导出的任一个对象相连接的所有对象来保持元数据的完整性。然而,由于注册***中的所有对象可能最终是连接的(不管是间接地还是直接地),因此这些相互连接的注册***对象的导出可能不能简单地通过确定所有连接的对象的图示来进行,这是因为这可能导致整个注册***的导出。任何导出可能劣化成导致注册***的完整备份的反常情况。因此,确保在传送中包括导出所需的所有元数据可能与避免整个注册***的完全导出相冲突。
图1示出了对象集合的关系图100的示例性实施例。参见图1,元数据注册***的对象形成相互连接的注册***对象的图示。在该示例性实施例中,元数据注册***典型地包含对象102、104、106和108。对象可以是表示例如但不限于服务实现、应用服务器或计算节点等的物理对象的元数据的用户定义数据或***定义数据。该对象的集合包括被标记为1至11的多个对象,102被标记为“1”,104被标记为“2”,106被标记为“3”,108被标记为“8”。该对象的集合还包括被标记为4至7和9至11的附加对象。
关系图100还包括对象之间的引用110和112。这些引用表示各种对象之间的关系。引用110表示对象1(即,102)引用对象2(即,104)。引用112表示对象3(即,106)引用对象2(即,104)。关系图100还包括其它引用。
对象可以仅引用其它对象,例如但不限于引用被标记为“2”、“3”和“8”的对象的对象1。对象可以仅被其它对象引用,例如但不限于被对象1引用的对象8。对象还可以引用其它对象且被其它对象引用,例如但不限于被对象1引用且引用对象2的对象3。对象可以引用任意数量的对象且被任意数量的对象引用。
在图1中可以看出,该关系图中的每个对象直接地或间接地与图1的其它对象有关系。此外,因为所有关系以定义的对象结束,因此该集合是协调集合,也称为闭集合。不协调集合可以是包括来自或导向未定义的对象的引用的集合。由于如果对象与未定义的对象相关,则该对象可能未被正确地定义,因此不协调集合可能是有问题的。因此,由于图1的所有对象传统地均与所有其它对象相关以避免不协调,因此当期望传送任意对象的数据时,传送整个对象集合。
为了使得能够导出元数据注册***的子集,可以确定包括元数据注册***的对象的子集的导出集合。由于不是在任意给定的导出集合中均应导出注册***的所有对象,而同时应当确保在将导出集合导入到另一元数据注册***中时的协调性,因此确定导出集合可能是不简单的任务。因此,确定导出集合包括研究图示以识别要包括在导出集合中的对象。可以基于传送的元数据对象的元数据类型来确定用于导出每种类型的元数据的正确的导出集合。
可以由注册***对象的集合在内部表示元数据类型,该注册***对象可具有不同的注册***对象类型。例如,策略的元数据类型可以为策略,该元数据类型可由具有多个不同类型(例如但不限于策略参数类型和策略返回类型)的多个注册***对象表示。导出集合的确定可以依赖于对象类型的定义。
图2示出了标识***定义对象的对象集合的关系图200的示例性实施例。在该示例性实施例中,将对象的集合分离为***定义对象和用户定义对象。由框202内的对象8至11表示***定义对象。由框202外部的对象1至7表示用户定义对象。
***定义对象可以是由***预先定义的预定义对象。***定义对象可以是元数据注册***上的公用预定义对象,例如但不限于策略、生命周期模型或安全对象。用户定义对象可以是不与其它元数据注册***公用的由用户定义的元数据对象。用户定义对象可以允许元数据注册***被扩展超出***定义,并且允许定制用于定制目的的元数据注册***。
每个对象可以与指示对象是***定义对象还是用户定义对象的指示符相关联。每当用户创建新的对象或修改***定义对象时,与作为结果的对象相关联的指示符可以指示该对象是用户定义对象。
图3示出了标识***定义对象的对象集合和用户定义对象的集合的关系图300的示例性实施例。在该示例性实施例中,可以将用户定义对象分离到其自身的集合中。这些集合可以表示不同的组织单位、对象类型与对象实例之间的分离、分类与对象之间的分离、或者对象与可应用于该对象的规则(策略)之间的分离。在图3中,被标记为1至3的对象可以属于被标记为“集合1”的第一集合302。集合1可以表示一个组织单位。被标记为4至7的对象可以属于被标记为“集合2”的第一集合304。集合2可以表示另一组织单位。
可以使用多个方法来确定用户定义对象的集合。在示例性实施例中,可以基于被用户标识为属于集合的对象来确定用户定义对象的集合。在另一示例性实施例中,可以基于在元数据注册***中被标识为属于集合的对象来确定用户定义对象的集合。在又一示例性实施例中,可以基于用于导出用户定义对象的规则来确定用户定义对象的集合。用于导出用户定义对象的规则可以基于用户定义对象的对象类型,其中每个对象类型具有标识在导出时要包括和/或排除的对象的关联排除规则。下面参考图8和9进一步描述导出集合的确定。
在传送集合1的元数据时,集合1的导出集合包括对象1、2和3以及关系a、b、c、d和e。以类似的方式,在传送集合2的元数据时,集合2的导出集合可以包括对象4、5、6和7以及关系f、g、h、i、j和k。虽然集合1和集合2均包括指向不在这些集合内的对象的关系(对于集合1为分别引用***定义对象8和9的d和e,对于集合2为分别引用***定义对象9和10的j和k),但是由于可以将这些集合导入到已具有与在该集合内未找到的那些相关对象相对应的现有的***定义元数据对象的元数据注册***中,因此仍然可以将这些集合视为闭集合。
用于导出集合1和集合2的使用情况可以是用于分离属于两个不同的组合单位或组的元数据。图4示出了根据本发明的示例性实施例的被分离并被导入到两个独立的机器402和404中的图3的集合1(即,302)和集合2(即,304)的示例性关系图400。
根据实施例,机器402和404可以包括相同的元数据注册***,从该元数据注册***中导出与元数据注册***集合1和集合2相同的预先定义的***定义对象的集合。可以将集合1(即,302)导入到机器1(即,402)中,并且可以将集合2(即,304)导入到机器2(即,404)中。如关系图400中所示地,可以将元数据注册***的不同的子集导入到其它不同的元数据注册***中。
图5示出了依赖于第二用户定义集合304的第一用户定义集合502的关系图500的示例性实施例。如果集合的对象引用不在该集合内的用户定义对象,则可以认为该用户定义对象的集合是非独立的。对应地,如果用户定义对象的集合中的对象不引用不在该集合内的用户定义对象,则可以认为该集合是独立集合。
第一用户定义集合502可以被标记为集合1’,第二用户定义集合304可以被标记为集合2。集合2可以与先前的图中的集合2相同。如先前看到地,集合1’与集合1的不同之处可以在于,集合1’的对象2(即,504)可以包括对集合2的对象4的引用506。
依赖于另一用户定义集合的用户定义集合的常见场景可以包括:当企业标准定义在整个组织中分配的用户定义的类型、分类或策略且附加的元数据对象引用这些用户定义的类型、分类和策略时。
当导出集合2’时,元数据注册***创建导出档案,该导出档案具有用于另一元数据注册***以导入集合2’的信息。用于集合2的导出档案可以与用于图3所示的集合2的导出档案相同。该档案可以相同是因为:虽然集合1’的对象2依赖于图5的集合2的对象4,但是图5的集合2内的对象具有与图3的集合2的对象相同的依赖性。
然而,当导出集合1’时,用于集合1’的导出档案可以包含比先前讨论的集合1的导出的对象更多的对象。用于集合1’的导出档案可以包含比集合1的导出档案更多的对象,这是因为集合1’依赖于包括用户定义对象的集合2。因此,当导出集合1’时,也需要导出集合2。如果将从集合1’直接地和间接地引用的集合2的对象和关系连同关系506一起添加到集合1’,则可以将集合1’变换为独立集合。然而,为了避免重叠,当导出集合1’时,可以将集合1’作为如集合1’中所示的包括至集合2的关系506的非独立集合而导出,并且可以将集合2作为导出档案内的分离的独立集合而导出。
当导入元数据对象时,可以遵循导入对象的特定顺序,以确保不产生垂悬(dangling)或不满意的引用。垂悬或不满意的引用可以是与未定义的对象相链接的对象的关系。可以通过导入机制来防止在元数据注册***中产生垂悬或不满意的引用。当在对象的导入期间产生垂悬或不满意的引用时,处理可以中止对象、对象集合或整个档案的导入。为了避免垂悬或不满意的引用,可以使用特定的导入顺序。例如,可以在导入对象的类型的任何实例之前导入对象类型。作为另一示例,可以在导入所有注册***对象之后将注册***对象的安全对象导入到安全运行时间中。
当导入如图5所示的集合1’和集合2时,可以在集合1’之前导入集合2,以确保在每个集合的导入处理期间集合中的所有引用对象是已知的。如果在集合2之前导入集合1’,则导入处理可以确定集合1’不是协调集合或闭集合,因为集合1’的对象2引用尚未导入的集合2的对象4。在依赖于独立集合的集合之前导入独立集合的示例可以是:当导入引用用户定义的类型、分类和策略的用户定义对象时。在该示例中,需要在引用用户定义对象之前导入用户定义的类型、分类和策略。
图6示出了依赖于第二用户定义集合304的第一用户定义集合502和第三用户定义集合604的关系图600的示例性实施例。第一集合502被标记为集合1’,并且可以与图5中的集合1’相同。第三集合604被标记为集合3。第二集合304被标记为集合2,并且可以与如图3所示的集合2相同。第一集合502依赖于第二集合304,第三集合602也依赖于第二集合304,但是第一集合502或第三集合602均不相互依赖。
如果将元数据注册***中的数据划分为独立集合和非独立集合,则可能易于将该数据分配到多个注册***上。随着组织改变或发展,组织可能需要附加的注册***。作为示例,第二集合304可以包括定义用户定义的类型、分类和策略的企业标准。第一集合502和第三集合602可以包括基于用户定义的类型、分类和策略的数据。因此,当创建新的注册***时,可以在导入第一集合502和第三集合602之前首先导入第二集合304。通过作为分离的集合而提供第二集合304,如果企业标准改变或扩展,则可以在不影响存储在第一集合502和第三集合602中的数据的情况下,通过重写第二集合304来重新加载存储在第二集合304中的企业标准。
图7示出了导入到独立机器上的独立的元数据注册***中的图6的第一用户定义集合502、第二用户定义集合304和第三用户定义集合602的关系图的示例性实施例。第一用户定义集合502可以导入到机器1(即,402)中,第三用户定义集合602可以导入到机器2(即,404)中。因为第一用户定义集合502和第三用户定义集合602都依赖于第二用户定义集合304,因此可以首先将第二用户定义集合304导入到机器1和机器2中以确保将第一用户定义集合502导入到机器1中,并且可以将第三用户定义集合602导入到机器2中。
图8示出了根据本发明的示例性实施例的导出一个或更多个对象的示例性流程图800的处理。处理800可以描述可应用于导出属于元数据注册***的任意元数据对象或者可应用于导出属于其它类型的数据库的相关对象的通用导出处理。根据实施例,流程图800在802开始,并直接继续到804。
在804中,该处理可以创建表示要导出的元数据对象的元素的输入列表804。输入列表可以是用户选择以导出的元数据对象的列表,并且还可以包括由处理添加的元数据对象,以包括用于保持导出集合的完整性的元数据对象。根据实施例,每个元数据对象可以具有定义的关联的导出函数,使用该关联的导出函数,可以导出该元数据对象。可以使用用作针对关联的导出函数的接口的通用函数来引用全部的关联的导出函数。从804起,流程图800继续到806。
在806中,该处理可以确定是否可以获得输入列表中的下个列表元素,如果列表未用尽,则可以获得下个列表元素。如果不可获得下个列表元素,则流程图800继续到808并结束。替代性地,如果可以获得下个列表元素,则流程图800可以继续到810。
在810中,该处理确定列表元素的类型。该处理可以基于与对应于列表元素的对象相关联的类型分类数据来确定列表元素的类型。从810起,流程图800可以继续到812。在812中,该处理可以确定该列表元素类型是否具有现有插件。该处理可以向数据库查询与该列表元素类型相关联的插件。如果存在用于该列表元素类型的插件,则流程图800可以继续到814。在814中,选择该列表元素类型的插件,作为要用于导出该列表元素的导出插件。从814起,流程图800可以继续到818。
返回到812,替代性地,如果不存在用于该列表元素类型的插件,则流程图800可以继续到816。在816中,可以选择缺省插件作为要用于导出列表元素的导出插件。从816起,流程图800可以也继续到818。
在818中,该处理可以调用选择的导出插件。该导出插件可以返回用于创建导出档案的结果。该结果可以是用于传送列表元素的信息。该导出档案可以是用于整个导出处理的传送的所有信息的完整档案。下面在图9中进一步描述导出插件的功能和操作。从818起,流程图800可以继续到820。
在820中,可以将调用导出插件的结果添加到导出档案中。从820起,流程图800可以继续到822。
在822中,流程图800可以确定输入列表是否不具有下个元素。如果输入列表具有下个列表元素,则流程图800可以返回到810。替代性地,如果数据列表不具有下个列表元素,则流程图800可以继续到808并且结束。
图9示出了根据本发明的示例性实施例的缺省导出插件的示例性流程图处理。根据示例性实施例,流程图900从902开始,并直接继续到904。在904中,该处理可以从数据库中检索一个对象。该处理可以基于列表元素中的对象的标识符而检索对象。
从904起,流程图900可以继续到906。在906中,可以对从数据库中检索的一个或更多个对象进行对象序列化(object serialization)。在实施例中,可以使用可扩展标记语言(XML)作为序列化格式。在对象序列化期间,可以将一个或更多个对象处理为适合于导出到另一元数据注册***的数据格式。
从906起,流程图900可以继续到908。在908中,可以将任意关联的非注册***对象添加到结果列表中。关联的非注册***对象可以是与元数据对象相关联的例如但不限于图标、设计文档、方案定义等的对象。可以将关联的非注册***对象存储在注册***的贮存部分中,并且可以从元数据对象引用该关联的非注册***对象。可以通过元数据对象中的引用来找到关联的非注册***对象。该结果列表可以是作为结果返回到流程图800的818中所示的处理的数据的列表。
从908起,流程图900可以继续到910。从910起,可以应用规则。规则可以导致执行附加动作,例如但不限于:当导出用户定义类型的实例时在导出中包括用户定义的类型定义,或者当导出注册***对象时还包括一个或更多个安全对象。此外,规则可以标识在导出列表元素时要导出的附加的对象。规则不仅可以标识***定义的且不应被导出的对象,而且还可以通过标识需要随列表元素一起导出的附加对象以保持导出集合的协调性来确保元数据的完整性。可以连同列表元素一起导出这些附加对象,以确保导出集合是协调集合。
从910起,流程图900可以继续到912。在912中,该处理可以确定是否已在910中识别了任何附加的导出对象。如果该处理确定存在一个或更多个附加的导出对象,则流程图900可以继续到914。在914中,可以将一个或更多个附加的导出对象添加到输入列表中。从914起,流程图900可以继续到916。
返回到912,如果该处理确定不存在任何附加的导出对象,则流程图900可以也继续到916。
在916中,该处理可以将处理后的对象添加到结果列表中。该处理后的结果可以包括序列化的对象和关联的非注册***对象。从916起,流程图900可以继续到918,并且处理可以以作为来自导出插件的结果而返回的结果列表而结束。
在一个示例性实施例中,在910中所述的应用规则可以是递归方法。如果集合的所有对象仅仅与集合的其它对象或***定义对象相关,则可以认为该集合是协调的。该方法可以以定义包括单个要导出的对象的集合开始。然后,该方法可以确定与该集合中的任意对象直接相关的对象。如果任意的相关的对象是***定义对象,则不将该***定义对象添加到该集合。如果任意的相关的对象是用户定义对象,则将该用户定义对象添加到该集合。然后,该方法可以确定与更新后的集合中的任意对象直接相关的对象,并重复地将对象添加到该集合,直到只有与该集合中的对象直接相关的在该集合的外部的对象是***定义对象为止。
使用图3的关系图作为示例,当导出对象1时,该方法可以以仅包括对象1的集合开始。然后,该方法可以确定与对象1直接相关的对象,该对象将是根据关系a的对象2和根据关系c的对象3。该方法可以确定对象2和3不是***定义对象并将对象2和3添加到导出集合。该方法还可以确定根据d与对象1相关的对象8是***定义对象且不应被添加到导出集合。然后,该方法可以识别对象1、2和3是否与不在该集合中的且非***定义对象的对象直接相关。如果该识别是否定性的,则该方法可以确定对象1、2和3定义了协调集合1。
根据实施例,导出策略可以针对元数据注册***中的注册***对象的每个类型而不同。然而,可以存在统一的方式来针对任意给定的注册***对象类型而确定导出集合。为了支持统一处理,JAXR API可以定义每个注册***对象类型可以满足并实现的接口。统一处理可以遵循图8所示的处理。导出接口可以与特定注册***对象类型的实例相结合地返回要导出的注册***对象。导出接口还可以仅返回集合并防止相同对象的重复。可以通过以下方式来防止重复:利用对于每个对象而言唯一的相同标识符标识对象,并且去除具有特定的唯一标识符的各个对象中的除了一个对象以外的对象。另外,导出接口可以确定用于在导出期间导出每个注册***对象类型的正确实现,该正确实现可以由针对对象类型的导出插件表示,这可以遵循如图9所示的处理。
另外,每个导出档案可以包括随着该导出档案一起的证明文件。证明文件可以包括版本信息,使得可以检验导出元数据注册***和导入元数据注册***的兼容等级。可以基于导出集合的证明文件的版本信息是否与导出集合将被导入到的元数据注册***相兼容来确定该检验。在实施例中,检验可以是将来自导出档案中的证明文件的版本号与导入注册***的版本号相比较。基于兼容等级的检验可以确保源注册***和目标注册***的内容在***定义的内容方面是兼容的,使得可以从导出集合中省略***定义对象。
图10示出了根据本发明的示例性实施例的导入一个或更多个对象的示例性流程图1000的处理。根据示例性实施例,导入处理可以将元数据对象从导出档案导入到元数据注册***中。流程图1000可以在1002开始,并直接继续到1004。在1004中,处理可以从档案中提取导入对象的列表。该档案可以是通过上面在图8和9中描述的导出处理而生成的导出档案。
从1004起,流程图1000可以继续到1006。在1006中,该处理可以确定是否可获得列表中的下个元素。对于导入处理,列表的元素可以是要导入的对象。如果不可获得下个列表元素,则流程图1000可以继续到1008并结束。如果列表用尽,则不可获得下个列表元素。替代性地,如果可获得下个列表元素,则流程图1000可以继续到1010。
在1010中,该处理可以确定列表元素的类型。确定列表元素的类型可以是确定与列表元素相对应的元数据的类型。该处理可以基于存储在档案中的指示对象类型的信息而确定列表元素的类型。
从1010起,流程图1000可以继续到1012。在1012中,该处理可以确定是否存在用于该列表元素的导入插件。根据实施例,该确定处理可以与确定是否存在用于该列表元素类型的导出插件相类似。如果存在用于该列表元素类型的导入插件,则流程图1000可以继续到1014。在1014中,选择用于该列表元素类型的插件作为用于导入该列表元素的导入插件。从1014起,流程图1000可以继续到1016。
返回到1012,如果不存在用于该列表元素类型的插件,则流程图1000可以继续到1018。在1018中,可以选择缺省导入插件作为用于导入列表元素的导入插件。从1018起,流程图1000可以也继续到1016。
在1016中,该处理可以调用选择的导入插件。导入插件可以将列表导入到元数据注册***中,下面参考图11进一步描述导入插件。从1016起,流程图1000可以继续到1020。
在1020中,该处理确定输入列表是否用尽。如果已经处理了从档案提取的导入对象的列表中的每个列表元素,则输入列表可能用尽。从1020起,流程图1000可以继续到1008并结束。
图11示出了根据本发明的示例性实施例的缺省的导入插件的示例性流程图1100的处理。根据实施例,可以在716中调用流程图1100的处理。该处理可以将列表元素导入到元数据注册***中。流程图1100可以从1102开始,并直接继续到1104。
在1104中,该处理可以确定在导入对象时是否满足引用。引用可以是正被导入的对象的关系。该处理可以基于以下确定来确定是否可以满足所有引用:确定所有的从对象点向外指向存在于元数据注册***内的对象或存在于导入档案内的对象的引用。
如果不能满足引用,则流程图1100可以继续到1106。在1106中,该处理可以拒绝对象的导入。从1106起,流程图1100可以继续到1108并结束。
返回到1104,如果该处理确定满足引用,则流程图1100可以继续到1110。在1110中,该处理可以确定在元数据注册***内是否已经存在要导入的对象。如果该对象并未已存在于元数据注册***内,则流程图1100可以继续到1114。
返回到1110,如果该对象已存在于元数据注册***内,则流程图1100可以继续到1112。在1112中,该处理可以确定元数据注册***中的现有对象的时间戳是否比档案中的对象的时间戳更旧。如果现有对象的时间戳较旧,则流程图1100可以继续到1114。替代性地,如果现有对象的时间戳不是较旧的,则流程图1100可以继续到1106。可以进行时间戳行为的重写,例如但不限于导入具有比现有对象的时间戳更小的时间戳的对象。
在1114中,可以将对象导入到元数据注册***中。从1114起,该处理可以继续到1108并结束。
对于导入处理,取决于导出集合中的元数据对象的类型,可以进行不同的动作来导入不同类型的对象。然而,与导出处理相类似地,可能存在统一的方式来导入不同类型的对象。
如上文所讨论地,可以通过用作针对与每个对象类型相关联的特定导出函数的接口的通用函数来导出元数据的集合。在实施例中,通用函数可以是可提供通用函数的应用编程接口(API)。根据实施例,JAXR API可以定义每个注册***对象类型可以满足并实现的导入接口。用于导入的统一方法可以是图10所示的处理,用于导入每个类型的对象的方法可以是图11所示的处理。
由于导出集合可以包括包含导出元数据注册***的版本信息的证明文件,因此导入接口可以在导入任意对象之前首先检验导出集合与导入元数据注册***的兼容性。如果导出注册***的版本信息不匹配,则可以拒绝整个导出集合。在实施例中,匹配可以意为证明文件的版本信息和导入元数据注册***对应于相同的版本。
导入接口可以检查注册***对象的实例是否验证具有注册***对象的对应类型。每个注册***对象可以具有特定的对象类型。在验证时,可以将导入集合中的对象的对象类型与导入注册***中的对象的对象类型进行比较。
如果要导入的对象是元数据注册***的运行***的一部分,则导入处理可以确保在允许将对象导入到注册***中之前向运行***登记对象。属于管理运行时间和安全运行时间的对象可以是元数据注册***的运行***的一部分。
图12描述了可以在实现根据本发明的说明性实施例时使用的说明性计算机***。具体地,图12描述了可以在例如但不限于独立装置或客户端装置或服务器装置的计算装置中使用的计算机***1200的说明性实施例。图12描述了可以用作客户端装置或服务器装置等的计算机***的说明性实施例。可以使用硬件、软件、固件或其组合来实现本发明(或者其任意部分或功能),并且可以在一个或更多个计算机***或其它处理***中实现本发明(或者其任意部分或功能)。实际上,在一个说明性实施例中,本发明可以针对能够执行这里描述的功能的一个或更多个计算机***。在图12中示出了计算机***1200的示例,并描述了对于实现本发明有用的说明性计算机***的框图的说明性实施例。具体地,图12示出了示例计算机1200,在说明性实施例中,示例计算机1200可以是例如(但不限于)运行例如(但不限于)从Corporation of Redmond,WA,U.S.A.可获得的 NT/98/2000/XP/Vista/Windows 7/等的操作***的个人计算机(PC)***。然而,本发明不限于这些平台。代替地,可以在运行任意合适的操作***的任意合适的计算机***上实现本发明。在一个说明性实施例中,可以在如这里讨论地操作的计算机***上实现本发明。在图12中示出了说明性计算机***,即,计算机1200。本发明的其它部件,例如(但不限于)计算装置、通信装置、电话、个人数字助理(PDA)、个人计算机(PC)、手持PC、膝上型计算机、上网本(netbook)、客户端工作站、瘦客户端、胖客户端、代理服务器、网络通信服务器、远程访问装置、客户端计算机、服务器计算机、路由器、web服务器、数据、媒体、音频、视频、电话或流技术服务器等,也可以使用诸如图12所示的计算机来实现。
计算机***1200可以包括一个或更多个处理器,例如但不限于处理器1024。处理器1024可以连接到通信基础设施1206(例如但不限于通信总线、交叉条(cross-over bar)、互连或者网络等)。处理器1024可以包括任意类型的处理器、微处理器或者可以解释并执行指令的处理逻辑(例如现场可编程门阵列(FPGA))。处理器1024可以包括单个装置(例如单个芯)和/或一组装置(例如多个芯)。处理器1024可以包括被配置用于执行计算机可执行指令的逻辑,该计算机可执行指令被配置用于实现一个或更多个实施例。该指令可以驻留在主存储器1208或者辅助存储器1210中。处理器1024还可以包括多个独立的芯,例如双芯处理器或者多芯处理器。处理器1024还可以包括一个或更多个图形处理单元(GPU),该图形处理单元可以以专用图形卡、集成图形解决方案和/或混合图形解决方案的形式。可以根据本说明性计算机***描述各种说明性软件实施例。在阅读该说明书之后,如何使用其它计算机***和/或架构来实现本发明对于本领域技术人员而言将变得明显。
计算机***1200可以包括显示器接口1202,该显示器接口1202可以转发来自通信基础设施1206(或来自未示出的帧缓冲器等)的例如但不限于图形、文本和其它数据等,以用于在显示单元1230上进行显示。
计算机***1200还可以包括(例如但不限于)主存储器1208、随机存取存储器(RAM)和辅助存储器1210等。主存储器1208、随机存取存储器(RAM)和辅助存储器1210等可以是计算机可读介质并且可以包括随机存取存储器(RAM),该计算机可读介质可以被配置用于存储被配置用于实现一个或更多个实施例的指令,该随机存取存储器(RAM)可以包括RAM装置,例如动态RAM(DRAM)装置、闪存装置、静态RAM(SRAM)装置等。
辅助存储器1210可以包括例如(但不限于)表示硬盘驱动1212和/或表示软盘驱动的可拆卸存储驱动1214、磁带驱动、光盘驱动、压缩盘驱动CD-ROM等。可拆卸存储驱动1214可以例如但不限于以公知的方式从可拆卸存储单元1218读取和/或向可拆卸存储单元1218写入。可拆卸存储单元1218(也称为程序存储装置或计算机程序产品)可以表示可以从可拆卸存储驱动1214读取或者可以向可拆卸存储驱动1214写入的例如但不限于软盘、磁带、光盘、压缩盘等。应当理解,可拆卸存储单元1218可以包括存储有计算机软件和/或数据的计算机可使用存储介质。
在替代性的说明性实施例中,辅助存储器1210可以包括用于允许将计算机程序或其它指令加载到计算机***1200中的其它类似装置。该装置可以包括例如可拆卸存储单元1222和接口1220。其示例可以包括:程序盒(program cartridge)和盒接口(cartridge interface)(例如但不限于在视频游戏装置中找到的程序盒和盒接口)、可拆卸存储器芯片(例如但不限于可擦除可编程只读存储器(EPROM))、或者可编程只读存储器(PROM)和关联的插口、以及可允许将软件和数据从可拆卸存储单元1222传送到计算机***1200的其它可拆卸存储单元1222和接口1220。
计算机1200还可以包括输入装置1213,输入装置1213可以包括可允许将信息从例如用户输入到计算机***1200中的任意的机制或机制组合。输入装置1213可以包括被配置用于接收来自例如用户的用于计算机***1200的信息的逻辑。输入装置1213的示例可以包括例如但不限于(均未被标记出的):鼠标,基于笔的指示装置,或诸如数字化转换器(digitizer)、触摸感测显示装置和/或键盘的其它指示装置,或者其它数据输入装置。其它输入装置1213可以包括例如但不限于生物测量输入装置、视频源、音频源、麦克风、网络摄像机、视频照相机和/或其它照相机。
计算机1200还可以包括输出装置1215,输出装置1215可以包括可以从计算机***1200输出信息的任意的机制或机制组合。输出装置1215可以包括被配置用于从计算机***1200输出信息的逻辑。输出装置1215的实施例可以包括例如但不限于显示器1230和显示器接口1202,包括显示器、打印机、扬声器、阴极射线管(CRT)、等离子显示器、发光二极管(LED)显示器、液晶显示器(LCD)、打印机、真空荧光显示器(VFD)、表面传导电子发射显示器(SED)、场发射显示器(FED)等。计算机1200可以包括输入/输出(I/O)装置,例如(但不限于)通信接口1224、线缆1228和通信路径1226等。这些装置可以包括例如但不限于(均未被标记出的)网络接口卡和调制解调器。
通信接口1224可以允许软件和数据在计算机***1200与外部装置之间进行传送。
最后,虽然上面已经描述了本发明的各种示例性实施例,但是应当理解,仅通过示例方式而不是限定性的方式提供了本发明的各种示例性实施例。因此,本发明的外延和范围不应被限定于上述示例性实施例中的任一实施例,而是应当仅根据所附权利要求及其等同内容来定义。
Claims (15)
1.一种用于传送元数据的方法,包括:
使用处理器将元数据注册***中的对象分离为***定义对象和用户定义对象;
使用所述处理器识别所述用户定义对象的协调集合,以基于所述用户定义对象与其它对象之间的关系而进行导出;以及
使用所述处理器导出所述用户定义对象的所述协调集合。
2.根据权利要求1所述的方法,其中所述识别包括:
确定用户定义对象的对象类型;
基于所确定的对象类型而确定用于导出所述用户定义对象的规则;以及
选择用户定义对象,以基于所述规则而与所述用户定义对象相关地进行导出。
3.根据权利要求2所述的方法,其中所述识别包括:
选择用户定义对象,以基于所述规则而与所述用户定义对象间接地相关地进行导出。
4.根据权利要求2所述的方法,其中所述规则包括:
用于选择用户定义对象以与所述用户定义对象相关地进行导出的定义,所述定义对应于所述用户定义对象的对象类型。
5.根据权利要求1所述的方法,其中所述将对象分离包括:
关联指示所述***定义对象是包括被第二元数据注册***共享的信息的对象的数据;以及
关联指示所述用户定义对象是包括不被所述第二元数据注册***共享的信息的对象的数据。
6.根据权利要求1所述的方法,还包括:
使用所述处理器接收用于导出所述对象的子集的请求。
7.根据权利要求1所述的方法,还包括:
提供用于导出任意类型的对象的通用函数,其中所述识别所述用户定义对象的协调集合是响应于所述通用函数而进行的。
8.一种用于传送元数据的方法,包括:
使用处理器接收用于导入到元数据注册***中的用户定义对象的协调集合;以及
使用所述处理器将所述用户定义对象的集合导入到所述元数据注册***中,所述导入包括验证所述用户定义对象的集合的协调性。
9.根据权利要求8所述的用于传送元数据的方法,其中验证所述协调性包括:
验证正被导入的所述协调集合的所有的所述用户定义对象的关系对应于所述协调集合的所述用户定义对象与以下对象中的至少一个之间的关系:所述协调集合的其它的用户定义对象、或者所述元数据注册***的对象。
10.根据权利要求8所述的传送元数据的方法,其中所述导入包括:
识别独立的用户定义对象;
导入所述独立的用户定义对象;以及
导入非独立的用户定义对象,所述非独立的用户定义对象依赖于所导入的独立的用户定义对象。
11.一种用于传送元数据的方法,包括:
提供通用函数,所述通用函数用于基于元数据对象的对象类型而导出一个或更多个元数据对象的协调集合中的元数据对象。
12.根据权利要求11所述的用于传送元数据的方法,还包括:
接收用于通过所述通用函数导出元数据对象的请求;
基于元数据对象的对象类型而识别一个或更多个元数据对象的协调集合;以及
导出所述协调集合。
13.根据权利要求11所述的用于传送元数据的方法,其中所述提供所述通用函数包括:提供用于导出所述元数据对象的应用编程接口。
14.一种计算机可读介质,所述计算机可读介质存储有用于使计算机执行用于传送元数据的方法的计算机可读程序代码,所述用于传送元数据的方法包括:
使用处理器将元数据注册***中的对象分离为***定义对象和用户定义对象;
使用所述处理器识别所述用户定义对象的协调集合,以基于所述用户定义对象与其它对象之间的关系而进行导出;以及
使用所述处理器导出所述用户定义对象的所述协调集合。
15.一种计算机可读介质,所述计算机可读介质存储有用于使计算机执行用于传送元数据的方法的计算机可读程序代码,所述用于传送元数据的方法包括:
使用处理器接收用于导入到元数据注册***中的用户定义对象的协调集合;以及
使用所述处理器将所述用户定义对象的集合导入到所述元数据注册***中,所述导入包括验证所述用户定义对象的集合的协调性。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/696,846 US20110191304A1 (en) | 2010-01-29 | 2010-01-29 | System and method for export and import of metadata located in metadata registries |
US12/696,846 | 2010-01-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102142014A true CN102142014A (zh) | 2011-08-03 |
CN102142014B CN102142014B (zh) | 2013-06-19 |
Family
ID=44342507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100325052A Active CN102142014B (zh) | 2010-01-29 | 2011-01-27 | 导入和导出位于元数据注册***中的元数据的***和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20110191304A1 (zh) |
CN (1) | CN102142014B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103617168A (zh) * | 2013-10-22 | 2014-03-05 | 芜湖大学科技园发展有限公司 | 一种通用的元数据校验及导出方法 |
CN111598535A (zh) * | 2020-05-09 | 2020-08-28 | 西安精雕软件科技有限公司 | 一种基础物料的导入方法、***、计算机设备 |
CN112711629A (zh) * | 2020-12-30 | 2021-04-27 | 浙江中控技术股份有限公司 | 数据及关联数据导入导出方法、装置、设备及存储介质 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10049131B2 (en) * | 2012-07-02 | 2018-08-14 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for determining user access to custom metadata |
US10157228B2 (en) * | 2013-02-22 | 2018-12-18 | Mitel Networks Corporation | Communication system including a confidence level for a contact type and method of using same |
US10229122B2 (en) * | 2013-09-06 | 2019-03-12 | Oracle International Corporation | Extensible customization migration via pluggable interface |
US10223473B2 (en) * | 2015-03-31 | 2019-03-05 | International Business Machines Corporation | Distribution of metadata for importation |
CN107798128B (zh) * | 2017-11-14 | 2021-10-29 | 泰康保险集团股份有限公司 | 数据导入方法、装置、介质及电子设备 |
US11928080B2 (en) * | 2020-12-08 | 2024-03-12 | Electronics And Telecommunications Research Institute | Method of interoperability for data hubs based on active metadata management |
US20230121287A1 (en) * | 2021-10-19 | 2023-04-20 | Sap Se | Metadata elements with persistent identifiers |
CN116361239B (zh) * | 2023-05-24 | 2023-07-28 | 成都交大光芒科技股份有限公司 | 基于对象特征的对象识别同步方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5448727A (en) * | 1991-04-30 | 1995-09-05 | Hewlett-Packard Company | Domain based partitioning and reclustering of relations in object-oriented relational database management systems |
US6502098B2 (en) * | 1999-09-22 | 2002-12-31 | International Business Machines Corporation | Exporting and importing of data in object-relational databases |
US20050193032A1 (en) * | 1999-05-12 | 2005-09-01 | Treetop Ventures Llc | Method of migrating from one computer to another |
US20100011005A1 (en) * | 2008-05-13 | 2010-01-14 | Thales | Process of import/export of data of a database |
US7870540B2 (en) * | 2004-07-09 | 2011-01-11 | Microsoft Corporation | Dynamic object validation |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4953080A (en) * | 1988-04-25 | 1990-08-28 | Hewlett-Packard Company | Object management facility for maintaining data in a computer system |
US7599948B2 (en) * | 2003-10-10 | 2009-10-06 | Oracle International Corporation | Object relational mapping layer |
US7512578B2 (en) * | 2006-03-30 | 2009-03-31 | Emc Corporation | Smart containers |
US20070255685A1 (en) * | 2006-05-01 | 2007-11-01 | Boult Geoffrey M | Method and system for modelling data |
US7904480B2 (en) * | 2007-07-17 | 2011-03-08 | Oracle International Corporation | System and method for synchronizing service metadata |
-
2010
- 2010-01-29 US US12/696,846 patent/US20110191304A1/en not_active Abandoned
-
2011
- 2011-01-27 CN CN2011100325052A patent/CN102142014B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5448727A (en) * | 1991-04-30 | 1995-09-05 | Hewlett-Packard Company | Domain based partitioning and reclustering of relations in object-oriented relational database management systems |
US20050193032A1 (en) * | 1999-05-12 | 2005-09-01 | Treetop Ventures Llc | Method of migrating from one computer to another |
US6502098B2 (en) * | 1999-09-22 | 2002-12-31 | International Business Machines Corporation | Exporting and importing of data in object-relational databases |
US7870540B2 (en) * | 2004-07-09 | 2011-01-11 | Microsoft Corporation | Dynamic object validation |
US20100011005A1 (en) * | 2008-05-13 | 2010-01-14 | Thales | Process of import/export of data of a database |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103617168A (zh) * | 2013-10-22 | 2014-03-05 | 芜湖大学科技园发展有限公司 | 一种通用的元数据校验及导出方法 |
CN111598535A (zh) * | 2020-05-09 | 2020-08-28 | 西安精雕软件科技有限公司 | 一种基础物料的导入方法、***、计算机设备 |
CN111598535B (zh) * | 2020-05-09 | 2023-06-13 | 西安精雕软件科技有限公司 | 一种基础物料的导入方法、***、计算机设备 |
CN112711629A (zh) * | 2020-12-30 | 2021-04-27 | 浙江中控技术股份有限公司 | 数据及关联数据导入导出方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102142014B (zh) | 2013-06-19 |
US20110191304A1 (en) | 2011-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102142014B (zh) | 导入和导出位于元数据注册***中的元数据的***和方法 | |
US11409904B2 (en) | User interface for building a data privacy pipeline and contractual agreement to share data | |
US10109027B1 (en) | Database access and community electronic medical records system | |
US20170357487A1 (en) | Generation of an application from data | |
WO2018201895A1 (zh) | 接口代码生成方法、装置、终端设备及介质 | |
US9218324B2 (en) | Method of encapsulating diverse user interface components while consistently enforcing external constraints | |
KR101283019B1 (ko) | SaaS 어플리케이션 생성 방법 및 이를 실행하는 어플리케이션 생성 서버 | |
US20130117319A1 (en) | Objects in a storage environment for connected applications | |
CN113268233B (zh) | 一种页面生成方法、装置、计算机设备及存储介质 | |
EP3018595A1 (en) | System and method for reporting multiple objects in enterprise content management | |
US10964416B1 (en) | Block chain management | |
US20070250812A1 (en) | Process Encoding | |
CN103946794A (zh) | 数据特征的滚动升级的***和方法 | |
JPWO2011118003A1 (ja) | ウェブアプリケーション構築システム、ウェブアプリケーション構築方法、ウェブアプリケーション構築プログラムおよびウェブアプリケーション構築プログラムを記録した記録媒体 | |
CN110989891B (zh) | 一种图表编辑器中组件部署方法、图表编辑器及相关设备 | |
US20080256561A1 (en) | Web service platform for keyword technologies | |
US20190147088A1 (en) | Reporting and data governance management | |
CN115062084B (zh) | 基于数据库元数据构建api接口方法及装置 | |
KR101884343B1 (ko) | 문서 관리 시스템, 방법, 및 단말 | |
CN114445023A (zh) | 审批流程配置方法、装置、设备及存储介质 | |
KR101351079B1 (ko) | 데이터베이스와 연동되는 프로그램을 제어하는 서비스 제공 방법 및 시스템 | |
CN110648081A (zh) | 用于计算***的业务建模方法、装置和计算机*** | |
US11853359B1 (en) | System and method for reporting multiple objects in enterprise content management | |
KR20190122462A (ko) | 계약 관리 서비스 제공 방법 및 장치 | |
CN113760267A (zh) | 基于交互规则引擎的条件规则复用方法 |
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 |