Совпадение со значением NULL в SPARQL

У меня есть следующий запрос SPARQL:

SELECT ?label ?img 
WHERE
{
  ?uri rdfs:label ?label .
  ?uri vtio:hasImage ?img .
}

С результатами, подобными следующему:

label | img
-------------
label | link1
labe2 | link2
…

Я также хочу, чтобы метка без ?img также совпадала, т. е. записи, где ?img равно NULL, т. е. мне нужны следующие результаты:

label  | img
--------------
label1 | link1
label2 |
label3 | link3
…

Если я использую свой предыдущий запрос, результат для label2 не будет показан?

Как мне изменить мой запрос, чтобы он также включал такие строки?


person Do Thanh Tung    schedule 17.12.2013    source источник


Ответы (1)


Используйте НЕОБЯЗАТЕЛЬНО:

select ?label ?img where {
?uri rdfs:label ?label.
 OPTIONAL { ?uri vtio:hasImage ?img. }
}
person Jeen Broekstra    schedule 17.12.2013
comment
Broekstar: Большое спасибо! - person Do Thanh Tung; 19.12.2013