Чтобы получить все книги со словом 'fiction' в метке dcterms:subject
, вы можете сделать что-то вроде этого:
SELECT DISTINCT ?book
WHERE {
?book dcterms:subject [ rdf:value ?g ] .
FILTER(REGEX(STR(?g), "fiction", "i"))
}
Этот запрос собирает все ресурсы со значением dcterms:subject
, которое вTurn имеет свойство rdf:value
со значением ?g
.Условие FILTER
затем проверяет, что это значение ?g
содержит слово «беллетристика».
Чтобы получить дополнительные свойства возвращаемых книг, просто разверните запрос.Например, чтобы вернуть название книги, вы должны сделать что-то вроде этого:
SELECT DISTINCT ?book ?title
WHERE {
?book dcterms:title ?title;
dcterms:subject [ rdf:value ?g ] .
FILTER(REGEX(STR(?g), "fiction", "i"))
}
Надеюсь, это поможет вам начать работу с помощью учебника SPARQL и некоторой смазки для локтя, которую вы сможетерасширить на этом.