Z39.50

Z39.50 — клиент-серверный протокол для поиска и получения информации с удалённых библиографических баз данных. Стандартизован как ANSI/NISO Z39.50 и ISO-23950. Основное агентство, которое обслуживает стандарт, — библиотека Конгресса.

Z39.50 широко применим в библиотечных кругах и часто включается в автоматизированные библиотечные информационные системы и персональные системы управления библиографической информацией. Межбиблиотечные поисковые каталоги для межбиблиотечного абонемента часто реализованы через запросы Z39.50.

Протокол используется с 1970-х годов, обновлённые версии выходили в 1988, 1992, 1995 и 2003 годах. На семантике протокола Z39.50 основан универсальный язык запросов Contextual Query Language (CQL, ранее — Common Query Language)[1].

Z39.50 наиболее часто используется для запросов к библиографическим базам данных, представленным в формате MARC, поэтому эти два стандарта обычно связывают между собой. Но, на самом деле, Z39.50 может использоваться для доступа к данным, представленным и в других форматах.

Синтаксис поиска

Протокол Z39.50 поддерживает ряд функций, в том числе поиск, выборку, сортировку и просмотр. Поисковые запросы формулируются с помощью атрибутов, как правило, из набора BIB-1, включающего в себя шесть атрибутов, использующихся при поиске информации на сервере: использование, отношение, положение, структура, усечение, полнота. Синтаксис протокола Z39.50 позволяет формулировать очень сложные запросы.

На практике, однако, функциональность ограничивается разработчиками и коммерческими поставщиками конечных продуктов. Синтаксис Z39.50 не привязан к структуре конкретной базы данных; например, если клиент запрашивает поиск автора (использование атрибута 1003), то запрос направляется к серверу, который выполняет его, используя доступные ему индексы. Это позволяет формулировать без необходимости знать что-либо о целевой базе данных; но это также означает, что результаты одного и того же запроса могут варьироваться в широких пределах между различными серверами. Один сервер может обратиться к индексу автора; другой, например, к индексу личных имён, вне зависимости от того, являются ли они авторами; третий может не иметь индекса названия и перейти к поиску по индексу ключевых слов; а четвёртый может вообще возвращать ошибку.

Попытка исправить эту ситуацию была предпринята с помощью введения бат-профиля (по названию города Бат в Англии, где впервые встретилась рабочая группа в 1999 году). Этот документ жестко определяет точный синтаксис поиска для типичных библиографических запросов и ожидаемое поведение бат-совместимых серверов в ответ на эти запросы. Работа над бат-профилем продвигается медленно, но с её помощью протокол Z39.50 постепенно совершенствуется. Бат-профиль поддерживают библиотеки и архивы Канады.

Дальнейшее развитие

Постольку, поскольку Z39.50 был разработан в 1970-е годы, он не очень хорошо сочетается с современной инфраструктурой веб.

Библиотекой Конгресса США была разработана пара протоколов SRU/SRW (Search/Retrieve via URL и Search/Retrieve Web service), которые позволяют выполнять запросы на Contextual Query Language, но использовать HTTP в качестве транспорта. Они призваны заменить собой Z39.50, но, в настоящее время, сосуществуют с ним. SRU — это REST-протокол, SRW использует технологию SOAP. Оба протокола работают со структурами данных в формате XML и являются функционально идентичными.

Примечания

  1. CQL: the Contextual Query Language: Specifications  (неопр.). www.loc.gov. Дата обращения: 14 января 2019. Архивировано 31 июля 2008 года. SRU: Search/Retrieval via URL, Standards, Library of Congress

Ссылки

  • Обслуживающее агентство Z39.50  (неопр.). www.loc.gov. Дата обращения: 14 января 2019.
  • Стандарт Z39.50 (pdf)  (неопр.). www.loc.gov. Дата обращения: 14 января 2019.(англ.)
  • Bath Profile  (неопр.). web.archive.org. Дата обращения: 14 января 2019.
  • Обслуживающее агентство SRU/SRW  (неопр.). www.loc.gov. Дата обращения: 14 января 2019.
  • Таблица соответствия пользовательских атрибутов протокола Z39.50-1995 и полей формата (UNIMARC)  (рус.). www.rba.ru. Дата обращения: 14 января 2019. Архивировано из оригинала 9 октября 2006 года.(рус.)
  • Минимальные требования к службе Z39.50  (рус.). consortium.ruslan.ru. Дата обращения: 14 января 2019.(рус.)
  • «Z39.50 for Dummies»  (неопр.). www.indexdata.com. Дата обращения: 14 января 2019. Архивировано из оригинала 15 февраля 2011 года.(англ.)
  • Первоначальная версия Бат-профиля  (неопр.). www.ukoln.ac.uk. Дата обращения: 14 января 2019.
  • Бат-профиль версия 2.0  (неопр.). zing.z3950.org. Дата обращения: 14 января 2019.

Программное обеспечение

  • Объектно-ориентированная модель Z39.50
  • Инструментарий YAZ  (неопр.). www.indexdata.dk. Дата обращения: 14 января 2019.
  • Инструментарий PHP/YAZ  (неопр.). indexdata.dk. Дата обращения: 14 января 2019.
  • JZKit  (неопр.). web.archive.org. Дата обращения: 14 января 2019.
  • Mercury Z39.50 Client  (неопр.). web.archive.org. Дата обращения: 14 января 2019.

Список серверов Z39.50

  • Каталог серверов Z39.50 (Index Data)
  • Российские серверы Z39.50  (рус.). z3950.ruslan.ru. Дата обращения: 14 января 2019.,
  • Каталог серверов Z39.50  (неопр.). www.webclarity.info. Дата обращения: 14 января 2019. (WebClarity Software Inc)
  • Реестр Z-Brary серверов Z39.50 Directory of Z39.50 and SRU Targets  (неопр.). www.z-brary.com Реестр Z-Brary серверов Z39.50. Дата обращения: 14 января 2019.
  • Каталог польских Z39-50