Wordnet 3.0(http://semanticweb.cs.vu.nl/lod/wn30/)采用Turtle格式,我无法获取org.openrdf.rio.turtle.TurtleParser来解析Manifest.ttl文件(https://gist.github.com/1181802)。
看起来解析器没有正确处理前缀 - 显然它认为它们是空的:
org.openrdf.rio.RDFParseException: org.openrdf.rio.RDFParseException:
Not a valid (absolute) URI: nullwn30 [line 15]
我之前没有冒险进入RDF加载空间,所以我很可能错过了一些东西。
关于在哪里看的任何想法?
答案 0 :(得分:4)
问题是该Turtle文件中的语法错误。具体来说,这个片段:
:wn30
a lib:Namespace ;
lib:mnemonic "wn30" ;
lib:namespace wn30: .
标识符:wn30
是使用默认命名空间的限定名称(默认,因为它没有前缀,例如lib:mnemonic
)。但是,Turtle文档不包含默认命名空间的名称空间声明。
顺便问一下,您使用的是哪个版本的芝麻?我在最新版本中对此进行了简要测试,但它仍然给了我一个错误,但该错误对于解决问题更有帮助:“使用默认命名空间但未定义[第14行]”。
要解决此问题,文档应包含默认命名空间的名称空间声明,例如:
@prefix : <http://example.org/> .