SPARQL查询以构造与主题关联的图形
我想创建一个SPARQL构造查询来选择与某个主题相关联的所有三元组。问题是我不确定会关联多少个三元组。下面是我的特定SPARQL查询的用法。我想分离R2RML映射中包含的三重映射 示例图SPARQL查询以构造与主题关联的图形,sparql,rdf,turtle-rdf,Sparql,Rdf,Turtle Rdf,我想创建一个SPARQL构造查询来选择与某个主题相关联的所有三元组。问题是我不确定会关联多少个三元组。下面是我的特定SPARQL查询的用法。我想分离R2RML映射中包含的三重映射 示例图 @prefix dbo: <http://dbpedia.org/ontology/> . @prefix dc: <http://purl.org/dc/terms/> . @prefix dcterms: <http://purl.org/dc/terms/> . @pr
@prefix dbo: <http://dbpedia.org/ontology/> .
@prefix dc: <http://purl.org/dc/terms/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix ex: <http://www.txample.com/people/voc/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rr: <http://www.w3.org/ns/r2rml#> .
@prefix testd: <http://www.txample.com/people/data/> .
@prefix testv: <http://www.txample.com/people/voc/> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<TripleMap1>
rr:logicalTable [ rr:tableName "people" ] ;
rr:predicateObjectMap [ rr:objectMap [ rr:column "publications" ;
rr:language "en-GB" ] ;
rr:predicate foaf:publications ;
rr:termType rr:Literal ],
[ rr:objectMap [ rr:column "age" ;
rr:datatype xsd:integer ] ;
rr:predicate foaf:age ],
[ rr:objectMap [ rr:column "age" ;
rr:datatype xsd:integer ] ;
rr:predicate dbo:equipment ] ;
.
<TripleMap2>
rr:logicalTable [ rr:tableName "people" ] ;
.
@前缀dbo:。
@前缀dc:。
@前缀dcterms:。
@前缀ex:。
@前缀foaf:。
@前缀owl:。
@前缀rdf:。
@前缀rdfs:。
@前缀rr:。
@前缀testd:。
@前缀testv:。
@前缀xml:。
@前缀xsd:。
rr:logicalTable[rr:tableName“people”];
rr:predicateObjectMap[rr:objectMap[rr:列“发布”;
rr:语言“en GB”];
rr:谓词foaf:出版物;
rr:termType rr:Literal],
[rr:objectMap[rr:列“年龄”;
rr:数据类型xsd:integer];
rr:谓词foaf:年龄],
[rr:objectMap[rr:列“年龄”;
rr:数据类型xsd:integer];
rr:谓词dbo:设备];
.
rr:logicalTable[rr:tableName“people”];
.
示例SPARQL查询
CONSTRUCT {
<TripleMap2> ?predicate ?object .
?object ?p2 ?o2 .
}
WHERE {
<TripleMap2> ?predicate ?object.
?object ?p2 ?o2 .
}
构造{
谓词,宾语。
?物体?p2?o2。
}
在哪里{
谓词,宾语。
?物体?p2?o2。
}
这将返回TripleMap2的所有三元组,但不会返回TripleMap1的所有三元组
<TripleMap1>
rr:logicalTable [ rr:tableName "people" ] ;
rr:predicateObjectMap [ rr:objectMap [] ;
rr:predicate foaf:publications ;
rr:termType rr:Literal
] ;
rr:predicateObjectMap [ rr:objectMap [] ;
rr:predicate dbo:equipment
] ;
rr:predicateObjectMap [ rr:objectMap [] ;
rr:predicate foaf:age
] .
TripleMap2的输出
<TripleMap2>
rr:logicalTable [ rr:tableName "people" ] ;
rr:logicalTable[rr:tableName“people”];
TripleMap1的输出
<TripleMap1>
rr:logicalTable [ rr:tableName "people" ] ;
rr:predicateObjectMap [ rr:objectMap [] ;
rr:predicate foaf:publications ;
rr:termType rr:Literal
] ;
rr:predicateObjectMap [ rr:objectMap [] ;
rr:predicate dbo:equipment
] ;
rr:predicateObjectMap [ rr:objectMap [] ;
rr:predicate foaf:age
] .
rr:logicalTable[rr:tableName“people”];
rr:predicateObjectMap[rr:objectMap[];
rr:谓词foaf:出版物;
rr:termType rr:Literal
] ;
rr:predicateObjectMap[rr:objectMap[];
rr:谓词dbo:设备
] ;
rr:predicateObjectMap[rr:objectMap[];
rr:谓词foaf:年龄
] .
任何帮助都将不胜感激。您使用的是哪种SPARQL处理器?您正在使用什么RDF存储?名称、版本和其他详细信息可能与
的输出(显然)不完整有关。