当前位置: 首页 > 知识库问答 >
问题:

如何使用Apache Jena将CSV导入RDF?

韦宣
2023-03-14
./apache-jena-3.3.0/bin/riot --base='http://example.com/csvtest/' --syntax=csv --output=ttl csv_dbs_examples/csv_inputs/CDs.csv 
java.lang.NullPointerException
        at org.apache.jena.ext.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:770)
        at org.apache.jena.ext.com.google.common.cache.LocalCache.get(LocalCache.java:4153)
        at org.apache.jena.ext.com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:5060)
        at org.apache.jena.atlas.lib.cache.CacheGuava.getOrFill(CacheGuava.java:58)
        at org.apache.jena.riot.system.IRIResolver$IRIResolverNormal.resolveSilentCache(IRIResolver.java:470)
        at org.apache.jena.riot.system.IRIResolver$IRIResolverNormal.resolveSilent(IRIResolver.java:454)
        at org.apache.jena.riot.system.IRIResolver.resolve(IRIResolver.java:328)
        at org.apache.jena.riot.system.IRIResolver$IRIResolverSync.resolve(IRIResolver.java:489)
        at org.apache.jena.riot.system.IRIResolver.resolveIRI(IRIResolver.java:254)
        at org.apache.jena.riot.system.IRIResolver.resolveString(IRIResolver.java:233)
        at org.apache.jena.riot.lang.ReaderRIOTCSV.parse(ReaderRIOTCSV.java:89)
        at org.apache.jena.riot.lang.ReaderRIOTCSV.read(ReaderRIOTCSV.java:67)
        at org.apache.jena.riot.RDFParser.read(RDFParser.java:293)
        at org.apache.jena.riot.RDFParser.parseNotUri(RDFParser.java:283)
        at org.apache.jena.riot.RDFParser.parse(RDFParser.java:233)
        at riotcmd.CmdLangParse.parseRIOT(CmdLangParse.java:286)
        at riotcmd.CmdLangParse.parseFile(CmdLangParse.java:216)
        at riotcmd.CmdLangParse.exec$(CmdLangParse.java:161)
        at riotcmd.CmdLangParse.exec(CmdLangParse.java:127)
        at jena.cmd.CmdMain.mainMethod(CmdMain.java:93)
        at jena.cmd.CmdMain.mainRun(CmdMain.java:58)
        at jena.cmd.CmdMain.mainRun(CmdMain.java:45)
        at riotcmd.riot.main(riot.java:34)

共有1个答案

韶和璧
2023-03-14

有http://jena.apache.org/documentation/csv/(在问题中被调用),但这不是CSVW(W3C标准)。有几个CSVW转换工具--您可以转换成RDF,然后将RDF读入Jena。

实际的stacktrace是3.3.0中的一个bug(Apache Jena 3.2.0应该可以使用)。

来自@grzegorzwierzowiecki的更新:确认它看起来像是Jena 3.3.0中的bug,因为它与Jena 3.1.1一起工作

 类似资料:
  • 问题内容: 我有以下结构的csv文件: 使用以下MySQL函数如何导入MySQL表的第一和第三列: 我为我的英语道歉! 提前致谢 ! 问题答案: 您可以指定列,并将不需要的列标记为“ @dummy”。 替换,并且只要你喜欢。要设置不在数据文件中的其他列,您可以这样做: 作为进一步的参考,我建议您看一下MySQL参考。

  • 问题内容: 我正在做“elasticsearch入门”教程。不幸的是,本教程没有介绍将数据库导入Elasticsearch的第一步。 我用谷歌搜索找到了解决方案,但不幸的是它无法正常工作。这是我要实现的目标和拥有的目标: 我有一个要导入的数据文件(简化了) 我想使用导入。经过互联网研究后,我得到以下配置: 我在指定文档类型时遇到了麻烦,因此一旦导入数据,便导航到http:// localhost:

  • 我试图导入多个CSV文件在一个特定的路径到数据集HDF5文件使用此代码: 但我有一个错误: 第15行,在帧=pd.concat(li,轴=0,ignore_index=True)文件/usr/本地/lib/python3.7/site-包/熊猫/核心/重塑/concat.py,第281行,在统一排序=排序,文件/usr/本地/lib/python3.7/site-包/熊猫/Core/reshape

  • 问题内容: 我有一些CSV数据,我想使用示例CSV数据导入django模型: 我有一些名为Product的django模型。在产品还有像一些领域,和。我想要这样的东西: 问题答案: 你想使用python语言中的csv模块,并且应该使用Django的get_or_create方法 在我的示例中,模型老师具有三个属性first_name,last_name和middle_name。

  • 问题内容: 将csv文件上传到mysql表的最佳/最快方法是什么?我想将第一行数据用作列名。 发现了这一点: 如何将CSV文件导入MySQL表 但是唯一的答案是使用GUI而不是Shell? 问题答案: 您无需编写脚本即可从CSV文件中提取信息,而是可以直接将MYSQL链接到该文件并使用以下SQL语法上传信息。 要将Excel文件导入MySQL,请先将其导出为CSV文件。从生成的CSV文件中删除CS

  • 问题内容: 我正在尝试使用导入文件: 我不明白是怎么工作的,因为如果我继续初始化三个变量(,和)的,它失败的: 如果我仅保留docNumber,则它可以工作。你可以帮帮我吗? 问题答案: 输入文件中的某些行似乎包含少于3个逗号分隔的字段。您应始终检查令牌生成器是否具有更多令牌(StringTokenizer.hasMoreTokens),除非您100%确信输入正确。 正确解析CSV文件并不是一件容