Технология включения базы данных Springer в систему каталогов БЕН РАН

Каллистратова О.Д.
(Библиотека по естественным наукам РАН)

В 2008 году Библиотека по естественным наукам (БЕН) РАН приобрела для своих пользователей доступ к коллекции электронных книг издательства Springer по естественным наукам. На сайте БЕН РАН была помещена страница ссылок на сайт издательства, где пользователям предоставлена возможность поиска нужных изданий в общем каталоге Springer e-books.
В то же время для удобства наших пользователей логично было бы организовать также поиск книг приобретенной коллекции на сайте БЕН РАН, подключив базу данных этой коллекции к системе каталогов БЕН РАН. Для реализации такой задачи в конце 2008 года БЕН получила от издательства Springer базу библиографических данных этой коллекции, экспортированную в файлы записей формата MARC21 в кодировке UTF-8. В начале 2009 года был получен дополнительный файл, в который вошли записи об изданиях конца прошлого и начала этого года.
Поскольку в БЕН РАН уже реализован одновременный поиск в разных каталогах по протоколу Z39.50 [1], в первую очередь, естественно, возникло решение подключить и новую базу данных по этому протоколу. Тем более, что обработка и вывод данных в разных MARC-форматах является одной из возможностей и одновременно требованием протокола Z39.50, и первоначально он и был разработан для поиска в базах данных MARC-форматов [2].
В каталогах БЕН РАН одновременный поиск информации по протоколу Z39.50 реализован с помощью Z-сервера ZooPARK [3], который разработан в ОИГГМ СО РАН (Новосибирск) и был передан в БЕН РАН несколько лет назад в рамках проекта LibWeb в виде исполняемых модулей для платформы Windows.
Этот сервер разработан, в первую очередь, для работы с базами данных СУБД  ИРБИС. Но он может  взаимодействовать и с внешними базами данных либо через динамически подключаемый программный модуль, либо через внутренний сервер Zebra, который входит в состав сервера ZooPARK, разработанного на основе пакета Zebra/YAZ компании IndexData (http://www.indexdata.dk). Сервер Zebra умеет работать с данными нескольких типов, в том числе с файлами записей в формате структуры ISO 2709 (которой соответствуют форматы семейства MARC), организуя индексацию и поиск в базах данных такого формата. Поэтому для подключения новой базы данных был выбран именно этот метод, реализация которого вылилась в формирование и настройку ряда файлов-таблиц сервера, в том числе для обработки формата MARC21.
При подключении базы данных Springer индексация первого экспортного файла прошла без проблем. Но при индексации второго возникла непредвиденная ошибка, источник которой пришлось выяснять. Оказалось, что указана неверная длина записи, которая содержала в названии китайские иероглифы. Поэтому была сделана попытка исправить неверную запись, чтобы использовать всю полученную базу данных. Однако неожиданно возникли осложнения со стандартными средствами корректировки файлов, доступными в системе Windows. Редактор Notepad при сохранении в кодировке UTF-8 вставляет в начало файла три служебных байта (Byte Order Mark), которые невозможно убрать, а при сохранении в кодировке ANSI портит весь файл. Редактор Wordpad всегда ищет символ 0x0A (новая строка) и перед ним автоматически вставляет символ 0x0D, тем самым искажая длину записи с этими кодами.
В результате удалось скорректировать второй файл с помощью редактора Wordpad, исправив неверную длину записи с китайскими иероглифами и заменив в данном файле все найденные 0x0A на пробелы. После этого вся индексация прошла успешно, и теперь сервер благополучно обеспечивает быстрый поиск во всей базе данных Springer, причем с выводом результатов поиска как в текстовом, так и в MARC-форматах, например:

Запись 1 из 2 
010    $a 9780387396200
200    $a Scanning Microscopy for Nanotechnology
          $e Techniques and Applications /
210    $a New York, NY :  $c Springer Science+Business Media, LLC,  $d 2007.
700    $a Zhou, Weilie.
701    $a Wang, Zhong Lin.
712    $a SpringerLink (Online service)
856    $u http://dx.doi.org/10.1007/978-0-387-39620-0

Запись 2 из 2 
010    $a 9781402080067
200    $a Handbook of Microscopy for Nanotechnology
210    $a Boston, MA :  $c Kluwer Academic Publishers,  $d 2005.
700    $a Yao, Nan.
701    $a Wang, Zhong Lin.
712    $a SpringerLink (Online service)
856    $u http://dx.doi.org/10.1007/1-4020-8006-9

Запись 1 из 2 
ISBN:      9780387396200
Author:      Zhou, Weilie.
Title:
t1: Scanning Microscopy for Nanotechnology
: [electronic resource] :
t2: Techniques and Applications /
: edited by Weilie Zhou, Zhong Lin Wang.
Publication:
Place: New York, NY :
Publisher: Springer Science+Business Media, LLC,
Date: 2007.
Authors:     Wang, Zhong Lin.
Corporate name:     SpringerLink (Online service)
URL:      http://dx.doi.org/10.1007/978-0-387-39620-0

Запись 2 из 2 
ISBN:      9781402080067
Author:     Yao, Nan.
Title:
t1: Handbook of Microscopy for Nanotechnology
: [electronic resource] /
: edited by Nan Yao, Zhong Lin Wang.
Publication:
Place: Boston, MA :
Publisher: Kluwer Academic Publishers,
Date: 2005.
Authors:      Wang, Zhong Lin.
Corporate name:      SpringerLink (Online service)
URL:      http://dx.doi.org/10.1007/1-4020-8006-9

Здесь приведены два вида вывода библиографических записей, найденных по запросу фрагмента названия (Micro for Nano) с усечением: в формате RUSMARC и в текстовом формате. Особо необходимо отметить, что сервер Zebra позволяет проводить поиск не только по отдельным словам, но также и по целым фрагментам фраз, заданным в одном поле и даже в усечённом виде.
В выходных записях всегда присутствует поле URL, которое указывает адрес полного текста найденного электронного издания. Этот адрес можно скопировать в браузер и посмотреть искомый текст, разумеется, если пользователь работает с зарегистрированного в издательстве Springer IP-адреса.
Необходимо отметить, что, несмотря на успешное включение базы данных Springer в систему каталогов БЕН РАН, при работе с этой базой возникает проблема из-за ее кодировки UTF-8. В результатах поиска в ней символы расширенного ряда отражаются неверно и иногда портят конвертирование в MARC-форматы. Это происходит из-за того, что сервер ZooPARK, а также каталоги и страницы сайта БЕН РАН используют кодировку Win-1251. Хотя сервер ZooPARK постоянно развивается, его последняя версия обеспечивает поддержку различных кодовых таблиц (UTF-8, DOS, WIN, ISO, MAC) только для кириллических текстов [3], что не подходит для принципиально многоязычного репертуара каталогов БЕН РАН.

Поэтому на сегодняшний день желательно было по возможности снять эту проблему в имеющихся условиях.
Во-первых, была сделана попытка подобрать подходящую кодировку среди возможностей данного Z-сервера. Хотя в описании сервера ZooPARK это не указано, оказалось, что сервер Zebra имеет 73 варианта кодировок внешних баз данных. Из них лишь одна позволила выдавать все результаты поиска в базе данных Springer без сбоев при конвертировании, однако символы расширенного ряда при этом все же искажались.
Во-вторых, чтобы уменьшить количество таких символов в сформированной базе, а также для наглядности и правильной индексации слов, пришлось выявить в исходной базе данных Springer многочисленные и разнообразные разделительные символы UTF-8 и заменить их подходящими аналогами основного ряда символов, разумеется, не меняя в базе длину каждого из таких символов.
К этим символам, кроме уже указанного выше символа новой строки 0x0A, относятся несколько видов кавычек, два вида тире (en dash, em dash), два вида апострофов и другие экзотические символы [4], например:

Dagger (†) - типографский знак сноски,
Bullet (•) - декоративный абзацевый символ,
Middle Dot (·), который, согласно ГОСТ 7.28-2002, используется лишь в некоторых каталанских словах.

В данной базе таких символов оказалось немало, что видно из приведенных примеров:

Alexandrov, †A.D.
Publisher: Springer Berlin · Heidelberg,
Microlithography · Molecular Imprinting
Modelle • Strukturen • Funktionen
Arctic–Subarctic Ocean Fluxes
‚Kohlen ‘—  eine Stadtstudie zur Zivilgesellschaft
Why ‘What Works’ Doesn't Work
Critical “Development” Reader
„Modernisierung“ von Geschlechter
Bergey’s Manual® of Systematic Bacteriology
Using Mathcad®, Matlab®, Mathematica®, and Maple®

В результате проведенной работы к каталогам БЕН РАН добавился новый каталог электронных книг издательства Springer по естественным наукам с довольно удобными средствами поиска на сервере БЕН РАН. Обращение к каталогу осуществляется с основной страницы сайта Библиотеки (http://www.benran.ru) путем перехода по ссылке «Распределенный каталог (Z39.50)», выбора «Каталог электронных книг» и нажатия кнопки «сформулировать запрос».
Работа по усовершенствованию средств, предоставляемых пользователям для работы с каталогами БЕН РАН, будет продолжаться и в дальнейшем, возможно, с использованием кодировки UTF-8. 

Литература

  1. Каллистратова О.Д. Z39.50 и каталог журналов БЕН РАН // Новые технологии в информационном обеспечении науки: Сборник научных трудов / Каленов Н.Е. (ред). - М.: Биоинформсервис, 2001. - С. 110-114
  2. Каллистратова О.Д. Конвертирование библиографических описаний в формат RUSMARC // Современные технологии в информационном обеспечении науки: Сборник научных трудов / Каленов Н.Е. (ред). - М.: Научный мир, 2003. - С. 254-257
  3. http://z3950.uiggm.nsc.ru:210/ZooPARK/index.htm
  4. http://www.indopedia.org/Hyphenation.html