CN1866252A - 不同版本的配置数据间进行转换的方法和系统 - Google Patents
不同版本的配置数据间进行转换的方法和系统 Download PDFInfo
- Publication number
- CN1866252A CN1866252A CN 200610003152 CN200610003152A CN1866252A CN 1866252 A CN1866252 A CN 1866252A CN 200610003152 CN200610003152 CN 200610003152 CN 200610003152 A CN200610003152 A CN 200610003152A CN 1866252 A CN1866252 A CN 1866252A
- Authority
- CN
- China
- Prior art keywords
- data
- data object
- object tree
- node
- configuration
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种不同版本的配置数据间进行转换的方法和系统,其核心是:首先使用中间数据配置文件描述所有新版本中相对于旧版本中需要处理的配置数据;然后根据所述中间数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的配置数据。通过本发明,系统能够根据数据配置语法文件和中间数据配置文件对不同版本间的配置数据自动进行转换,从而能够方便系统中配置数据的升级;另外,使系统软件版本的升级与后台软件的依赖性降低,而且版本回退和升级流程一致;再者,新旧版本的数据配置文件之间的逻辑关联性和节点的含义可以明确表达出来,可读性增强;而且,对新版本的数据配置文件中所有节点的语法校验得到了增强。
Description
技术领域
本发明涉及通信领域,尤其涉及不同版本的配置数据间的转换。
背景技术
当前系统软件的配置数据是采用XML文件的格式存放的,该文件称为XML数据配置文件。为了在系统启动和修改配置数据时能够对配置数据进行比较严格的合法性检查,在系统启动时,XML数据中心除了需具有数据配置文件外,还需有一个用来定义所述数据配置文件的语法的配套文件,即数据配置语法文件,如SCHEMA语法文件。
由于系统中不同版本间的数据配置文件进行转换时,不可避免地存在XML配置数据节点的增加、删除和修改,这样容易导致不同版本的数据配置文件和语法文件存在一定的差异。
另外,对于一个指定数据配置文件版本的系统,其XML语法文件是固定不变的,可以作为软件包的一部分,在基站升级过程中其数据配置语法文件就自动升级了,但是对于数据配置文件,是随用户的具体配置而改变的,不同的基站也有不同的数据配置文件,在基站软件版本升级前后,需要保持用户配置数据的延续性,因此就需要在基站升级后,保持原来配置好的配置数据不变。如果直接采用老的数据配置文件,又可能导致老的数据配置文件和新版本的数据配置语法文件不匹配的现象出现,以至于当进行语法校验时容易导致校验失败,因此需要在基站进行软件升级的过程中对数据配置文件进行同步升级。
与本发明相关的现有技术一,是在后台通过手工或后台软件来配置数据配置文件,从而实现基站中不同版本的数据配置文件间的转换。其实现过程如下:
用户在下载基站系统升级软件包前,首先将数据配置文件上传给后台,然后借助后台软件将旧版本的数据配置文件转换为新版本的数据配置文件(或者手工填写XML节点),接着再将新版本的数据配置文件下载到基站,最后配合所述下载的新的系统升级软件包进行数据处理,达到系统原有配置数据能够沿用的目的。
由现有技术一的技术方案可以看出,其存在如下缺陷:
1、如果采用用户手工数据配置文件进行升级的方法,显然太麻烦,当系统软件进行批量升级时,采用这种方法就更加不可能了。
2、如果采用后台软件实现数据配置文件自动升级的方法,基站软件版本与后台软件版本间的依赖性太强,而基站软件和后台软件版本间的配套难以保证。
3、由于在后台软件中数据配置文件的转换具有不可逆性,因此在进行版本回退(由高版本向低版本回退)时,通过后台软件实现数据配置文件自动升级的方法就很难实现系统数据配置文件的自动转化。
与本发明有关的现有技术二是通过在数据配置文件中采用Reserved字段来实现数据配置文件的平滑升级,其实现方法如下:
在数据配置语法文件中对各种类型的数据节点进行预留,称为Reserved节点,这些数据节点不具有结构性和层次关系,所有的数据节点都处于同一层中,每一个数据节点对应着基站中一个配置数据。另外,在数据配置语法文件中定义足够的对应配置数据的数据类型,且每个数据类型的数据个数不加以限制,当基站的软件版本升级时,在新的版本中增加和修改节点一律采用增加Reserved节点的方法来实现,在新版本需要删除节点时,不作任何处理,保持原来数据结构的完整性。这样在不同的版本之间,只存在Reserved节点的增减,数据配置语法文件不需要改变。也就是说,在版本升级过程中,新软件中的数据配置语法文件中包含一个本版本相对于基准版本增加的Reserved节点的补丁数据文件,在系统升级起来之后,将补丁数据文件的新增Reserved节点自动增加到原来的数据配置文件中。
由现有技术二的技术方案可以看出,其存在如下的缺陷:
1、由于新增Reserved节点之间不存在明确的关联性,即所有新增Reserved节点都在同一层,从而失去了数据节点间的层次结构性。
2、新增节点在数据配置中心的含义不明确,因为节点名称在预留时都被定死了,需要通过后台软件辅助来看这些新增节点的代表参数的含义。
3、对新增节点只做了节点类型的语法校验,没有对节点的个数和顺序做严格的语法校验,这样就违背了采用XML文件作为数据配置文件的初衷。
发明内容
本发明的目的是提供一种不同版本的配置数据间进行转换的方法和系统,通过本发明,系统能够根据数据配置语法文件和中间数据配置文件对不同版本间的配置数据自动进行转换,从而能够方便系统中配置数据的升级;另外,使系统软件版本的升级与后台软件的依赖性降低,而且版本回退和升级流程一致,从而解决了版本回退时数据配置文件不能自动回退的问题;再者,新旧版本的数据配置文件之间的逻辑关联性和节点的含义可以明确表达出来,可读性增强;而且,对新版本的数据配置文件中所有节点的语法校验得到了增强,真正达到了采用XML文件作为数据配置文件的目的。
本发明的目的是通过以下技术方案实现的:
本发明提供一种不同版本的配置数据间进行转换的方法,其包括:
A、使用中间数据配置文件描述新版本中相对于旧版本中需要处理的配置数据;
B、根据所述数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的配置数据。
其中,所述步骤A具体包括:
使用缺省数据配置文件或自定义的数据配置文件描述新版本中相对于旧版本中需要增加、修改和/或删除的配置数据,并用特殊属性标识所述配置数据。
其中,所述步骤B具体包括:
B1、系统根据旧版本的配置数据得到旧版本的数据对象树;
B2、根据所述中间数据配置文件生成中间数据对象树,并根据所述中间数据对象树中的配置数据的特殊属性对所述旧版本的数据对象树进行处理,得到新版本的数据对象树;
B3、使用新版本的语法文件对所述新版本的数据对象树进行语法校验处理,并当语法校验通过后,结束旧版本配置数据向新版本配置数据的转换过程。
其中,所述步骤B1具体包括:
B11、使用旧版本的数据配置文件生成旧版本的数据对象树;
B12、使用旧版本的数据配置语法文件对所述旧版本的数据对象树进行语法校验,并当语法校验通过后,确认所述旧版本的数据对象树。
其中,所述步骤B2具体包括:
B21、系统的XML数据中心使用XML解析器加载所述中间数据配置文件生成对应的中间数据对象树;
B22、从所述中间数据对象树中逐个读取相应的节点;
B23、按照所述节点的添加、修改和/或删除特殊属性对所述旧版本的数据对象树进行处理,并根据处理结果得到新版本的数据对象树。
其中,当节点的特殊属性为添加时,所述步骤B23具体包括:
B231、按照其在所述中间数据对象树中的路径在旧版本的数据对象树中的相应路径搜索是否存在所述节点,当确认所述节点不存在时,则将所述节点的标识、基本属性和/或缺省值信息添加到所述旧版本的数据对象树中的相应路径位置上,然后继续执行步骤B232;当确认所述节点已经存在时,则跳过所述节点,然后执行步骤B232;
B232、判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤B231。
其中,当节点的特殊属性为修改时,所述步骤B23具体包括:
B233、按照其在所述中间数据对象树中的路径在旧版本的数据对象树中的相应路径搜索是否存在所述节点,当确认所述节点存在时,则使用所述中间数据对象树中所述节点的基本属性更新所述旧版本的数据对象树中的相应节点的基本属性,然后继续执行步骤B232;如果确认所述节点不存在时,则跳过所述节点,然后执行步骤B234;
B234、判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤B233。
其中,当节点的特殊属性为删除时,所述步骤B23具体包括:
B235、按照其在所述中间数据对象树中的路径在所述旧版本的数据对象树中的相应路径搜索是否存在所述节点,如果存在,则直接将其删除,然后继续执行步骤B236;如果不存在,则跳过所述节点,然后继续执行步骤B236;
B236、判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤B235。
本发明提供一种不同版本的配置数据间进行转换的系统,其包括:
数据配置文件生成模块和配置数据转换模块;
所述数据配置文件生成模块,用于生成中间数据配置文件,并利用所述中间数据配置文件描述新版本中相对于旧版本中发生变化的配置数据;当不同版本的配置数据转换时,所述配置数据转换模块根据所述生成的中间数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的配置数据。
其中,所述的系统还包括:
数据对象树生成模块,用于根据所述数据配置文件生成模块生成的中间数据配置文件生成相应的中间数据对象树;以及,根据旧版本的数据配置文件生成相应的旧版本的数据对象树。
其中,所述配置数据转换模块包括数据对象特殊属性识别模块和数据对象转换模块;
所述数据对象特殊属性识别模块,用于识别所述中间数据对象树中的节点的特殊属性,并将其传送给所述数据对象转换模块;所述数据对象转换模块根据所述特殊属性对旧版本的数据对象树进行处理,并根据处理结果生成新版本的数据对象树。
其中,所述的系统还包括:
语法校验模块,用于将所述生成的新版本的数据对象树中的数据对象与新版本的配置数据语法文件进行语法校验。
由上述本发明提供的技术方案可以看出,本发明中,首先使用数据配置文件描述所有新版本中相对于旧版本中需要处理的配置数据;然后根据所述数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的配置数据。通过本发明,系统能够根据数据配置语法文件和中间数据配置文件对不同版本间的配置数据自动进行转换,从而能够方便系统中配置数据的升级;另外,使系统软件版本的升级与后台软件的依赖性降低,而且版本回退和升级流程一致,从而解决了版本回退时数据配置文件不能自动回退的问题;再者,新旧版本的数据配置文件之间的逻辑关联性和节点的含义可以明确表达出来,可读性增强;而且,对新版本的数据配置文件中所有节点的语法校验得到了增强,真正达到了采用XML文件作为数据配置文件的目的。
附图说明
图1为本发明提供的第一实施例中的系统原理框图;
图2为本发明提供的第二实施例中的方法流程图。
具体实施方式
针对本发明所述的系统,本发明提供了第一实施例,其如图1所示,包括:数据配置文件生成模块、数据对象树生成模块,这里为XML解析器、配置数据转换模块和语法校验模块;其中所述配置数据转换模块包括数据对象特殊属性识别模块和数据对象转换模块。
在系统新版本的软件中,需要包含该版本的数据配置语法文件,同时还包含一个中间数据配置文件,该文件中描述了所有标识有添加、修改和/或删除特殊属性的配置节点的路径、标识、基本属性和缺省数据值。在系统的不同版本的配置数据进行转换的过程中,软件自行将新版本的语法文件和中间数据配置文件放到系统指定的文件目录下,系统复位后,在XML数据中心启动的过程中,配置数据转换模块根据旧版本的配置对象树和中间配置数据文件及新旧两个版本的语法文件生成新版本的配置对象树和数据配置文件。具体实施过程如下:
所述数据配置文件生成模块生成中间数据配置文件,并利用所述中间数据配置文件描述所有新版本中相对于旧版本中发生变化的配置数据。然后将中间数据配置文件传送给所述数据对象树生成模块。
所述数据对象树生成模块,如XML解析器根据所述中间数据配置文件生成相应的中间数据对象树;以及,根据旧版本的数据配置文件生成相应的旧版本的数据对象树。然后将所述中间数据对象树和所述旧版本的数据对象树传送给配置数据转换模块。
所述配置数据转换模块中的所述数据对象特殊属性识别模块识别所述中间数据配置文件生成的数据对象树中的节点的特殊属性,并将其传送给所述数据对象转换模块;所述数据对象转换模块根据所述特殊属性对所述数据对象树生成模块生成的旧版本的数据对象树进行相应的添加、修改或删除处理,并根据处理结果生成新版本的数据对象树。最后,将所述生成的新版本的数据对象树传送给所述语法校验模块。
所述语法校验模块将所述生成的新版本的数据对象树中的数据对象与新版本的配置数据语法文件进行语法校验。当校验通过后,在内存中保存根据所述新版本的数据对象树生成的新版本的数据配置文件。
针对本发明所述的方法,本发明提供了第二实施例,在该实施例中,系统根据所有新版本相对于旧版本中需处理的配置数据生成中间数据配置文件,然后根据旧版本的数据配置文件和所述中间数据配置文件完成新旧版本数据配置文件的自动转化,并使其与新版本的语法文件相匹配,同时保留旧版本数据配置文件中的配置数据。具体实施过程如图2所示,包括如下步骤:
步骤1,使用中间数据配置文件描述新版本中相对于旧版本中需要增加、修改和/或删除的配置数据,并用特殊属性标识所述配置数据。
由于XMI数据节点的操作相对于前一版本主要也就是添加、修改、删除操作,本方案就是基于这一特性,使用一个中间数据配置文件来描述所有相对于旧版本软件中需处理的节点。该中间数据配置文件可以为系统根据旧版本的文件格式配置的缺省数据配置文件,也可以为用户根据XML文件的格式自定义的数据配置文件。
具体描述如下:
a、如果需要在当前新版本软件新增XML数据节点,则在具有XML格式的中间数据配置文件中描述出该节点所在路径、该节点标识、基本属性和该节点的缺省数据值,最后对该节点添加一个特殊属性以标识出该节点是相对应于旧版本软件中的配置数据需要增加的节点;
b、如果当前新版本软件中需要对旧版本中的XML数据节点进行修改,则如上述添加节点描述一样,需要添加一个特殊属性以标识出该节点是相对应于旧版本软件中的配置数据需要修改的节点。但是考虑到实际使用节点的路径不能修改,节点的标识是用来区分节点的,也不能修改,节点的缺省数据值以及值域类型是需要在新版本软件沿用的,所以也不能修改,剩下的只有节点基本属性了,所以在修改节点时,需要修改的只有节点的基本属性。
c、如果旧版本中的某一节点在新版本软件中不再使用,考虑删除该节点操作。如上述添加、修改节点一样,在中间数据配置文件中对需要删除的节点,添加一个特殊属性以标识出该节点是相对应于旧版本软件中的配置数据是需要删除的节点。但是考虑删除节点是个危险操作,譬如某节点在新版本中不再使用但是在旧版本中还需要使用,此时如果删除该节点可能会导致在软件版本回退后(从高软件版本向低软件版本回退),可能会导致读取相应节点数据失败,甚至可能引起系统出错,所以在不同版本配置数据间进行转换时对于XML数据节点的删除操作一定要慎重考虑,只有那些在新版本不再使用,并且在旧版本中即使没有该节点也不会产生错误影响的XML节点才可以标识为删除的特殊属性。
由于在中间数据配置文件中描述了新旧版本间需要处理的配置数据,接下来根据旧版本的数据配置文件和所述中间数据配置文件完成新旧版本数据配置文件的自动转换,具体实施过程如下:
步骤2,系统根据旧版本的配置数据得到旧版本的数据对象树。
首先当系统的XML数据中心软件进行初始化时,使用旧版本的数据配置文件按照既有的XML解析器生成对应的旧版本的数据对象树;然后使用旧版本的数据配置语法文件对所述生成的旧版本的数据对象树进行自定义的语法校验,并当语法校验通过后,确认生成的所述旧版本的数据对象树。
步骤3,XML数据中心使用XML解析器加载所述中间数据配置文件生成对应的中间数据对象树,然后从所述中间数据对象树中逐个读取相应的节点,并按照所述节点的特殊属性对所述旧版本的数据对象树进行处理,得到新版本的数据对象树。
步骤3是整个旧版本的配置数据向新版本的配置数据进行平滑转换过程中最关键的一步,在有了旧版本的数据对象树后,XML数据中心软件再使用XML解析器加载中间配置数据文件生成一个临时的中间数据对象树。然后再从该中间数据对象树中逐个读取相应的XML节点,并按照添加、修改或删除的特殊属性不同而执行不同的处理。具体实施过程如下:
首先,XML数据中心使用XML解析器加载所述中间数据配置文件生成对应的中间数据对象树;
其次,从所述中间数据对象树中逐个读取相应的节点;
最后,按照所述节点的添加、修改和/或删除特殊属性对所述旧版本的数据对象树进行处理,并根据处理结果得到新版本的数据对象树。
对于有添加特殊属性的节点则按照其在中间数据对象树中的路径在旧版本数据对象树中相应路径搜索是否存在该节点。如果该节点不存在,则将该节点的标识和基本属性以及缺省值都添加到旧版本数据对象树中的相应路径位置(在添加该节点基本属性时需注意特殊属性只是用来标识该节点是否应该被添加的,所以在真正的数据对象树中该特殊属性是无需添加的);如果该节点在旧版本数据对象树中已存在,则跳过该节点。然后继续处理中间数据对象树中剩余还需处理的节点处理。具体实施过程如下:
步骤11,按照其在所述数据对象树中的路径在旧版本的数据对象树中的相应路径搜索是否存在所述节点,当确认所述节点不存在时,则将所述节点的标识、基本属性和/或缺省值信息添加到所述旧版本的数据对象树中的相应路径位置上,然后继续执行步骤12;当确认所述节点已经存在时,则跳过所述节点,然后执行步骤12;
步骤12,判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤11。
对于有修改特殊属性的节点和前述有添加属性节点一样,先按照其在中间数据对象树中的路径在旧版本数据对象树中相应路径搜索是否存在该节点。如果该节点存在,则直接使用中间数据对象树中该节点的基本属性将原始数据对象树中该节点的基本属性覆盖,其它不做修改(需注意的是修改特殊属性依然只是用来描述该节点是需要修改的,所以在属性移植时,修改特殊属性无需处理,直接跳过);如果该节点不存在则直接跳过不处理。然后继续在所述中间数据对象树中继续获取下一个还需处理的节点。具体实施过程如下:
步骤21,按照其在所述中间数据对象树中的路径在旧版本的数据对象树中的相应路径搜索是否存在所述节点,当确认所述节点存在时,则使用所述中间数据对象树中所述节点的基本属性更新所述旧版本的数据对象树中的相应节点的基本属性,然后继续执行步骤22;如果确认所述节点不存在时,则跳过所述节点,然后执行步骤22;
步骤22,判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤21。
对于有删除特殊属性的节点则按照其在中间数据对象树中的路径在旧版本数据对象树中相应路径搜索是否存在该节点。如果存在,则直接将其删除;如果不存在,则跳过该节点,然后继续在中间数据对象树中继续获取下一个还需处理的节点。具体实施过程如下:
步骤31,按照其在所述中间数据对象树中的路径在所述旧版本的数据对象树中的相应路径搜索是否存在所述节点,如果存在,则直接将其删除,然后继续执行步骤32;如果不存在,则跳过所述节点,然后继续执行步骤32;
步骤32,判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤31。
当中间数据对象树中所有需处理的节点(指具有添加、修改和/或删除特殊属性的节点)都处理完毕后,旧版本的数据对象树中需要添加、修改和/或删除的操作也已处理完毕,则此时的旧版本的数据对象树已经被更新了,新版本的数据对象树也就此生成。接下来执行步骤4,即使用新版本的语法文件对所述新版本的数据对象树进行语法校验处理,并当语法校验通过后,结束旧版本配置数据向新版本配置数据的转换过程。
在步骤4中,结合新的SCHEMA语法文件对新生成的数据对象树进行新的自定义语法的SCHEMA校验,新的数据对象树中每个XML节点均校验通过后,则说明新生成的数据对象树是符合新语法的,XML软件重写系统文件目录下旧版本的数据配置文件和旧版本的语法文件,至此不同版本的配置数据间的平滑转换过程成功完成。如果在校验过程中,某节点校验失败则认为整个配置数据平滑转换过程失败。
由上述本发明的具体实施方案可以看出,本发明中由于首先使用中间数据配置文件描述所有新版本中相对于旧版本中需要处理的配置数据;然后根据所述中间数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的新版本的配置数据,因此通过本发明,系统能够根据数据配置语法文件和中间数据配置文件对不同版本间的配置数据自动进行转换,从而能够方便系统中配置数据的升级;另外,使系统软件版本的升级与后台软件的依赖性降低,而且版本回退和升级流程一致,从而解决了版本回退时数据配置文件不能自动回退的问题;再者,新旧版本的数据配置文件之间的逻辑关联性和节点的含义可以明确表达出来,可读性增强;而且,对新版本的数据配置文件中所有节点的语法校验得到了增强,真正达到了采用XML文件作为数据配置文件的目的。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (12)
1、一种不同版本的配置数据间进行转换的方法,其特征在于,包括:
A、使用中间数据配置文件描述新版本中相对于旧版本中需要处理的配置数据;
B、根据所述数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的配置数据。
2、根据权利要求1所述的方法,其特征在于,所述步骤A具体包括:
使用缺省数据配置文件或自定义的数据配置文件描述新版本中相对于旧版本中需要增加、修改和/或删除的配置数据,并用特殊属性标识所述配置数据。
3、根据权利要求1所述的方法,其特征在于,所述步骤B具体包括:
B1、系统根据旧版本的配置数据得到旧版本的数据对象树;
B2、根据所述中间数据配置文件生成中间数据对象树,并根据所述中间数据对象树中的配置数据的特殊属性对所述旧版本的数据对象树进行处理,得到新版本的数据对象树;
B3、使用新版本的语法文件对所述新版本的数据对象树进行语法校验处理,并当语法校验通过后,结束旧版本配置数据向新版本配置数据的转换过程。
4、根据权利要求3所述的方法,其特征在于,所述步骤B1具体包括:
B11、使用旧版本的数据配置文件生成旧版本的数据对象树;
B12、使用旧版本的数据配置语法文件对所述旧版本的数据对象树进行语法校验,并当语法校验通过后,确认所述旧版本的数据对象树。
5、根据权利要求3所述的方法,其特征在于,所述步骤B2具体包括:
B21、系统的XML数据中心使用XML解析器加载所述中间数据配置文件生成对应的中间数据对象树;
B22、从所述中间数据对象树中逐个读取相应的节点;
B23、按照所述节点的添加、修改和/或删除特殊属性对所述旧版本的数据对象树进行处理,并根据处理结果得到新版本的数据对象树。
6、根据权利要求5所述的方法,其特征在于,当节点的特殊属性为添加时,所述步骤B23具体包括:
B231、按照其在所述中间数据对象树中的路径在旧版本的数据对象树中的相应路径搜索是否存在所述节点,当确认所述节点不存在时,则将所述节点的标识、基本属性和/或缺省值信息添加到所述旧版本的数据对象树中的相应路径位置上,然后继续执行步骤B232;当确认所述节点已经存在时,则跳过所述节点,然后执行步骤B232;
B232、判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤B231。
7、根据权利要求5所述的方法,其特征在于,当节点的特殊属性为修改时,所述步骤B23具体包括:
B233、按照其在所述中间数据对象树中的路径在旧版本的数据对象树中的相应路径搜索是否存在所述节点,当确认所述节点存在时,则使用所述中间数据对象树中所述节点的基本属性更新所述旧版本的数据对象树中的相应节点的基本属性,然后继续执行步骤B232;如果确认所述节点不存在时,则跳过所述节点,然后执行步骤B234;
B234、判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤B233。
8、根据权利要求5所述的方法,其特征在于,当节点的特殊属性为删除时,所述步骤B23具体包括:
B235、按照其在所述中间数据对象树中的路径在所述旧版本的数据对象树中的相应路径搜索是否存在所述节点,如果存在,则直接将其删除,然后继续执行步骤B236;如果不存在,则跳过所述节点,然后继续执行步骤B236;
B236、判断所述中间数据对象树中的所有节点是否读取完毕,若是,则结束此过程,并根据处理结果得到新版本的数据对象树;否则,继续从所述中间数据对象树中逐个读取未被读取过的节点,然后执行步骤B235。
9、一种不同版本的配置数据间进行转换的系统,其特征在于,包括:
数据配置文件生成模块和配置数据转换模块;
所述数据配置文件生成模块,用于生成中间数据配置文件,并利用所述中间数据配置文件描述新版本中相对于旧版本中发生变化的配置数据;当不同版本的配置数据转换时,所述配置数据转换模块根据所述生成的中间数据配置文件和旧版本的配置数据生成与新版本的数据配置语法文件相对应的配置数据。
10、根据权利要求9所述的系统,其特征在于,还包括:
数据对象树生成模块,用于根据所述数据配置文件生成模块生成的中间数据配置文件生成相应的中间数据对象树;以及,根据旧版本的数据配置文件生成相应的旧版本的数据对象树。
11、根据权利要求9或10所述的系统,其特征在于:
所述配置数据转换模块包括数据对象特殊属性识别模块和数据对象转换模块;
所述数据对象特殊属性识别模块,用于识别所述中间数据对象树中的节点的特殊属性,并将其传送给所述数据对象转换模块;所述数据对象转换模块根据所述特殊属性对旧版本的数据对象树进行处理,并根据处理结果生成新版本的数据对象树。
12、根据权利要求11所述的系统,其特征在于,还包括:
语法校验模块,用于将所述生成的新版本的数据对象树中的数据对象与新版本的配置数据语法文件进行语法校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100031522A CN100407206C (zh) | 2006-02-20 | 2006-02-20 | 不同版本的配置数据间进行转换的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100031522A CN100407206C (zh) | 2006-02-20 | 2006-02-20 | 不同版本的配置数据间进行转换的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1866252A true CN1866252A (zh) | 2006-11-22 |
CN100407206C CN100407206C (zh) | 2008-07-30 |
Family
ID=37425274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100031522A Expired - Fee Related CN100407206C (zh) | 2006-02-20 | 2006-02-20 | 不同版本的配置数据间进行转换的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100407206C (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100461704C (zh) * | 2006-12-02 | 2009-02-11 | 华为技术有限公司 | 数据同步的方法 |
CN101436126A (zh) * | 2007-11-13 | 2009-05-20 | 华为技术有限公司 | 在线升级过程中的信息翻译实现方法及装置 |
CN101150831B (zh) * | 2007-10-24 | 2010-06-09 | 华为技术有限公司 | 网元数据处理方法及装置 |
CN103186378A (zh) * | 2011-12-31 | 2013-07-03 | 鼎捷软件股份有限公司 | 配置方法及配置系统 |
CN103460204A (zh) * | 2011-01-27 | 2013-12-18 | 韦斯技术有限公司 | 产生和验证客户机嵌入式图像上的定制的可扩展标记语言(xml)配置 |
CN103597448A (zh) * | 2011-06-14 | 2014-02-19 | 西门子公司 | 用于交换数据的方法和设备 |
CN104572132A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 一种程序版本差异确定方法及装置 |
CN106383890A (zh) * | 2016-09-23 | 2017-02-08 | 福建三元达网络技术有限公司 | 基于xpath的xml配置文件恢复方法及其系统 |
CN107122341A (zh) * | 2012-01-13 | 2017-09-01 | 微软技术许可有限责任公司 | 用于跨应用版本的对象/形状的属性的计算的方法和系统 |
CN107391216A (zh) * | 2017-09-26 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种软件升级方法及装置 |
CN107678766A (zh) * | 2017-10-20 | 2018-02-09 | 国云科技股份有限公司 | 一种系统配置文件的升降级方法 |
CN108958827A (zh) * | 2017-05-25 | 2018-12-07 | 贵州白山云科技有限公司 | 一种处理程序升级故障的方法和系统 |
CN109491701A (zh) * | 2018-11-01 | 2019-03-19 | 郑州云海信息技术有限公司 | 一种配置信息恢复方法、系统、设备及计算机存储介质 |
CN110333880A (zh) * | 2018-03-29 | 2019-10-15 | 杭州海康威视数字技术股份有限公司 | 一种配置更新方法、装置、设备及存储介质 |
CN110347413A (zh) * | 2019-06-27 | 2019-10-18 | 北京口袋时尚科技有限公司 | 软件配置信息更新方法及装置 |
CN113419759A (zh) * | 2021-06-21 | 2021-09-21 | 广联达科技股份有限公司 | 文件升级方法、装置及电子设备 |
US11163553B2 (en) | 2017-01-26 | 2021-11-02 | Huawei Technologies Co., Ltd. | Data configuration method and data configuration apparatus |
CN113885924A (zh) * | 2021-12-07 | 2022-01-04 | 深圳市明源云科技有限公司 | Xml配置文件升级方法、装置及可读存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6216157B1 (en) * | 1997-11-14 | 2001-04-10 | Yahoo! Inc. | Method and apparatus for a client-server system with heterogeneous clients |
JP2003523547A (ja) * | 1999-01-15 | 2003-08-05 | メタエッジ・コーポレーション | データ・ウエアハウス環境で情報を視覚化する方法 |
EP1443700A3 (en) * | 2002-09-19 | 2005-10-05 | Alcatel Canada Inc. | Methods and apparatus for configuration change management in communications networks |
US7185071B2 (en) * | 2002-12-24 | 2007-02-27 | International Business Machines Corporation | Self-healing version and configuration model for an application server |
CN100556211C (zh) * | 2004-06-22 | 2009-10-28 | 中兴通讯股份有限公司 | 一种移动通信网管系统的升级方法 |
US20060041881A1 (en) * | 2004-08-19 | 2006-02-23 | Adkasthala Bheema P | Universal upgrade architecture |
-
2006
- 2006-02-20 CN CN2006100031522A patent/CN100407206C/zh not_active Expired - Fee Related
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100461704C (zh) * | 2006-12-02 | 2009-02-11 | 华为技术有限公司 | 数据同步的方法 |
CN101150831B (zh) * | 2007-10-24 | 2010-06-09 | 华为技术有限公司 | 网元数据处理方法及装置 |
CN101436126A (zh) * | 2007-11-13 | 2009-05-20 | 华为技术有限公司 | 在线升级过程中的信息翻译实现方法及装置 |
CN103460204B (zh) * | 2011-01-27 | 2018-02-02 | 韦斯技术有限公司 | 产生和验证客户机嵌入式图像上的定制的可扩展标记语言(xml)配置 |
CN103460204A (zh) * | 2011-01-27 | 2013-12-18 | 韦斯技术有限公司 | 产生和验证客户机嵌入式图像上的定制的可扩展标记语言(xml)配置 |
CN103597448A (zh) * | 2011-06-14 | 2014-02-19 | 西门子公司 | 用于交换数据的方法和设备 |
CN103186378A (zh) * | 2011-12-31 | 2013-07-03 | 鼎捷软件股份有限公司 | 配置方法及配置系统 |
CN107122341A (zh) * | 2012-01-13 | 2017-09-01 | 微软技术许可有限责任公司 | 用于跨应用版本的对象/形状的属性的计算的方法和系统 |
CN104572132A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 一种程序版本差异确定方法及装置 |
CN106383890B (zh) * | 2016-09-23 | 2019-09-17 | 安科讯(福建)科技有限公司 | 基于xpath的xml配置文件恢复方法及其系统 |
CN106383890A (zh) * | 2016-09-23 | 2017-02-08 | 福建三元达网络技术有限公司 | 基于xpath的xml配置文件恢复方法及其系统 |
US11163553B2 (en) | 2017-01-26 | 2021-11-02 | Huawei Technologies Co., Ltd. | Data configuration method and data configuration apparatus |
CN108958827A (zh) * | 2017-05-25 | 2018-12-07 | 贵州白山云科技有限公司 | 一种处理程序升级故障的方法和系统 |
CN107391216A (zh) * | 2017-09-26 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种软件升级方法及装置 |
CN107678766A (zh) * | 2017-10-20 | 2018-02-09 | 国云科技股份有限公司 | 一种系统配置文件的升降级方法 |
CN110333880A (zh) * | 2018-03-29 | 2019-10-15 | 杭州海康威视数字技术股份有限公司 | 一种配置更新方法、装置、设备及存储介质 |
CN110333880B (zh) * | 2018-03-29 | 2024-02-02 | 杭州海康威视数字技术股份有限公司 | 一种配置更新方法、装置、设备及存储介质 |
CN109491701A (zh) * | 2018-11-01 | 2019-03-19 | 郑州云海信息技术有限公司 | 一种配置信息恢复方法、系统、设备及计算机存储介质 |
CN110347413A (zh) * | 2019-06-27 | 2019-10-18 | 北京口袋时尚科技有限公司 | 软件配置信息更新方法及装置 |
CN113419759A (zh) * | 2021-06-21 | 2021-09-21 | 广联达科技股份有限公司 | 文件升级方法、装置及电子设备 |
CN113885924A (zh) * | 2021-12-07 | 2022-01-04 | 深圳市明源云科技有限公司 | Xml配置文件升级方法、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN100407206C (zh) | 2008-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1866252A (zh) | 不同版本的配置数据间进行转换的方法和系统 | |
CN1909693A (zh) | 数据配置文件在不同软件版本间进行转换的方法及装置 | |
CN100337235C (zh) | 访问数据库的方法及装置 | |
CN1112642C (zh) | 配置工具中的设计部件复用方法 | |
CN1134730C (zh) | 用于减少预装类的脚印的系统和方法 | |
CN1577322A (zh) | 管理数据处理系统中的应用文件的方法和装置 | |
CN1647038A (zh) | 软件分发方法与系统 | |
CN1896992A (zh) | 基于应用定制解析xml文档的方法及装置 | |
CN101042645A (zh) | 统一软件开发环境的方法、设备及系统 | |
CN1946226A (zh) | 电信设备升级的方法、设备及升级引擎单元 | |
CN1908931A (zh) | 一种文字的可变数据排版的方法 | |
CN1834913A (zh) | 一种管理软件安装/卸载的方法 | |
CN1855032A (zh) | 微处理系统、总线地址转换方法以及程序修补方法 | |
CN1848111A (zh) | 用于内存数据库的一种数据操作接口的实现方法 | |
CN1851693A (zh) | 一种对系统资源进行管理的实现方法 | |
CN1658159A (zh) | 可配置和可动态更改的对象模型 | |
CN1828607A (zh) | 用于树型结构文件的数据查找方法 | |
CN1677932A (zh) | 网络管理配置方法及其装置 | |
CN1975669A (zh) | Xml语言描述的业务逻辑映射到应用语言的方法 | |
CN1862267A (zh) | 对电路原理图进行审查的方法 | |
CN1855052A (zh) | 一种从树型结构数据和一组代码片断结构体生成目标源代码的方法 | |
CN1863085A (zh) | 保证网管和网元配置数据一致性的方法及系统 | |
CN1956392A (zh) | 实现多业务板架构的方法、装置和系统 | |
CN1525312A (zh) | 具有面向对象程序的存储介质 | |
CN1809250A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080730 |
|
CF01 | Termination of patent right due to non-payment of annual fee |