4. 역통 연계를 위한 oai-pmh 적용 상세설명서

28
4. 역역 역역역 역역 OAI-PMH 역역 역역역역역 2006.05 2007.02 역역역역역역 역역역역역역

Upload: delta

Post on 15-Jan-2016

70 views

Category:

Documents


0 download

DESCRIPTION

4. 역통 연계를 위한 OAI-PMH 적용 상세설명서. 2006.05 2007.02. 한국역사분야 종합정보센터. 목 차. Ⅰ. 한국역사정보통합시스템 1. 시스템 소개 3 2. 역통연계 4 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

4. 역통 연계를 위한 OAI-PMH 적용 상세설명서

2006.052007.02

한국역사분야 종합정보센터

Page 2: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

목 차

Ⅰ. 한국역사정보통합시스템

1. 시스템 소개 3 2. 역통연계 4

Ⅱ. KHCollection

1. 개요 11 2. 프로그램 구성도 11

3. OAI 12 4. KHCollection – SP 14

5. KHCollection – DP 17

[ 첨부 ] 역통 통합검색서비스 연계 샘플 XML

[ 첨부 ] KHCollection 적용 OAI 샘플 XML

Page 3: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 3 -

Ⅰ. 한국역사정보통합시스템1. 시스템 소개 한국역사정보통합시스템은 한국역사분야 종합정보센터 내 역통시스템과 전문정보센터 간의 연계를 위하여 메타데이터 유통 프로토콜인 OAI-PMH(Open Archieves Initiative Protocol for Metadata Harvesting) 을 사용하였다 . 또한 역통은 수집된 통합메타데이터 중 지식사업으로 구축된 메타데이터를 국가지식포털에 제공하고 있다 .

민간포털

<그림 > 한국역사정보통합시스템 구성도

종합정보센터한국역사분야 종합정보센터

검색서버

종합정보센터전문정보센터

DB 서버

WEB 서버

메타 DB

경상대학교 문천각 국가보훈처 국립문화재연구소 국사편찬위원회 독립기념관 동국대학교 도서관 명지대학교 국제한국학연구소 민족문화추진회 민주화운동기념사업회 서울대학교 규장각 성균관대학교 존경각 전북대학교 박물관 전쟁기념관 한국국학진흥원 한국여성개발원 한국학중앙연구원 국립중앙도서관

경상대학교 문천각 국가보훈처 국립문화재연구소 국사편찬위원회 독립기념관 동국대학교 도서관 명지대학교 국제한국학연구소 민족문화추진회 민주화운동기념사업회 서울대학교 규장각 성균관대학교 존경각 전북대학교 박물관 전쟁기념관 한국국학진흥원 한국여성개발원 한국학중앙연구원 국립중앙도서관

역통웹서버

KHCollection-SP연계 프로그램

KHCollection-DP국가지식정보통합검색시스템

HTTP Get/Post 기반 OAI-PMH 2.0

Page 4: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 4 -

2. 역통연계 (1) 역통연계 업무 흐름

<그림 > 역통연계 업무 흐름도

역통과 전문정보센터 간에 원활한 연계를 위하여 전문정보센터는 역통연계자료를 작성하여 종합정보센터에 제출하고 원문에 대한 메타데이터를 메타 DB에 저장 관리하며 , 최종 원문이 전문정보센터에서 서비스될 수 있도록 한다 . 또한 역통은 역통연계자료를 기반으로 스케줄링에 의한 통합메타데이터 수집 및 구축 , 통합디렉토리 구성 , 통합검색서비스 등의 업무를 수행한다 .

종합정보센터 전문정보센터

전문정보센터협의회

역통연계자료 변경 요청역통연계자료 검토

역통연계자료 작성 및 제출

통합디렉토리 구성 및매핑 정보 구성

역통 연계 스케줄링

메타데이터 수집

메타데이터 오류 검토

역통연계자료 승인

메타데이터 추출

신규 연계 대상 데이터베이스 발생

메타데이터 관리 및 전송 승인 오류 발생

프로그램 또는 데이터 수정

메타 DB

원문 데이터 변경

Page 5: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 5 -

(2) 메타데이터 수집 및 구축 절차

단계별 작업 항목 세부내용 업무분담연계협의회 및 기술협의회 연계지침 확정 , 표준안 검토 , 도입 기술 검토 ,

연계협의회 운영 일정 및 향후 정책 방향 협의역통 , 전문센터

역통연계자료 작성 및 역통제출

역통연계 대상 데이터베이스 , 통합디렉토리 매핑 , 개발 관련 정보 작성

전문센터

연계기관 개별 미팅 역통연계자료 검토 역통 , 전문센터

통합디렉토리 작성 및 배포 역통연계자료 내용을 기반으로 통합디렉토리 매핑 테이블 구성

역통

통합디렉토리 검토 및 승인 이의사항 발생 시 역통과 협의 전문센터개발자간 회의 KHCollection, 추출기 등 프로그램 관련

세부회의역통 , 전문센터

역통연계 프로그램 개발 역통 , 전문센터

매타데이터 작성 협의 전문정보센터 연계대상 데이터베이스 별 ERD, 테이블상세명세서 제출

전문센터

메타데이터 매핑 협의 역통 , 전문센터

KHCollection 배포 및 설치 KHCollection Data Provider, 메타 추출기등 프로그램 설치

역통

KHCollection(DP) 운영 및 관리 전문센터

메타데이터 추출 및 관리 메타데이터 검증 및 승인 전문센터메타데이터 수집 및 구축 역통

통합검색 및 디렉토리 서비스 , 국통검 연계

역통

민간포털 시스템 연계 전문정보센터 승인 후 역통에서 제공 역통

원문정보 서비스 유지 관리 역통에서 제어권 이전 받아 전문정보센터에서 서비스

전문센터

Page 6: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 6 -

(3) 예외사항에 따른 처리

예외사항이라 함은 전문정보센터 또는 역통의 시스템 장애 또는 대량의 메타데이터 발생등과 같이 KHCollection 을 통한 Online 연계가 불가능한 경우를 말한다 .

○ 소량의 메타데이터 역통에 긴급하게 반영해야 하는 경우역통

관리자에게 긴급 처리

요청

역통 관리시스템에 의한 수정

역통 웹서비스 확인

전문정보센터

메타데이터 수정

KHCollection 실행

• 전문정보센터는 메타 DB를 갱신한 후 역통 관리자에게 긴급 변경 요청을 유선 또는 이메일을 통하여 요청하여야 한다 . 이때 메타데이터 제공 방식을 메일을 통한 제공인지 , KHCollection 방법인지를 알려 주어야 한다 .

• 역통 관리자는 이메일등을 통한 메타데이터 제공인 경우는 역통 내 관리시스템을 이용 역통 통합메타 DB를 갱신한다 .

• KHCollection 통한 온라인 갱신인 경우 역통 관리자가 KHCollection-SP 를 실행하여 메타데이터 수집 , 통합메타 DB에 반영한다 .

○ 대량의 메타데이터 역통에 긴급하게 반영해야 하는 경우

메타데이터XML 추출

역통 관리시스템에 의한 수정

전문정보센터

메타데이터 수정

역통 내 파일서버 FTP

전송

역통 관리자에게 긴급 처리

요청

• 돌발 변수로 인하여 KHCollection 을 사용할 수 없게 되었을 경우 등 예외적인 조건에서만 사용한다 .

• 전문정보센터는 메타데이터 추출기를 사용 , XML 파일로 추출한 후 역통 내 파일서버에 FTP 전송한다 . 이때 전문정보센터는 역통 내 파일서버의 사용자 ID 및 패스워드를 사전에 신청하여야 하며 종합정보센터에 기술 지원을 요청할 수 있다 .

Page 7: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 7 -

(4) 메타데이터 작성

○ 통합메타데이터 요소 역통 내 통합메타데이터 DB 는 2004 년도 역사분야 연계협의회에서 권고한 11개 주요소와 각각의 하위 요소를 기반으로 운영되고 있으며 , 전문정보센터는 메타 DB에 필수요소가 반영되어 있어야 하며 선택 요소는 자료의 특성 및 역통 내 서비스 시스템 운영 정책을 고려하여 결정하여야 한다 .

○ 역통 통합메타데이터 서비스 정책

- 통합디렉토리 서비스 정책

역통분류코드 역통분류명

디렉토리 서비스 시 출력 요소

unit 1 unit 2

KH_01 고도서 서명 , 저편자 , 날짜 , 기관명 서명 , 기사명 , 저편자 , 날짜 기관명

KH_02 고문서 문서명 , ( 작성자 | 발급자 ), 날짜 , 기관명

문서명 , ( 작성자 | 발급자 ), 날짜 , 기관명

KH_03 도서 서명 , 저편자 , 발행자 , 날짜 , 기관명

서명 , 기사명 , 저자 , 날짜 , 기관명

KH_04 문서 서명 , ( 작성자 | 편집자 ), 발행자 , 날짜 , 기관명

서명 , 문서명 , ( 작성자 | 발신자 ), 날짜 , 기관명

KH_05 연속간행물

제목 , 날짜 , 기관명잡지 (KH.05.01) : 잡지명 , 발행자 ,날짜 , 기관명 신문 (KH.05.02) : 신문명 , 날짜 ,발행자 , 기관명

제목 , 날짜 , 기관명잡지 (KH.05.01) : 잡지명 , 기사제목 ,작성자 | 편집자 , 날짜 , 기관명신문 (KH.05.02) : 신문명 , 기사제목 ,날짜 , 작성자 | 편집자 , 기관명

KH_06 고전국역서 서명 , ( 저자 | 편자 ), 발행자 , 날짜 , 기관명 서명 , 기사명 , 저자 , 날짜 , 기관명

KH_07 연구자료 서명 , 저편자 , 발행자 , 날짜 , 기관명

서명 , 기사명 , 저자 , 날짜 , 기관명

KH_08 목록해제 서명 , 저편자 , 발행자 , 날짜 , 기관명

서명 , 기사명 , 저자 , 날짜 , 기관명

KH_09 인물 구분 , 이름 , 날짜 , 기관명 구분 , 이름 , 날짜 , 기관명

KH_10 지도 서명 , 작성자 , 발행자 , 날짜 , 기관명

서명 , 지도명 , 작성자 , 발행자 , 날짜 , 기관명

KH_11 사전 구분 , 항목 , 날짜 , 기관명 구분 , 항목 , 날짜 , 기관명KH_12 연표 구분 , 항목 , 날짜 , 기관명 구분 , 항목 , 날짜 , 기관명

KH_13 멀티미디어 구분 , 서명 , 작성자 , 발행자 , 날짜 , 기관명

구분 , 서명 , 기사명 , 작성자 , 발행자 , 날짜 , 기관명

KH_14 유물 - 유적 구분 , 서명 , 작성자 , 발행자 , 날짜 , 기관명

구분 , 서명 , 기사명 , 작성자 , 발행자 , 날짜 , 기관명

KH_15 금석문자료 구분 , 제목 , 작성자 , 발행자 , 날짜 ,기관명

Page 8: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 8 -

- 통합검색 서비스 정책

검색요소 필드명 검색 대상 메타 요소 예제

전체검색 BImainTitle, tableOfContents, abstract, alternative, docSender, editor, author, publisher

BI: 이순신BI : ( 이순신 | 거북선 )

제목 V_TITLE mainTitle, alternative (v_TITLE : 선언서자료 ) & (V_AUTHOR : 손병희 ) | (v_ABST : 우리 한국이 독립된 나라임과 한국 사람이 자주 국민임을 선언하노라 ) | (PUBLISHER : 독립기념관 ) & (V_DOCDATE : 1919-02-99 ~ V_DOCDATE : 1919-03-99) & (MDCENTER : IDP) & (KHIICSUBJECT1 : KH.04) & (KHIICSUBJECT2 : KH.04.01) & (UNIT : 2)

저자 V_AUTHOR docSender, editor, author요약정보 V_ABST tableOfContents, abstract발행자 PUBLISHER publisher

날짜 V_DOCDATE dateEvent, docCreated, docIssued

기관별 MDCENTER mdCenter

분류별 KHIICSUBJECT1 subject

단위 UNIT unit

- 분류별 정렬 순서

역통분류코드 역통분류명 1 순위 2 순위 비고

KH_01 고도서 서명 기사 ID 서명 :unit1 의 mainTitleKH_02 고문서 제목 날짜 제목 :mainTitleKH_03 도서 서명 기사 ID

KH_04 문서 서명 기사명

KH_05 연속간행물 서명 날짜 날짜 :docIssued, docCreated, dateEvent순으로 순서를 정함

KH_06 고전국역서 서명 기사 ID

KH_07 연구자료 서명 기사명

KH_08 목록해제 서명 기사명 서명 :isPartOf 에 지정한 Unit1 레코드의 mainTitle

KH_09 인물 구분 제목 구분 : 분류코드KH_10 지도 서명 기사명KH_11 사전 구분 기사명KH_12 연표 구분 날짜KH_13 멀티미디어 서명 기사명KH_14 유물 - 유적 서명 기사명KH_15 금석문자료 제목

Page 9: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 9 -

○ 메타데이터 작성시 주의사항

‘한국역사정보통합시스템 연계 지침’을 기반으로 작성 KHCollection 은 Online 방식으로 운용되며 메타데이터는 반드시 메타

테이블에 저장 관리되어야 함 메타데이터 추출기는 역통에서 개발 보급하고 있으나 필요 시 역통

개발팀과 협의하여 전문정보센터에서 직접 개발 설치 운영할 수 있음 메타데이터 테이블의 관리 및 운영은 전문정보센터에서 담당함 Unit 1(책 /서명 )간의 isPartOf 를 허용하도록 변경함 편년자료 상호 연계 대상 데이터베이스는 date 요소의 날짜 스킴을

준수하여 제공하여야 함 [-]YYYYMMDD[L0|L1] 형식을 준수 ID 및 분류코드 정보에서 ‘ .’, ‘_’ 이외의 특수문자를 사용할 수 없음 KHIIC, KHEIC 표기를 KHDP( 전문정보센터 ), KHON( 역통 )으로 표기 변경

하였음

(5) 역통의 통합메타데이터 검색서비스 지원

역통의 통합검색서비스 및 상세검색서비스 기능을 전문정보센터에서 구현하기 위한 기능 지원으로 그 처리 흐름은 다음과 같다 .

역통 통합검색 프로그램 호출

XML 형식 결과 리턴

XML 구조 분석 결과 출력 원문연결

결과내 재검색 / 페이지 이동

○ 접근 URL 및 파라메터

http://www.koreanhistory.or.kr/srchservice/srchTransKTH.jsphttp://www.koreanhistory.or.kr/srchservice/srchTransKTH.jsp

XML 형식 검색 결과(2차 워크샵 세션 2 자료 참조 )

query=검색 : 검색어currentPage=1 : 현재 페이지listperpg=10 : 한페이지당 목록 개수set_id=-1 : set idtotalCount=0 : 총 검색 개수

query=검색 : 검색어currentPage=1 : 현재 페이지listperpg=10 : 한페이지당 목록 개수set_id=-1 : set idtotalCount=0 : 총 검색 개수

전달 파라메터 정보 (Get 방식 )

Page 10: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 10 -

(6) 역통연계관리 역통연계관리는 전문정보센터 정보관리 , 제공된 메타데이터 조회 , 통합디렉토리 매핑정보 조회 , 공지사항 등록 , 메타데이터 변경 요청 등의 기능을 전문정보센터 관리자에게 제공하는 기능이다 .

○ 접근경로 http://www.koreanhistory.or.kr/back

○ 접근 아이디 역통 관리자에게 아이디 및 패스워드 신청하여야 한다 .

○ 주요 기능 - 분류정보변경 요청

전문정보센터의 분류코드 추가 /수정 /삭제가 발생하여 통합디렉토리 매핑 정보 변경이 발생하는 경우 역통 관리자에게 변경 요청하는 기능 • 검색 기능• 변경 요청 등록시 역통 관리자에게 메일 통보

- 전문정보센터 정보 조회

전문정보센터의 센터명 , URL, 관리자 이메일 등 관리• 전문정보센터 조회 기능• 디렉토리매핑정보 조회 서비스• 전문정보센터 연계자료 조회 서비스

Page 11: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 11 -

- 통합디렉토리 관리

전문정보센터별 통합디렉토리 분류 현황 및 제공 메타데이터 조회• 통합디렉토리 조회 기능• 각 디렉토리별 메타데이터 조회 기능

- 공지사항 등록

전문정보센터 소식 및 공지사항 등록 . 역통 관리자는 내용 검토후 개시

(7) 기타

○ 파일서버 접근 특이 경우를 대비하여 전문정보센터의 메타데이터를 KH_Collection 을 통하지 않고 종합정보센터에 제공할 수 있도록 파일서버를 운영하고 있다 . 접근 IP 및 사용자 계정 , 패스워드를 역통 관리자에게 신청하면 된다 . 단 전문정보센터별 단일 계정만 허용하고 있음 .

Page 12: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 12 -

Ⅱ. KHCollection1. 개요 ‘한국역사정보통합시스템 연계지침’에 포함된 ‘역사분야 통합메타데이터 표준’에 근거한 메타데이터 요소를 전문정보센터로 부터 수집하여 역통에 데이터베이스 구축할 수 있도록 OAI-PMH 버전 2.0 을 이용한 메타데이터 수집기이다 .

KHCollection 프로그램 구성은 KHCollection-DP, KHCollection-SP, 통합메타데이터 스케줄러로 구성되어 있다 .

2. 프로그램 구성도

역통검색 서버

메타수집스케줄러

KHCollection-SP

통합 스토리지

통합메타데이터색인 DB

KRISTAL-2002검색 시스템

역통웹서버

통합디렉토리서비스

통합메타데이터검색서비스

전문정보센터웹서버

KHCollection-DP

웹서비스 프로그램

전문정보센터 DB 서버

메타데이터 DB

제어권이전

메타데이터 추출기

사용 Port 는전문센터에서

결정

Page 13: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 13 -

OAI(Open Archives Initiative) 는 지식정보를 효과적으로 유통하기 위한 상호운용성을 갖는 표준 개발을 목적으로 한다 . OAI 의 ‘ Open’은 다양한 아카이브의 지식정보에 대한 접근이 개방되어 있음을 의미하며 , ‘Archives’는 전문정보센터에서의 지식정보 저장소를 표현한다 . 그러므로 OAI 는 개방형 지식정보 통합을 위한 지식정보 저장소의 개념을 가지고 있다고 볼 수 있다 . ‘Initiative’는 디지털 라이브러리 연합과 멜론 재단의 협력 프로젝트를 뜻한다 .

OAI 는 메타데이터의 구축 및 공유를 위해 상호운용성이 가능한 저장소를 통해 웹으로 접근할 수 있는 정보자원에 대한 접근기능을 제공하는 것을 목적으로 하고 있다 .

지식정보 자원의 효과적인 접근과 유통을 지원하는 프레임워크와 표준을 개발하기 위해서 제공되는 정보의 형태와 정보제공을 위한 메커니즘의 독립성을 가지고 다양한 종류의 디지털 자원에 대한 개방성 및 접근성을 향상 시키기 위하여 OAI-PMH(Open Archives Initiative – Protocol for Metadata Harvesting) 프로토콜이 제안되었다 .

(2) OAI-PMH 프로토콜

메타데이터 수집을 위한 OAI-PMH 는 하나의 서비스 시스템에서 타 서비스 시스템으로 메타데이터 레코드의 정규화된 수집 동작을 지원하는 단순 프로토콜로서 하나의 시스템에서 다른 시스템으로 메타데이터를 전송할 수 있는 기능을 갖는다 . OAI-PMH 의 특징은 첫번째로 HTTP(HyperText Tranfer Protocol), XML(eXtensible Markup Language), XML 스키마와 같은 웹 표준을 기반으로 동작하기 때문에 구현하기가 쉬우며 , 둘째로 프로토콜에 의해 지원되는 동작체계가 단순하다 . OAI-PMH 는 하나의 서비스가 다른 서비스에게 자신의 모든 메타데이터 레코드 또는 자신의 메타데이터 레코드 중 일부를 복사할 수 있게 해준다 . 여기서 일부란 명명된 하위 집합이나 특정 기간 동안 수정된 레코드를 말한다 .

3. OAI(Open Archives Initiative)

(1) 개요

Page 14: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 14 -

OAI-PMH 에서 사용되는 용어 중 , 데이터 프로바이더는 서비스 프로바이더가 수집할 수 있는 데이터를 생성하고 제공하는 리퍼지토리 (repository)나 웹서버를 말하며 서비스 프로바이더는 메타데이터를 수집하고 검색 서비스를 제공하는 시스템을 말한다 . 즉 , 클라이언트 /서버 모델에서 데이터 프로바이더는 서버의 역할을 수행하는 것이며 서비스 프로바이더는 클라이언트 역할을 수행하는 것이다 .

서비스 제공자와 데이터 제공자의 역할 및 기능 비교는 다음과 같다 .

<표 > 서비스 제공자와 데이터 제공자 기능 비교

서비스 제공자 (SP) 데이터 제공자 (DP)

정의OAI 프로토콜을 사용하여 데이터 제공자에게 지식 정보의 메타데이터를 요청하고 수집된 메타데이터를 기반으로 다양한 서비스 제공

하나 이상의 저장소를 가지며 , 자신이 가지고 있는 지식정보에 대한 정보 및 메타데이터 제공

기본요건

스케줄링에 의한 메타 수집 메타데이터 수집 기능 및 부가서비스 제공

메타데이터 제공 고유 식별자 체계 구축 데이터 변경 정보 제공

<그림 > OAI-PMH 개념도

통합메타 DB

SPSP

DP-1DP-1

DP-2DP-2

DP-3DP-3

데이터 제공자

서비스 제공자

메타 DB

메타 DB

메타 DB

▪▪▪

OAI 요청 (HTTP GET 또는 POST)

6 가지 Verb 사용

OAI 응답 (XML 형식의 레코드 )

스케줄러스케줄러

Page 15: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 15 -

(2) 역사분야 연계를 위한 용어 정의

○ 리퍼지토리

리퍼지토리는 OAI-PMH 요청을 처리할 수 있는 웹서버 및 데이터베이스로서 데이터 프로바이더에서 운영된다 . 리퍼지토리는 전문과 메타데이터 모두 저장할 수 있다 . 또한 메타데이터만을 저장할 수도 있다 .

•리퍼지토리는 하나 이상의 저장소로 구성할 수 있다 .

•메타데이터 저장소는 하나 이상의 아이템이 저장되는 테이블들의 집합이다 .

•리퍼지토리 구성은 메타데이터 저장소와 메타데이터 관리로 구분한다 .

•메타데이터 DB 설계 권고안을 준수하여야 한다 .

○ 아이템

아이템 즉 콘텐츠는 유통시킬 자원에 대한 메타데이터이며 리퍼지토리의 구성요소 이다 . 하나의 아이템에 대하여 여러 형태의 메타데이터를 생성할 수 있으며 각 아이템은 OAI-PMH 를 통하여 레코드로서 수집될 수 있다 . 또한 각 아이템은 리퍼지토리 내에 유일한 identifier 를 갖는다 .

•하나의 아이템 내에는 책 ( 서명 ) 및 기사 레코드들의 집합

•하나의 item은 하나의 Identifier 를 가져야 함

○ 레코드

레코드는 하나의 형태로 표현되는 메타데이터로서 XML 로 인코딩된 바이트 스트림 형태로 제공된다 . XML 로 인코딩된 레코드는 다음과 같이 구성된다 .

•헤더 (header): 아이템의 유일한 identifier 를 포함하며 선택적 수집에 필요한 프로퍼티 (property) 를 갖는다 . Header 는 리퍼지토리 내의 아이템에 대한 유일한 identifier 와 선택적 수집을 목적으로 한 레코드 생성일 , 수정일 , 삭제일을 나타내는 datestamp, 선택적 수집에 필요한 아이템의 집합을 나타내는 0개 이상의 setSpec 엘리먼트로 구성된다 .

•메타데이터 : 아이템에 대하여 여러 형태의 메타데이터를 제공할 수 있으며 , 역통에서 요구하는 메타데이터 작성 지침을 반드시 준수하여 제공해야 한다 .

•about: 레코드의 메타데이터에 관한 데이터를 포함하는 컨테이너이다 . about 컨테이너의 콘텐츠는 XML 스키마로 구성되어야 한다 . about 컨테이너는 저작권 표시 등에 사용될 수 있다 .

Page 16: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 16 -

○ Unique Identifier

•리퍼지토리 구성 내에서 고유한 식별자로 최소한 메타데이터를 구축하는 기관 내에서는 고유하여야 한다 .

•Unique Identifier 는 OAI-PMH 명령어를 이용하여 item으로부터 메타데이타를 추출하기 위해 사용한다 .

○ 삭제 레코드

저장소는 삭제 레코드에 대해서 no, persistent, transient 의 세가지 레벨 중의 하나의 정책을 가져야 하고 Identify 명령에 대한 응답으로 deleteRecord 항목에 정책을 표시해야함 .

•no : 데이터 삭제 이력을 관리하지 않는다 .

•persistence : 데이터 삭제 이력을 항상 관리한다 .

•transient : 데이터 삭제 이력을 일시적으로 관리한다 .

•역통의 경우는 insert, update, delete 의 상태 정보를 관리하기 때문에 기본적으로 persistence 로 설정

○ dataType

•메타데이터 레코드가 신규 , 수정 , 삭제 데이터 인지를 판단

•수집기에서는 총 insert, update, delete 형태를 가지고 DP 에 해당 형태의 레코드를 수집 요청함 .

○ Set

Set 은 선택적 수집을 위한 목적으로 아이템을 그룹핑한 부가적인 구조로 역사정보에서는 분류별로 그룹핑하여 수집할 수 있도록 하고 있다 .

• Set 은 단순한 list 의 형태도 가능하고 계층 구조를 가진 tree 구조도 가능하다 .

•계층 구조에서 각각의 상위 Set들은 역통에서 전달한 구분자를 가지고 구분한다 .

•저장소가 Set 을 가진 경우 ListIdentifiers, ListRecords, GetRecord 명령의 응답으로 헤더부에 반드시 setSpec( 필수 ), setName( 권장 ), setDescription

( 부가 ) 정보를 전송해야 한다 .

○ 선택적 수집 (Selective Harvesting)

• 날짜 (datestamp) 를 사용한 선택적 수집 : ListRecords, ListIdentifiers 명령에 from이나 util 인자를 사용하여 해당 날짜 범위의 데이터를 요청한다.

• Set 을 이용하는 선택적 수집 : ListRecords, ListIdentifiers 명령 사용시 setSpec 인자를 사용하여 분류별 데이터를 요청한다 .

Page 17: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 17 -

4. KHCollection – SP

KHCollection – SP 는 역통 검색서버에서 운영되는 OAI 의 Service Provider 역할을 수행하는 프로그램으로 스케줄러에 의해 실행되며 프로그램의 구성은 다음과 같다 .

<그림 > KHCollection – SP 구성도

(1) 개요

통합디렉토리정보

분류매핑정보

분류별통합메타 DB

수집스케줄링정보스케줄러스케줄러

스케줄러 관리스케줄러 관리

통합메타데이터 수집 스케줄러

통합디렉토리 관리통합디렉토리 관리

연계조사자료

통합디렉토리 관리

통합메타데이터 관리통합메타데이터 관리

KHCollection-SP

Verb 별 Request 파라메터 생성모튤

KHCollection-SP 프로그램 실행

전문센터별KHCollection-DP 호출

KHCollection-DPKHCollection-DP

OAI-PMH(HTTP Get/POST)

수집현황리포트

XML 구조 분석

역통분류코드 매핑 메타데이터 오류분석

적재결과 리포트

메타데이터 적재모듈 적재현황 메일링

Page 18: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 18 -

(2) 주요기능

Service Provider 에 Verb(identify, ListIdentifiers, ListSets, ListMetadataFormat, ListRecords, GetRecord)별 요청에 대한 정보 전송 기능

전송 완료 레코드나 전송 중 오류 레코드 처리: Repository내의 전송 상황 정보를 별도로 관리

전송 정보 리포팅 기능 Service Provider 에서 전달 된 메타데이터 생성 날짜를 기준으로 하여 현재일까지의 메타 데이터 조회 후 조건에 맞는 레코드 전송

Repository가 RDB, KRISTAL 인 경우에 쿼리를 환경 설정 파일에서 관리

(3) 통합디렉토리 매핑

연계조사자료 전문센터 코드

전문센터 분류코드

역통분류코드

NIKH

np_da KH.05.02.005

np_gr KH.05.02.001

AKS

통합디렉토리 매핑 테이블

전문센터 메타데이터

역통 통합디렉토리 매핑 작업

통합메타데이터 DB

mainTitle전문센터 분류코드

역통분류코드

URL

np_da KH.05.02.005

np_gr KH.05.02.001

통합디렉토리 정보에 직접 제어권 이전 여부 설정되어 있음 ( 연계협의회에서 결정 )

역통에서 매핑테이블을 기준으로 역통분류코드 추가 함 .

통합디렉토리정보

통합디렉토리서비스

자료 목록

제어권 이전

Page 19: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 19 -

(4) 통합메타데이타 오류 검증

XML 요소 중

dbInfo 존재 여부 체크

Xerces Parser 를 이용한

Validation 체크

전문센터 코드 Record id

존재 여부 검사

mainTiitle 존재

여부 검사

Khdpsubject 존재 여부검사 및 역통 매핑 코드

존재 여부 검사

재정렬을 위한

docDate Element 추가

docCreated, docIssued,

dateEvent 날짜 형식 검사

재정렬을 위한

writer Element추가

에러 레코드만

별도 디렉토리에 보관 Error Reportfailed

○ 메타데이터 오류 검증 프로세스

○ URL 오류 검증 프로세스 야간 시간대 샘플링에 의한 통합메타데이터 URL 오류 검사를 실시 한다 .

URL 오류검사 스케줄러 URL오류 검사모듈API Call

2xx : Successful4xx : Client Error5xx : Server Error

전문정보센터

통합메타 DB

Page 20: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 20 -

5. KHCollection – DP

KHCollection – DP 는 전문정보센터 웹서버에 설치 운영되며 종합정보센터 (Service Provider) 로부터의 요청에 따라 전문정보센터 정보 , 스키마 정보 , 메타데이터 등의 정보를 XML 형식으로 구성하여 제공한다 .

<그림 > KHCollection – DP 구성도

(1) 개요

종합정보센터 (Service Provider)종합정보센터 (Service Provider)

KHCollection - DP

Request 분석기 모듈

Request 방식에 따른OAI XML 생성

조건에 맞는 Metadata 추출 모듈

DB Gateway

메타 DB

Request 방식에 따른XML 파일 생성 메타데이터 응답모듈

전송 정보 저장XML 파싱

• HTTP Get 또는 Post 명령어 사용• OAI 6개 Verb 중에 하나 request• 메타 갱신 Timestamp

• XML로 표현된 OAI 응답웹사용 Port

오류 및 전송상태 리포트

메타데이터 추출기메타데이터 추출기

메타데이터 관리기메타데이터 관리기

메타 DB

Page 21: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 21 -

(2) KHCollection-DP 기능

Service Provider 에 Verb (identify, ListIdentifiers, ListSet, ListMetada

taFormat, ListRecords, GetRecord)별 요청에 대한 정보 전송 기능전송 레코드 관리

: 역통의 메타데이터 저장소에 적재 완료된 메타데이터 레코드 정보를 수신

받아 메타 DB의 전송 상황 필드에 반영전송 정보 리포트 기능 Service Provider 에서 전달된 Parameter 를 기준으로 하여 메타데이터 조회

후 조건에 맞는 레코드 전송

(3) 전달 파라메터 상세정보

명칭 설명

dataType insert( 신규 ), update( 수정 ), delete( 삭제 )  

set 메타데이터의 전문센터 분류

from 메타데이터 생성 기간

until 메타데이터 생성 기간

verb OAI-PMH 명령어

validation validation 체크 유무

maxCount 최대 수집 레코드 수

id 전문센터 메타데이터 레코드 ID

•Parameter 전달 예 :

http://www.history.go.kr/khcollection/dataprovider/dataProvider.jsp?verb=

ListRecords&dataType=insert&kheicsubject=ku&from=2004-10-11&until=2005-06

-12&validation=Y&maxCount=200

Page 22: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 22 -

(4) KHCollection-DP Verb 정의

○ identify 전문정보센터의 명칭 , 관리자 이메일 주소 , 전문정보센터 URL, DP 설치일 , OAI-PMH 버전 등의 식별 정보를 수집하기 위한 Verb

•메타데이터 수집 스케줄과 별도로 운영되는 명령어•역통 관리자가 전문정보센터 정보를 얻을 필요성이 있을 때에만 identify 명령이 전달되며 전송 받은 식별정보의 변경사항은 관리테이블에 수정한다 .

○ ListIdentifiers 메타데이터의 레코드 아이디 목록을 수집하기 위한 Verb

•SP 는 from, until, set 을 parameter 로 구성하여 전송•DP 는 parameter 를 전송 받아 해당 조건에 맞는 메타데이터의 레코드 아이디와 전문센터 분류정보를 수집하여 SP 에 전송

•SP 는 전송 받은 ListIdentifiers.xml( 메타데이터 레코드 아이디 목록 XML) 을 Parsing 하여 레코드 아이디 건별로 GetRecord Verb를 전송하여 레코드 아이디에 해당하는 메타데이터 정보를 수집

○ ListMetadataFormat OAI 에서 지원하는 메타데이터 Schema 정보를 얻기 위한 Verb로 OAI-PMH 는 기본적으로 여러개의 형태소 , 여러 개의 Schema 를 사용이 가능하다 . 이 경우 각 레코드 , 혹은 set별로의 schema목록을 전송 받는 명령어이다 . 역사정보통합시스템의 경우 확장성을 고려하여 개발하였지만 Schema 를 사용하지 않고 , 단일한 통합메타데이터 세트를 사용하기 때문에 이 명령어를 적용하지는 않는다 .

○ ListSets 전문정보센터 자체 분류정보 목록을 수집하는 Verb

•역통은 연계조사자료를 기반으로 전문정보센터 분류와 역통 분류 매핑 테이블을 구성한다 .

•DP 는 전문정보센터 자체 분류코드 , 분류명 등의 정보를 SP 에 전송한다 . •역통은 수집된 전문정보센터 분류 XML 을 파일 형태로 저장 관리하며 , 별도의 프로그램을 통하여 통합디렉토리 매핑 테이블에 반영한다 .

Page 23: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 23 -

○ GetRecord 전문정보센터의 메타 DB에 적재되어 있는 메타데이터 중 해당하는 레코드 아이디의 메타데이터를 수집하는 Verb

•SP 는 ListIdentifiers 로 전송 받은 레코드 아이디 목록을 가지고 DP 에게 레코드 아이디 건 별로 메타데이터를 요청한다 .

•이 명령은 스케줄러에 등록할 수 있는 명령어가 아니며 긴급 적재 / 수정 상황이 발생했을 경우 역통 관리자의 프로그램 작동을 통하여 명령을 실행할수 있다 .

○ ListRecords 전문정보센터의 메타 DB에 적재되어 있는 메타데이터 중 전달 조건에 맞는 메타데이터들을 수집하는 Verb

•SP 는 from, until, set 을 parameter 로 전송•DP 는 parameter 를 전송 받아 해당 조건에 맞는 메타데이터를 수집하여 SP 에 전송한다 .

•SP 는 전송 받은 ListRecords.xml 을 Parsing 하여 가져올 총 레코드 수를 분석하고 레코드 수가 역통에 Setting 되어 있는 1회 수집 시 최대 레코드 갯수를 초과할 경우 Paging 방식을 통하여 분할 전송 받는다 .

•전송된 ListRecords.xml 은 레코드 아이디 별로 분할하여 XML형태로 관리한다 .

Page 24: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 24 -

(5) 메타 DB 설계 권고사항

○ 전문정보센터 메타 DB 정보 전문정보센터에서는 하나 이상의 메타데이터 저장소를 가질 수 있으나 반드시 저장소는 질의문 또는 API 에 의해 조회 /수정 / 삭제가 가능해야 한다 . 또한 아래의 필수요소 및 권장 요소를 참조하여 DB 스키마 설계에 반영되어야 한다 .

○ 메타데이터 리퍼지토리 구성

< 그림 > 메타데이터 리퍼지토리 구성 개요도

리퍼지토리저장소 -1

아이템 -1

책서명 레코드기사 레코드

아이템 -n

책서명 레코드기사 레코드

저장소 -n

아이템 -1

책서명 레코드기사 레코드

아이템 -n

책서명 레코드기사 레코드

• • • • • • • • • • • • •

○ 전문정보센터 분류정보 전문정보센터 내 분류코드는 필수 정보는 아니나 메타데이타의 오류 검증 및 역통에서 KHCollection 을 통한 전문정보센터 분류정보 수집하여 매핑정보 갱신 , 분류별 메타데이터 수집 등의 목적으로 사용할 예정이다 . 권장 스키마는 아래와 같다 .

엔티티명 전문센터분류정보 테이블명 MDCENTER_CLASS

속석명 컬럼명 설명 TYPE PK 필수

분류코드 KHDPSUBJECT 분류코드 varchar2(20) O O

분류명 KHDPSUBJECT_NAME 분류명 varchar2(100) O

※ 각 전문센터의 분류 구조 및 형식을 고려하여 필드 추가 및 필드 TYPE 변경

Page 25: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 25 -

엔티티명 전문센터메타데이터정보 테이블명 MDCENTER_META_DB

속성명 컬럼명 설 명 TYPE PK 필수

ID ID 레코드 고유 ID varchar2 O O

분류코드 KHDPSUBJECT 전문센터 분류 코드 varchar2 O O

메타데이터 METADATA 통합메타데이터 원문 varchar2 O

전송 상황 TRANSFER_STATUS default ‘0’, 전송 ‘ 1’, 전송완료 ‘ 2’, 실패 ‘ 3’

char(1) O

전송 형식 TRANSFER_TYPE 신규 insert, 수정 update, 삭제 delete

varchar2(10) O

전송승인 TRANSFER_CONFIRM 전송승인 ‘ Y’, ‘N’ char(1) O

전문센터 ID MDCENTER 전문센터코드 varchar2(10)

전문센터명 MDCENTER_NAME 전문센터명 varchar2(100)

제목 TITLE 제목 varchar2 O

대체제목 ALTERNATIVE 대체제목 varchar2

발신자 DOCSENDER 발신자 varchar2

편찬자 EDITOR 편찬자 varchar2

작성자 AUTHOR 작성자 varchar2

자료유형 TYPE 자료유형 varchar2(200)

UNIT UNIT 서명 ‘ 1’, 기사 ‘ 2’ char(1) O

발행자 PUBLISHER 발행자 varchar2

파일형식 FORMAT 파일형식 varchar2(200)

목차 TABLEOFCONTENTS 목차 varchar2

부분자료 ISPARTOF 부분자료의 ID varchar2

부분자료 제목 ISPARTOF_NAME 부분자료의 제목 varchar2

초록 ABSTRACT 요약정보 varchar2

의존자료 REQUIRES 의존자료 URL varchar2

사건발생일 DATEEVENT 사건발생일 varchar2(100)

원자료발행일 DOCISSUED 원자료발행일 varchar2(100)

원자료생성일 DOCCREATED 원자료생성일 varchar2(100)

생성일 CREATED 메타데이터 생성일 date

갱신일 MODIFIED 메타데이터 갱신일 date

URL URL 원문접근 URL varchar2

※ 각 전문센터의 데이터 특성 및 상황을 고려하여 필드추가 및 데이터 TYPE 과 사이즈 조절

○ 메타데이터 저장소 스키마 설계 권고안

Page 26: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 26 -

(6) KHCollection-DP 설치 환경 권장사양

운영 체제 : Windows 계열 , Unix/Linux 계열개발 언어 : JSP, JAVA JDK : 1.4 이상 WAS 서버 : Weblogic, Tomcat, Websphere 등필수 LIB : xerses.jar설치 디렉토리 : 전문정보센터의 웹 프로그램이 설치되어 있는 디렉토리 내에 khcollection 폴더에 설치

Page 27: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 27 -

[ 첨부 1] 역통 통합검색 서비스 연계 샘플 XML

아래의 내용은 역통에서 검색된 결과를 XML 형식으로 제공할 경우 사용하는 XML 정보의 예제임 .

<?xml version='1.0' encoding='utf-8'?><!DOCTYPE metadata><metadata>

<!-- 검색 정보 --><searchInfo>

<!-- 검색 쿼리 --><query>BI : 국사 </query><!-- 총 검색 건수 --><totalCount>73675</totalCount><!-- 검색 set id --><set_id>35623</set_id><!-- 목록 제한 수 및 현재 페이지 수 --><currentPage listperpg="2">1</currentPage>

</searchInfo><!-- 검색 정보 --><recordSet> <!-- 검색 된 레코드 시작 --> <record id="KH.AKS.46566_012_0027" unit="2"> <title> <mainTitle > 興國寺凝香閣次板上韻 </mainTitle> <alternative > 흥국사응향각차판상운 </alternative> </title> <creator> <author ></author> <writer ></writer> </creator> <subject infocenter="KHDP">KH.01.04.003</subject> <subject infocenter="KHON">ad12</subject> <type>image/text</type> <url>

<get>

http://yoksa.aks.ac.kr/jsp/aa/VolView.jsp?fcs=f&amp;cf=a&amp;cd=ad12&amp;gb=1</get> </url> <publisher> 한국학중앙연구원 </publisher> <date created="2005-01-16" issued="2005-01-29" modified="2005-01-30"> <docCreated>1898#*# 光武 2(1898) 序 </docCreated> <docSort>1898#*# 光武 2(1898) 序 </docSort> </date> <description></description> <format>

<medium>image/gif</medium> </format> <format>

<medium>text/xml</medium> </format> <relation> <isPartOf id="KH.AKS.kh2_je_a_vsu_46566_012"></isPartOf> <requires> <post action=""></post> </requires> </relation> <metaMetadata>

<mdCenter> 한국학중앙연구원 </mdCenter></metaMetadata></record> <!-- 검색 된 레코드 끝 -->

</recordSet></metadata>

Page 28: 4.  역통 연계를 위한  OAI-PMH  적용 상세설명서

역사분야 연계를 위한 OAI-PMH 적용 상세설명서

한국역사종합정보센터- 28 -

[ 첨부 2] KHCollection 적용 OAI 샘플 XML

<?xml version='1.0' encoding='UTF-8'?><OAI-PMH xmlns='http://www.openarchives.org/OAI/2.0/' xmlns:xsi= 'http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd'> <responseDate>2005-07-25T01:21:09Z</responseDate> <request metadataPrefix="oai_dc">http://www.history.go.kr/khcollection/dataprovider/oai.jsp</request> <ListRecords> <record> <header> <identifier>oai:NIKH:kd_035</identifier> <datestamp>2005-07-22 00:00:00.0</datestamp> <setSpec>kd</setSpec> </header> <KHON > <recordSet dbInfo=" 한국독립운동사자료 ( 국사편찬위원회 )" > <record > <title > <mainTitle> 한국독립운동사 자료 </mainTitle> </title> <creator > <editor > 국사편찬위원회 </editor> </creator> <subject infocenter="KHDP" >kd</subject> <identifier > <uri infocenter="KHDP" >kd_035</uri> <url > <get >http://www.history.go.kr/front/dirservice/dirFrameSet.jsp?pUrl=/front/dirservice/dpendent/listSubIndependent.jsp&amp;pDatabaseID=kd_035&amp;pLevel=2</get> </url> </identifier> <publisher > 국사편찬위원회 </publisher> <date created="2005-07-22" > <docCreated >1997-11-29</docCreated> </date> <format > <medium >text/xml</medium> </format> <metaMetadata > <mdCenter KHDP_name=" 국사편찬위원회 " KHDP_url="http://www.history.go.kr" >NIKH</mdCenter> <unit >1</unit> </metaMetadata> </record> </recordSet> </KHON> </record><resumptionToken completeListSize="22">9999-12-31%7C1753-01-01%7Cnull%7Coai_dc%7Ckd_015%7C2005-07-25T01%3A21%3A10Z</resumptionToken> </ListRecords></OAI-PMH>