Введение

Протокол связи прикладного уровня Z39.50 — это международный стандарт клиент-серверного протокола связи прикладного уровня для поиска и извлечения информации из баз данных по компьютерной сети TCP/IP, разработанный и поддерживаемый Библиотекой Конгресса. Он соответствует стандартам ANSI/NISO Z39.50 и ISO 23950. Z39.50 широко используется в библиотечной сфере для поиска и заказа ресурсов между библиотеками, часто интегрируется в комплексные библиотечные системы и персональное библиографическое программное обеспечение, а также социальные сети, такие как LibraryThing. Разработка протокола Z39.50 началась в 1970-х годах и привела к выпуску последовательных версий в 1988, 1992, 1995 и 2003 годах. Язык контекстных запросов (ранее известный как язык общих запросов) основан на семантике Z39.50.

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

Протокол поддерживает поиск, извлечение, сортировку и просмотр. Поисковые запросы содержат атрибуты, как правило, из набора атрибутов bib 1, который определяет шесть атрибутов для указания поиска информации на серверном компьютере: назначение, отношение, позиция, структура, усечение, полнота. Синтаксис Z39.50 позволяет создавать очень сложные запросы. На практике функциональная сложность ограничена неоднородностью реализаций, выполненных разработчиками и коммерческими поставщиками. Синтаксис Z39.50 абстрагирован от базовой структуры базы данных. Например, если клиент указывает поиск автора с использованием атрибута 1003, сервер должен определить, как сопоставить этот поиск со своими индексами. Это позволяет формулировать запросы Z39.50, не зная ничего о целевой базе данных, но также означает, что результаты одного и того же запроса могут существенно различаться на разных серверах. Один сервер может иметь индекс авторов, а другой может использовать свой индекс личных имен, независимо от того, являются ли они авторами или нет. Третий сервер может не иметь индекса имен и использовать индекс ключевых слов, а четвертый может не иметь подходящего индекса и вернуть ошибку. Попытка устранить эту непоследовательность – Bath Profile (названный в честь города Бат, Англия, где рабочая группа впервые встретилась в 1999 году). Этот документ строго определяет синтаксис поиска, который следует использовать для распространенных библиографических запросов, и ожидаемый ответ серверов, соответствующих требованиям Bath Profile. Внедрение Bath Profile происходит медленно, но постепенно улучшает ситуацию с Z39.50. Поддержка Bath Profile осуществляется Библиотекой и Архивами Канады.

Информация о брандмауэре

Регистрированный номер сетевого порта для Z39.50 — 210. Хотя большинство серверов используют именно этот порт, во всем мире существует несколько десятков других портов, используемых для Z39.50 (например, 2100, 2200, 2210, 2213, 3520, или в одном случае порты 2101 и выше для разных баз данных).