Объектно-ориентированное программирование и обработка данных

Обработка библиографической информации

Задание на разработку системы для обработки библиографической информации является заданием для комплексной курсовой работы, которая может выполняться несколькими студентами.

Общей частью является формат коллекций mongo, в которых храниться библиографическая информация, и который должен быть согласован между всеми участниками проекта. Формат должен быть разработан на основе bibtex (допускается не полная его реализация).

Система состоит из нескольких утилит командной строки (по одной утилите на исполнителя). Входные данные для этих утилит задаются либо непосредственно в виде аргументов командной строки, либо в файле, имя которого передается в виде аргумента командной строки. Также для всех утилит должен использовать единый конфигурационный файл, в котором указываются данные для подключения к mongo.

Список утилит (не допускается выбирать для курсового утилиты с большим номером, если не выбраны утилиты с меньшим номером):

  1. Утилита для импорта библиографической записи bibtex в систему. На вход утилиты подается библиографическая запись в формате bibtex. Запись сохраняется в базе данных.
  2. Утилита для создания списка литературы. На вход подаются ключи библиографических записей в базе данных. На выходе – список литературы по стандарту ГОСТ Р 7.0.100—2018.
  3. Утилита для заполнения формы 16. На вход подаются имя автора. На выходе – список трудов этого автора по форме 16. Формат документа и полнота заполнения формы согласуются с преподавателем.
  4. Утилита для парсинга библиографической записи. На входе – URL научной работы на сайте http://elibrary.ru/. Запись сохраняется в базе данных.
  5. Утилита для поиска библиографических записей. На входе – критерии поиска (авторы, годы издания, ключевые слова и др.). На выходе – список ключей библиографических записей, соответствующих критериям.