맨위로가기

Z39.50

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

Z39.50은 검색, 조회, 정렬, 탐색 등의 기능을 지원하는 프로토콜로, 주로 정보 검색에 사용된다. 이 프로토콜은 복잡한 쿼리를 허용하지만, 구현의 일관성 부족으로 인해 검색 결과가 서버에 따라 다를 수 있다는 단점이 있다. 이러한 문제를 해결하기 위해 바스 프로파일이 개발되었으며, Z39.50을 웹 환경에 맞게 개선하려는 노력의 일환으로 SRU/SRW와 같은 후속 기술이 제안되었다. Z39.50은 210번 포트를 사용하며, 관련 소프트웨어로는 ZOOM, YAZ Toolkit, JZKit 등이 있다.

더 읽어볼만한 페이지

  • 도서관 자동화 - 온라인 컴퓨터 도서관 센터
    온라인 컴퓨터 도서관 센터(OCLC)는 도서관, 교육 기관, 연구 기관 등에 정보 서비스를 제공하는 비영리 협력 단체로서, WorldCat 구축 및 유지 관리, 듀이 십진 분류법 시스템 소유 등을 통해 도서관 자동화와 정보 접근성 향상에 기여하며 위키미디어 재단과의 협력 등으로 정보 공유 환경 변화에 대응하고 있다.
  • 도서관 자동화 - 코하 (소프트웨어)
    코하는 웹 기반 통합 도서관 시스템으로, SQL 데이터베이스를 백엔드로 사용하고 MARC 표준에 카탈로그 데이터를 저장하며 다양한 기능을 제공한다.
  • 미국 의회도서관 - 미국국립과학원
    미국 국립 과학원은 1863년 링컨 대통령의 승인으로 설립되어 정부에 과학 기술 자문을 제공하고, 과학 연구 장려 및 학술 활동 지원, 학술지 발행, 연례 회의 개최, 과학자 시상 등의 활동을 하는 미국의 과학 아카데미이다.
  • 미국 의회도서관 - 미국 국립영화등기부
    미국 국립영화등기부는 미국 의회도서관이 국립 영화 보존법에 따라 문화적, 역사적, 미학적으로 중요한 영화를 보존하기 위해 설립되었으며, 매년 25편의 영화를 등재하여 미국 영화 유산을 보존하고 알리는 데 기여하며, 개봉 후 10년이 지난 영화에 등재 자격이 주어진다.
  • 응용 계층 프로토콜 - 실시간 전송 프로토콜
    실시간 전송 프로토콜(RTP)은 스트리밍 미디어의 실시간 전송을 위해 설계된 프로토콜로, IP 네트워크에서 오디오/비디오 전송의 표준으로 사용되며, 멀티미디어 데이터 전송, 타임스탬프, 순서 제어, QoS 피드백 등을 제공한다.
  • 응용 계층 프로토콜 - D-Bus
    D-Bus는 2002년에 시작된 프로세스 간 통신 시스템으로, 시스템 버스와 세션 버스를 통해 정보 공유, 모듈성, 권한 격리를 제공하며, 일대일 요청-응답 및 발행/구독 통신 방식을 지원한다.
Z39.50

2. 검색 문법

Z39.50 프로토콜은 검색, 조회, 정렬, 탐색 등 다양한 정보 검색 관련 기능을 지원한다.[6] 검색 요청은 '속성'(attribute)을 조합하여 표현하는데, 일반적으로 서버 컴퓨터에서의 정보 검색을 위해 6가지 특성(사용(use), 관계(relation), 위치(position), 구조(structure), 잘림(truncation), 완전성(completeness))을 정의하는 'bib-1' 속성 집합이 주로 사용된다. Z39.50의 문법은 이러한 속성들을 이용하여 매우 복잡한 쿼리 구성도 가능하도록 설계되었다.

2. 1. 검색 문법의 한계

Z39.50은 검색, 조회, 정렬, 탐색 등 다양한 기능을 지원하며, 문법적으로 매우 복잡한 쿼리까지 허용한다. 검색 시에는 주로 서버 컴퓨터의 정보 검색에 사용되는 6가지 특성(사용, 관계, 위치, 구조, 잘림, 완전성)을 정의하는 bib-1 속성 집합이 활용된다.

그러나 실제 환경에서는 기능적 복잡성이 개발자나 상업 벤더들의 일정하지 않은 구현 수준에 의해 제한받는 경우가 많다. Z39.50의 문법은 특정 데이터베이스의 구조로부터 추상화되어 설계되었다. 예를 들어, 클라이언트가 저자 검색(Use 속성 1003)을 지정하면, 서버는 이 요청을 내부적으로 어떤 인덱스(색인)에 연결하여 처리할지를 스스로 결정한다.

이러한 방식은 클라이언트가 대상 데이터베이스의 세부 구조를 알지 못해도 Z39.50 쿼리를 구성할 수 있다는 장점이 있다. 하지만 이는 동일한 쿼리를 여러 서버에 보냈을 때 각기 다른 결과가 반환될 수 있음을 의미하기도 한다. 어떤 서버는 저자명만 모아둔 인덱스를 가지고 있을 수 있고, 다른 서버는 저자인지 여부와 관계없이 인명 전체를 다루는 인덱스를 사용할 수도 있다. 또 다른 서버는 적절한 이름 인덱스가 없어 키워드 인덱스 검색으로 대체하거나, 아예 관련 인덱스가 없어 오류를 반환할 수도 있다.[7]

이러한 서버 간의 불일치 문제를 해결하려는 시도 중 하나로 배스 프로파일(Bath Profile)이 제안되었다. 이 명칭은 관련 작업 그룹이 1999년 영국 배스(Bath)에서 처음 모임을 가진 것에서 유래했다. 배스 프로파일은 자주 사용되는 서지 검색(도서 정보 검색 등)에 사용할 검색 구문과, 이 프로파일을 준수하는 서버가 해당 요청에 대해 어떻게 응답해야 하는지를 명확하게 규정한다. 배스 프로파일의 현장 적용은 점진적으로 이루어지고 있으며, Z39.50 환경을 개선하는 데 기여하고 있다. 현재 배스 프로파일은 캐나다 국립 도서관 및 기록 보관소에서 관리하고 있다.

2. 2. 배스 프로파일

Z39.50 프로토콜은 다양한 기능을 지원하지만, 실제 구현에서는 개발자나 상용 벤더마다 차이가 있어 일관성이 부족한 문제가 있었다. 예를 들어, 동일한 저자 검색 요청(`Use` 속성 1003 사용)이라도 서버마다 사용하는 인덱스(저자 인덱스, 개인명 인덱스, 키워드 인덱스 등)가 다르거나, 아예 지원하지 않아 오류를 반환하는 경우가 발생할 수 있었다.[7]

이러한 Z39.50 구현 간의 불일치 문제를 해결하기 위한 시도로 배스 프로파일이 제안되었다. 이 명칭은 관련 검토 작업 그룹이 1999년 영국의 도시 배스(Bath)에서 처음 회의를 가진 것에서 유래했다.

배스 프로파일은 자주 사용되는 일반적인 서지 검색에 필요한 검색 구문 형식과, 이 프로파일을 지원하는 서버가 해당 검색 요청에 대해 어떻게 응답해야 하는지에 대한 예상 동작을 명확하게 규정한다. 이를 통해 Z39.50 기반 시스템 간의 상호 운용성을 높이는 것을 목표로 한다.

배스 프로파일의 실제 적용 및 구현은 점진적으로 이루어지고 있지만, Z39.50 환경의 약점을 보완하고 개선하는 데 기여하고 있다는 평가를 받는다. (2018년 5월 기준 정보) 현재 배스 프로파일은 캐나다 국립 도서관 및 기록 보관소에서 관리하고 있다.

3. 현대화 노력

Z39.50은 이전에 개발된 기술이므로, 변화하는 정보 환경과 웹 기술에 더 잘 맞도록 이를 개선하고 현대화하려는 여러 시도가 있었다. 이러한 노력은 주로 ZING (Z39.50 International: Next Generation)이라는 이름 아래 다양한 방식으로 추진되었다.

Z39.50 프로토콜 자체의 문제점 중 하나는 구현 방식에 따라 동일한 검색 요청에도 서버마다 다른 결과가 반환될 수 있다는 점이었다.[7] 이러한 상호 운용성 문제를 해결하기 위한 시도로 https://web.archive.org/web/20140301021505/http://www.collectionscanada.gc.ca/bath/bp-current.htm 배스 프로파일(Bath Profile)이 제안되었다. 이 프로파일은 1999년 영국 배스에서 열린 워킹 그룹 회의에서 유래한 명칭으로, 자주 사용되는 서지 검색에서의 검색 형식과 서버의 예상 동작을 명확히 규정하여 Z39.50의 약점을 보완하고자 했다. 현재 배스 프로파일은 캐나다 국립 도서관 및 기록 보관소에서 관리하고 있다.

ZING 그룹의 노력은 Z39.50을 HTTP와 같은 현대 웹 기술과 통합하는 새로운 방향을 제시했으며, 그 결과 SRU/SRW와 같은 후속 프로토콜이 개발되었다. 또한, OAI-PMH나 SPARQL과 같은 다른 접근 방식들도 Z39.50의 대안으로 고려되고 있다.[3] 이러한 새로운 기술들은 기존 Z39.50보다 개발자의 진입 장벽을 낮추는 것을 목표로 한다.[2]

3. 1. SRU/SRW

Z39.50은 WWW 출현 이전의 기술이며, 웹 보급 이후의 보다 현대적인 환경에 맞게 변경하려는 시도들이 ZING (Z39.50 International: Next Generation)이라는 이름 아래 진행되었다. ZING의 가장 중요한 제안은 Z39.50의 후속 기술로 개발된 SRU(Search/Retrieve via URL)와 SRW(Search/Retrieve Web service)이다.

이 두 사양은 Z39.50 통신 프로토콜 대신 HTTP를 기반으로 하며, 기존 Z39.50의 검색 요청 구조 등의 장점을 계승하고자 한다. SRU는 REST 원칙을 따르며, 검색 요청을 URL의 쿼리 문자열(query-string)로 표현한다. 반면, SRW는 SOAP를 사용하여 XML 기반의 검색 요청을 전송한다. 두 프로토콜 모두 서버의 검색 결과 응답은 XML 형식을 사용한다.

이러한 새로운 프로토콜들은 널리 사용되는 웹 서비스 도구를 활용할 수 있어, 상대적으로 규모가 작은 도서관 소프트웨어 시장에서도 적용이 용이하며, 기존 Z39.50 프로토콜에 비해 개발자의 진입 장벽을 낮추는 효과가 기대된다.[2] Z39.50 사양에 기반한 검색식 기술 언어인 CQL도 이와 함께 개발되었다. (CQL은 SRU 버전 1.1에서는 Common Query Language를 의미했지만, 버전 1.2에서는 Contextual Query Language로 명칭이 변경되었다.)

ZING 외의 대안적인 접근 방식으로는 다음이 있다.[3]

  • 오픈 아카이브 이니셔티브 OAI-PMH
  • SPARQL

3. 2. 기타 대안

Z39.50은 이전에 개발된 기술로, 변화하는 정보 환경에 맞춰 이를 개선하려는 여러 시도가 진행되고 있다. 이러한 노력은 ZING (Z39.50 International: Next Generation)이라는 이름 아래 다양한 방식으로 추진되었다.

Z39.50의 주요 후속 기술로는 SRU(Search/Retrieve via URL, URL을 통한 검색)와 SRW(Search/Retrieve Web service, 검색 웹 서비스)가 있다. 이 두 프로토콜은 기존 Z39.50의 통신 방식을 HTTP로 대체하면서도, Z39.50의 장점인 쿼리 구문의 유연성은 유지하고자 한다. SRU는 REST 방식을 기반으로 하며, URL의 쿼리 문자열을 통해 검색 요청을 표현한다. 반면 SRW는 SOAP 프로토콜을 사용하여 XML 형식으로 검색 요청을 주고받는다. 두 프로토콜 모두 검색 결과는 XML 형식으로 반환하는 것을 기본으로 한다.

이러한 새로운 프로토콜들은 기존 Z39.50에 비해 개발자들이 접근하기 훨씬 용이하다는 장점이 있다.[2] 이는 도서관과 같은 특정 분야의 소프트웨어 시장이 보다 광범위한 웹 서비스 개발 도구의 혜택을 누릴 수 있게 함을 의미한다. SRU/SRW와 함께 검색 질의 언어인 CQL(Contextual Query Language)도 개발되었다.

Z39.50 외에 고려될 수 있는 다른 대안 기술들은 다음과 같다.[3]

  • 오픈 아카이브 이니셔티브 OAI-PMH (Protocol for Metadata Harvesting)
  • SPARQL

4. 방화벽 정보

Z39.50의 등록된 포트 번호는 210번이다. 대부분의 서버가 이 포트를 사용하지만, 전 세계적으로 Z39.50에서 사용되는 다른 포트 번호도 수십 개가 있다(예: 2100, 2200, 2210, 2213, 3520, 또는 특정 데이터베이스에 따라 2101번 이상의 포트).

5. 관련 소프트웨어

참조

[1] 문서 CQL: the Contextual Query Language: Specifications https://www.loc.gov/[...] SRU: Search/Retrieval via URL, Standards, Library of Congress
[2] 웹사이트 The Z39.50 Information Retrieval Standard: Part I: A Strategic View of Its Past, Present and Future http://www.dlib.org/[...] 2020-01-22
[3] 웹사이트 Linked Data in Libraries Metadata Retrieval and Harvesting https://pantherfile.[...]
[4] 웹사이트 Library of Congress Z39.50 Firewall Information https://www.loc.gov/[...]
[5] 웹사이트 IANA Port and Protocol Registry https://www.iana.org[...]
[6] 간행물 The Z39.50 Information Retrieval Standard: Part I: A Strategic View of Its Past, Present and Future http://www.dlib.org/[...] 1997-04
[7] 간행물 Z39.50による書誌データ検索システムの構築: Dublin Coreを共通スキーマとして http://www.dl.slis.t[...] 1999-11-30
[8] 문서 CQL: the Contextual Query Language: Specifications http://www.loc.gov/s[...] SRU: Search/Retrieval via URL, Standards, Library of Congress



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com