Задача [MID3]: В базу личностей добавить личности с biografia.kz, известных личностей Центральной Азии

Формулировка проблемы: необходимо дополнить имеющуюся в ARTA SKYNET базу личностей данными с сайта biografia.kz, кроме этого, кроме этого, нужна возможность пополнять базу личностей, организаций, мест и событий вручную, и редактировать имеющуюся в системе информацию по этим сущностям.

Решение:

Импорт из biografia.kz.

Для внесения данных с сайта biografia.kz необходимо загрузить весь контент сайта в режиме «паука» с URL http://biografia.kz/famous/ и ниже. После этого необходимо сделать одноразовый импортер данных из полученного с biografia.kz контента, внеся в базу ARTA SKYNET следующую информацию:

  • ФИО персоны в формате «Фамилия, Имя Отчество» (для отсутствующего отчества формат «Фамилия, Имя»;

  • Дату рождения (по возможности);

  • Фотографию (при наличии);

  • Текстовую секцию биографии с названием «Биография»;

Если при импорте обнаруживается, что импортируемая персона уже присутствует в базе данных ARTA SKYNET, то её импорт пропускается, и об этом делается соответствующая запись в логе импорта с указанием порядкового номера импортируемой персоны, её ФИО и ссылкой на страницу биографии.

Редактор сущностей аналитических справок.

Редактор сущностей должен быть реализован отдельно от основного интерфейса ARTA SKYNET. Жестких требований к внешнему виду редактора не накладывается. Редактирование и внесение новых сущностей должно осуществляться только авторизованными на это (считающееся цельным) действие пользователями. Для хранения и аутентификации вышеуказанных пользователей воспользоваться встроенными в JBoss AS 7 средствами (JAAS), выделив для этого специальным образом поименованную зону realm, добавление и удаление пользователей будет осуществляться администратором инсталляции ARTA SKYNET JBoss.

Редактор должен позволять выполнять следующие действия:

  • Начальное состояние: выбор действия — «Добавить новую сущность» либо «Редактировать существующую»;

  • При выборе добавления новой сущности нужна возможность выбрать её тип (Персона, Организация, Место или Событие) и добавить (по одному для простых полей (текст, дата, число, см. документ «Типы полей карточек сущностей ARTA SKYNET») и по несколько для полей-ссылок). В зависимости от типа сущности список полей, которые можно добавить, меняется. При выборе другого типа сущности сбрасывать уже введенные данные, предварительно показав предупреждающий диалог с возможностью отменить смену типа сущности.

  • При выборе редактирования имеющейся сущности показать диалог с выбором типа сущности, поиском сущности по её идентификатору без префикса http://dbpedia.org/resource/ (см. документ «Типы полей карточек сущностей ARTA SKYNET») и постраничным выводом результатов поиска (по 50 результатов на страницу). При пустой поисковой строке отображать первые 50 идентификаторов сущностей из базы, список страниц не отображается, можно выбрать следующие и предыдущие 50.

  • Добавление, редактирование и удаление простых полей (см. выше) осуществляется выбором поля из списка полей (при добавлении), редактированием значения, и, при необходимости, удалением всего поля;

  • Добавление и редактирование полей, являющихся ссылками на другие сущности, осуществляется следующим образом: при выборе добавления поля-ссылки отображать диалог, аналогичный диалогу при добавлении новой сущности (см. выше), за исключением того, что тип сущности в диалоге определяется типом добавляемого поля и не может быть выбран пользователем;

  • Кроме этого, можно добавить/отредактировать соответствующее с ущности изображение (как ещё одно из полей редактора). При добавлении отсутствующего изображения сразу выводить диалог загрузки изображения (PNG, JPEG, GIF, размер до 1 мегабайта), после загрузки изображения отобразить его в виде миниатюры с размерами, заданными настройками ARTA SKYNET. Для того, чтобы заменить изображение другим, необходимо щёлкнуть на миниатюру, при этом должен открыться диалог выбора изображения;

  • Для сущности также можно добавить/отредактировать/удалить произвольные текстовые блоки, которые характеризуются двумя параметрами: названием секции (например, «Биография», «Профессиональная деятельность» и т. п.) и текстом секции. Текст секции — фрагмент HTML, в редакторе отображается в виде текстовой области с элементами управления визуального редактора: заголовки (4 уровня) и форматирование текста: полужирный, курсив, подчёркнутый, зачёркнутый.

  • Результатом добавления/редактирования будет являться возможность:

    • Сохранить сущность;

    • Отменить сохранение;

    • Удалить сущность (для сущностей, открытых на редактирование, с предупреждающим диалогом с возможностью отмены действия).

После выполнения одного из вышеперечисленных действий редактор возвращается к начальному состоянию.