я вставил тестовый документ с помощью Node.js API:Как запросить тропы Marklogic с помощью SPARQL?
db.documents.write(
{
uri: "/test/doc1.json",
contentType: "application/json",
collections: "test",
content: {
name : "Peter",
"triple": {
"subject": {
"datatype": "http://example.com/name/",
"value": "Peter"
},
"predicate": {
"datatype": "http://example.com/relation/",
"value": "livesin"
},
"object": {
"datatype": "http://example.com/location/",
"value": "Paris"
}
}
}
}
).
result(function(response){
console.log("Done loading");
});
Затем я попытался запрашивая его через SPARQL на консоли веб-приложение MarkLogic:
SELECT ?s ?p ?o
WHERE { ?s ?p ?o }
Приведенный выше запрос работает отлично, он получает испытание тройным Я вставил выше
Однако, если я хочу, чтобы фильтровать буквальным значением «Париж», я попробовал следующее:
PREFIX loc: <http://example.com/location/>
SELECT ?s ?p
WHERE { ?s ?p loc:Paris }
Но в этом случае я получил нулевые результаты. Является ли этот синтаксис неправильным? Я просто следил за тем, как запросы выглядели в https://docs.marklogic.com/guide/semantics/semantic-searches
Что это за правильный способ?
Отлично. Благодаря! –