CN108319684A - 一种可扩展标记语言xml文件的存储方法及装置 - Google Patents
一种可扩展标记语言xml文件的存储方法及装置 Download PDFInfo
- Publication number
- CN108319684A CN108319684A CN201810098951.5A CN201810098951A CN108319684A CN 108319684 A CN108319684 A CN 108319684A CN 201810098951 A CN201810098951 A CN 201810098951A CN 108319684 A CN108319684 A CN 108319684A
- Authority
- CN
- China
- Prior art keywords
- xml
- node
- xsd files
- xsd
- element node
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information 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/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information 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/83—Querying
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)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种可扩展标记语言XML文件的存储方法及装置,其中,该方法包括:对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;解析以该XSD文件为标准生成的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;将提取的XML值与XML元素节点对应存储。本申请实施例通过减少XML文件的解析次数,从而减少对系统资源的消耗。
Description
技术领域
本申请涉及可扩展标记语言XML技术领域,具体而言,涉及一种可扩展标记语言XML文件的存储方法及装置。
背景技术
可扩展标记语言(Extensible Markup Language,XML)文件是用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言,可扩展标记语言架构定义(XML Schemas Definition,XSD)文件描述了XML文件的结构,定义了XML元素节点,可以用一个指定的XSD文件来验证某个XML文件,以检查该XML文件是否符合其要求,也可以基于XSD文件生成XML文件。
但是,现有技术中,根据业务需求通常需要提取XML文件中某XML元素节点的值,而每次提取都需要对对应XML文件进行一次解析,如果在不同的时间点需要对多个不同的XML元素节点值进行提取,并且存在很多XML文件,会进行多次解析,耗费大量的系统资源。
发明内容
有鉴于此,本申请的目的在于提供一种XML文件的存储方法及装置,以减少XML文件的解析次数,从而减少系统资源的消耗。
第一方面,本申请实施例提供了一种XML文件的存储方法,包括:
对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;
解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;
将提取的XML值与XML元素节点对应存储。
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,所述方法还包括:
为提取的XML元素节点确定对应的节点标识;
将提取的XML值与XML元素节点对应存储,具体包括:
将提取的XML值与XML元素节点的节点标识对应存储。
结合第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第二种可能的实施方式,为提取的XML元素节点确定对应的节点标识,具体包括:
将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
结合第一方面的第二种可能的实施方式,本申请实施例提供了第一方面的第三种可能的实施方式,所述方法还包括:
针对每个XSD文件,为该XSD文件的每个XML元素节点的节点标识设置访问点;
将该XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识对应存储;
将提取的XML值与XML元素节点的节点标识对应存储,具体包括:
针对每个XSD文件,将提取的XML值与该XSD文件提取的XML元素节点的节点标识对应存储于该XSD文件对应的数据库。
结合第一方面,本申请实施例提供了第一方面的第四种可能的实施方式,所述方法还包括:
针对每个XSD文件,判断以该XSD文件为标准生成的XML中是否存在至少两个XML文件符合如下条件:
针对该XSD文件提取的XML元素节点,存在至少两个XML元素节点,针对其中每个XML元素节点,满足在所述至少两个XML文件中该XML元素节点对应的XML值相同;
若存在,则按照预设查重处理规则进行处理。
结合第一方面的第三种可能的实施方式或者第一方面的第四种可能的实施方式,本申请实施例提供了第一方面的第五种可能的实施方式,所述方法还包括:
接收XML查询请求,其中,所述XML查询请求中包括访问点和数据库标识;
根据对应存储的XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识,确定与查询请求中包含的访问点和数据库标识对应的XML元素节点的节点标识;
从对应数据库的与确定的XML元素节点的节点标识对应存储的XML值中,确定符合查询条件的XML值,并反馈。
结合第一方面,本申请实施例提供了第一方面的第六种可能的实施方式,在提取XML文件中各XML元素节点对应的XML值之前,所述方法还包括:
根据以XSD文件为标准生成XML文件时的规则,对XML文件进行验证;
确定XML文件符合对应XSD文件标准。
第二方面,本申请实施例提供了一种可扩展标记语言XML文件的存储装置,包括:
第一提取模块,用于对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;
第二提取模块,用于解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;
存储模块,用于将提取的XML值与XML元素节点对应存储。
结合第二方面,本申请实施例提供了第二方面的第一种可能的实施方式,还包括:
确定模块,用于为提取的XML元素节点确定对应的节点标识;
所述存储模块,具体用于将提取的XML值与XML元素节点的节点标识对应存储。
结合第二方面的第一种可能的实施方式,本申请实施例提供了第二方面的第二种可能的实施方式,
所述确定模块,具体用于将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
与现有技术中相比,本申请实施例对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;解析以该XSD文件为标准生成的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;将提取的XML值与XML元素节点对应存储。可见,本申请实施例将XSD文件中的XML元素节点与以该XSD文件为标准生成的XML文件中的XML元素节点对应的XML值对应存储,建立一个XML元素节点与XML值的对应存储库,当用户需要大批量的解析XML元素节点对应的XML值,可以直接在XML元素节点与XML值的对应存储库中按照XML元素节点查找对应的XML值,大大减轻的用户的工作量,减少XML文件的解析次数,从而减少系统资源的消耗。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的第一种XML文件的存储方法流程示意图;
图2示出了本申请实施例所提供的第二种XML文件的存储方法流程示意图;
图3示出了本申请实施例所提供的第三种XML文件的存储方法流程示意图;
图4示出了本申请实施例所提供的一种XML文件的查询方法结构示意图;
图5示出了本申请实施例所提供的一种XML文件存储结果示意图;
图6示出了本申请实施例所提供的第一种XML文件存储装置结构示意图;
图7示出了本申请实施例所提供的第二种XML文件存储装置结构示意图;
图8示出了本申请实施例所提供的第三种XML文件存储装置结构示意图;
图9示出了本申请实施例所提供的第四种XML文件存储装置结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例1
参见图1所示,本申请实施例1所提供的XML文件的存储方法包括以下步骤S100~S120:
S100,对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点。
因为XSD文件是XML文件的架构标准,在XSD文件中定义了XML文件中都有哪些元素,即XML元素节点,这些XML元素节点是对应的XML文件中存在取值的节点。
S110,解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值。
较佳地,在提取XML文件中各XML元素节点对应的XML值之前,还包括以下步骤:
(1)根据以XSD文件为标准生成XML文件时的规则,对XML文件进行验证。
(2)确定XML文件符合对应XSD文件标准。
通过以上步骤(1)和步骤(2)可以检查XML文件是否符合对应XSD文件标准,防止在录入XML文件时,有不符合对应XSD文件标准的XML文件录入。
S120,将提取的XML值与XML元素节点对应存储。
特别地,该XML文件的存储方法还包括:针对每个XSD文件,判断以该XSD文件为标准生成的XML文件中是否存在至少两个XML文件符合如下条件:
(1)针对该XSD文件提取的XML元素节点,存在至少两个XML元素节点,针对其中每个XML元素节点,满足在至少两个XML文件中该XML元素节点对应的XML值相同。
(2)若存在,则按照预设查重处理规则进行处理。
该方法即针对同一个XSD标准生成的至少两个XML文件中,在将提取的XML值与XML元素节点对应存储之前,可以通过设置基于任一XML元素节点的查重点,来检查在至少两个XML文件中,是否存在与该任一XML元素节点对应的XML值相同,如果存在,可以根据预设查重处理规则来处理。
比如,同一个XSD标准生成的至少两个XML文件中均包括XML元素节点为“姓名”和“学号”的节点,如果设置“姓名”为查重点,则如果检查到这两个XML文件中与“姓名”对应的XML值均为“张三”时,且当预设“姓名”为查重点时,对应的处理规则为可以继续存储时,则继续将提取的XML值与XML元素节点对应存储;当“姓名”和“学号”均为查重点时,如果检查到这两个XML文件中与“姓名”对应的XML值均为“张三”时,且“学号”对应的XML值均为“1001”时,且当预设“姓名”和“学号”均为查重点时,对应的处理规则为可以停止存储时,则停止将提取的XML值与XML元素节点对应存储。
此外,有时在不同的XML文件中,会存在相同的XML元素节点,所以仅仅靠元素节点有时并不能唯一确定与XML元素节点对应的XML值。一种较佳地实施方式,在本申请实施例1提出的技术方案中,参见图2所示,本申请实施例1所提供的XML文件的存储方法还包括以下步骤S100~S210:
S100,对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点。
S110,解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值。
S200,为提取的XML元素节点确定对应的节点标识。
具体地,可以将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
S210,将提取的XML值与XML元素节点的节点标识对应存储。
这样,将提取的XML值与XML元素节点的节点标识对应存储,即将XML元素节点在所属XSD文件中的路径与该路径对应的XML值进行存储。这样,因为XML元素节点在所属XSD文件中的路径是唯一的,即可以唯一确定一个XML元素节点。
但是,XML元素节点在所属XSD文件中的路径有时可能会比较繁琐,查询时需要用户输入的字段也比较长,则一种较佳地实施方式,在本申请实施例1提出的技术方案中,参见图3所示,本申请实施例1所提供的XML文件的存储方法还包括以下步骤S100~S320:
S100,对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点。
S110,解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值。
S200,为提取的XML元素节点确定对应的节点标识。
S300,针对每个XSD文件,为该XSD文件的每个XML元素节点的节点标识设置访问点。
这样,对为该XSD文件的每个XML元素节点的节点标识设置访问点可以将用一个简便的访问点来标识较为繁琐的XML元素节点的节点标识。
S310,将该XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识对应存储。
S320,针对每个XSD文件,将提取的XML值与该XSD文件提取的XML元素节点的节点标识对应存储于该XSD文件对应的数据库。
比如,可以在服务器中建立两种数据库,第一种数据库中的各个子数据库存储XML元素节点的节点标识与访问点的映射关系,第二种数据库中的各个子数据库存储XML元素节点的节点标识与XML值的映射关系,且为了区分第一种数据库中的各个子数据库以及第二种数据库中的各个子数据库,会给第一种数据库中的各个子数据库以及第二种数据库中的各个子数据库分配各自专属的数据库标识。
且第一种数据库可以为轻量级的关系数据库,第二种数据库可以为全文搜索引擎,第二种数据库的存储空间大于第一种数据库的存储空间。
较佳地,可以为每个XDS文件分配一个子数据库,用于存储该XSD文件中各XML元素节点对应的XML值。
按照步骤S100~S320中提出的XML文件的存储方法,当接收到用户端输入的XML查询请求,可以按照以下步骤S400~S420来输出符合查询条件的XML值,流程图如图4所示:
S400,接收XML查询请求,其中,该XML查询请求中包括访问点和数据库标识。
S410,根据对应存储的XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识,确定与查询请求中包含的访问点和数据库标识对应的XML元素节点的节点标识。
S420,从对应数据库的与确定的XML元素节点的节点标识对应存储的XML值中,确定符合查询条件的XML值,并反馈。
即接到客户端发送的XML查询请求后,获取到该XML查询请求中的访问点和数据库标识,则会根据该数据库标识确定要访问的第一种数据库中与该数据库标识对应的子数据库,在该子数据库中,查找到与访问点对应的XML元素节点的节点标识;然后在第二种数据库中与该数据库标识对应的子数据库查找到与XML元素节点的节点标识对应的XML值。
下面结合图3和图5以一个具体实施例进行详细阐述:
如图5所示,提取出的一个XSD文件中的XML元素节点为1-2、3、4等;另一个XSD文件中的XML元素节点为A-B、C、D等。
提取出的XML元素节点1-2、3、4对应的XML值依次为一中二年级、三班、张三;提取出的XML元素节点A-B、C、D对应的XML值依次为二中五年级、三班、李四。
为提取的XML元素节点1-2、3、4确定对应的节点标识依次为1-2、1-2-3、1-2-3-4;为提取的XML元素节点A-B、C、D确定对应的节点标识依次为A-B、A-B-C、A-B-C-D。
为XML元素节点的节点标识1-2、1-2-3、1-2-3-4设置访问点依次为10.1.1、10.1.2、10.1.3;为XML元素节点的节点标识A-B、A-B-C、A-B-C-D设置访问点依次为10.1.1、10.1.2、10.1.3。
将XML元素节点的节点标识1-2、1-2-3、1-2-3-4以及对应访问点10.1.1、10.1.2、10.1.3存储与Derby数据库中的001子数据库;将A-B、A-B-C、A-B-C-D以及对应的访问点10.1.1、10.1.2、10.1.3存储与Derby数据库中的002子数据库。
将XML元素节点的节点标识1-2、1-2-3、1-2-3-4以及对应的XML值存储于搜索引擎数据库中的001子数据库,将XML元素节点的节点标识A-B、A-B-C、A-B-C-D以及对应的XML值存储于搜索引擎数据库中的002子数据库。
本具体实施例中的第一种数据库为Derby数据库(轻量级关系数据库),在该Derby数据库中存储有至少两个子数据库,标号分别为001子数据库和002子数据库等;第二种数据库为搜索引擎数据库,在该搜索引擎数据库中存储有至少两个子数据库,标号分别为001子数据库和002子数据库等。
针对XML文件的查询过程如下:
当接收到客户端发送的XML查询请求后,若该XML查询请求中携带的访问点为10.1.1,且数据库标识为001,则在Derby数据库找到与001对应的子数据库,确定与该10.1.1对应的XML元素节点的节点标识为1-2,之后在搜索引擎库中的与001对应的子数据库中,确定与XML元素节点的节点标识为1-2对应的XML数值为一中二年级。
实施例2
本申请实施例2提供了一种XML文件的存储装置600,如图6所示,包括:
第一提取模块501,用于对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;
第二提取模块502,用于解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;
存储模块503,用于将提取的XML值与XML元素节点对应存储。
可选地,如图7所示,可扩展标记语言XML文件的存储装置600还包括:
确定模块504,用于为提取的XML元素节点确定对应的节点标识。
存储模块503,具体用于将提取的XML值与XML元素节点的节点标识对应存储。
可选地,确定模块504具体用于:
将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
可选地,如图8所示,可扩展标记语言XML文件的存储装置600还包括:
设置模块505,用于针对每个XSD文件,为该XSD文件的每个XML元素节点的节点标识设置访问点;
存储模块503,用于将该XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识对应存储;以及用于针对每个XSD文件,将提取的XML值与该XSD文件提取的XML元素节点的节点标识对应存储于该XSD文件对应的数据库。
可选地,可扩展标记语言XML文件的存储装置600还包括:
判断模块,用于针对每个XSD文件,判断以该XSD文件为标准生成的XML中是否存在至少两个XML文件符合如下条件:
针对该XSD文件提取的XML元素节点,存在至少两个XML元素节点,针对其中每个XML元素节点,满足在至少两个XML文件中该XML元素节点对应的XML值相同;
若存在,则按照预设查重处理规则进行处理。
可选地,可扩展标记语言XML文件的存储装置600还包括:
接收模块,用于接收XML查询请求,其中,该XML查询请求中包括访问点和数据库标识。
确定模块,用于根据对应存储的XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识,确定与查询请求中包含的访问点和数据库标识对应的XML元素节点的节点标识;以及用于从对应数据库的与确定的XML元素节点的节点标识对应存储的XML值中,确定符合查询条件的XML值,并反馈。
可选地,可扩展标记语言XML文件的存储装置600还包括验证模块,在提取XML文件中各XML元素节点对应的XML值之前,验证模块用于:
根据以XSD文件为标准生成XML文件时的规则,对XML文件进行验证。
确定XML文件符合对应XSD文件标准。
如图9所示,为本申请另一实施例所提供的XML文件的存储装置900的结构示意图,该XML文件的存储装置900包括:处理器901、存储器902和总线903,存储器902存储执行指令,当装置运行时,处理器901与存储器902之间通过总线903通信,处理器901执行存储器902中存储的如下执行指令:
对至少一个可扩展标记语言架构定义XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点。
解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值。
将提取的XML值与XML元素节点对应存储。
可选地,处理器901执行的执行指令还包括:
为提取的XML元素节点确定对应的节点标识。
将提取的XML值与XML元素节点的节点标识对应存储。
可选地,处理器901执行的执行指令具体包括:
将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
可选地,处理器901执行的执行指令还包括:
针对每个XSD文件,为该XSD文件的每个XML元素节点的节点标识设置访问点。
将该XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识对应存储。
针对每个XSD文件,将提取的XML值与该XSD文件提取的XML元素节点的节点标识对应存储于该XSD文件对应的数据库。
可选地,处理器901执行的执行指令还包括:
针对每个XSD文件,判断以该XSD文件为标准生成的XML文件中是否存在至少两个XML文件符合如下条件:
针对该XSD文件提取的XML元素节点,存在至少两个XML元素节点,针对其中每个XML元素节点,满足在至少两个XML文件中该XML元素节点对应的XML值相同。
若存在,则按照预设查重处理规则进行处理。
可选地,处理器901执行的执行指令还包括:
接收XML查询请求,其中,该XML查询请求中包括访问点和数据库标识。
根据对应存储的XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识,确定与查询请求中包含的访问点和数据库标识对应的XML元素节点的节点标识。
从对应数据库的与确定的XML元素节点的节点标识对应存储的XML值中,确定符合查询条件的XML值,并反馈。
可选地,在提取XML文件中各XML元素节点对应的XML值之前,处理器901执行的执行指令还包括:
根据以XSD文件为标准生成XML文件时的规则,对XML文件进行验证。
确定XML文件符合对应XSD文件标准。
对应于图1至图4中的XML文件的存储方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述XML文件的存储方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述XML文件的存储方法,从而解决现有技术中在不同的时间点需要对多个不同的XML元素节点值进行提取,且存在很多XML文件时,因为会进行多次解析,从而耗费大量的系统资源的问题,用以减少XML文件的解析次数,从而减少对系统资源的消耗。
与现有技术中相比,本申请实施例对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;解析以该XSD文件为标准生成的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;将提取的XML值与XML元素节点对应存储。可见,本申请实施例将XSD文件中的XML元素节点与以该XSD文件为标准生成的XML文件中的XML元素节点对应的XML值对应存储,建立一个XML元素节点与XML值的对应存储库,当用户需要大批量的解析XML元素节点对应的XML值,可以直接在XML元素节点与XML值的对应存储库中按照XML元素节点查找对应的XML值,大大减轻的用户的工作量,减少XML文件的解析次数,从而减少系统资源的消耗。
此外,本申请实施例还建立了XML元素节点的节点标识,以及对XML元素节点的节点标识设置了访问点,将该XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识对应存储;针对每个XSD文件,将提取的XML值与该XSD文件提取的XML元素节点的节点标识对应存储于该XSD文件对应的数据库,这样,就建立了统一标准的数据库,针对不同生成标准的XML文件存储数据库,不需要用户按照不同的解析标准进行解析,只需要用户输入携带访问点和数据库标识的查询请求,就可以根据访问点以及数据库标识查找到访问点对应的XML元素节点的节点标识,在根据XML元素节点的节点标识查找并输出对应的XML值,大大简化了用户的查询标准,减少XML文件的解析次数,从而减少系统资源的消耗。
本申请实施例所提供的进行XML文件的存储方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
本申请实施例所提供的XML文件的存储装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种可扩展标记语言XML文件的存储方法,其特征在于,包括:
对至少一个可扩展标记语言架构定义XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;
解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;
将提取的XML值与XML元素节点对应存储。
2.根据权利要求1所述的方法,其特征在于,还包括:
为提取的XML元素节点确定对应的节点标识;
将提取的XML值与XML元素节点对应存储,具体包括:
将提取的XML值与XML元素节点的节点标识对应存储。
3.根据权利要求2所述的方法,其特征在于,为提取的XML元素节点确定对应的节点标识,具体包括:
将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
4.根据权利要求3所述的方法,其特征在于,还包括:
针对每个XSD文件,为该XSD文件的每个XML元素节点的节点标识设置访问点;
将该XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识对应存储;
将提取的XML值与XML元素节点的节点标识对应存储,具体包括:
针对每个XSD文件,将提取的XML值与该XSD文件提取的XML元素节点的节点标识对应存储于该XSD文件对应的数据库。
5.根据权利要求1所述的方法,其特征在于,还包括:
针对每个XSD文件,判断以该XSD文件为标准生成的XML文件中是否存在至少两个XML文件符合如下条件:
针对该XSD文件提取的XML元素节点,存在至少两个XML元素节点,针对其中每个XML元素节点,满足在所述至少两个XML文件中该XML元素节点对应的XML值相同;
若存在,则按照预设查重处理规则进行处理。
6.根据权利要求4或5所述的方法,其特征在于,还包括:
接收XML查询请求,其中,所述XML查询请求中包括访问点和数据库标识;
根据对应存储的XSD文件XML元素节点的节点标识、访问点以及该XSD文件对应的数据库的标识,确定与查询请求中包含的访问点和数据库标识对应的XML元素节点的节点标识;
从对应数据库的与确定的XML元素节点的节点标识对应存储的XML值中,确定符合查询条件的XML值,并反馈。
7.根据权利要求1所述的方法,其特征在于,在提取XML文件中各XML元素节点对应的XML值之前,所述方法还包括:
根据以XSD文件为标准生成XML文件时的规则,对XML文件进行验证;
确定XML文件符合对应XSD文件标准。
8.一种可扩展标记语言XML文件的存储装置,其特征在于,包括:
第一提取模块,用于对至少一个XSD文件中的每个XSD文件进行解析,提取该XSD文件中的XML元素节点;
第二提取模块,用于解析以该XSD文件为标准的XML文件,提取XML文件中与从该XSD文件提取的XML元素节点对应的XML值;
存储模块,用于将提取的XML值与XML元素节点对应存储。
9.根据权利要求8所述的装置,其特征在于,还包括:
确定模块,用于为提取的XML元素节点确定对应的节点标识;
所述存储模块,具体用于将提取的XML值与XML元素节点的节点标识对应存储。
10.根据权利要求9所述的装置,其特征在于,
所述确定模块,具体用于将提取的XML元素节点在所属XSD文件中的路径确定为对应的节点标识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810098951.5A CN108319684A (zh) | 2018-01-31 | 2018-01-31 | 一种可扩展标记语言xml文件的存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810098951.5A CN108319684A (zh) | 2018-01-31 | 2018-01-31 | 一种可扩展标记语言xml文件的存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108319684A true CN108319684A (zh) | 2018-07-24 |
Family
ID=62891417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810098951.5A Pending CN108319684A (zh) | 2018-01-31 | 2018-01-31 | 一种可扩展标记语言xml文件的存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108319684A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214172A (zh) * | 2018-09-20 | 2019-01-15 | 郑州云海信息技术有限公司 | 获取有效注册表键值名的方法以及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040073870A1 (en) * | 2002-10-15 | 2004-04-15 | You-Chin Fuh | Annotated automaton encoding of XML schema for high performance schema validation |
CN1622095A (zh) * | 2004-12-27 | 2005-06-01 | 中国科学院软件研究所 | 可扩展标记语言文件存储及插入关系数据库表的方法 |
CN101571863A (zh) * | 2008-04-29 | 2009-11-04 | 国际商业机器公司 | 用于可变模式的xml文档的xml查询方法和系统 |
CN101661481A (zh) * | 2008-08-29 | 2010-03-03 | 国际商业机器公司 | 存储xml数据的方法、执行xml查询的方法及其装置 |
CN102195959A (zh) * | 2010-03-11 | 2011-09-21 | 中兴通讯股份有限公司 | Sip信令的xml数据的解析方法及装置 |
CN102456053A (zh) * | 2010-11-02 | 2012-05-16 | 江苏大学 | 一种xml文档到数据库的映射方法 |
CN102662997A (zh) * | 2012-03-15 | 2012-09-12 | 北京播思软件技术有限公司 | 一种存储xml数据到关系数据库的方法 |
CN102768674A (zh) * | 2012-06-12 | 2012-11-07 | 上海方正数字出版技术有限公司 | 一种基于路径结构的xml数据存储方法 |
CN103559321A (zh) * | 2013-11-22 | 2014-02-05 | 方正国际软件有限公司 | 文档格式转换系统 |
-
2018
- 2018-01-31 CN CN201810098951.5A patent/CN108319684A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040073870A1 (en) * | 2002-10-15 | 2004-04-15 | You-Chin Fuh | Annotated automaton encoding of XML schema for high performance schema validation |
CN1622095A (zh) * | 2004-12-27 | 2005-06-01 | 中国科学院软件研究所 | 可扩展标记语言文件存储及插入关系数据库表的方法 |
CN101571863A (zh) * | 2008-04-29 | 2009-11-04 | 国际商业机器公司 | 用于可变模式的xml文档的xml查询方法和系统 |
CN101661481A (zh) * | 2008-08-29 | 2010-03-03 | 国际商业机器公司 | 存储xml数据的方法、执行xml查询的方法及其装置 |
CN102195959A (zh) * | 2010-03-11 | 2011-09-21 | 中兴通讯股份有限公司 | Sip信令的xml数据的解析方法及装置 |
CN102456053A (zh) * | 2010-11-02 | 2012-05-16 | 江苏大学 | 一种xml文档到数据库的映射方法 |
CN102662997A (zh) * | 2012-03-15 | 2012-09-12 | 北京播思软件技术有限公司 | 一种存储xml数据到关系数据库的方法 |
CN102768674A (zh) * | 2012-06-12 | 2012-11-07 | 上海方正数字出版技术有限公司 | 一种基于路径结构的xml数据存储方法 |
CN103559321A (zh) * | 2013-11-22 | 2014-02-05 | 方正国际软件有限公司 | 文档格式转换系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214172A (zh) * | 2018-09-20 | 2019-01-15 | 郑州云海信息技术有限公司 | 获取有效注册表键值名的方法以及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA3089037C (en) | Detecting duplicated questions using reverse gradient adversarial domain adaptation | |
CN103608809B (zh) | 推荐数据富集 | |
US20110173197A1 (en) | Methods and apparatuses for clustering electronic documents based on structural features and static content features | |
US10043138B2 (en) | Metadata representation and storage | |
US9582554B2 (en) | Building intelligent datasets that leverage large-scale open databases | |
WO2006117256A1 (en) | System and method for on-demand analysis of unstructured text data returned from a database | |
US10824661B1 (en) | Mapping of topics within a domain based on terms associated with the topics | |
US11698918B2 (en) | System and method for content-based data visualization using a universal knowledge graph | |
US11010287B1 (en) | Field property extraction and field value validation using a validated dataset | |
CN110990447B (zh) | 一种数据探查方法、装置、设备及存储介质 | |
US9773252B1 (en) | Discovery of new business openings using web content analysis | |
US8850596B2 (en) | Data leakage detection in a multi-tenant data architecture | |
CN106156126B (zh) | 处理数据任务中的数据冲突检测方法及服务器 | |
US20100185696A1 (en) | Data tranformations for applications supporting different data formats | |
US10705949B2 (en) | Evaluation of library test suites using mutation testing | |
CN108885633B (zh) | 用于自动发现和连接到rest接口的技术 | |
EP2704031A1 (en) | Improved schema mapping based on data views and database tables | |
CN109582967B (zh) | 舆情摘要提取方法、装置、设备及计算机可读存储介质 | |
CN114090671A (zh) | 数据导入方法、装置、电子设备及存储介质 | |
CN109885780A (zh) | 数据处理方法及装置 | |
CN113742392A (zh) | 一种数据同步方法、装置、电子设备及存储介质 | |
US20220156245A1 (en) | System and method for managing custom fields | |
CN108319684A (zh) | 一种可扩展标记语言xml文件的存储方法及装置 | |
US10554502B1 (en) | Scalable web services execution | |
CN108170867A (zh) | 一种元数据服务系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100070, No. 101-8, building 1, 31, zone 188, South Fourth Ring Road, Beijing, Fengtai District Applicant after: Guoxin Youyi Data Co., Ltd Address before: 100070, No. 188, building 31, headquarters square, South Fourth Ring Road West, Fengtai District, Beijing Applicant before: SIC YOUE DATA Co.,Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180724 |
|
RJ01 | Rejection of invention patent application after publication |