Europeana's Virtuoso SPARQL Endpoint을 사용하고 있습니다.dc : SPARQL의 creator string 리터럴 대 regex FILTER
저는 특정 기여자에 대한 내용을 SPARQL에서 검색하려고했습니다. 내 이해를 위해,이 방법을 수행 할 수 있습니다 :
PREFIX dc: <http://purl.org/dc/elements/1.1/>
SELECT ?title
WHERE {
?objectInfo dc:title ?title .
?objectInfo dc:creator 'Picasso' .
}
그럼에도 불구하고, 나는 아무것도 얻지 못했습니다.
또는 FILTER regex을 사용하여 리터럴을 검색했습니다.
PREFIX dc: <http://purl.org/dc/elements/1.1/>
SELECT ?title ?creator
WHERE {
?objectInfo dc:title ?title .
?objectInfo dc:creator ?creator .
FILTER regex(?creator, 'Picasso')
}
이것은 실제로 매우 잘 작동하고 결과를 올바르게 반환했습니다.
제 질문은 FILTER을 사용하지 않고 SPARQL 쿼리를 생성하여 특정 아티스트의 작품을 검색 할 수 있습니까?
감사합니다.
당신이 질의하고 종점을 말씀해? 내 첫 번째 추측은 문자열 리터럴 'Picasso'에 대한 데이터 유형을 지정해야한다는 것입니다. 또한 첫 번째 쿼리에서 두 개의 트리플 패턴 사이에 관계가없는 것처럼 보입니다. –
또한 첫 번째 쿼리에서 두 개의 트리플 패턴 사이에 관계 (공유 변수)가없는 것처럼 보입니다. –
감사합니다. 방금 정보를 업데이트했습니다 : 유럽의 Virtuoso Endpoint를 사용하고 있습니다 : http://sparql.europeana.eu/ – Trinker