首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用D2RQ将类型triple添加到rdf文档中

使用D2RQ将类型triple添加到rdf文档中
EN

Stack Overflow用户
提问于 2016-09-04 19:58:31
回答 1查看 118关注 0票数 2

如果我使用默认的d2rq映射文件(ttl),我的所有列都映射到rdf属性。例如,列ID变为属性"hasID“(重命名后)。

代码语言:javascript
复制
  <rdf:Description rdf:about="http://www.semanticweb.org/adoxx/ontologies/2016/5/untitled-ontology-24#hasId">
    <rdfs:label>hasId</rdfs:label>
    <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
  </rdf:Description>

我想要替换rdf属性三元组,或者添加另一个类型三元组,这样我的结果就是

代码语言:javascript
复制
      <rdf:Description rdf:about="http://www.semanticweb.org/adoxx/ontologies/2016/5/untitled-ontology-24#hasId">
        <rdfs:label>hasId</rdfs:label>
        <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
        <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
      </rdf:Description>

文档1指出类型是自动生成的。

你知道如何得到这样的结果吗?我需要区分DatatypeProperty和ObjectProperty,以便在OWL-API2中正确导入它们。

1 2

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-06 17:37:51

我找到了将第二个(OWL)类型三元组添加到属性的解决方案(如果不接触代码,替换自动生成的属性的解决方案似乎不可用)。

您必须通过添加一个额外的属性三元组来更新您的ttl文件(owldatatypeproperty不是由d2rq创建的,它是由我介绍的!):

代码语言:javascript
复制
map:owldatatypeproperty a d2rq:AdditionalProperty;
    d2rq:propertyName rdf:type;
    d2rq:propertyValue <http://www.w3.org/2002/07/owl#DatatypeProperty>;
    .   

然后,您必须通过引用附加属性来扩展属性桥的定义:

代码语言:javascript
复制
map:abc_ID a d2rq:PropertyBridge;
    .....
    d2rq:datatype xsd:integer;
    d2rq:additionalPropertyDefinitionProperty map:owldatatypeproperty;
    .

就是这样。

在%1处提供了简短的描述

1

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

https://stackoverflow.com/questions/39316674

复制
相关文章

相似问题

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