sparql - SPARQL 构造。如何将 RDF 属性的值分配给实际的 RDF 变量
问题描述
我的查询(摘录)大致是这样的。
CONSTRUCT {
?publication fb:type ?type;
fb:publicationType ?publicationType;
}
WHERE
{
?publication a bibo:Document .
?publication vitro:mostSpecificType ?publicationType .
}
它返回类似于...的输出
<rdf:Description rdf:about="https://abcd.fgh/individual/publication12345">
<fb:publication>Example pub title</fb:publication>
<fb:publicationType rdf:resource="http://purl.org/ontology/bibo/AcademicArticle"/>
</rdf:Description>
也许是一个初学者式的问题,但我如何调整查询以使输出为:
<rdf:Description rdf:about="https://abcd.fgh/individual/publication12345">
<fb:publication>Example pub title</fb:publication>
<fb:publicationType>Academic Article</fb:publicationType>
</rdf:Description>
谢谢
解决方案
假设bibo
本体在您正在查询的商店中,您可以rdfs:label
在属性路径中使用它的属性:
CONSTRUCT {
?publication fb:type ?type;
fb:publicationType ?publicationType;
} WHERE {
?publication a bibo:Document ;
vitro:mostSpecificType/rdfs:label ?publicationType .
FILTER (LANG(?publicationType) = "en")
}
是的?a vitro:mostSpecificType/rdfs:label ?b
简写?a vitro:mostSpecificType ?something. ?something rdfs:label ?b
,不绑定中间项。
推荐阅读
- java - 映射的反应式 Java 列表
- laravel - 在用户使用 Laravel Excel 导入之前创建配置文件模型
- flutter - 在异步函数中运行 Palette Generator(由颤振团队提供)会使应用程序冻结一点
- facebook - 如果我使用 facebook/google 帐户凭据登录到某个站点 - 那么它是什么类型的 OAuth 授权类型?
- javascript - 您如何访问和存储“已实现”承诺的值/属性?
- c++ - 将模板类的声明和定义分开在不同的头文件中是否安全?
- azure-functions - Azure function .Net 5 HTTP Trigger Post request 数据限制
- python - Python / Pandas / XML - 将 pandas 数据帧行写回 LXML
- amazon-web-services - 如何让 AWS 路由 53 切换连接更快?
- python - 不了解如何执行递归行