2
的SPARQL如何將類標籤顯示爲類的列名稱?
SELECT ?c0 ?l0
WHERE
{
?c0 rdf:type <XXXX>.
OPTIONAL
{
?c0 rdfs:label ?l0.
}
}
示出了兩列c0
和l0
。任何方式只顯示一列c0
,但?l0
的內容作爲?c0
的標題?其結果會是什麼樣子選擇?Co爲 ...
的SPARQL如何將類標籤顯示爲類的列名稱?
SELECT ?c0 ?l0
WHERE
{
?c0 rdf:type <XXXX>.
OPTIONAL
{
?c0 rdfs:label ?l0.
}
}
示出了兩列c0
和l0
。任何方式只顯示一列c0
,但?l0
的內容作爲?c0
的標題?其結果會是什麼樣子選擇?Co爲 ...
如果我理解正確的話,你可以用聚結,它返回它的第一個非誤差界爭論做到這一點。首先,這裏的一些數據,其中有一類:狗與標籤「狗」,和一類:貓它沒有標籤:
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix : <http://example.org/> .
:dog a rdfs:Class ;
rdfs:label "Dog" .
:cat a rdfs:Class .
下面是查詢和結果:
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select (coalesce(?label,?class) as ?co) where {
?class a rdfs:Class
optional {
?class rdfs:label ?label
}
}
----------------------------
| co |
============================
| <http://example.org/cat> |
| "Dog" |
----------------------------
如果'?l0'有很多值會發生什麼?您編寫查詢的方式,每個'?c0'可能至少有一個不同的'?l0'值。 – 2014-09-30 07:01:49
可能相關[answers.semanticweb.com上的問題](http://answers.semanticweb.com/questions/15445/how-to-set-the-label-of-a-column-nameheader-as-in-sparql )。 – 2014-09-30 07:26:28
'select?co {?x a。可選{?x rdfs:label?co}}'?這聽起來像你只是想(i)爲標籤使用不同的變量(簡單)和(ii)不選擇綁定到事物(易)的變量。這個問題還有別的嗎? –
2014-09-30 11:39:32