Notation 3 URI转换为RDF/XML

3
我正在尝试通过rdf:about转换器将n3文件转换为rdf/xml。不幸的是,一些URI包含特殊字符,例如: . -> gene:01.01.01 % -> gene:fog2/zfpm2 | -> gene:17867|203045 转换器会将这些示例视为notation 3语法错误。我已经到处搜索了转义字符,但没有成功。是否有其他转换器可以帮助我进行此转换? 如果我删除这些URI,那么文件将正常转换。谢谢。
1个回答

1

最可靠的方法是完整地写出URI。因此,如果您有:

@prefix gene: <http://example.com/>

gene:fog2/zfpm rdfs:label "something".

请改写成以下内容:

@prefix gene: <http://example.com/>

<http://example.com/fog2/zfpm> rdfs:label "something".

请注意,某些字符甚至不允许在此符号中使用(例如空格)。在这种情况下,需要使用百分比编码进行处理:
<http://example.com/fog2/zfpm%20xyz> rdfs:label "something".

这里的空格已经被百分号编码为%20

最新的Turtle规范(Turtle是W3C标准化的非标准N3版本)也允许使用反斜杠转义一些特殊字符:

gene:fog2\/zfpm rdfs:label "something".

但这还没有被广泛实现,旧的工具/服务不支持它。rdfabout.com转换器肯定不支持它。

triplr.org顺便说一下比rdfabout.com更好。


感谢cygri的回复。所以,如果我理解正确的话,唯一的方法是使用完整的URI而不是较短的URI来解决这个问题。 - user1620063
我找到了最新的turtle规范,但是我没有找到任何可以接受这种语法的转换器。 - user1620063
最新的Apache Jena可能会正确处理最新的Turtle,如果您使用RIOT解析器。如果您正在寻找一个简单的在线转换器,那么您可能运气不佳。反斜杠转义是最近才添加的。 - cygri

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接