基于dom和xml路径语言的智能变电站scd文件解析方法

文档序号:6620646阅读:361来源:国知局
基于dom和xml路径语言的智能变电站scd文件解析方法
【专利摘要】本发明涉及一种基于DOM和XML路径语言的智能变电站SCD文件解析方法,其特征在于:步骤S01:通过在DOM?API中,将SCD文档中的数据以树的形式展现出来;步骤S02:通过从根节点开始的遍历,访问到树中的任意节点;步骤S03:通过XMLPathLanguage技术查找需要的节点集,再对节点集进行处理,以解析智能变电站的虚端子、虚端子连接关系和四遥。本发明利用XMLPathLanguage技术,先直接查找需要的节点集,然后再对节点集进行处理,避免了直接对所有节点进行访问过滤操作,简化了程序,且大幅提高了数据处理效率。
【专利说明】基于DOM和XML路径语言的智能变电站SCD文件解析方法

【技术领域】
[0001] 本发明涉及智能变电站技术,特别是基于D0M和XML Path Language的智能变电 站SCD文件解析方法。

【背景技术】
[0002] 现有智能变电站S⑶文件解析技术,是基于TinyXML解析工具进行解析的。 由 TinyXML 读取 SCD 文件建成一棵 D0M 树,该 D0M 树米用 firstchild - nextsibling tree实现。在TinyXML中,每个节点均保存该节点的first child(第一个子节点)、last child(最后一个子节点)、next sibling(下一个相邻节点)、previous sibling(前一个 相邻节点)、parent (父节点)这5个相关的节点指针,从而建起便于遍历的整棵树结构。 该出自郭健生、吴文宣、王云茂、梁曼舒、张华辉.基于TinyXML的智能变电站S⑶文件 的解析·电力与电工· 2011年9月·第31卷第3期。
[0003] 现有智能变电站SCD文件解析技术,需要添加第三方工具使用起来比较麻烦,而 且提取信息的时候,二次开发比较麻烦执行效率低。


【发明内容】

[0004] 有鉴于此,本发明的目的是提供一种基于D0M和XML Path Language的智能变电 站SCD文件解析方法,避免了直接对所有节点进行访问过滤操作,简化了程序,且大幅提高 了数据处理效率。
[0005] 本发明采用以下方案实现:一种基于D0M和XML路径语言的智能变电站SCD文件 解析方法,其特征在于:步骤S01 :通过在DOM API中,将S⑶文档中的数据以树的形式展 现出来; 步骤S02 :通过从根节点开始的遍历,访问到树中的任意节点; 步骤S03 :通过XML Path Language技术查找需要的节点集,再对节点集进行处理,以 解析智能变电站的虚端子、虚端子连接关系和四遥。
[0006] 在本发明一实施例中,所述步骤S01中将SCD文档中的数据以树的形式展现出来 是采用C #语言,需添加 X M L头文件;用LoadXmlFile (S⑶)函数加载S⑶文件,即可在内 存中形成一个D0M树。
[0007] 在本发明一实施例中,所述步骤S02S实现的方式:查找一个XML文档的根节点、按 照给出的标签名查找出相应的元素、获得给出节点的所有子节点、获得给出节点的父节点、 获得一个元素的标签名、获得一个元素的相关联数据以及获得一个元素的值。
[0008] 在本发明一实施例中,所述步骤S03中,通过XML Path Language技术查找需要的 节点集是利用SelectNode (Xpath,namespace)函数查找特点命名空间的节点集。
[0009] 在本发明一实施例中,所述利用SelectNode (Xpath,namespace)函数查找特点命 名空间的节点集常用的功能有:查找当前节点的全部子节点、按照给定的标签确定节点,并 查出此节点的所有的父节点、按照给定的属性确定节点,并查找出此节点的第η个节点和 获得所有不具有指定属性的节点。
[0010] 在本发明一实施例中,所述步骤S03后还包括输出匹配的参考目录reference,所 述的参考目录为一表格,表格的第一列为数据集名称,第二列为名称为PL2201B的IED的 reference,第四列为reference的注释,第五列为IED的中文名称,第十列为IED的型号。
[0011] 本发明利用XML Path Language技术,先直接查找需要的节点集,然后再对节点集 进行处理,避免了直接对所有节点进行访问过滤操作,简化了程序,且大幅提高了数据处理 效率。

【专利附图】

【附图说明】
[0012] 图1是本发明方法流程简要示意图。

【具体实施方式】
[0013] 为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明 的【具体实施方式】做详细的说明。
[0014] 在以下描述中阐述了具体细节以便于充分理解本发明。但是本发明能够以多种不 同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类 似推广。因此本发明不受下面公开的【具体实施方式】的限制。
[0015] 如图1所示,本实施例提供一种基于D0M和XML路径语言(XML Path Language, Xpath)的智能变电站S⑶文件解析方法,其特征在于:步骤SOI :通过在DOM API中,将S⑶ 文档中的数据以树的形式展现出来; 步骤S02 :通过从根节点开始的遍历,访问到树中的任意节点; 步骤S03 :通过XML Path Language技术查找需要的节点集,再对节点集进行处理,以 解析智能变电站的虚端子、虚端子连接关系和四遥。
[0016] 为了更好的实现树的建立,本实施例中,所述步骤S01中将SCD文档中的数据以 树的形式展现出来是采用c #语言,需添加 XM L头文件;用LoadXmlFile(S⑶)函数加载 S⑶文件,即可在内存中形成一个D0M树。
[0017] 在本发明一实施例中,所述步骤S02S实现的方式:查找一个XML文档的根节点、按 照给出的标签名查找出相应的元素、获得给出节点的所有子节点、获得给出节点的父节点、 获得一个元素的标签名、获得一个元素的相关联数据以及获得一个元素的值。
[0018] 在本发明一实施例中,所述步骤S03中,通过XML Path Language技术查找需要的 节点集是利用SelectNode (Xpath,namespace)函数查找特点命名空间的节点集。
[0019] 在本发明一实施例中,所述利用SelectNode (Xpath,namespace)函数查找特点命 名空间的节点集常用的功能有:查找当前节点的全部子节点、按照给定的标签确定节点,并 查出此节点的所有的父节点、按照给定的属性确定节点,并查找出此节点的第η个节点和 获得所有不具有指定属性的节点。
[0020] 请参见表1,在本发明一实施例中,所述步骤S03后还包括输出匹配的参考目 录reference,所述的参考目录为一表格,表格的第一列为数据集名称,第二列为名称为 PL2201B的IED的reference,第四列为reference的注释,第五列为IED的中文名称,第十 列为IED的型号。

【权利要求】
1. 一种基于DOM和XML路径语言的智能变电站SCD文件解析方法,其特征在于:步骤 S01 :通过在DOM API中,将S⑶文档中的数据以树的形式展现出来; 步骤S02 :通过从根节点开始的遍历,访问到树中的任意节点; 步骤S03 :通过XML Path Language技术查找需要的节点集,再对节点集进行处理,以 解析智能变电站的虚端子、虚端子连接关系和四遥。
2. 根据权利要求1所述的基于D0M和XML路径语言的智能变电站SCD文件解析方法, 其特征在于:所述步骤S01中将SCD文档中的数据以树的形式展现出来是采用C #语言,需 添加 XML头文件;用LoadXmlFile(S⑶)函数加载S⑶文件,即可在内存中形成一个D0M 树。
3. 根据权利要求1所述的基于D0M和XML路径语言的智能变电站SCD文件解析方法, 其特征在于:所述步骤S02S实现的方式:查找一个XML文档的根节点、按照给出的标签名 查找出相应的元素、获得给出节点的所有子节点、获得给出节点的父节点、获得一个元素的 标签名、获得一个元素的相关联数据以及获得一个元素的值。
4. 根据权利要求1所述的基于D0M和XML路径语言的智能变电站SCD文件解析方 法,其特征在于:所述步骤S03中,通过XML Path Language技术查找需要的节点集是利用 SelectNode (Xpath,namespace)函数查找特点命名空间的节点集。
5. 根据权利要求4所述的基于D0M和XML路径语言的智能变电站SCD文件解析方法, 其特征在于:所述利用SelectNode (Xpath,namespace)函数查找特点命名空间的节点集常 用的功能有:查找当前节点的全部子节点、按照给定的标签确定节点,并查出此节点的所有 的父节点、按照给定的属性确定节点,并查找出此节点的第η个节点和获得所有不具有指 定属性的节点。
6. 根据权利要求1所述的基于D0M和XML路径语言的智能变电站SCD文件解析方法, 其特征在于:所述步骤S03后还包括输出匹配的参考目录reference,所述的参考目录为一 表格,表格的第一列为数据集名称,第二列为名称为PL2201B的IED的reference,第四列为 reference的注释,第五列为IED的中文名称,第十列为IED的型号。
【文档编号】G06F17/30GK104112015SQ201410343891
【公开日】2014年10月22日 申请日期:2014年7月19日 优先权日:2014年7月19日
【发明者】李功新, 王永明, 林国贤, 林鹏程, 陈大凤, 张丰, 朱菁, 郭碧媛, 高秋锋, 谢东方, 邹宝钦, 郭飞云 申请人:国家电网公司, 国网福建省电力有限公司, 国网福建省电力有限公司福州供电公司, 国网福建省电力有限公司管理培训中心, 厦门亿力吉奥信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1