我有一个查询,我用年份分组来计算。在某些年份中,没有可计算的项目,因此没有结果。我想让 SPARQL 在这些年中返回零计数。
我正在使用 Wikidata 查询服务https://query.wikidata.org,我目前的解决方案是制作一系列值并与实际查询进行联合。对我来说看起来有点笨拙。有没有更好的办法?
#defaultView:BarChart
select ?year ?number_of_pages ?work_label where {
{
select ?year (sample(?pages) as ?number_of_pages) ?work_label
where {
{
select * where {
values (?year ?pages ?work_label) {
("2000" "0"^^xsd:integer "_")
("2001" "0"^^xsd:integer "_")
("2002" "0"^^xsd:integer "_")
("2003" "0"^^xsd:integer "_")
("2004" "0"^^xsd:integer "_")
("2005" "0"^^xsd:integer "_")
("2006" "0"^^xsd:integer "_")
("2007" "0"^^xsd:integer "_")
("2008" "0"^^xsd:integer "_")
("2009" "0"^^xsd:integer "_")
("2010" "0"^^xsd:integer "_")
("2011" "0"^^xsd:integer "_")
("2012" "0"^^xsd:integer "_")
("2013" "0"^^xsd:integer "_")
("2014" "0"^^xsd:integer "_")
("2015" …Run Code Online (Sandbox Code Playgroud) 我对 SPARQL 中的FROM和FROM NAMED图形感到困惑。我确实阅读了SPARQL 规范中与这两个构造相关的规范。我只是想确认一下我的理解。
假设一个 RDF 数据集位于 IRI I。I由。。。制成由。。。做成:
G {(I1,G1), (I2,G2), (I3,G3)}现在,假设我有一个 SPARQL 查询:
SELECT *
FROM I
FROM I1
FROM NAMED I2
Run Code Online (Sandbox Code Playgroud)
所以如果我理解,为了评估这个查询,SPARQL 服务可能会在后面构造活动图,这个活动合并将包含:
I和I1I2这种理解对吗?
如何查询远程端点(如DBPedia或Wikidata的端点)并在本地图形中插入生成的三元组?到目前为止,我知道有INSERT,ADD,COPY等命令可用于此类任务.我不明白的是如何在更新本地图表时寻址远程端点.有人可以提供最低限度的例子或主要步骤吗?
我在Windows上使用Apache Jena Fuseki v2,这是我目前的查询:
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX wd: <http://www.wikidata.org/entity/>
INSERT
{ GRAPH <???> { ?s ?p ?o } } #don't know what to insert here for "GRAPH"
WHERE
{ GRAPH <???> #don't know what to insert here for "GRAPH" either
{ #a working example query for wikidata:
?s wdt:P31 wd:Q5. #humans
?s wdt:P54 wd:Q43310. #germans
?s wdt:P1344 wd:Q79859. #part of world cup 2014
?s ?p ?o.
}
}
Run Code Online (Sandbox Code Playgroud)
我正在查询的本地端点是 …
我想对Person采用givenNametype 数据属性的类进行建模xsd:string。maxLength=50如何指定仅适用于类的此属性(例如)的长度限制Person?例如,我想允许其他类使用相同的属性并选择不同的值进行限制。
鼠标悬停时,猫头鹰传送带不会恢复。当我加载页面时,它会自动播放。当我将鼠标悬停在其上时,它将停止,但在鼠标悬停时不会恢复。
<script>
var owl = $('.owl-carousel');
owl.owlCarousel({
items:4,
loop:true,
margin:10,
autoplay:true,
autoplayTimeout:1000,
autoplayHoverPause:true
});
$('.play').on('click',function(){
owl.trigger('play.owl.autoplay',[1000])
});
$('.stop').on('click',function(){
owl.trigger('stop.owl.autoplay')
});
</script>Run Code Online (Sandbox Code Playgroud)
处理数值数据类型时,我遇到了SPARQL问题.
我有一个本体论(http://cabas.ugr.es/ontology/ugr),其中我定义了一对属性,代表了特定性别的学生人数:
<http://cabas.ugr.es/ontology/ugr#hombres>
a owl:DatatypeProperty, owl:FunctionalProperty, rdf:Property ;
rdfs:label
"hombres"@es,
"men"@en ;
rdfs:comment
"Número de estudiantes hombres."@es,
"Number of male students."@en ;
rdfs:range xsd:nonNegativeInteger ;
rdfs:isDefinedBy <http://cabas.ugr.es/ontology/ugr#> ;
owl:sameAs <http://cabas.ugr.es/ontology/ugr#hombres> ;
owl:inverseOf <http://cabas.ugr.es/ontology/ugr#mujeres> ;
ns1:term_status "stable" .
<http://cabas.ugr.es/ontology/ugr#mujeres>
a owl:DatatypeProperty, owl:FunctionalProperty, rdf:Property ;
rdfs:label
"mujeres"@es,
"women"@en ;
rdfs:comment
"Número de estudiantes mujeres."@es,
"Number of female students."@en ;
rdfs:range xsd:nonNegativeInteger ;
rdfs:isDefinedBy <http://cabas.ugr.es/ontology/ugr#> ;
owl:sameAs <http://cabas.ugr.es/ontology/ugr#mujeres> ;
owl:inverseOf <http://cabas.ugr.es/ontology/ugr#hombres> ;
ns1:term_status "stable" .
Run Code Online (Sandbox Code Playgroud)
我在Virtuoso(http://cabas.ugr.es:8890/sparql)上安装了一个SPARQL端点,我在其中输入以下查询:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> …Run Code Online (Sandbox Code Playgroud) 我浏览了JanusGraph和Titan文档,它不断在管理对象上调用其他函数,如"makeEdgeLabel"等,但是我无法理解Management类的确切用法,因为根据我的理解,我可以在"JanusGraph"上调用相同的函数同样.
我想了解JanusGraph中所谓的"管理系统"的确切含义.
我刚刚学习如何在 SPARQL 中编写查询(通过 prot\xc3\xa9g\xc3\xa9 平台)。所以,这是一个非常基本的问题,但我无法解决。
\n\n我有一个名叫爱丽丝的人(它位于猫头鹰:东西之下)。
\n此人有一个名为 textualValue 的数据属性,指定为 xsd:normalizedString。
我正在编写下面的查询来提取以 ali 开头的个人,这应该反过来产生 alice。我基本上使用正则表达式操作数进行过滤。每当我使用此规范执行 SPARQL 查询时,我都没有得到任何结果,有人可以指出我错在哪里吗?
\n\nSELECT distinct ?x\nWHERE { ?x rdf:type owl:NamedIndividual.\nFILTER regex(?textualValue, "^ali", "i") }\nRun Code Online (Sandbox Code Playgroud)\n 在OWL 2的规范中,关键公理的部分说明:
关键公理的语义是特定的,因为这些公理仅适用于通过名称在本体中明确引入的个体,而不适用于未命名的个体(即存在通过存在量化暗示存在的个体).这使得关键公理等同于DL安全规则的变体.因此,关键公理通常不会影响基于类的推理,例如包含层次结构的计算,但它们将在回答关于个体的查询中起作用.
然后它继续显示一组公理的例子,这些公理显然需要得出结论,但由于该规则,规范不承认.
这个决定背后的原因是什么?
我已经安装了本地的virtuoso服务器并导入了dbpedia数据.我发现了一系列在isql中不起作用的SPARQL命令.例如,我在我的isql shell中运行了这个查询.
SPARQL SELECT ?s GROUP_CONCAT (?obj, ' ') as ?artist_list WHERE { ?s a dbpedia-owl:Single ;(dbpedia-owl:artist|dbpedia-owl:producer) ?obj } limit 10
Run Code Online (Sandbox Code Playgroud)
它首先抱怨| 在(dbpedia-owl:artist | dbpedia-owl:producer)中,然后是GROUP_CONCAT.我对Virtuoso文档进行了一些研究,并做了以下工作
EDIT1 我试图检查不同的情况,
1- group_concat
SPARQL select ?s (group_concat(?obj; separator='|') as ?artist_list) FROM <http://ja.dbpedia.org> where { ?s a dbpedia-owl:Single ; (dbpedia-owl:artist) ?obj } group by ?s limit 10;
SQL> syntax error at 'group_concat' before '('
Run Code Online (Sandbox Code Playgroud)
2-使用值
SPARQL select ?s FROM <http://ja.dbpedia.org> where { values ?sType {dbpedia-owl:Song dbpedia-owl:Single }. ?s a ?sType} limit 10;
*** Error 37000: …Run Code Online (Sandbox Code Playgroud) 我有表名“数据”,它有 5 列,每列包含一些空值。我想计算每列的空值如何为该结果编写代码!计算一列很容易,但我如何编写代码来计算表的每一列。
样本 :
+----------------+----------------+--------+---------+-------------+
| 2 |3 |4 | 5 |6 |
+----------------+----------------+--------+---------+-------------+
|null |1 | null |null |null |
|null |null | null |null |asdc |
|null |23 | 23 |null |null |
|null |null | null |23 |41 |
|24 |3 | 35 |null |null |
|null |null | null | 1 |wef |
|null |32 | 54 |null |45 |
|null |null | null |123 |null |
|w411 |31 | 12 |null |null |
|null …Run Code Online (Sandbox Code Playgroud) sparql ×6
semantic-web ×3
graph ×2
owl ×2
protege ×2
rdf ×2
wikidata ×2
apache-spark ×1
carousel ×1
fuseki ×1
hover ×1
janusgraph ×1
javascript ×1
jena ×1
jquery ×1
linked-data ×1
named-graphs ×1
ontology ×1
owl-carousel ×1
protege4 ×1
scala ×1
titan ×1
virtuoso ×1