SPARQL查询获取n级深度的节点子图
SPARQL query to get a node sub graph at n level depth
我正在寻找给定节点的子图到给定 k level
的深度,如下图所示,k=2。
如果我去 https://dbpedia.org/sparql 和 select a ?city
我想得到城市图的所有细节,比如 5 个级别。我正在寻找不需要了解图形知识即可获取如下数据的通用查询。
CONSTRUCT {
?city a ?plebs .
?mayor foaf:gender ?gender.
?city dbo:country ?ctr .
?city dbo:populationTotal ?pop.
?city dbo:leaderParty ?party .
?city rdfs:label ?cityName .
?party dbo:ideology ?ideology
} WHERE {
?plebs rdfs:subClassOf dbo:Settlement.
?city a ?plebs .
?city (dbp:mayor | dbo:mayor | dbp:leader |dbo:leader | dbo:leaderName) ?mayor .
?mayor foaf:gender ?gender.
?city dbo:populationTotal ?pop .
?city rdfs:label ?cityName .
?city dbo:country ?ctr .
?city dbo:leaderParty ?party .
?party dbo:ideology ?ideology .
FILTER(str(?gender) = "female")
}
ORDER BY DESC(?pop)
谁能帮我做一个通用的 SPARQL 查询,它可以在给定节点的任何数据库上运行。
问候
基兰
其实很简单:
construct {
?s ?p ?o.
?o ?op ?oo.
?oo ?oop ?ooo.
?ooo ?ooop ?oooo.
?oooo ?oooop ?ooooo.
}
where {
bind(city:_London as ?s)
?s ?p ?o.
optional {
?o ?op ?oo.
optional {
?oo ?oop ?ooo.
optional {
?ooo ?ooop ?oooo.
optional {
?oooo ?oooop ?ooooo.
}
}
}
}
}
构造语句将 return 来自相关城市的所有出站链接的图表,任何时候你有一个空 returned,该三元组将不会被构造。
我正在寻找给定节点的子图到给定 k level
的深度,如下图所示,k=2。
如果我去 https://dbpedia.org/sparql 和 select a ?city
我想得到城市图的所有细节,比如 5 个级别。我正在寻找不需要了解图形知识即可获取如下数据的通用查询。
CONSTRUCT {
?city a ?plebs .
?mayor foaf:gender ?gender.
?city dbo:country ?ctr .
?city dbo:populationTotal ?pop.
?city dbo:leaderParty ?party .
?city rdfs:label ?cityName .
?party dbo:ideology ?ideology
} WHERE {
?plebs rdfs:subClassOf dbo:Settlement.
?city a ?plebs .
?city (dbp:mayor | dbo:mayor | dbp:leader |dbo:leader | dbo:leaderName) ?mayor .
?mayor foaf:gender ?gender.
?city dbo:populationTotal ?pop .
?city rdfs:label ?cityName .
?city dbo:country ?ctr .
?city dbo:leaderParty ?party .
?party dbo:ideology ?ideology .
FILTER(str(?gender) = "female")
}
ORDER BY DESC(?pop)
谁能帮我做一个通用的 SPARQL 查询,它可以在给定节点的任何数据库上运行。
问候 基兰
其实很简单:
construct {
?s ?p ?o.
?o ?op ?oo.
?oo ?oop ?ooo.
?ooo ?ooop ?oooo.
?oooo ?oooop ?ooooo.
}
where {
bind(city:_London as ?s)
?s ?p ?o.
optional {
?o ?op ?oo.
optional {
?oo ?oop ?ooo.
optional {
?ooo ?ooop ?oooo.
optional {
?oooo ?oooop ?ooooo.
}
}
}
}
}
构造语句将 return 来自相关城市的所有出站链接的图表,任何时候你有一个空 returned,该三元组将不会被构造。