Как создать веб-страницу PHP, используя онтологию, которая уже сопоставлена ​​с реляционной базой данных

Это мой первый опыт создания семантической паутины.

Я не знаю, как создать веб-страницу PHP и подключить ее к онтологии, которую я сопоставил с реляционной базой данных с помощью подключаемого модуля Ontop для Protege.

База данных стала rdfstore?

Я попытался использовать библиотеку EasyRdf для подключения PHP к онтологии, однако это не сработало.

Вот код php, который я пробовал.

<?php
require 'vendor/autoload.php';
$foaf = new EasyRdf_Graph("http://localhost/proIT.owl");
$foaf->load();
$me = $foaf->primaryTopic();
echo "My name is: ".$me->get('foaf:name')."\n";
?>

person Ilda Pohan    schedule 26.01.2018    source источник


Ответы (1)


Здесь есть 2 основные проблемы:

(1) Невозможно получить доступ к сопоставлениям, которые вы применили из подключаемого модуля Protege Ontop из EasyRDF в PHP. Плагин Protege Ontop позволяет выполнять запросы SPARQL к вашей базе данных из Protege, которая недоступна для EasyRDF. На основе архитектуры Ontop вам необходимо настроить Конечная точка SPARQL для Ontop, которую можно сделать с помощью рабочей среды Sesame. См. раздел Установка Sesame SPARQL Enpoint.

Встроенная архитектура

(2) Теперь вам нужен EasyRDF для доступа к конечной точке SPARQL. В этом отношении ваш PHP-код неверен, поскольку он просто загружает файл .owl, а не запрашивает конечную точку SPARQL. См. пример запроса EasyRDF SPARQL, чтобы узнать, как это сделать. запрос SPARQL с использованием EasyRDF.

Наконец, что касается вашего вопроса о том, стала ли база данных хранилищем RDF, ответ НЕТ. Ваша база данных не изменена. Скорее, подключаемый модуль Ontop Protege или репозиторий для Ontop, который вы настраиваете в Sesame Workbench, обеспечивает уровень доступа к вашей базе данных с поддержкой SPARQL. То есть вы по-прежнему сможете выполнять типичные SQL-запросы к своей базе данных через свой SQL-клиент.

person Henriette Harmse    schedule 26.01.2018
comment
я пытался использовать конечную точку sesame {sparql} и сделал точно так же, как в этом руководстве, однако квест не появился. я попытался решить эту проблему, скопировав некоторые файлы в каталог в кунжуте, но не сработал. как насчет использования библиотеки {arc2}? мне все еще нужен магазин {rdf}? я пытался использовать {arc2}, но я не понимаю часть «название магазина». он создал таблицу множественных значений в моей базе данных и назвал ее именем магазина. - person Ilda Pohan; 29.01.2018
comment
привет, извините, что спрашиваю снова. Мне удалось установить конечную точку sesame SPARQL, также я попробовал приведенный выше пример запроса EasyRDF SPARQL. он вернул фатальную ошибку: класс «EasyRdf_Sparql_Client» не найден. как это решить? - person Ilda Pohan; 01.02.2018