Я хочу использовать SPARQL для сравнительно простой задачи: учитывая график FOAF, я бы хотел проанализировать элементы, которые я там нашел, получить их теги (если они существуют), а затем использовать их в качестве новых графиков. из которого можно найти информацию об этих людях.
Так, например, вы можете представить себе простой случай использования, когда я хочу выполнить запрос SPARQL, чтобы перечислить все мои любимые продукты (согласно моему файлу FOAF), а также любимые продукты всех моих друзей.
Вот как это выглядит в данный момент. Обратите внимание, что в целях тестирования в настоящий момент все, что я пытаюсь сделать с помощью приведенного ниже запроса, - это получить имя друга через переменную? Name3. Выполнение этого запроса не возвращает никаких результатов для «graph» и «name3», хотя я знаю, что rdfs: see также ссылается на некоторые допустимые файлы RDF, из которых по крайней мере два должны иметь атрибут name. Спасибо за любой вклад, который вы можете иметь!
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?name1 ?name2 ?graph ?name3
FROM <my-rdf-file>
WHERE {
?person1 foaf:knows ?person2 .
?person1 foaf:name ?name1 .
?person2 foaf:name ?name2 .
OPTIONAL {
?person2 rdfs:seeAlso ?graph .
GRAPH ?graph {
?person3 foaf:name ?name3 .
}
}
}