[发明专利]一种从元数据标注的CSV数据到RDF数据的转换方法有效
申请号: | 201510364084.1 | 申请日: | 2015-06-26 |
公开(公告)号: | CN104933162B | 公开(公告)日: | 2018-03-09 |
发明(设计)人: | 许卓明;张进;王骏华 | 申请(专利权)人: | 河海大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京苏高专利商标事务所(普通合伙)32204 | 代理人: | 肖明芳 |
地址: | 211100 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 标注 csv rdf 转换 方法 | ||
1.一种从元数据标注的CSV数据到RDF数据的转换方法,其特征在于,包括:
步骤S1,读取并解析CSV文件,获得表列数据并存入表列数据内存数据结构,其中,所述表列数据内存数据结构用于在内存中存储解析后获得的表列数据,包括CSV数据的所有行中以逗号分隔的所有列值,并且该内存数据结构的Java编程语言实施方式是将它定义成类型为Java数组列表即ArrayList<E>的变量;
步骤S2,读取并解析用于标注CSV数据的元数据描述文件,获得元数据并存入元数据内存数据结构,其中,所述元数据内存数据结构用于在内存中存储解析后获得的元数据,包括CSV表描述信息、CSV模式描述信息、CSV列描述信息,并且该内存数据结构的Java编程语言实施方式是将它定义成类型为自定义的Java公共类的变量;
步骤S3,结合已获得的表列数据与元数据,生成RDF三元组集并存入RDF三元组内存数据结构,其中,所述RDF三元组内存数据结构用于在内存中存储结合后生成的RDF三元组集,包括由CSV表描述信息生成的RDF三元组、由CSV列描述信息生成的RDF三元组、由CSV数据中的列值转换成的RDF三元组,并且该内存数据结构的Java编程语言实施方式是将它定义成类型为Java的StringBuffer类的变量;步骤S3具体包括:
步骤S3-1,创建存储RDF三元组的内存数据结构即RDF三元组内存数据结构;
步骤S3-2,从元数据内存数据结构中提取CSV表描述信息,生成RDF三元组后存入RDF三元组内存数据结构;
步骤S3-3,从元数据内存数据结构中提取CSV列描述信息,生成RDF三元组后存入RDF三元组内存数据结构;
步骤S3-4,结合CSV数据和元数据中列描述信息,生成由CSV数据中的列值转换成的RDF三元组后存入RDF三元组内存数据结构;
步骤S4,将生成的RDF三元组集输出为Turtle语法格式的RDF数据文件。
2.如权利要求1所述的方法,其特征在于,所述步骤S1进一步包括:
步骤S1-1,逐行读取CSV文件中的表列数据,生成输入流;
步骤S1-2,解析输入流,并将解析结果存入表列数据内存数据结构,具体包括:根据逗号对CSV数据中的每一行进行分割后转换成一个字符串数组,并将其添加到表列数据内存数据结构中。
3.如权利要求1所述的方法,其特征在于,所述步骤S2进一步包括:
步骤S2-1,读取元数据描述文件并生成JSON对象;
步骤S2-2,创建存储元数据的内存数据结构即元数据内存数据结构;
步骤S2-3,解析JSON对象,提取CSV表描述信息后存入元数据内存数据结构;
步骤S2-4,解析JSON对象,提取CSV模式描述信息后存入元数据内存数据结构;
步骤S2-5,解析JSON对象,提取CSV列描述信息后存入元数据内存数据结构。
4.如权利要求1所述的方法,其特征在于,所述步骤S3-4进一步包括:
步骤S3-4-1,根据元数据中列描述信息确定CSV列的名所对应的RDF属性名以及该列的值的XML模式数据类型;
步骤S3-4-2,逐行、逐列地依次逐个提取CSV数据中的列值,并将其转换成RDF三元组后存入RDF三元组内存数据结构,其中,所述转换的方法如下:
根据CSV文件的绝对URL和CSV模式描述信息中定义的RDF主语的模板格式,来设置该RDF三元组的主语;根据CSV文件的绝对URL和CSV列描述信息中定义的RDF谓词的模板格式或在未定义此模板格式的情况下该列值所在CSV列的名所对应的RDF属性名,来设置该RDF三元组的谓语;将该列值连同用符号“^^”附上的该列值的XML模式数据类型作为一个整体,设置成该RDF三元组的宾语。
5.如权利要求1所述的方法,其特征在于,所述步骤S4进一步包括:
步骤S4-1,将名空间前缀定义添加到RDF三元组内存数据结构;
步骤S4-2,将RDF三元组内存数据结构中存储的数据输出为RDF数据文件,本步骤的Java编程语言实施方式包括:
首先,调用Java文件类,根据指定路径生成RDF数据文件;
然后,将RDF三元组内存数据结构中存储的数据即Java的StringBuffer类型变量的值输出至该RDF数据文件中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河海大学,未经河海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510364084.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种企业电子印章制作的方法及装置
- 下一篇:一种基于图像的媒体互动方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置