CN111310414B - Rdf格式文件的解析方法及生成方法 - Google Patents
Rdf格式文件的解析方法及生成方法 Download PDFInfo
- Publication number
- CN111310414B CN111310414B CN202010032906.7A CN202010032906A CN111310414B CN 111310414 B CN111310414 B CN 111310414B CN 202010032906 A CN202010032906 A CN 202010032906A CN 111310414 B CN111310414 B CN 111310414B
- Authority
- CN
- China
- Prior art keywords
- rdf
- class
- node
- file
- attribute
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明涉及一种RDF格式文件的解析方法与生成方法,解析方法包括:初始化StreamReader类将RDF文件路径带入,将RDF文件转换为Stream流文件,初始化XmlDocument类对象,将该文件流转换为对应的XmlDocument类;将XmlDocument类转换为对应的XmlElement文档类,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点;将获取得到的N个Node节点块通过点LocalName的属性获取对应的节点的名称,获取该节点的属性集合,完成对RDF的解析,生成对应的RDF解析类。本发明具有使用元数据的软件可以更容易和快速制造的优点。
Description
技术领域
本发明属于数据管理领域,涉及一种文件的解析方法及生成方法,尤其涉及一种RDF格式文件的解析方法与生成方法。
背景技术
RDF即资源描述框架,它是Resource Description Framework的缩写,它通常被用于表达关于Web资源的元数据,一个RDF文件包含多个资源描述,而一个资源描述是由多个语句构成,一个语句是由资源、属性类型、属性值构成的三元体,表示资源具有的一个属性。通过RDF,可以使用自己的词汇表描述任何资源。
RDF用于信息需要被应用程序处理而不是仅仅显示给人观看的场合。RDF提供了一种用于表达这一信息、并使其能在应用程序间交换而不丧失语义的通用框架。既然是通用框架,应用程序设计者可以利用现成的通用RDF解析器。RDF是W3C在1999年2月22日所颁布的一个建议(Recommendation),制定的目的主要是为元数据在Web上的各种应用提供一个基础结构(Infrastructure)使应用程序之间能够在Web上交换元数据,以促进网络资源的自动化处理。RDF能够有各种不同的应用,例如在资源检索(Resource discovery)方面,能够提高搜索引擎(Search engine)的检索准确率;在编目方面(Cata loging),能够描述网站、网页或电子出版物等网络资源的内容及内容之间的关系;而借着智能代理程序(Intelligent software agents),能够促进知识的分享与交换;应用在数字签章(Digitalsignatures)上,则是发展电子商务,建立一个可以信赖的网站(Weboftrust)的关键;其它的应用还可涉及到诸如内容分级(Contentrating)、知识产权(Intellectual property)、隐私权(Privacy policies)等。
现有技术中RDF资料模型作为一个抽象与概念的框架。RDF规格提供了两种XML语法来对RDF资料模型进行编码,第一种称为序列语法(Serialization syntax),是以正规的方式来表达完整的RDF资料模型,第二种称为简略语法(Abbriviatedsyntax),是以较精简的方式来表达RDF资料模型的一部分。RDF本身是一个XML文档,它符合XML语法结构,所以虽然可用通用的XML解析器解析它,然而并没有解析与生成复杂RDF格式文件的类库供直接调用使用。
发明内容
为了解决背景技术中存在的上述技术问题,本发明提供了一种使用元数据的软件可以更容易和快速制造的RDF格式文件的解析方法与生成方法。
为了实现上述目的,本发明采用如下技术方案:
一种RDF格式文件的解析方法,其特征在于:所述RDF格式文件的解析方法包括以下步骤:
1)初始化StreamReader类将RDF文件路径带入,将RDF文件转换为Stream流文件,其次初始化XmlDocument类对象,通过对象的Load方法将该文件流转换为对应的XmlDocument类;
2)调用XmlDocument类内部的DocumentElement方法,将XmlDocument类转换为对应的XmlElement文档类,通过内部的属性值ChildNodes,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点;
3)将获取得到的N个Node节点块通过点LocalName的属性获取对应的节点的名称,再通过Attributes方法获取该节点的属性集合,完成对RDF的解析,生成对应的RDF解析类。
上述步骤3)的具体实现方式是利用C#的反射机制,提取element属性值,获取的每个节点块对应的属性值以及类型值,通过自定义类对象并赋值的方式,将Node节点转换为节点类。
一种RDF格式文件的生成方法,其特征在于:所述RDF格式文件的生成方法包括以下步骤:
1)初始化StreamReader类将RDF文件路径带入,将RDF文件转换为Stream流文件,其次初始化XmlDocument类对象,通过对象的Load方法将该文件流转换为对应的XmlDocument类;
2)调用XmlDocument类内部的DocumentElement方法,将XmlDocument类转换为对应的XmlElement文档类,通过内部的属性值ChildNodes,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点;
3)将获取得到的N个Node节点块通过点LocalName的属性获取对应的节点的名称,再通过Attributes方法获取该节点的属性集合;
4)完成对RDF的解析,生成对应的RDF解析类;
5)将RDF解析类的对应属性以及属性值赋值给新定义的XmlAttribute类对象,初始化时给与对应的类名称和值,通过该方式将RDF类转换为多个节点类型类;
6)将节点类型类的属性名以及属性值赋值给新定义的XmlElement类对象,通过初始化带入方式赋值,节点类型类与节点类型XmlElement的属性名称以及属性值必须保持完全一致;
7)定义一个新的XmlDocument类对象,将上述节点类型XmlElement通过Add的方法加入到XmlDocument的Root根节点属性下,完成对XmlDocument文档信息类的组装;
8)创建一个MemoryStream文件流对象,利用XmlDocument文档信息类的Save方法将XmlDocument文档进行保存操作。
上述步骤3)的具体实现方式是:利用C#的反射机制,提取element属性值,获取的每个节点块对应的属性值以及类型值,通过自定义类对象并赋值的方式,将Node节点转换为节点类。
上述步骤5)的具体实现方式是:利用的C#的反射填充element属性值机制,形成的节点类型类与RFD类属性名以及值完全一致。
一种用于RDF格式文件的解析方法或RDF格式文件的生成方法的操作系统,其特征在于:所述操作系统包括:
读取模块:在RDF格式文件解析过程中,通过StreamReader类将选定的RDF文件进行读取操作,将其转换为Stream文件流形式;在RDF格式文件生成过程中,将XmlDocument文档信息转换为RDF文档信息,为展示RDF文件生成的成果展示;
解析模块:在RDF格式文件解析过程中,将读取模块的RFD文件流进行解析,将RDF文件流转换为XmlDocument文档信息类型;在RDF格式文件生成过程中,将XmlDocument文档转换为RDF文件信息;
节点类型模块:在RDF格式文件解析过程中,将XmlDocument文档信息转化为节点类型,即用特定的字符串代表特定的节点,包含节点的类型以及值;在RDF格式文件生成过程中,将节点类型类转换为对应的节点类型,必须与节点类型类一一对应,完全匹配;
节点类模块:在RDF格式文件解析过程中,将节点类型转化为一一对应的节点类或者对象;节点类必须与节点类型相对应;在RDF格式文件生成过程中,将RDF类通过反射提取机制,转换为节点类;
RDF类模块:在RDF格式文件解析过程中,将节点类组合生成对应的RDF类,实则为C#对象;展示对RDF文件的解析成果;在RDF格式文件生成过程中,将RDF类通过反射填充机制转换为节点类,从而开始进一步的生成RDF文件操作。
本发明的优点是:
本发明提供了一种RDF格式文件的解析方法、RDF格式文件的生成方法以及用于实现两种方法的操作系统,本发明通过提供一个一致的框架,资源描述框架将会鼓励提供关于因特网资源的元数据;由于资源描述框架将会包含一个描述和查询数据的标准语法,使用元数据的软件可以更容易和快速的制造;标准语法和查询能力将允许应用软件更容易地交换信息,基于元数据而不是从正文得来的索引,搜索者将得到更精确的搜索结果。本发明利用C#反射、通用的XML解析器等技术对RDF格式文件的解析与生成进行了封装,只要符合指定格式要求,可以直接调用本发明dll类库中的相关方法对RDF文件进行数据解析与生成等操作。
附图说明
图1是本发明所提供的操作系统的结构框图。
具体实施方式
本发明提供了一种RDF格式文件的解析方法以及RDF格式文件的生成方法,其中,RDF格式文件的解析方法包括以下步骤:
1)初始化StreamReader类将RDF文件路径带入,可将RDF文件转换为Stream流文件,其次初始化XmlDocument类对象,通过对象的Load方法将该文件流转换为对应的XmlDocument类;
2)调用XmlDocument类内部的DocumentElement方法,将XmlDocument类转换为对应的XmlElement文档类,通过内部的属性值ChildNodes,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点,例如:P1、P2、P3……Pn;
3)将拆分出来的Node节点块通过点LocalName的属性获取对应的节点的名称,再通过Attributes方法获取该节点的属性集合,此方式利用了C#的反射机制,提取element属性值,获取的每个节点块对应的属性值以及类型值,通过自定义类对象并赋值的方式,将Node节点转换为节点类,其大小写必须严格一致,例如:P′1、P′2、P′3……P′n′;
4)最终完成对RDF的解析,生成对应的RDF解析类。
RDF格式文件的生成方法,包括如下步骤:
1)初始化StreamReader类将RDF文件路径带入,可将RDF文件转换为Stream流文件,其次初始化XmlDocument类对象,通过对象的Load方法将该文件流转换为对应的XmlDocument类;
2)调用XmlDocument类内部的DocumentElement方法,将XmlDocument类转换为对应的XmlElement文档类,通过内部的属性值ChildNodes,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点,例如:P1、P2、P3……Pn;
3)将拆分出来的Node节点块通过点LocalName的属性获取对应的节点的名称,再通过Attributes方法获取该节点的属性集合,此方式利用了C#的反射机制,提取element属性值,获取的每个节点块对应的属性值以及类型值,通过自定义类对象并赋值的方式,将Node节点转换为节点类,其大小写必须严格一致,例如:P′1、P′2、P′3……P′n;
4)最终完成对RDF的解析,生成对应的RDF解析类;
5)将RDF解析类的对应属性以及属性值赋值给新定义的XmlAttribute类对象,初始化时给与对应的类名称和值,通过该方式将RDF类转换为多个节点类型类,此方式利用的C#的反射填充element属性值机制,形成的节点类型类必须与RFD类属性名以及值完全一致,例如:P′1、P′2、P′3……P′n;
6)将节点类型类的属性名以及属性值赋值给新定义的XmlElement类对象,通过初始化带入方式赋值,节点类型类与节点类型XmlElement的属性名称以及属性值必须保持完全一致,例如P1、P2、P3……Pn;
7)定义一个新的XmlDocument类对象,将上述节点类型XmlElement通过Add的方法加入到XmlDocument的Root根节点属性下,从而完成对XmlDocument文档信息类的组装;
8)创建一个MemoryStream文件流对象,利用XmlDocument文档信息类的Save方法将XmlDocument文档进行保存操作;
参见图1,本发明在提供上述两个方法的同时,还提供了一种用于RDF格式文件的解析方法或RDF格式文件的生成方法的操作系统,该操作系统包括:
读取模块:在解析过程中,通过StreamReader类将选定的RDF文件进行读取操作,将其转换为Stream文件流形式;在生成过程中,将XmlDocument文档信息转换为RDF文档信息,为展示RDF文件生成的成果展示;
解析模块:在解析RDF文件的过程中,将读取模块的RFD文件流进行解析,从而将RDF文件流转换为XmlDocument文档信息类型,在生成RDF文件的过程中,将XmlDocument文档转换为RDF文件信息;
节点类型模块:在解析过程中,将XmlDocument文档信息转化为节点类型,即用特定的字符串代表特定的节点,包含节点的类型以及值,在生成过程中,将节点类型类转换为对应的节点类型,必须与节点类型类一一对应,完全匹配;
节点类模块:在解析过程中,将节点类型转化为一一对应的节点类或者对象;节点类必须与节点类型相对应;在生成过程中,将RDF类通过反射提取机制,转换为节点类;
RDF类模块:在解析过程中,将节点类组合生成对应的RDF类,实则为C#对象;展示对RDF文件的解析成果;在生成过程中,将RDF类通过反射填充机制转换为节点类,从而开始进一步的生成RDF文件操作。
Claims (3)
1.一种RDF格式文件的解析方法,其特征在于:所述RDF格式文件的解析方法包括以下步骤:
1)初始化StreamReader类将RDF文件路径带入,将RDF文件转换为Stream流文件,其次初始化XmlDocument类对象,通过对象的Load方法将该文件流转换为对应的XmlDocument类;
2)调用XmlDocument类内部的DocumentElement方法,将XmlDocument类转换为对应的XmlElement文档类,通过内部的属性值ChildNodes,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点;
3)将获取得到的N个Node节点块通过点LocalName的属性获取对应的节点的名称,再通过Attributes方法获取该节点的属性集合,完成对RDF的解析,生成对应的RDF解析类;
所述步骤3)的具体实现方式是利用C#的反射机制,提取element属性值,获取的每个节点块对应的属性值以及类型值,通过自定义类对象并赋值的方式,将Node节点转换为节点类。
2.一种RDF格式文件的生成方法,其特征在于:所述RDF格式文件的生成方法包括以下步骤:
1)初始化StreamReader类将RDF文件路径带入,将RDF文件转换为Stream流文件,其次初始化XmlDocument类对象,通过对象的Load方法将该文件流转换为对应的XmlDocument类;
2)调用XmlDocument类内部的DocumentElement方法,将XmlDocument类转换为对应的XmlElement文档类,通过内部的属性值ChildNodes,获取该文档的N个Node节点块,节点对象代表XmlElement文档树中一个单独的节点;
3)将获取得到的N个Node节点块通过点LocalName的属性获取对应的节点的名称,再通过Attributes方法获取该节点的属性集合;具体实现方式是:利用C#的反射机制,提取element属性值,获取的每个节点块对应的属性值以及类型值,通过自定义类对象并赋值的方式,将Node节点转换为节点类;
4)完成对RDF的解析,生成对应的RDF解析类;
5)将RDF解析类的对应属性以及属性值赋值给新定义的XmlAttribute类对象,初始化时给与对应的类名称和值,通过该方式将RDF类转换为多个节点类型类;具体实现方式是:利用的C#的反射填充element属性值机制,形成的节点类型类与RFD类属性名以及值完全一致;
6)将节点类型类的属性名以及属性值赋值给新定义的XmlElement类对象,通过初始化带入方式赋值,节点类型类与节点类型XmlElement的属性名称以及属性值必须保持完全一致;
7)定义一个新的XmlDocument类对象,将上述节点类型XmlElement通过Add的方法加入到XmlDocument的Root根节点属性下,完成对XmlDocument文档信息类的组装;
8)创建一个MemoryStream文件流对象,利用XmlDocument文档信息类的Save方法将XmlDocument文档进行保存操作。
3.一种用于RDF格式文件的解析方法或RDF格式文件的生成方法的操作系统,其特征在于:所述操作系统包括:
读取模块:在RDF格式文件解析过程中,通过StreamReader类将选定的RDF文件进行读取操作,将其转换为Stream文件流形式;在RDF格式文件生成过程中,将XmlDocument文档信息转换为RDF文档信息,为展示RDF文件生成的成果展示;
解析模块:在RDF格式文件解析过程中,将读取模块的RFD文件流进行解析,将RDF文件流转换为XmlDocument文档信息类型;在RDF格式文件生成过程中,将XmlDocument文档转换为RDF文件信息;
节点类型模块:在RDF格式文件解析过程中,将XmlDocument文档信息转化为节点类型,即用特定的字符串代表特定的节点,包含节点的类型以及值;在RDF格式文件生成过程中,将节点类型类转换为对应的节点类型,必须与节点类型类一一对应,完全匹配;
节点类模块:在RDF格式文件解析过程中,将节点类型转化为一一对应的节点类或者对象;节点类必须与节点类型相对应;在RDF格式文件生成过程中,将RDF类通过反射提取机制,转换为节点类;
RDF类模块:在RDF格式文件解析过程中,将节点类组合生成对应的RDF类,实则为C#对象;展示对RDF文件的解析成果;在RDF格式文件生成过程中,将RDF类通过反射填充机制转换为节点类,从而开始进一步的生成RDF文件操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032906.7A CN111310414B (zh) | 2020-01-13 | 2020-01-13 | Rdf格式文件的解析方法及生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032906.7A CN111310414B (zh) | 2020-01-13 | 2020-01-13 | Rdf格式文件的解析方法及生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111310414A CN111310414A (zh) | 2020-06-19 |
CN111310414B true CN111310414B (zh) | 2023-06-09 |
Family
ID=71148731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010032906.7A Active CN111310414B (zh) | 2020-01-13 | 2020-01-13 | Rdf格式文件的解析方法及生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111310414B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005073867A1 (en) * | 2004-01-28 | 2005-08-11 | Sankhya Technologies Private Limited | Converting a heterogeneous document |
CN104933162A (zh) * | 2015-06-26 | 2015-09-23 | 河海大学 | 一种从元数据标注的csv数据到rdf数据的转换方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10235637B2 (en) * | 2015-08-28 | 2019-03-19 | Salesforce.Com, Inc. | Generating feature vectors from RDF graphs |
-
2020
- 2020-01-13 CN CN202010032906.7A patent/CN111310414B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005073867A1 (en) * | 2004-01-28 | 2005-08-11 | Sankhya Technologies Private Limited | Converting a heterogeneous document |
CN104933162A (zh) * | 2015-06-26 | 2015-09-23 | 河海大学 | 一种从元数据标注的csv数据到rdf数据的转换方法 |
Non-Patent Citations (2)
Title |
---|
史耀馨.RDF文档解析器及查询语言的实现.计算机应用.2003,(第S2期),全文. * |
李斌 ; 孔祥艳 ; .基于DOM的XML解析技术在构件描述中的应用.无线电通信技术.2011,(第02期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111310414A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6662342B1 (en) | Method, system, and program for providing access to objects in a document | |
US20030088543A1 (en) | Vocabulary and syntax based data transformation | |
US7509574B2 (en) | Method and system for reducing delimiters | |
JPH11272667A (ja) | 構造化文書作成方法、構造化文書作成装置及び構造化文書作成用プログラムを格納した記憶媒体 | |
US20080208830A1 (en) | Automated transformation of structured and unstructured content | |
JP5377818B2 (ja) | コンパイル済みスキーマに順次アクセスする方法とシステム | |
CN112287013B (zh) | 数据转换方法及适配器 | |
CN110020358B (zh) | 用于生成动态页面的方法和装置 | |
US20120254724A1 (en) | Encoder compiler, computer readable medium, and communication device | |
US7500184B2 (en) | Determining an acceptance status during document parsing | |
CN112540862A (zh) | 一种接口文档数据生成方法、装置、设备及存储介质 | |
CN112765516A (zh) | 页面内容的展示方法和装置、存储介质、电子装置 | |
US11947976B2 (en) | System and method for semantic metadata extensions in API governance using validation rulesets | |
CN115202626A (zh) | 一种支持多技术栈组件的低代码前端开发方法 | |
US7735001B2 (en) | Method and system for decoding encoded documents | |
US20150248500A1 (en) | Documentation parser | |
KR100762712B1 (ko) | 규칙기반의 전자문서 변환방법 및 그 시스템 | |
US8996991B2 (en) | System and method for displaying an acceptance status | |
CN111310414B (zh) | Rdf格式文件的解析方法及生成方法 | |
CN116521621A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN112783836A (zh) | 信息交换方法、装置及计算机存储介质 | |
US20060212799A1 (en) | Method and system for compiling schema | |
US20120084635A1 (en) | Parameterized template compression for binary xml | |
Le Zou et al. | On synchronizing with web service evolution | |
CN110502483B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |