首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jena、RDF、Data Cube词汇

Jena、RDF、Data Cube词汇
EN

Stack Overflow用户
提问于 2012-10-05 05:49:12
回答 1查看 498关注 0票数 0

我知道我做错了什么,但我不知道...我正在尝试使用数据立方体词汇表生成RDF文件。

问题是,输出应该是这样的:

代码语言:javascript
复制
<qb:DataSet rdf:about="about...">
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string">label.</rdfs:label>
<dcterms:subject rdf:resource="http://purl.org/linked-data/sdmx/2009/subject#2.2"/>

..。

但是,我得到的只是:

代码语言:javascript
复制
<qb:DataSet rdf:about="about...">
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string">.</rdfs:label>
    <dcterms:subject>
         <rdf:Thing rdf:about="http://purl.org/linked-data/sdmx/2009/subject#2.2"/>
    </dcterms:subject>

我可以提供代码示例,但这可能就足够了。这个问题不应该那么难。我需要其他资源的资源...

最好的,Srecko

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-05 15:51:19

这两种形式的RDF基本上是等效的。第二种形式包含一些附加信息,即额外的三元组:

代码语言:javascript
复制
<http://purl.org/linked-data/sdmx/2009/subject#2.2> rdf:type rdf:Thing .

这不会有什么坏处,尽管Thing不是RDF名称空间中的标准术语--您可能指的是owl:Thing。RDF的一般经验法则是不必担心输出的确切语法形式,因为给定的RDF模型可能有许多不同的序列化,它们都解析为完全相同的三元组集合,因此在语义上具有相同的含义。XML序列化尤其如此。除非您出于某种原因(例如,使用工具链的另一部分进行处理)而需要XML,否则我建议您使用Turtle输出序列化。它更紧凑,更易于阅读。

如果你需要关于你正在生成的模型的更具体的建议,如果你发布了代码将会有所帮助。

顺便说一句,如果您确实需要XML,以便可以使用其他XML工具处理它,那么您可能希望自己生成输出,而不是依赖于Model.write()。这是因为模型内容中的一个小变化可能会导致由write生成的XML发生重大变化。这使得编写XSLT样式表之类的东西成为一件很痛苦的事情。最好生成您自己的序列化,因为这样您就可以使用您对特定领域模型的了解来更好地控制输出。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12736555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档