Разработка свободного программного средства обработки и структуризации библиографических данных (Евгений Петров, OSSDEVCONF-2016)
Материал из 0x1.tv
Аннотация
- Докладчик
- Евгений Петров
Формирование библиографических отчетов для отдела научно-технической информации является задачей, требующей большого числа рутинных ручных операций по приведению библиографических данных различного вида и из различных источников в единую структуру требуемого формата, требования к оформлению которой могут со временем меняться.
Данная работа посвящена разработке свободного программного средства, решающего описанную проблему посредством перевода библиографических данных различного вида в единое представление с возможностью дальнейшего экспорта в требуемый формат.
Видео
Слайды
Расширенные тезисы
В настоящее время в вузах существует практика сбора сведений о публикациях преподавательского состава и студентов кафедр. Эти сведения подаются коллективно или в индивидуальном порядке ответственному лицу, которое на основе полученных данных формирует единый отчет в виде, требуемом отделом научно-технической информации.
Формирование отчета представляет собой рутинный труд по переносу предоставленных данных в сводную таблицу, отвечающую заявленным требованиям. Как и во всякой рутинной работе, выполняемой вручную, велико влияние человеческого фактора на результат, будь то опечатки или пропущенные по неосторожности публикации. Помимо этого, требования к оформлению итогового отчета могут поменяться и всю работу придется переделывать заново. Дополнительной трудностью является то, что преподаватели подают сведения о публикациях в вольной форме, зачастую не соблюдая правила оформления: в виде библиографий, не всегда оформленных по ГОСТ 7.0.5-2008[1], в виде таблиц и списков различных форматов.
Предлагаемым решением описанной проблемы является разработка программного средства обработки и структуризации библиографических данных. В основе работы данного программного средства лежит принцип преобразования входных данных в различных форматах в единое внутрипрограммное представление с занесением в базу данных, а также последующий перевод этого внутрипрограммного представления в требуемый отчетный вид, будь то таблица или библиографический список. Из-за использования переходного представления достигается независимость работы программы от формата как входных данных, так и выходных: однажды занесенные в базу данных сведения могут быть повторно использованы при изменении требований к отчету.
Возможность получения данных из готовых открытых источников позволяет существенно сократить трудозатраты как преподавательского состава, так и ответственного за формирование итогового отчета лица, по этой причине в разработанном программном средстве присутствует функционал по выборочному импорту данных из научной библиотеки elibrary на основе списка идентификаторов интересующих авторов. В то же время поддержка импорта из локальных файлов не менее важна, так как иногда требуется внести в отчет еще не вышедшие, но уже принятые к публикации материалы.
При разработке использовался язык программирования Python[2], что позволило осуществить быстрое прототипирование и показать первые результаты в кратчайшие сроки.
Разбор входных данных выполняется с помощью регулярных выражений[3] в зависимости от формата, передаваемого в качестве аргумента командной строки. Другие параметры включают отображение справки, пути к входным и выходным файлам, имя пользователя и путь к паролю от базы данных, формат выходных данных. В настоящее время поддерживается импорт текстовых списков библиографических сведений и автоматический сбор информации на основе идентификаторов авторов на сайте elibrary. В качестве формата экспорта поддерживается сохранение базы данных в сводную таблицу.
В перспективе планируется расширить число поддерживаемых форматов импорта и экспорта, что позволит пользователю свободно переводить данные из одного представления в другое в зависимости от своих потребностей. Помимо этого, рассматривается возможность создания веб-сервиса в локальной сети вуза с целью создания единой библиографической базы данных и добавления гибкой фильтрации данных для настройки выдаваемых результатов под нужды разных кафедр.
Примечания и отзывы
- ↑ Стандартинформ, Система стандартов по информации, библиотечному и издательскому делу. Библиографическая ссылка. Общие требования и правила составления., 2008
- ↑ Python Software Foundation, Our Documentation, https://www.python.org/doc/
- ↑ Jan Goyvaerts, Regex Tutorial, Examples and References, http://www.regular-expressions.info/
Plays:42 Comments:0