Я получаю следующую ошибку при попытке вставить данные в Fuseki с помощью сценария php:
405: Bad response, 405: Error 405: HTTP method not allowed: SPARQL Update : use POST Fuseki - version 2.3.1
я использую sparqllib.php библиотека и
Я использовал тот же запрос sparql в панели управления fuseki, и он работает!
это мой скрипт php:
$db = sparql_connect( "http://localhost:3030/riimaOnto/update" );
if(!$db)
{
print sparql_errno() . ": " . sparql_error(). "\n";
exit;
}
$id = "MyData";
$sparql = "PREFIX onto:<http://www.semanticweb.org/riima/ontologies/#>
INSERT DATA
{
onto:$id a onto:Article
}";$result = sparql_query($sparql);
if (!$result)
{
print sparql_errno() . ": " . sparql_error(). " \n";
exit;
}
так как я могу вставить данные в мою онтологию ??
Обновление поддерживается только HTTP POST.
Запрос отправлен с HTTP GET. Операции изменения никогда не должны проходить через GET (операция может кэшироваться, а POST — нет).
В SPARQL-запросе и обновлении используются разные языки и протоколы.
sparql_query
предположительно делает HTTP GET с ?query=...
Строка запроса URL.
Вам нужен какой-то sparql_update
(Я не знаю sparqllib.php), который использует HTTP POST с правильным MIME-типом и обновлением в теле. (Обновление HTML-формы также работает в Fuseki — будет ?update=...
)
если вы используете Apache Jena Fuseki, вам следует отредактировать конечную точку sparql, которая по умолчанию имеет вид «HTTP: // локальный: 3030 / myDataset / запрос«отменив запрос и разместив вместо него« обновление »