Open nav-mike opened 7 years ago
Итак, чего я добился от сайта linkeduniversities:
QueryExecutionFactory.sparqlService("http://data.open.ac.uk/sparql", getStringForQuery());
не смог ничего добиться:(
Выдает следующее:
Endpoint returned Content-Type: text/html which is not currently supported for SELECT queries
Пока что лучше всего получилось с сайтом publications.europa. И удалённые выховы поддерживает, и публикации есть. Вот с ним единственным полноценно работаю. В гитхаб планирую всё выложить в вс вечером, до этого занят буду. REST запрос я реализовал, sparql запрос из java к сайтам тоже, в json результаты перевожу, осталось связать это:)
[ ] Добавить источники до 5 (https://dev.springer.com)
[ ] Добавить фильтры
[ ] Логгировать запросы
[ ] Сохранять результат в локальную онтологию/база данных
@GitGeras какие изменения?
@nav-mike Сейчас достаточно много учёбы и работы, пока изменений нет
Приложение задеплоено на heroku, также доступно в docker (ovger/semanticsearchtest).
api: Вывод лога по запросу "semantic", Вывод публикаций по запросу "semantic" (может выполняться долго)
Разработать прототип поиска публикаций по ключевым словам
Использовать 5 - 10 открытых источников публикаций (linkeduniversities.org и тд)
Разработать интерфейс из двух страниц: страница ввода запроса; страница результата. На странице результата выводить: URI публикации, заголовок, авторы, abstract, источник, год.
Разработать REST интерфейс для поиска. /search?keyword=data%20mining - пример запроса поиска публикаций. В качестве ответа возвращать json с массивом публикаций. Поля такие же как и на странице.
Все запросы логгировать в бд (pg или mongo) + добавить REST доступ на получение этих логов и страницу для их отображения.
Реализовать формирование онтологии на основе запросов: класс Keyword - ключевое слово по которому ведется поиск (rdfs:label - текстовое значение ключевого слова); класс Resource - публикация, найденная по ключевому слову (rdfs:label - заголовок, authors - массив авторов, rdfs:comment - abstract, source - источник в виде строки, year - год публикации, link_to - URI публикации). Онтология должна поддерживать расширение: при повторном запросе по тому же ключевому слову - если новый ответ отличается, нужно добавить новые данные в онтологию - исключить копирование данных в онтологии.
Упаковать проект в docker - контейнер. По возможности, разместить проект на heroku.com или любом другом хостинге.