Как вставить литерал с тегами языка, используя запрос SPARQL INSERT DATA?

У меня возникла проблема с запросом в SPARQL для хранилища тройного кунжута. Я ввожу этот запрос в опцию "Обновление SPARQL" рабочей среды Sesame:

INSERT DATA { <http://www.example#test> rdfs:label "test_label"@en }

Я хотел бы получить такой результат RDF:

<rdf:Description rdf:about="http://www.example#test">
     <rdfs:label xml:lang="en">test_label</rdfs:label>
</rdf:Description>

Но я не знаю, как написать запрос, чтобы добавить xml:lang="en",

С моим запросом у меня есть эта ошибка:

org.openrdf.query.UpdateExecutionException: org.openrdf.sail.SailException:
org.openrdf.rio.RDFParseException: Expected ':', found ' '

Мне не удается найти правильный синтаксис для моего запроса.

1 ответ

Решение

Запрос на обновление SPARQL, если он у вас есть, правильный. Ошибка вызвана ошибкой в ​​версии 2.7.11 Sesame (см. SES-2063).

Исправление будет доступно в следующем выпуске патча. Тем временем, обходной путь должен переформулировать ваш запрос следующим образом:

 INSERT { <http://www.example#test> rdfs:label "test_label"@en } WHERE {} 
Другие вопросы по тегам