untitled

Similar documents
Microsoft PowerPoint - 권장 사양

강의 개요

DBMS & SQL Server Installation Database Laboratory

SRC PLUS 제어기 MANUAL

MySQL-.. 1

요약 1

°ø±â¾Ð±â±â

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

3 장디지털코드 1. BCD 코드와 3초과코드 2. 다양한 2진코드들 3. 그레이코드 4. 에러검출코드 5. 영숫자코드 한국기술교육대학교전기전자통신공학부전자전공 1

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

제 9 도는 6제어항목의 세팅목표의 보기가 표시된 레이더 챠트(radar chart). 제 10 도는 제 6 도의 함수블럭(1C)에서 사용되는 각종 개성화 함수의 보기를 표시하는 테이블. 제 11a 도 제 11c 도까지는 각종 조건에 따라 제공되는 개성화함수의 변화의

Windows 10 General Announcement v1.0-KO

..,. Job Flow,. PC,.., (Drag & Drop),.,. PC,, Windows PC Mac,.,.,. NAS(Network Attached Storage),,,., Amazon Web Services*.,, (redundancy), SSL.,. * A

PowerPoint 프레젠테이션

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

Getting Started

Spring Boot/JDBC JdbcTemplate/CRUD 예제

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft PowerPoint - chap06-2pointer.ppt

WINDOW FUNCTION 의이해와활용방법 엑셈컨설팅본부 / DB 컨설팅팀정동기 개요 Window Function 이란행과행간의관계를쉽게정의할수있도록만든함수이다. 윈도우함수를활용하면복잡한 SQL 들을하나의 SQL 문장으로변경할수있으며반복적으로 ACCESS 하는비효율역

Microsoft PowerPoint - chap03-변수와데이터형.pptx

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

슬라이드 1

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

내지시안c00?淪Α?274痴

Microsoft PowerPoint - Zebra ZPL 한글판 명령어 메뉴얼.ppt

ISP and CodeVisionAVR C Compiler.hwp

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins

Microsoft PowerPoint - chap01-C언어개요.pptx

쏘니표지

Microsoft PowerPoint - 27.pptx

BY-FDP-4-70.hwp


SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

Tablespace On-Offline 테이블스페이스 온라인/오프라인

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

목 차 요약문 I Ⅰ. 연구개요 1 Ⅱ. 특허검색 DB 및시스템조사 5

문서 템플릿

APOGEE Insight_KR_Base_3P11

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

2002년 2학기 자료구조

초보자를 위한 C++

C# Programming Guide - Types

윈도우시스템프로그래밍

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

쉽게 풀어쓴 C 프로그래밊

0. 들어가기 전

PowerPoint Presentation

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

Chapter ...

설계란 무엇인가?

Vector Differential: 벡터 미분 Yonghee Lee October 17, 벡터미분의 표기 스칼라미분 벡터미분(Vector diffrential) 또는 행렬미분(Matrix differential)은 벡터와 행렬의 미분식에 대 한 표

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할

untitled

MF3010 MF Driver Installation Guide

PRO1_02E [읽기 전용]

Oracle Database 10g: Self-Managing Database DB TSC

IPAK 윤리강령 나는 _ 한국IT전문가협회 회원으로서 긍지와 보람을 느끼며 정보시스템 활용하 자. 나는 _동료, 단체 및 국가 나아가 인류사회에 대하여 철저한 책임 의식을 가진 다. 나는 _ 활용자에 대하여 그 편익을 증진시키는데 최선을 다한다. 나는 _ 동료에 대해

Microsoft PowerPoint - 26.pptx

Windows 8에서 BioStar 1 설치하기

PowerPoint Presentation

PowerPoint 프레젠테이션

K_R9000PRO_101.pdf

MPLAB C18 C

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

슬라이드 1

OCW_C언어 기초

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

hwp

untitled

JAVA PROGRAMMING 실습 08.다형성

Precipitation prediction of numerical analysis for Mg-Al alloys

PowerPoint 프레젠테이션

제 3 장디지털정보구현 정보는전산자료의형태로소통되며, 그형식은문자, 그림, 음성, 동영상등다양하다. 인간사회에서언어가다르면의사소통할수없듯이, 전산정보의소통에도문자, 그림, 음성, 동영상의형식이통일되어있지않으면정보를공유할수없다. 이에따라컴퓨터가등장한이래로, 컴퓨터에서사용

EndNote X2 초급 분당차병원도서실사서최근영 ( )

JVM 메모리구조

10-2 삼각형의닮음조건 p270 AD BE C ABC DE ABC 중 2 비상 10, 11 단원도형의닮음 (& 활용 ) - 2 -

USER GUIDE

!K_InDesginCS_NFH

Microsoft PowerPoint - ch07 - 포인터 pm0415

T100MD+

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

슬라이드 1

Microsoft PowerPoint - chap06-1Array.ppt

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

인켈(국문)pdf.pdf

열거형 교차형 전개형 상승형 외주형 회전형 도해패턴 계층형 구분형 확산형 합류형 대비형 상관형 (C) 2010, BENESO All Rights Reserved 2

Microsoft PowerPoint - kandroid_for_HI-CNU.ppt

YV-150-S.CHINESE1.0-1

PowerPoint 프레젠테이션

PowerPoint Presentation

Microsoft PowerPoint 웹 연동 기술.pptx

歯PLSQL10.PDF

PowerPoint Presentation

manual pdfÃÖÁ¾

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

Transcription:

연구보고 2004-2 서울대도서관정보시스템 유니코드체계구축에관한연구 서울대학교중앙도서관

서울대도서관정보시스템 유니코드체계구촉에관한연구 연구책임자 : 신효펼 ( 서울대학교언어학과 ) 공동연구원 : 허남진 ( 서울대학교철학과 ) 공동연구원 : 허성도 ( 서울대학교중어중문학과 ) 연 구 원 : 김성중 ( 서울대학교중앙도서관정보관리과장 ) 연 구 원 : 황영숙 ( 서울대학교중앙도서관청보관리파 ) 연 구 원 : 김미향 ( 서울대학교중앙도서관정보관리과 ) 연구보조원 : 초인식 ( 서울대학교언어학과 ) 연구보조원 : 최형주 ( 서울대학교인지과학협동과정 ) 2005. 1. 서울대학교중앙도서관

국립풍앙도쩨관훌판 λl 도서목록 (CIP) 서훌대도서관정보시스템뮤니코드처 껴 구혹메관한연구 / 신효필 ", [ 듬 ] 연구서울 : 서울대학교줌암도써관, 2005 p,; cm, -- ( 연구보고 ; 2004-2) 권말부쪽으로 'ISO 2022메서 λf용하는문자서 트메대한용어의정의률, 'KS C 5601: 1987 문자표, 'CJK ldeograph Area와 - JK Compatibi 1 ity Ideograph Area간의변환테이플및변환훌 력프로그램 l 수록 참고문헌수룩 ISBN 89-956410-2-9 ISBN 89-95641 0-0-2 ( 서 트 ) 027, 611-KDC4 027, 7095195-DDC21 CIP20050oo547

< 목차 > 1. 셔론 1 1.1. 목적및필요성 1 1.2. 내용및범위 2 1.3. 활용방안및기대효과 3 2. 다국어문자표현방법 4 2. 1. 기존의다국어문자표현방법 4 2. 1.1. A5CII 코드 4 2. 1.2. 150 8859 9 2. 1.3. 150 2022 15 2. 1.4. K5 C 5601:1987 16 2.2. 유니코드 17 2.2. 1. 개요 17 2.2.2. 개발통기 20 2.2.3. 매평및인코딩 22 2.2.4. 저장공간, 전송및처리 23 2.2.5. 기구성된문자 VS. 합성문자 24 2.2.6. 유니코드를사용하는시스템 25 2.2.7. 입력방법 25 2.3. 유니코드와관련된이슈 26 2.3. 1. 한글관련 26 2.3.2. 한자관련 27 3. 유니코드시스햄구축 31 3. 1. 기본인프라구축 31 3. 1.1. 업무용 PC 업그레이드및클라이언트 05 업그레이드 31 3. 1.2. 서버 05 업그레이드 33 3.2. 실제전환절차 34 3.2. 1. 데이터베이스의유니코드전환 34 3.2.2. 검색엔진 39 3.3. 전환후관리 41

3.4. 오라클과데이터베이스에서다국어전환 ( 세부사항포함 ) 3.4.1. Multilingual Support Database 의기본 Architecture 3.4.2. 유니코드 (Unicode) 와오라클의유니코드지원 3.4.3. 다국어지원을위한데이터베이스구축방안 3.4.4. 스키마셜계시고려해야할점파데이터타입 3.4.5. 클라이언트의 NLS_LANG 껄정 3.4.6. Sorting 의종류와설명 3.4.6. 1. Binary Sort 3.4.6.2. Linguistic Sorting 3.4.6.2. 1. Monolingual Linguistic Sorting 3.4.6.2.2. Multilingual Linguistic Sorting 3.4.6.3. 각각의 Sorting 비교 3.4.7. Migrating to Oracle9i NCHAR Datatypes 3.4.7. 1. Migrating Oracle8 NCHAR Columns to Oracle9i 3.4.7.2. Changing the National Character Set 3.4.7.3. Migrating CHAR Columns to NCHAR Columns Oracle9i Database 3.4.8. CHARACTER SET SCANNER 41 41 43 44 46 48 50 50 50 51 51 53 53 53 54 m an 54 56 3.4.8. 1. lnvoking the Character Set Scanner 57 3.4.8.2. Getting Online Help for the Character Set Scanner 58 3.4.8.2. 1. Database Scan Summary Report 3.4.8.2.2. lndividual Exception Report 58 61 없4. 국내외유니코드지원사혜분석 4. 1. 국내사례 4. 1.1. 국립중앙도서관 (http:νwww.n l. go.kr ) 4. 1.2. 한국외국어대학교 (hhttp://weblib.hufs.ac.kr/) 4. 1.3. 광주과학기술원 (http:νwww.kjist.ac.kr/) 66 4. 1.4. 국어연구원 (http://www.korean.go.kr) 67 4. 1.5. 한국역사정보통합시스댐 (http://www.koreanhistory.or.kr) 68 4.2. 국외사례 68 4.2. 1. 일본 NII 사례 (http://www.nii.ac.jp/index-j.htmo 68 없떠야% _ 11 _

4.2. 1.1. 개요 68 4.2. 1.2. NII 목록시스템 69 4.2. 1.3. [ 신 ( 新 ) CAT-ILL 시스댐검토회의 ] 주요논의내용 69 4.2. 1.4. NII 목록시스댐의다국어대웅 69 4.2.2. 일본 NII 의신 CAT 시스템 70 4.2.2. 1. 개요 70 4.2.2.2. 신 CAT 시스템의다국어대웅 71 4.2.3. 미국 OCLC 사례 (http://www.oclc.org/) 73 4.2.3. 1. 개요 73 4.2.3.2. OCLC 의목록시스템의다국어대응 74 5. 서울대학교도서관유니코드전환시고려사항 76 5. 1. 서울대학교도서관유니코드적용의필요성 76 5. 1.1. 국가통합서지관리기관의유니코드체계검토 76 5. 1.2. 다국어자료에대한고품질데이터베이스구축 76 5. 1.3. 국외기관과의데이터베이스교류활성화 78 5.2. 서울대학교도서관유니코드체계구축을위한현시스템검토 79 5.2. 1. 서울대학교도서관현행시스템의유니코드지원유무현황 79 5.2.2. 유니코드체계구축을위한시스템구비 79 5.3. KS C 5601:1987자료의유니코드전환시고려사항 80 5.3.1. 동형이음한자데이터변환 80 5.3.2. 외부기관과데이터교류방안 81 5.3.3. 다국어업력방식 82 5.3.4. 유니코드 Encoding 방식 83 5.3.5. 유니코드에서지원하지않는한자처리 84 5.3.6. 유니코드의한자가한글음이없는경우입력방법 84 5.3.7. 옛한글문제 84 5.4. 서울대학교도서관유니코드체계적용시소요일정및예산 85 5.4.1. 유니코드개발예상소요일정 85 5.4.2. 소요예산 85 5.4.2. 1. PC OS 업그레이드 85 5.4.2.2. 유니코드검색엔진도입 86-111 -

5.4.2.3. 어플리케이션업그레이드 86 5.4.2.4. 스토리지 (Storage) 87 5.4.2.5. DB 변환및교열 87 6. 컬를 89 참고품현 91 부록 1. ISO 2022에서사용하는문자세트에대한용어의정의들 95 부록 2. KS C 5601:1987 문자표 97 부록 3. CJK Ideograph Area와 CJK Compatibility Ideograph Area간의변환 테이블및변환출력프로그램 109 < 표목차 표 1. ASCII의 32개제어문자들표 2. ASCII의인쇄가능한문자들표 3. ISO-8859의여러가지매평값들의목록표 4. 유니코드에포함된여러기호들의목록표 5. Microsoft XP를셜치하기위한 PC 권고사양표 6. 유니코드지원운영체제목록표 7. 데이터베이스테이블변환을위한두명령어간의비교표 8. 데이터베이스의변환전고려항목표 9. 검잭엔진의제품별특정표 10. 외부기관별반입 / 반출올위한파일형식표 11. 유니코드전송방식별특정표 12. Oracle의버전별유니코드지원현황표 13. Oracle 자료형별특정 (* b는공백올뭇함.) 표 14. 인코딩별정렬순서표 15. 소탱방식별특정표 16. 소탕방식간의비교표 17. Oracle에에서데이터타입올변경하는순서표 18. Data Dictionary와 Application Data의상태조건 6 7 l 2 17 32 33 38 39 39 41 43 44 47 50 52 53 54 59 - IV -

표 19. Data Dictionary의상태 60 표 20. Application Data 변환요약 60 표 21. 데이터베이스수록데이터 71 표 22. 신 CAT 서버의인코딩방식비교 72 표 23. 신 CAT 서버의인코덩방식들의 UCS 데이터기술능력비교 72 표 24. Connexion에서지원하는문자세트 75 표 25. 서울대도서관의외국어자료분포현황 (2004년 4월기준 ) 76 표 26. 한글및다른문자로대체한경우 77 표 27. 특수문자입력의예 78 표 28. 유니코드지원유무현황 79 표 29. 동형이음한자를서로다른유니코드영역에배당하는경우 80 표 30. 동형이음한자를같은유니코드영역에배당하는경우 81 표 31. W3C 의권고안을따른엔터티표현의예 82 표 32. 유니코드개발예상소요일정 85 표 33. 유니코드개발소요예산 85 표 34. 어플리케이션업그레이드비용 86 표 35. 스토리지추가구매예상비용 87 표 36. 데이터베이스변환및교열예상소요비용 87 그렴목차 > 그림 1. 유니코드의 CJK Ideograph 호환영역 - 1 그림 2. 유니코드의 CJK Ideograph 호환영역 - 2 그림 3. 유니코드시스템체계구축절차그림 4. DBMS의유니코드전환절차그림 5. Client/Server의다국어지원데이터베이스그림 6. 다계층환경의다국어지원데이터베이스그림 7. 신 CAT 시스댐의개요 2 n 2 3 3 4 4 7 n 1i nιnιa4i nu - v -

1. 서론 1.1. 목척및펼요성초기컴퓨터시스템은기본적으로 ANSI에서제정한 ASCII 코드에기초하여, 영어알파뱃 26자와약간의특수기호만을표상할수있었다. 이시스템들은연산속도및기억용량의한계를가지고있었고, 동양권언어들을전혀고려하지않았으므로이정도의성능과정보표상방식으로도충분한성능올발휘하였다. 최근에는정보시스템의보급이일반화되고인터넷의발달로자료의교환이 국제적으로확대됩에따라표준문자코드의사용은더욱중요시되고있다. 하 지만, 기존의시스템은몇가지어려옴에봉착하게되었다. 첫째, 동양권의많 은문자들을모두수용하기어렵고, 둘째, 설령어떤표상방식을고안하더라도매우복잡하고, 셋째, 두번째방식을취할경우모든문자를한꺼번에표상할수없다. 예를들어, 인터넷에게시판올만든다고가정할때, 현재의한바이트혹은이를이용한멀티바이트시스댐에서세계각국의사랍들이자국어문자를표시할수있는게시판을인터넷게시판을제작하려면, 각페이지에서인코딩방식올바꾸어야하므로그럴때마다문자는다른방식으로해석되어일부언어의문자는깨지고, 전혀다른문자로해석되게된다. 다시말해서, 컴퓨터사 용자들의표현방식에대한욕구는높아지는반면, 기존의시스댐으로는이를 충족시키지못하는결과를초래하게된것이다. 이런문제점올해결하기위해 ISO( 국제표준화기구 ) 와유니코드컨소시엄이 협력하여유니코드를제정하였다. ISO/IEC 10646 에 의해국제표준코드로자 리잡은유니코드는세계모든문자에대해서각각고유번호를할당하므로, 문 자를표현하기용이하고, 컴퓨터에서자유로운표현을보장할수있게된다. 유 니코드표준은 Apple, HP, IBM, Microsoft, Oracle, SAP, Sun 둥과같은기업

채택하여지원하고있고, 최근정보공유표준으로자리잡은 XML(eXtended Markup Language), Java, ECMAScript(Javascript) 둥과같은최신시스템및언어에서도채태되고있다. 또, 인터넷브라우저및다양한운영체제들이거의모두이를지원하고있으며, 이를개별적으로지완하는웅용프로그램도다양하다. 이처럽, 유니코드는다국어표현문제를해결할수있는유일한대안으로떠올랐으며, 미국의회도서판파일본국립정보학연구소 (N II) 등많은전자도서관들이유니코드체계로의전환을검토하거나완료하였다. 본연구의목적은서울대학교도서관시스댐이다국어환경에능동적으로대처할수있도록유니코드체계로의성공적인전환을위한기반환경및기술요건을파악하는것이다. 현재국가표준코드로쓰이고있는 KS C 5601:1987 을유니코드로전환할때고려해야할사항들이적지않다. 도서관시스댐이탑재된운영체제, 검색엔진, 데이터베이스, 웅용프로그램퉁이유니코드를지원하는지에대한상셰한조사를해야하고, 데이터률전환할때발생할수있는문제점에대한위험요소들을미리분석해야한다. 또, 다국어환경에서사용자들과의인터페이스문제도함께논의되어야한다. 1.2. 내용및범위본연구는서울대학교도서관시스햄을본격적인다국어시스댐환경으로전환하기위한기초조사로연구의내용과범위는다옴과같다. 첫째, 기존의다국어문자처리시스템을제시하며유니코드표준분석을통해기존의코드체계에서유니코드로전환할때발생할수있는문제점들을파악한다. 둘째, 유니코드체계를적용한국내외의정보시스템및운영사례를조사 / 분석한다. 끼/ 들이

셋째, 유니코드를지원하는운영체제및응용프로그램들을조사 / 분석한다. 넷째, 서울대학교도서관의서지및시스템현황등을기초로하여유니코드로의전환에서고려해야할사항과그비용및일정등에관해제안을한다. 또한현재의도서관현황뿐만아니라앞으로서울대학교도서관에통합될여러자료들의특성까지도함께고려한다. 1.3. 활용방안및기대효과본연구를통해유니코드에대한올바른이해를할수있을것이고, 다국어문자국제표준환경에대응하기위한기초자료로이용할수있을것이다. 국내외의사례분석을통해유니코드전환시에고려해야할대처방안들을모색하고, 서울대학교도서관시스템의유니코드체계로의전환에수반되는변경요구사항을토대로운영체제, 데이터베이스, 응용어플리케이션변경및신규구축에대한효과적인대비가가능하다. q u

2. 다국어문자표현방법 2. 1. 기존의다국어문자표현방법본장에서는문자를컴퓨터에표현하기위하여제정한표준문자코드들의기본특정을살펴보고이러한표준문자코드들이다국어환경에서어떤제약점을갖게되는지기술한다. 그리고유니코드문자세트에대한기본구성과문자세트의인코딩방식에대해설명하고유니코드의제한점을기술한다. 2.1.1. ASCII 코드 ASCII 는 American Standard Code for Information Interchange 의 약자로 근대영어와다른서구유럽언어들에서사용되는로마알파뱃에기초한문자 집합과문자인코딩방식으로, 텍스트를표현하기위한컴퓨터와통신장비와, 제어장치들에서가장많이사용되고있다. 다른문자표현코드들과마찬가지로, ASCII는디지털비트패턴 (digital bit pattern) 과문자 Csymbo l/ glyph) 들간의대응관계를규정하고있어서, 이를이용하여디지털장비들이상호통신하고, 문자에기반을둔정보들을상호교환할수있다. ASCII 문자인코딩혹은그확장들은개인용컴퓨터와워크스테이션과같은대부분의컴퓨터에서사용되고있다. ASCII 는, 엄격히말해서, 문자를표현하기위해 7 비트코드만을사용한다. ASCII 가처음제정되던당시에는많은컴퓨터들이 8 비트를최소정보단위유 닛으로 (bytes, 또는더욱정확히표현하면 octets) 사용하고있었다. 8 번째비 트는보통통신라인에서에러를확인하기위해사용되는패리티비트 (parity bit) 로사용된다. 패리티를사용하지않았던많은머신들은 8 번째비트를보통 O 로채워놓았지만, PRIMOS 를구동시키는 PRIME 과같은몇몇시스템들은 - 4 -

ASCII 문자의 8 번째비트를 1 로채워놓았다. ASCII는 ANSI의전신인 ASACAmerican Standards Association) 에의해 1963 년에처음제정되었다. ASCII -1963은소문자들이없었고, 캐릿문자 (^ ) 대신에위쪽화살표 ( ) 를사용하고, 밑줄문자 (_) 대신왼쪽화살표 ( ) 를사용하 는등몇가지차이들이있었다. 1967 년에소문자가추가되었고, 몇가지제어 문자들의이름을변경하였으며, ACK 과 ESC 의 두제어문자들을소문자영역 에서제어문자영역으로이동시켰다. 많은 ASCII 변형들 Cvariants) 이있지만, 가장널리사용되는것은 ANSI X3.4-1986 이며, 이는 ECMA-6, ISO/IEC 646 1991 International Reference Version, ITU - T Recommendation T.50C09/92), RFC 20 등에서표준으로받아들여졌다. 또한, Unicode에서도최하위 128 문자로포함되어있을정도로 ASCII는널리보급된성공적인소프트례어표준으로받아들여진다. 역사적으로, ASCII 는전신코드 (telegraphic codes) 로개발되었고, Bell data services 에 의해서선전된 7 비트전신프린터로서최초로상엽적으로이용되었 다. Bell 시스댐은초기의 5 비트 Baudot 전신프린터코드에문장부호들과소 문자를더한 Fieldata project 에서나온 6 비트코드를사용할계획이었다. 하지 만, ASCII 를개발하고있던 ASA 분과위원회를참여시키게되었다. 과거전신 코드와비교했을때, 제안된 Bell 코드와 ASCII 는편리한알파뱃정렬을위해 서재배열되었고, 전신프린터외의다른장비들을위한요소들이추가되었다. 또한, ESCape 문자, 백슬래시문자 (backslash), 물결괄호문자 (curly bracket) 등을포함하는 ESCape sequence' 들도포함시켰다. ASCII 에서처음 327R 코드들은제어문자로예약되어있다. 제어문자란, 정 보를전달하기위해만들어진것이아니라, ASCII 를이용하는프린터등과같 C J

은장비들을제어하기위해고안되었다. 많은 ASCII 제어문자들은데이터패킷들을표시하거나, 데이터전송규약 ( 예를들어, ENQuiry, ACKnowledge, Negative AcKnowledge, Start Of Header, Start Of Text, End Of Text 퉁 ) 을제어한다. Printable Keyboard 8in Dec Hex Abb Representation Access Name/Meaning 0000 0000 0 00 NUL.Ul ^@ Null character 0000 0001 1 01 SOH AA Start of Header "" A 0000 0010 2 02 STX STX B Start of Text 0000 0011 3 03 ETX ETX c End of Text 0000 0100 4 04 EOT '01 D End ()f Transmission E뻐 0000 0101 5 05 ENQ A E Enquiry 0000 0110 6 06 ACK AC AF Acknowledgement 0000 0111 7 07 8EL AG Bell " 0000 1000 8 08 8S.. H 13ackspace A 0000 1001 9 09 HT r Horizontal Tab 0000 1010 10 OA LF LF. J Line feed 0000 1011 11 08 VT yl K Vertical Tab 0000 1100 12 OC FF L Form feed 0000 1101 13 OD CR CR AM Carriage return 0000 1110 14 OE SO.. N Shift Out 00α)1111 15 OF SI l 0 Shift 111 0001 0000 16 10 DLE OLE p Data Link Escape 0001 αjol 17 11 DC1 야 AQ Device Control 1 - oft. XON 0001 0010 18 12 DC2 야 R Device Control 2 0001 0011 19 13 DC3 DC: s Device Control 3 - oft. XOFF 0001 0100 20 14 DC4 DC T Device Control 4 0001 0101 21 15 NAK " U Negative Acknowledgement 0001 0110 A 22 16 SYN " V Synchronous Idle 0001 0111 23 17 ET8 '" w End of Trans. 810ck 0001 1α)() 24 18 CAN CAN x Cancel n b

αlo l 1001 25 19 EM "y End of Medium 0001 1010 26 la SUB 에 "z Substitute 0001 1011 27 lb ESC 'SC "[ or ESC 닫딩 Qg_ 0001 1100 28 lc FS FI \ File Separator αlo l 1101 29 10 GS G' Group Separator αlo l 1110 30 le RS ^^ 0001 1111 31 lf US us < 0111 1111 127 7F DEL DEL DEL or Backspace Record Separator Unit Separator Delete 표 1. ASCII 의 32 깨체어문자들 32 번코드는빈칸문자이고. 33 번에서 126 번까지는문자, 숫자, 문장부호, 기타 기호둥과같은인쇄가능한문자들이다. 8inary Oecimal Hex Graphic 8inary Oecimal Hex Graphic 8inary Oecimal Hex Graphic 0010α)()() 32 20 (blankl 0100α)()() ( ) 64 40 @ 0110 0000 96 60 00100001 33 21 0100 0001 65 41 A 0110 αjol 97 61 a 0010 0010 34 22 0100 0010 66 42 B 01100010 98 62 b 0010 0011 35 23 # 0100 0011 67 43 c 0110 0011 99 63 c 0010 0100 36 24 $ 0100 0100 68 44 D 01100100 100 64 d 0010 0101 37 25 0100 0101 69 45 E 01100101 101 65 e * 0010 0110 38 26 & 0100 0110 70 46 F 01100110 102 66 f 00100111 39 27 0100 0111 71 47 G 01100111 103 67 g 0010 1000 40 28 0100 1αm 72 48 H 0110 1αm 104 68 h 0010 1001 41 29 0100 1001 73 49 I 0110 1001 105 69 i 0010 1010 42 2A m 1010 * 74 4A J 0110 1010 106 6A j 0010 1011 43 28 + 0100 1011 75 48 K 0110 1011 107 68 k 0010 1100 44 2C, 0100 1100 76 4C L 0110 1100 108 6C l 0010 1101 45 20 0100 1101 77 40 M 0110 1101 109 60 m 0010 1110 46 2E 0100 1110 78 4E N 0110 1110 110 6E n 0010 1111 47 2F / 0100 1111 79 4F 0110 1111 111 6F 0011 0000 48 30 0 0101 αjoo 80 50 P 0111 α)()() 112 70 P 0011 αjol 49 31 l 0101 αjol 81 51 Q 이 11 αjol 113 71 q 0011 0010 50 32 2 0101 0010 82 52 R 0111 0010 114 72 r 0011 0011 51 33 3 0101 0011 83 53 S 0111 0011 115 73 g 0011 0100 52 34 4 m이 0100 84 54 T 0111 0100 116 74 t - 7 -

0011 0101 53 35 5 0101 0101 85 55 U 0111 0101 117 75 u 0011 0110 54 36 6 0101 0110 86 56 v 0111 0110 118 76 v 0011 0111 55 37 7 0101 0111 87 57 w 0111 0111 119 77 w 00111αm 56 38 8 0101 1000 88 58 x 0111 1000 120 78 x 0011 1001 57 39 9 0101 1001 89 59 Y 0111 1001 121 79 y 0011 1010 58 3A : 0101 1010 90 5A z 0111 1010 122 7A z 0011 1011 59 38. 0101 1011 91 58 0111 1011 123 78 0011 1100 60 3C 0101 1100 92 5C \ 0111 1100 124 7C 0011 1101 61 30 = 0101 1101 93 50 0111 1101 125 70 0011 1110 62 3E > 0101 1110 94 5E 0111 1110 126 7E - 0011 1111 63 3F? 0101 1111 95 5F 표 2. ASCII 의인쐐가능한품자톨 컴퓨터기술이보급되면서, 로마알파뱃을사용하는비영어권언어들을쉽게표현하기위해 ASCII의수정판들이기업들과표준화기구들에의해개발되었고, 이들중몇몇은 ASCII 확장들로간주될수있다. ASCII 확장이라는용어는 7 비 트영역에있는 ASCII 문자랩을유지하지않는모든수정판들을포함하는것파종종혼동되기도한다. IS0 646(972) 은영어편중성향을고치기위한첫번째시도였지만, 7비트문자셋을유지하였기때문에호환성문제를야기시켰다. 부가적인코드가추가되지는않았지만, 이언어종속적인수정판들에서일부코드는재배열되었다. 따라서, 어떤수정환인지알기못하면문자를알수없었고, 문자처리시스템은한가지수정판만올다룰수있었다. 결국, 기존 7 비트정보대역올벗어나서, 8 번째비트에정보를기록하여새로운 128 개의문자코드를추가하게되었다. 예를들어, IBM 는 8 비트코드페이지 들을개발하였는데, 여기서제어문자들을그래픽심별로바꾸고, 추가적인그래 픽문자들을상위 128 바이트에배당하였다. 이런코드페이지들은 IBM PC g u

제조사들에의해지원되었고, DOS 와같은운영체제에서도지원된다. 1SO/IEC 8859 와같은 8 비트표준안들이 ASCII 의 진정한확장안인데, 이들은 기존문자배열을그대로보존하고 7 비트영역을넘어서는추가값들만을추가하였다. 이런방식을통해, 더넓은영역의언어들이표현가능하게되었다. 하지만, 여전히호환성과제약들에의해곤란을겪고있지만, 지금까지도 1SO/IEC 8859-1 과기존 7 비트 ASCII는가장많이사용되는문자인코딩방식들이다. 2. 1.2. ISO 8859 1SO 8859는공식적으로는 1SO/IEC 8859로불리며, 컴퓨터사용자를위한 8 비트문자인코딩을위한 1SO 와 IEC 의공동표준안이다. 이표준안은알려진 부분에따라 1SO/IEC 8859-1, 1SO/IEC 8859-2 등과같이숫자로구분되며, 각각은비공식적으로그자체가표준으로지시될수있다. 현재는총 15 개의 부분들로구성되어있다. 967ß 의 인쇄가능한 ASCII 문자들만으로도근대영어의정보들을교환하는데 충분하지만, 로마알파뱃을사용하는대부분의다른언어들은 β( 독일어 ), O( 스 왜덴및북유럽언어들 ) 과같이, ASCII 가다룰수없는추가적인문자들을가 지고있다. 1SO 8859 는 8 번째비트를이용, 추가적인 128 개의문자들을위한 위치를배당하여이런문제를수정하려고하였다. 하지만, 단일 8 비트문자인 코딩에맞는것보다더 많은문자들이펼요해져서, 여러개의매평이개발되었 는데, 라틴문자들을포함하기위해서적어도 10 개를포함하였다. 1SO 8859 표준은조판을위해서가아니라, 신뢰할수있는정보교환을위해 - 9 -

서설계되었다. 이표준안은고품질의조판에필요한문자들을생략하였다. 결 국, 고품질의조판시스템들은 ASCII 와 ISO 8859 표준안들위에종종독자적 인확장안을이용하거나, 또는유니코드시스템올이용한다. 대부분의 IS0 8859 인코딩들은다양한유럽언어들에필요한구별기호 (diacritic) 들을제공하고 다른인코딩들은비 - 로마알파뱃들 ( 그리스어, 키릴문 자, 히브리어, 태국어 ) 들을제공한다. 하지만, 표준안은동아시아언어들 (CJK : Chinese, Japanese, and Korean) 의문자들에대한조향을만들지않았는데, 이는한자표기시스댐 (i deographic writing systems) 들이수천개의코드포 인트들을필요로하기때문이었다. 베트남어는라틴문자에기반을둔문자를사 용하지만, 베트남어는 96 위치만으로는부족하고, 일본어음절가나문자는 96 개위치에들어갈수있지만인코딩되지않았다. ISO 8859는다음과같은부분으로구성되어있다 : 1SO 8859-1 (Latin-1 or Western European) - perhaps the most widely used part of ISO 8859, covering most Western European languages: ß. 엎뽀르, ι학희쁘, 끄쁘팩, 묘파샌 (partia}l), ~ 많샌h, Fé펀뜨르효르j 펀E민5뇨 (partia1 2 ),.E쁘 nch (partia1 2 ), 딛략띤쁘,Ic밀브E빅으, Ir펀끄, 다린펴.!l, Norwegia!l, Portugues~, Rhaeto-Romaniç_,.s뜨딱샌뇨, 닐쁘센효뇨, and S쁘료되i꽉, Eastern European 렌쁘핀쁘, as well as the African languages 맏E샌쁘면 and Sw빡피. The missing 드쁘으 symbol and capital ÿ are in the revised version ISO 8859-15. The corresponding IANA-approved character set ISO-8859-1 is the default encoding for legacy 딘工따L documents and for documents transmitted via MIME messages, such as 딘TTP responses when the document s media type is "text" (as in "texνhtml"). - 10 -

IS0 8859-2 (Latiη-2 or Central European) - supports those Central and Eastern European languages that use a Roman alphabet, including E의샌끄, 드똥으끄, 덴으쁘k, 닫l으X르끄펀!l, and Hungarian. The missing 드쁘으 symbol can be found in version IS0 8859-16. IS0 8859-3 (Latin-3 or South European) - I쁘섹색, 따희보효료, and Esperanto; largely superseded by IS0 8859-9 for Turkish and 딛센뜨쁘 for Esperanto. ISO 8859-4 (Latin-4 or North European) - g학으핀효묘, Latv펴.!!, Lithuanian, Greenlandic, and ~ 효믿1. ISO 8859-5 (Cy찌 'lic) - Covers mostly Slavic languages that use a 으끄퍼 ic alphabet, including Belarusian, 묘봐g효쉰쁘, Macedonian, R브효 Slan, 닫딱핀흐!!, and 끄짝왼꾀쁘 ISO 8859-6 (Arabic) - Covers the most common Arabic language characters. Doesn t support other languages using the Arabic script. IS0 8859-7 (Greek) - Covers the modern Greek language (monotonic orthography). Can also be used for Ancient Greek written without accents or in monotonic orthography, but lacks the diacritics for oolytonic orthography. These were introduced with Unicode. IS0 8859-8 (Hebre띠 - Covers the modern Hebrew alohabet as used in Israel. 1n practice two different encodings exist, logical and visual. IS0 8859-9 (Latin-5 or Turkish) - Largely the same as IS0 8859-1, replacing the rarely used 논밀쁘미으 letters with 工쁘센섹 ones. 1t is also used for Kurdish. IS0 8859-10 (Latin-6 or Nordic) - a rearrangement of Latin-4. Considered more useful for Nordic languages. Baltic languages use - 11 -

Latin-4 more. 1SO 8859-1 1. ( ThaJ) - Contains most glyphs needed for the Thai 펀많쁘g르 ISO 8859-12 - was supposed to be Latin-7 and cover Celtic, but this draft was rejected. Numbering continued with -13. ISO 8859-13 (Latin-7or Baltic Rim) - Added some glyphs for Baltic languages which were missing from Latin-4 and Latin-6. ISO 8859-14 (Latin-8 or Celtic) - Mostly a rearrangement of the ISO 8859-12 draft. Covers Celtic languages such as Ga 르 li 으 and the Breton language. ISO 8859-15 (Latin-9) - a revision of 8859-1 that removes some little-used symbols, replacing them with the.e쁘으 symbol ε and the letters S, 5, Z, z, æ, æ, and ÿ, which completes the coverage of French and Finnish. ISO 8859-16 (Latin-10 or South-Eastern European) - Intended for 멕쁘띤 an, ι띤략샌!l, Hungarian, 끄린띄!l, 깐파sh, R으띤효nian and 학으E르man, but also Finnish, French, German and lrish Gaelic (new orthography). The focus lies more on letters than symbols. The currency sign is replaced with the 트쁘으 symbol. - 12 -

낸떤 Iι ()ët ])( - Ilcx 11 2 3 4 5 6 7 8 9 10 11 13 14 15 16 101()(]()()() 240 160 AO NBSP 10100001 241 161 A1 A 션 A t A n B A 10100010 242 162 A2 K 1ì E 6 a 10100이 1 243 163 A3 L R r Q 애 L 10100100 244 164 A4 n n n n G 디 ε 디디 n C e e 10100101 245 165 A5 L S ;Dp * c 10100110 246 166 A6 s R L I 1 K D s s 4 10100111 247 167 A7 g g g 10101αJO 250 168 A8 J L 1 0 w 10101001 251 169 A9 @ s s.'1> @ @ @ D 9 @ @ @ @ 10101010 252 170 AA a s s E Ib a s 염 R w a S 10101011 253 171 AB T G Q 11 < << a K 10101100 254 172 AC -, z 1 T K z 밍 Y z 10101101 255 173 AD 애 10101110 256 174 AE @ z z 9 @ @ U Q @ @ IR> t 10101111 257 175 AF z z u N 잉 Æ Y z 10110000 260 176 BO A B g 10110001 261 177 Bl 土 a h a E 土土土 a 土土土 1 g 10110010 262 178 B2. g g e iii G c 10110011 263 179 B3 s 3 r r 3 3 3 3 & I g 3 10110100 264 180 B4 a i 10110101 265 181 B5 p p i E u p f 10110110 266 182 B6 깨 s h ji( A 깨깨 T F M z z p m u n 에깨깨깨 & 10110111. 267 183 B7-3 P 10111000 270 184 B8 E 6 8 w i z 10111001 271 185 B9 l l 5 s fi H d u p e Q g 10111010 272 186 BA s e K 1 Q U r w s 10111011 273 187 BB t > U s >> 흥 & J >> >> 10111100 274 188 BC i i l t M n i i 1 i y (E (E 10111101 275 189 BD i N H & i 씨 & w æ æ 10111110 276 190 BE * z i 0 Y a * u g w Y Y 에 10111111 277 191 BF t t z n n >, t 0 에 æ s t t 11000000 :300 192 CO A t A A P t A A n A A A A 110αlOOI 301 Hl3 C1 A A A A C A A A A A A 11000010 302 194 C2 A A A A T B A A U A A A  1100α111 303 1% C3 A A A y A 1 c à A A F 끼- J

11000100 304 196 C4 A A A A @ j A A A n A A A A 11αlO 101 305 197 C5 A L c A x E A A A A A c 11000110 306 198 C6 Æ c c Æ u 11 z Æ Æ 1'1 E Æ Æ Æ 11αlO1l 1 307 199 C7 c c c q H c 1 E g c g 11001000 310 200 C8 E c E c III 8 E * c 11001001 311 201 C9 E E E E III E E c E E ε E E E E 11001010 312 202 CA E E E E b K E a E z E E E 11001011 313 203 CB E E E E bl!> A E E 11001100 314 204 CC E E b ι M E 에 G 11001101 315 205 CO 3 c N a K <> i 11001110 316 206 CE 10 t 11001111 317 207 CF b I R 0 g E E E E 11010000 320 208 00 B p B a II G Ð : s w B B 11010001 321 209 01 f N N 1)1 6 P N 엔 - N N N N 11010010 322 210 02 0 JÌÍ 0 0 B j 0 1 1)1 0 0 0 11010011 323 211 03 0 0 0 g r 니 1: Q 0 1 0 0 0 0 11010100 324 212 04 0 0 0 0 g T 0 0 0 0 0 0 i 11010101 325 213 05 0 0 G 0 e 6 IY 0 0 0 0 0 0 11010110 326 214 06 0 0 0 0 x 니 - @ 0 0 0 0 0 0 11010111 327 215 07 x x 3 x x 0 T x s 11011000 330 216 08 0 R G 0 H ψ @ U @ ú b 11011001 331 217 09 U ú U U A t g U 1,1 1. l U U U 11011010 332 218 OA U U U U K t U U s U U U 11011011 333 219 OB 0 0 0 0,")? 0 0 D 0 0 0 11011100 334 220 OC 0 0 0 0 M h 0 0 0 0 0 0 11011101 335 221 00 Y? ψ 0 H t? z?? E 11011110 336 222 OE p T s U 0 t s b z? p T 11011111 337 223 OF B a a B n t - B B a a B B 11100000 340 224 EO a f a a p 0 a a a a a a 111αlOO l 341 225 El a & a a c a 그 a a a a a 11100010 342 226 E2 a a a a T J j3 l a a 1 a a a a 11100011 343 227 E3 g a a y J Y a a t g a g 1 1)001 344 228 E4 a a a a φ J 6 a a 1 a a a a 11)00101 345 229 E5 a t a x F e 1 a a 1 a a a t 1110 이 10 346 230 E6 æ t e æ u 111001 1) 347 231 E7 Q c t q " æ æ L e æ æ æ c. e c c Q n 11101000 :350 232 E8 e f e e III J 8 e e f e e i 11101001 351 233 E9 e e e e l 11\ e e. e e e e - 14 -

11101010 :352 2:34 EA e e e e 'b K 1 e e - t e e e 11101011 353 235 EB e e e e bl k 3 e e e e e 용 11101100 354 236 EC e e b u 11101101 355 237 ED 3 v & r 11101110 :356 238 EE i i i i JO ~ n i i i i 11101111 357 239 EF I a I R 0 r i I I 11110000 360 240 FO 8 d d f π 1 흩 8 g 잉 a d 11110001 361 241 Fl n h n p e p n g n n n d 11 110010 362 242 F2 d ii 0 0 b c 11110011 363 243 F3 6 b 0 k r 0 꺼 b 0 e k 0 0 b p 0 b b " 0 b b b 11110100 364 244 F4 6 6 6 6 E t Ð 0 6 t 6 6 6 δ 11110101 365 245 F5 6 6 g 0 s u r 0 0 t 6 6 6 6 11110110 366 246 F6 6 6 6 6 φ 3 6 6 i 0 6 6 6 11110111 367 247 F7.. I x? n d.. s 11111αm 370 248 F8 q r @ b ψ 9 11111001 371 249 F9 j b u q.'b 띠 w u b u d u g 디 u u u 11 JJ 1010 372 250 FA j 니 i 니 lb t n u u 1 s u u u 11 1 11011 373 251 FB 0 ú 0 0 h 0 G G g n G G 디 IJJ 11 100 374 252 FC 0 n n n κ b n n n n 0 n 11111101 375 253 FD v y u n b LR~II 1 y t y y 11111110 376 254 FE b s n Y 띠 RLMI ~ b 1? b t 11111111 377 255 FF y u p K v y v 표 3.ISO-8859 의여러가지매명값톨의목쪽 : 2.1.3. ISO 2022 ISO 2022 는, 공식적으로는 ISO/IEC 2022 로서, 단일문자인코딩 (a single character encoding) 에서복합문자집합 (multiple character sets) 올포함하는 기술을명세한 ISO 표준이다. (ECMA 표준인 ECMA-35 와동일하다.) 각문자 당 8 비트를사용하는 ISO 8859 문자인코딩과달리, ISO 2022 인코딩은각 문자당 8 비트혹은 16 비트를사용하는가변길이인코딩 (variable size encoding) 을전형적으로사용한다. 몇몇문자인코딩들은 ISO 2022 의 방법올 사용하는데, 대표적인예로 ISO-2022-JP 는일본어에대한문자인코딩에서널 리사용되는방법이다. - 15 -

그리스어, 러시아어, 아랍어또는히브리어둥과같이라틴알파뱃에기반을 두지않은, 많은언어와어족들은역사적으로문자집합의 IS0 8859 롤포함하 는 8- 비트확장ASCII 인코딩으로컴퓨터에서표현되어왔다. 중국어, 일본어, 한국어와같은동아시아문자들은 8비트컴퓨터에서표현가능한문자보다더많은문자들을이용하므로, 처음에는언어종속적인 2바이트인코딩 (language-specific double byte encoding) 으로컴퓨터에서표현되었다. IS0 2022 문자인코딩들은이어서나오는문자들에대한문자집합을지시하는이스케이프시권스 (escape sequence) 를포함하고있다. 이스케이프시권스 (escape sequence) 들은 IS0 에등록되어 있으며, 종종 ASCII 이스케이프시권 스 (1 6 진수 1B, 8 진수 33) 로시작하는, 세문자들이다. 자료들을올바르게해석 하는것이가장최근에만난이스케이프시권스에달려있으므로, 이런문자인 코딩들은스캔진행방향으로선형적으로자료들이처리되어야한다. IS0 2022 문자집합들이여전히사용되고있음에도불구하고, 최신이메일소프트웨어는 UTF-8과같은유니묘드문자인코딩들을사용하는것으로변환되고있다. 2. 1.4. KS C 5601:1987 KS C 5601:1987은 94x94 의각위치 ( 행렬 ) 에한글문자를일정한순서에따 라배열해놓은문자세트를의미한다. 한글코드의 KS 제정에서완성형이채택된것은내부적으로한글의출력이모아쓰기형태로이루어지면서한자를섞어서쓸수있어야한다는사회적요구로조합형을수용하기가어려웠기때문이다. 또다른배경은국가간의정보교환을위한코드표준화과정에서 IS0 2022에서제정한코드체계에따라세계각국의문자를처리하는데기인한다. 이는 1 바이트코드로한문자표현이불가능한 CJK(Chinese, Japanese, Korean) 문자를 2바이트코드영역의첫번째영역에넣을수있도록영역을확보해야했기때문이다. - 16 -

때웰점밸섬냉이와같은 배경에 의해 KS C 5601:1982 에 의한 2 바이트 조합형 코드가, 2 바이트완성형 새로바해게된것이다. 코드인정보교환용부호에관한한글공업규격으로 KS C 5601:1987 은 완성형 한글 2, 350: 자, 한자 4, 888 자, 기술 / 학술기호 드A] 특수문자 432 자, 숫자 30 자, 한글낱자 94 자, 로마문자 52 자, 그리스문자 48 자, 패선조각 68 자, 라틴문자 27 자, 일본문자 169 자, 러시아문자 66 자등 총 8, 224자와기타사용자정의영역으로 하도록배정하고있다. ( 부록참조 ) 한글 96 자, 한자 95 자정도를사용 1987 년에떼2.2. 유니코드 2.2.1. 개요 유니코드 (Unicode) 는, 컴퓨터에저장하려는모든문서텍스트들을인코딩하기 위한방법을 제공하기위한국제 표준이다. 유니코드는오늘날실제사용되는 모든문자들과, 학자들만사용하는문자들, 또수학기호, 언어학기호, 프로그래 밍언어기호등까지 포함하고있다. 원 Geometric Shaoes 렐 M씨 l딩않뼈 s짧 E 편깐뾰브르 l 효 E 꾀괴 M 씨 IS 뼈 s 훌현굉 suoolemen 떠 I Arrows-A - 17 -

뎌 sdacina Modifier Lette 염 원 combinina Diacritical Ma 쩌 원 Braille Patterns 훤 sm 미 emental Arrows-B 햄 Greek and Cooti 때 εì1illi 때 CV 씨 때 DDlement 때빨미흐 E 훤쁘 brew 딴 ð!.. 쁘 jq 띤응 ι@ 으 힘 Th 효 ana f 휩멜맹 U E 훨 g 쁘 ~ 힐 M메없빼 isc 였않e E 園 Ð~UDDlemental 당 M씨 i잉뼈뼈 sce 잉 f 펀 :J çjk Radicals SUDDlement 띤 Kangxi R 때 icals 뤘쉽꽉 Mathematical ODerators d야떼願뼈eo 爛때or떠빼 a매삐뼈빼 Dh 에hicιcωD 야떼 e않앉때떠sc 다띠때빼 fld 때iDt m띠뼈띠ti뼈 io 댄빼 JçJK Svmb 이 s 웹필최빡쁘 f 펴뽀민으 i 으 and Punctuation E 휩맨브 khi 평 Hano 미 ComDatibilitv Jam E 힐 잉 @. 띄 1i 웹으.dïê. 훨힐 I 트 l 잉요니 웰쁘뿔 펀 5 효 E 브쁘 ~êodomofo Extended E냉좌 K a때빼빼떠때때 k애 an때뼈 a P매 hon 때떼빼하태따 ic Ex씨뼈때te G 固웰 Enclosed CJK 때 ers 훈관미 K ComDatibilitv and Months 필훌빽효 @ 민뀔폐 RJF Jnined de 뼈 Dhs Extension A 웰 Sinh 힌흐 뺑 Th 린 團 Yiiino Hexaoram 하 mb 이 S 園 CJK Unified 띠 eograd 뼈 B) - 18 -

때멜 C꾀 Il브m효잉생빽떤 @ 펑땐.9l효E 펀센빽샘띤훤투!b. 빡델쁘 oke효 윌 U 미 fied 탬QlID효믿 (E) B쁘1.Q 휩 Iillt효 )Qg_ 띤쁘쁘텅텅브b.l의띤뾰용맨a 힘댄믿응1 연 빽의i효n @ 쁘니 8) 1효L 上료 Canadian Ab 많 Khmer Svmbols 휩 Phonetic 당 tensions 웹 Latin Extended 뼈 ditional 훨앨벌 5 댄 백땐 f댄 Ð lj 때ana 빼뼈 u E빼 I lj비배 ia 뼈 rroa 떠때 a하 tes 훨 L 뼈 urroaates 빼 Private Use Area 뀐 CJK Comoatib 씨 tv 웹 A예때뼈 10 oh E 괜갱 Arabic Present 하 ion 웹 Variation Selectors 델 c mbinino Ha뼈 ks 단미때K Com 때D 떠뼈 a없때t ib 비미 빠Ii 떠꾀 small Form Variants 뀐 Ar떠때빼 a때뼈 b비뼈 i 던셋D lj벼벼 a외 Ifw 빼배뼈id 이뼈 th 때 an d빼 F마매떼비띠 IIwi 빼빼 idt 빠띠 탱딴쁘 댐 Linear B Svllabarv 훤내 ear B Ideoarams 맴 %aean Numbers 때쁘펀 lif 훤딩으 thi 으 Ideoaraohs Forms-A - 19 -

햄 Greek 당 tended 펀 General Punctuation 꾀 suoe때 ts and Subscri때 휩 currencv S 뼈 Is 뒀 c mbi 미 no Marks for Svmb이 S 맴 Le 떼 % 야 mb 이 S 헐 Number Forms 웰 E 띤쁘 떠 Mathematical Ooerators 웹 M메 i녕뼈 s f댐꾀 C@ o뼈떼띠에 ntro 에이1 Pic 이tur 미re 잃 s 떠 ootical Cha 떠 cter 헬 Eh 바찌 nc 미때 10 ose잉 d 깨A lohanume메 nc E 때 E 빡빡꽤 텀 Bock 티 ements Recoanition 굉 μg린린 ; 뼈 9빨응똥쩔쩔빨빨응똥딴웰쩔효힌탤빨 l얻봐효밑 l E떠 ~ Shavian 행빽뾰 E편히 c 뻐vor pαono 뼈 이뻐 iot 며폐폐헤Sv 씨빼 뀔평경 &zantine Musical Svmb미 S 휩 Musical Svmb이 S 델 Tai Xuan Jina 앙 mb이 S 뺑 Mathematical Alohanumeric Svmbols 때 CJK U 미 fied 띠 eoo떠 ohs 당 tension B 괜 CαCJKκK Com 빼따떼 oa 삶때삐삐 ti띠비 ib 비비떼뻐 Ii il E 뀐굉 IillJ. 효 燮 Variation Selectors Suoolement 훤 Suo미emen떼 v 빼빼 lemen떠 rv Private Use Area-A Private Use Area-B 표 4. 유니코드에포합된여러기호률의목혹 2.2.2. 개발동기유니코드는기폰의문자집합들이가지고있었던다국어환경 (mul tilingual environment) 에서의문제점들을극복하고, 이들을대체하기위해개발되었다. 유니코드개발과정에서기술적인문제점들파제한, 및비판들이있었지만, 현재유니코드는가장완벽한문자집합및가장큰문자집합중하나로인정받고있으며, 소프트웨어의국제화및다국어환경에서가장주도적인인코딩체계가되어가고있다. - 20 -

XML 과같은많은표준들및운영체계와같은시스댐소프트웨어들도텍스트 를표현하는기저체계로써유니코드를채택하고있다. ISO 8859 에의해서정의된전통적인문자인코딩방식들은세계의다양한나라들에서사용되었지만서로상호호환될수없었다. 유니코드는이러한한계를극복하려는분명한목적을가지고개발되었다. 전통적인문자인코딩이가지고있는문제점은이개언어컴퓨터처iI (bilingual computer processing) 는허용 하지만, 다국어컴퓨터처 ii (multilingual computer processing) 는허용하지않 는다는것이다. 유니코드는기본취지에서기저에있는문자들을직접인코딩하고, 해당문자 들에대한다른그립문자 (variant glyph) 는인코딩하지않는다. 중국어문자의 경우에, 어떤것이기저문자이고, 어떤것이다른그림문자이냐에대해서는논 란의소지가있다. 유니코드는각그림문자 (glyph) 가아닌, 각문자 (character) 에게한코드포인트 (code point) 를부여하는것이목적이다. 좀더일반적인용어로표현하면, 프린터에서사용되는조판변화에상관없이, 각문자 (l etter) 에게고유번호 (unique number) 를부여하는것이다. 하지만, 이런단순한목적은현존하는다른인코딩시스템들간에손실없는변환 Oossless conversion) 을제공하려할경우복잡한문제를발생시킨다. 또한, 유니코드표준은문자자질 (character properties), 텍스트정규화 (text normalization), 양방향표시순서 (bidirectional display order) 와같은많은연관내용들을포함하고있다. - 21 -

2.2.3. 매핑및인코딩 캘리포니아에근거한유니쿄드컨소시엄 (Unicode Consortium) 은유니코드표 준을개발한단체로, 회원수수료를지불활의사가있는회사및개인에게개방되어있다. 유니코드회원들에는다양한소프트웨어및하드웨어회사들이포함 되어있는데, Apple Computer, Microsoft, IBM, Xerox, HP, Adobe Systems 퉁도포함되어있다. 컨소시엄은 1991 년에 The Unicode Standard"(lSBN 032118578 1) 를 출판 하였고, 여기에기초하여표준안을계속해서내놓았다. 유니코드는세계표준화 기구 (lso : the International Organization for Standardization) 와협력하여, ISO/IEC 10646과문자목록올공유하였다. 유니코드와 ISO/IEC 10646은문자 인코딩에서는통일하지만, 유니코드표준안이더많은세부규정들을포함하고있으며, 두표준안은또한약간다른용어를사용하고있다. 0 유니코드개청안역사 1991 Unicode 1. 0 1993 Unicode 1.1 1996 Unicode 2.0 1998 Unicode 2.1 2000 Unicode 3.0 2001 Unicode 3.1 2002 Unicode 3.2 2003 Unicode 4.0 2004 Unicode 4.01-22 -

2.2.4. 저장공간, 천송및처리지금까지유니코드가사랍들이사용하는모든문자들에고유번호를부여하는수단으로써만논의되었지만, 이런고유번호숫자들이텍스트처리에서저장되는방식도또다른문제이다. 이런문제는서구의많은소프트웨어들이 8비트문자인코딩을지원하기위해개발되었고, 유니코드지원이최근에매우천천히이루어졌기때문에발생하였다. 마찬가지로, 아시아에서도 2바이트문자인코딩 (double-byte character encoding) 은원칙적으로 65,536 문자이상을표현할 수없고, 실제시스댐은훨씬적은문자들을표현하였다. 따라서, 중국어학문올위해서는매우부족하였다. 전통적인 8비트소프트웨어의내부논리연산은각문자에대해 8비트만을허용하였고, 특별한처리를거치지않고는 256 코드포인트이상을사용하는것이불가능했다. 16 비트소프트웨어는몇만개의문자들까지표현할수있었다. 하지만, 유니코드는 90, 000개이상의인코딩된문자들까지다룰수있다. 따라 서, 유니코드를구현하기위해몇가지메커니즘들이제시되었는데, 가용저장 공간과, 소스코드호환성, 이종시스탬들간의상호교환성들에기반을두고 있다. 매평 방법들은 UTF (Unicode Transformation Format) 와 UCS(Universal Character Set) 인코덩이라고불리며, UTF-32, UCS-4, UTF-16, UCS-2, UTF-8, UTF-EBCDIC과 UTF-7 이포함된다. 뒤에불어있는숫자들은 UTF 인코딩에서는하나의유닛, UCS에서는한바이트에대한비트수를나타낸다. UTF-32 또는 UCS-4에서한유닛은어떤문자에대해서도충분한용량을가 진다. 다른경우에는각문자를표현하기위해서는유닛의숫자를변화시켜야 한다. UTF-8 은내부처리에서주로사용되는 UTF-16 과 UTF-32 유니코드텍 스트들을상호교환하는인코딩방식으로, 법적요건으로명시된것은아니지 - 23 -

만, 사실상의표준안이다. 유니코드바이트순서표식 (Unicode Byte Order Mark : BOM) 은 UCS-2 와 UTF-16 인코딩에서텍스트파일의첫머리에명시되는데, 이는바이트순서가필요없는 UTF-8을포함한다른인코딩올위해서소프트웨어개발자들에의해개발되었다. BOM은 U+FEFF가사용되는데, 어떤유니코드인코딩이사용되느냐에상관없이명확한해석되는중요한자질이다. 유닛 FE와 FF는 UTF-8 에서는출현하지않는다. 또, U+FFFE 는정규문자가아니며, U+FEFF 는 넓 이가없는깨지지않는빈칸 (Zero-Width No-Break Space)" 으로화면에표시 되지않는다. UTF-8 로변환된같은문자들또한바이트일련체로 EF BB BF 가된다. 2.2.5. 기구생된품자 vs. 합생품자 (Ready-made vs. Composite Characters) 유니코드는문자형태롤수정하고, 지원되는그림문자 (glyph) 목록을확장하는 매커니즘을포함하고있다. 이것온구분기호 (diacritic mark) 들올합성하는데 사용된다. 이구분기호들은기본문자뒤에삽입되도록되어있지만, 호환성문 제로유니코드에서는많은미리합성된문자들 (precomposed characters) 을제 공하고있다. 많은경우에같은문자를인코딩하는여러가지방법이있올수 있다. 한글도이와유사한데, 유니코드는한글옴절을한글자모로구성하는방 법을제공하고있지만, 미리구성된한글옴철도역시제공하고있다. CJK 한자 (i deograph) 들도역시 현재는미리구성되어제공되지만, 대부분의 환자들도더단순한기본요소들로구성되어있으며, 원칙적으로는분해되어한 글처렵다루어질수있어야한다. 이렇게되면, 많은코드포언트를줄일수있 겠지만, 화면에보여주는것이문제가될것이다. 또한 Cangjie 와 Wubi 와같은 - 24 -

업력에있어서도같은방법을이용할수있을것이다. 하지만, 문자인코딩에서 이런방법을사용하려는시도는한자가보이는것처럼단순히분해되거나정규 적이지않다는문제때문에걸림돌이되어왔다. 2.2.6. 유니코드를사용하는시스댐기술적인문제와한계및비판에도불구하고, 유니코드는주요인코딩체계로부상했다. Microsoft Windows NT와그를기반으로한 Windows 2000 및 Windows XP는 Unicode를광범위하게사용하고있고, 내부표현으로 UTF-16 을이용하고있다. Unix계열의 GNU/Linux, BSD, Mac OS X는유니코드를받아들이되, 다국어텍스트를표현하는기반으로 UTF-8을채택하였다. 2.2.7. 업력방법 Windows XP 에서유니코드문자를입력하기위해서는, Alt 키를누른상태에 서유니코드문자의십진수값은숫자패드로입력하면된다. 예를들어서, Alt 키를누르고, 960 를입력하면, π CGreek lowercase letter p i) 가입력된다. 256 값보다작은값에대해서는, 코드페이지전환을피하기위해 0 을먼저입 력하고입력하면된다. ( 예를들어, Alt 0, 1, 6, 5 는 를표현한다.) Mac 이용자들도유니코드의 16 진수값을직접입력하는방법으로 Mac OS X 와 Mac OS 8.5 둥에서유니코드를입력하고있다. Option 키를누른상태에서 유니코드 16 진수 4 개를누른다. 야

2.3. 유니코드와판련된이슈 2.3. 1. 한글판련 유니코드에있어한글유니코드는조합형으로활용가능한한글자모 240 자와 완성형방식으로사용가능한한글 11, 172자로구성되었다. 우리의글을제대로 표현하기위해서, 옛한글은물론표현가능한문자는모두처리할수있어야하 고중요한정보처리를위해서는음절을넘어서자소단위로처리할수있어야 한다. 앞서언급한내용처럼, 유니코드는한문자를표현하기위해, 둘이상의 방식이가능하도록되어있다. 한글도마찬가지여서, 조합형과완성형을이론적 으로는지원하도록하고있다. 하지만, 현재시스댐에서는완성형을이용하는 것이대세이다. 주리정 (2001) 은이러한기본원칙아래유니코드에있어서한글코드의문제점을다음과같이언급했다. 첫째, 한글자모영역에현대한글자모와옛한글자모의배열이분리되었다는점이다. 유니코드는이영역안에서자모를초 / 중 / 종성으로나누어배열하였다. 각각의초 / 중 / 종성 안에서는현대한글자모들을가나다순으로먼저배열한다 옴다시옛한글에만쓰이는자모를가나다순으로배열했다. 이러한배열순서는 정보처리를용이하게한다는기본원칙에도위배됨은물론정렬에있어서도문 제가된다. 둘째, 한글자모영역의자모선정에기준이없다는점이다. 옛문헌에보이는문자중에서현대한글 11, 172 Àr에포함되지않는것은무조건한글자모에포함시키는둥한글자모를선정하는방법이비체계적이고비과학적이며빠진자모수도상당히었다.( 홍윤표 1995) 셋째, 옛한글의경우, 부호화하는방법만규정되어있고출력장치를위한부호 - 26 -

점이 없으며 ( 은광희 1998), 중성과종성의조합으로만들어지는불완전음절의 경우에는아예코드로지정하지않고있다. 옛한글과관련하여또다른문제점은새로운옛한글이발견되어코드영역에추가할경우기폰의자모코드값을수정하여추가하거나코드가배정되지않은기존자모코드뒤에추가해야한다. 그러나코드값의수정없이기존자모코드의뒤에새로운코드를추가할경우에는정렬에있어서문제가된다. 넷째, 구결문자의경우, 유니코드에포함시켜야하면서도새로운구결문자가 계속발견되고있다는이유로포함시키지않고있다. 현재발견된구결문자는 280 여개정도이며한자에서모양을빌려왔기때문에다른문자 ( 한자, 그림문 자, 기호문자 ) 를변형시켜표현하고있다. 물론변형을통해어느정도구결문 자의표현이가능하지만완전한표현을위해서구결문자도유니코드에포함시 켜야한다. 2.3.2. 환자판련 주리정 (2001) 은한자와관련하여다음과같은두가지문제점을지적하였다. 첫째, 기폰의표준코드인 KS C 5601:1987 과비교하여생각했을때, 한자의 정렬문제가발생한다. 유니코드이전의표준코드인 KS C 5601:1987 의 경우 한자를한자음순으로배열하고, 동음자내에서는부수별획수순으로배열하고 있어정렬을할경우에도우리가흔히사용하는한자음순으로이루어졌다. 그 러나유니코드한자는부수순으로배열되어있어정렬에문제가생긴다. 예를 들어, 유니코드로작성된刻 ( 각 ) 과街 ( 가 ) 의 경우, 刻 ( 각 ) 보다街 ( 가 ) 가선행되어 정렬되지않고 2 획의 IJ( 도 ) 가부수인刻 ( 각 ) 이 6 획의行 ( 행 ) 이부수인街 ( 가 ) 보 다선행하여정렬된다. 둘째, 두가지이상의음을가지는한자의배열문제를언급하였는데, 예를들 - 27 -

어, 車 ( 차 ) 의경우車 ( 거 ) 라고읽을수도었다. 이러한경우, 기존의 KS C 5601:1987 완성형에서는상이한음모두를코드체계에수용하였다. 이는한자의정렬과해당한자를발음에따라한글로변환하는데에있어서모호성을제거하기위함이었다. 그러나, 이러한구분은우리나라에서만의미있는것으로유니코드의경우, 한중일통합한자영역에상이한음중대표적인음인車 ( 차 ) 만을수용하였고, 車 ( 거 ) 는기존 KS C 5601:1987 표준과의변환올위해배정된유니코드의호환 한자영역에배치하였다. 따라서, 두가지이상의음을가지는동형이음한자의경우, 음의차이를구별하기위해별도로처리대책을마련해야한다. - 28 -

F900 CJKCompa 띠 bility Ideographs F9FF......................... I'ICI FlIO FSll FIl2 F93 F94 FIl5 FlI6 F97 F98 FSISI FiA FSIB F9C F9D FSIE F9F 0 i l ι- - 韓 - 蠻 b 촬 l 짧繼. t C 殺전 l 戀 쫓 * q 암燈類써, 蘭 민 짧 E 첼 f 협 ~ 때 A 떠팬率 - 辰女 熟 說훌 n 했풍,.. 1...... - L / 키 ~ I 憐..... - - -- -- - - "'",...., fifl_ 2 車傑혐상總현딸빼 l 몇沈 % 휠 j 힘야 E 휩쫓 a 젖 k 장낀웠흙......,............... '"" F1II..,.........,......... - l.. "'",..... 3 f&f4; 쩨앓 짧 u? 짧효弄 tljj 北 f 슴旅 뺑 li J 흥찮 l 젤 핸 t 尼뚫홉 V 骨樂힘찮 ~ι; R 4gt늪 5 깐헐 6짧若 i훤 E멘 % 선 ffë f패쐐. 4 木,.,.....!.... POC,...... s * 洛 fi: 돼廳햄. 겸쏠 f 更 fjt 떠홉키r 은 % 숭쩌l? 電검암쩌..,.. r#......... "'",. 1... 1ft 6 짧없월 E흉 2p: E찾 1R $ 깝 I원j 練 R앓 d뽑 Y옮 Ht I~ 값.................. I'ICI,.... 7 龜 f징했옳路 4ijIi 쌓까 ; 낱 ~ 짤훌없 % } 敏땐쁨劉 tfnì 흥.................... v.,." "",...' - -IICJ '" 짧 ì'!-.. - 썼E tμí~ nã - 쓰i 흉 泌 Hi -- -- 8.. 麗첩쫓 J J 훌훌뺨 { t뀐짜훤펀 -.. - '" -.. 9 셋햄 8 UJJ 젠 없 l 찢數 {Jj~ f 짧運 쉐 t 극 U 듀 J. 뼈 [l, t 맺 'i1. p A 짚 F 핑 % i 良풋갖만,_,.. - -- -- - -I'ICI... u번 J --, 遭素梁 )J i 별寧 r 流갱 F 離 ~J~..............,..........,. I'ICI - -,.. i - - 8 陳 옮L a앉없i 魔 - 한쏟參 뭘 } 흙 ~ 상칩 R홈 j짧率 했.~...... c ~ Jj}[i 앙 r) 綠 { 樓 樂혔등 R 歷갖 IJ 얘i 혔혜t 隆 i 弱識,1< litc,.,..., '".....,... t..,..., t..,.e IOC - D 懶爛來綠 따- u 若 'ti a ~--... 잉훌첼켓 ; 터t DR 留利 : 홉,..,. fr 1... 1 1..... 1-1,... 1-... 1-...,..... 1.... E 1 賴爛冷것옳 it 돼 f't 葉 H3: 쳐 i n 뼈 ; 썰 *~t % 묘 * t 45........ - -,......... - --... - - F 隱 - 蘭勞錄累 g 휴 E 說짧 h i 憐펙 i 樂써 t )(\l E 찮刺.. 1- -1,.. -.. -- t 1,.. 1,ø --- 466 TIIe l 찌 codt Sltmdard 4.0. CtJpyrlgIrl C 199I-1fJ01. UrrkodI.I"". AI1 째.,.... _. 그렴 2. 유니코드의 CJK Ideograph 호환영역 - 1-29 -

FAI 뻐 ÇJK Compatibility Ideographs FAFF TIIt 야 * 잉 d~'slølldørd 4.0. Q f1yr 힘 '" C 1991-1001. Urrkød~. jjc. 씨 ~, 행 18,ø rml. 467 그림 3. 유니코드의 CJK Ideograph 효환영역 - 2-30 -

3. 유니코드시스댐구축 유니코드구축을위해서는기본적으로서버 OS 및클라이언트 PC 의운영체제 가유니코드를지원하여야한다. 또한, 유니코드를지원하는 KORMARC 형식이 제정되어야한다. 이와같은기본인프라를구축하면, 데이터와프로그램을변 환하는작업을수행하면된다. 데이터변환은 DBMS 데이터변환과검색엔진 데이터재생성이있고, 프로그램변환에는서버쪽에서운영되는미들례어프로 그램이나클라이언트쪽에서운영되는어플리케이션프로그램을모두변환하여 야한다. 다음은일반적인유니코드시스템구축절차를도식화한것이다. 이 는크게기본인프라구축과실제전환절차, 전환후관리등으로나누어볼 수있다. 서버. 얼그레이드빼메.21 그레이드 1 3 l- 그림 4. 유니코드시스댐체계구축절차 3.1. 기본인프라구축 3.1.1. 업무용 PC 업그레이드및클라이언트 OS 업그레이드 KS C 5601:1987 체계에서유니코드를지원하기위해서는서버와클라이언트 및 PC 둥의환경이유니코드지원환경으로전환하여야한다. 이때웹기반의인

대다수의클라이언트와 PC 둥은별문제가되지않는다. 웹기반은서버의지 원이 이루지고, 클라이언트 05 가유니코드를지원하면, 클라이언트의별다른 프로그램셜치없이유니코드가지원될수있다. 이를제대로지원하기위해서 는클라이언트와 PC 의 업그레이드가필수이다. 유니코드를지원하기위해서는 클라이언트의운영체제를 Windows XP 로업그레이드하거나새로설치를하여 야한다. 이때개인의사양에따라 Windows XP 로의전환 (Migration) 여부를 알아볼수있다. 아래는 Microsoft 사에서권고하는 Windows XP 사양이다. Windows XP Home Edition Windows XP Professional 참고사이트필요사양참고사이트필요사양 내용 http://www.microsoft.com/korea/windowsxp/home/howtobuy/up grading/ sysreqs.asp 300 MHz 이상의프로세서속도권장 ; 최소 *233 MHz; Intel Pentium/Celeron 제품군. AMD K6/ Athlon/Duron 제품군, 또는호환가놓프로쩨서권장 128 MB 이상의 RAM 권장 ( 최소 64 MB 지원 ; 단성능과일부기놓에제한이갈수있음 ) 1.5 GB의사용가능한하드디스크공간 * Super VGA (800 x 600) 이상의혜상도률갖춘비디오어댐터와모니터 CD-ROM 또는 DVD 드라이브 키보드와 Microsoft 마우스또는호환가능한포인탱장치 http://www.microsoft.com/korea/windowsxp/pro/evaluation/sysr eqs.asp 300 MHz 속도이상의프로째서훌가진 PC 권장 ; 최소 233 MHz 펼요 ( 단일또는이충프로세서시스댐 ); *Intel Penti um/celeron 제품군또는 AMD K6/ Athlon/Duron 제품군, 또는호환가능프로세서권장 128 메가바이트 (MB) 이상의 RAM 권장 ( 최소한 64 MB가지원되어야하며, 이경우일부기능의사용에제약율받율수있음 ) 1.5 기가바이트 (GB) 의가용하드디스크공간 * Super VGA (800 x 600) 이상의혜상도률갖춘비디오어댐터 m ι

와모니터 CD-ROM 또는 DVD 드라이브 키보드와 Microsoft 마우스또는호환가능한포인팅장치 표 5. Microsoft XP 를설치하기위한 PC 권고사양 클라이언트및 PC 의운영체제를업그레이드한후, XP 내에있는 Global IMEOnput Method Editor) 를다운받아설치하여, 다국어및한자입력이편리 하도록하여야한다.IME는동아시아 ( 한국, 중국, 일본 ) 여러나라의다양한문자들을특수키보드를사용하지않고도입력이가능하도록해주는프로그램이다. 3.1.2. 서버 08 업그레이드 유니코드를지원하는주요운영체제의목록은다음과같다. 유니코드시스템으 로전환하기위해서는서버 08 를 Solaris 2.8, 8 과 HP-UX l1i 등과같은최 신버전으로업그레이드해야한다. 왜냐하면, 최신의운영체제를도입하여야 최근의유니코드버전을지원할수있기때문이다. 다음은제작사와유니코드 지원 OS 의목록이다. etc... Inferno by Vita Nuova I Java OS Symbian Platform 표 6. 유니코드지원운영체제목록 이m

3.2. 실제전환절차 3.2.1. 데이터베이스의유니코드전환 유니코드기반의데이터베이스를생성하는방법은각각의 DBMS(DataBase Management System) 에따라서다르다. 그러나, 대부분의상용데이터베이스 는 Character Set 혹은 Locale 설정, 언어둥의값에대한설정만을변경하여 주면, 유니코드를지원할수있도록설계되어있다. 따라서, 실제전환 (Migration) 단계를중심으로, 전환전고려사항, 실제스키마전환, 전환후 고려사향을포함한 3 단계의전환단계를생각할수있다. 이 3 단계에서전환 전고려사항을엔코딩방식선택과전환할칼럼식별로세분화해서 5 단계의절 차를생각해볼수있다. 일반적으로 KS C 5601:1987 문자셋을사용하는 DBMS 률유니코드를지원하 는 DB로전환하기위해서는다음과같은 5단계의절차를거친다. 아래는 DBMS를유니코드를지원하는 DB로전환하기위한 5단계의세부사항을기술하고있다. 거의모든 DBMS의유니코드전환에대한일반적인절차라할수있겠다. 톨.1 유니코드엔코텅방식션택 :"I!t~~ 를 i 흩 ; 활홉식벌 그렴 5. DBMS 의유니코드전환절차 - 34 -

첫째, 유니코드의엔코딩방식선택 (Choosing the Unicode Character Set) 을 위한기준올마련해야한다. 유니코드데이터는 UTF-16 과 UTF-8 로인코딩 될수있다. 다음과같은선택기준을바탕으로, 적합한엔코딩방식을결정할 수있다. 공간효율성 (Space Efficiency) 영어와유럽권언어들은 UTF-8로인코딩하면 1 바이트를점유하기때문에효율적인반면, 아시아권언어는 3바이트를점유한다. 따라서, 아시아권언어는 UTF-16으로인코딩하면모두 2바이트 로언코딩하는것이효율적이라고볼수있다. 스트링처리속도 (String processing speed) UTF-16 이일반적으로 UTF-8 보다스트링처리속도가빠르다. 따라서 UTF-16 이처리속도에서우위에있다고볼수있다. 확장문자지원 (Supplementary Character support) 오라클 9i 에서 UTF-8 은확장문자셋 (Planel, Plane2) 을지원하 지않는다. 대신 UTF-16만을지원한다. 자바 (Java) 와윈도우어플리케이션자바와윈도우환경은기본적으로 UTF-16으로인코딩되어있기때문에 UTF-16을사용하면별도의컨버천은필요하지않다. 둘째, DBMS에서유니코드데이터자체는전면혹은부분적인전환모두를허용한다. 제한된몇개의컬럼만유니쿄드를사용할경우부분적인유니코드전환만으로도충분하다고볼수있다. 그러나, 전면적인전환이필요할경우는시스댐스키마, 시스템영역을제외한모든영역이 NCHAR 포뱃으로변화됨을나타낸다. 야ω

셋째, DBMS 룰전환하기위해일반적으로고려해야할사항들을체크해야한 다. 아래와같은일반적인사항은대부분의 DBMS 전환 (Migration) 에서고려되 어야하는사항이다. 유니코드를위한전환에서실제고려되어야할사항은다 음과같다. Constr려nts Primary key와 같은 constraints는 전환을 수행하기 전에 disable시켜야한다. 즉, constraint를 disable하거나, drop 시킨 후 수행을하여야 한다. 동시에 두 테이블 이상을 참조하는 constraints가있을경우각각의테이블올동시에전환하여야한 다. Column의최대허용크기 CHARlNCHAR는 2000 바이트 VARCHAR2~VARCHAR2는 4000 바이트가최대허용가능한크기이다. 기존 1 바이트로표현 되던문자가 UTF-16 인경우보통 2바이트, U:rF-8 인경우 1 바 이트에서 3 바이트까지표현된다. 따라서, column 의 넘어서는경우가생기지않도록주의하여야한다. 최대크기를 최대크기가 넘어서는경우 NCHARlNVARCHAR2 대신에 NCLOB 데이터타 업의사용을고려해보아야한다. Triggers 유니코드전환과정에서전환되는테이블과관련있는 Triggers 는 전환전에 disable되거나 drop 되어야할필요가있다. Partition 저장구조를변경시켜야하는파티션된 column을유니코드로전환하는것은매우복잡한일이다. 따라서, 전환할테이블을 - 36 -

export 한후유니코드데이터타입으로칼럼을변경한후 import 하는방법을추천한다. 넷째, DBMS 어폴리케이션을유니코드로전환하기전에스키마전환을하여야 한다. 다음과같은 2 가지전환법이존재한다.COracle 데이터베이스의예 ) A1ter table SQL 우선, alter table' SQL 명령이용하는방법으로, alter table SQL 명령을이용하여기존의 CHAR나 VARCHAR2를 NCHAR/NVARCHAR2로변경하거나 NCHAR/NVARCHAR2 칼럼을테이블에추가하는것이다. 예를들어다음과같은스키마가있다고가정하여보자. student( student_number NUMBER(4), name VARCHAR2(1 0), major VARCHAR2 ) 위와같은테이블에서학교필드를추가한다고하였을때사용하는 SQL 문은다음과같다. AL TER TABLE student MODIFY(schoo) NV ARCHAR2(20)); 이때, 해당컬럼에인텍스가잡혀있을경우, 데이터변환에많은 시간이소모된다. 따라서, 매우많은데이터를가진테이블의경우, 인텍스를 drop 시켜서없애버린후 ALTER TABLE SQL을수행하고, 다시인텍스를잡아주는방법을추천한다. 그리고, 위와같은방법은 CHAR와 VARCHAR2 타입에는적용이가능하지만, CLOB 같은타업에는적용할수없다. q 7 u l

Online table redefinition ALTER TABLE SQL 에 의한데이터변환이장시간소요되는 경우가많아, 이러한경우서비스중단의원인이된다. 이러한문 제를해결하기위하여, DBMS_REDEFINITION 프로시저의활용을 생각해볼수있다. 위에서언급한 alter table' 방법과 Online table redefinition 각각의특정과장, 단점은다옴과같다. --- Alter table Online table Redefinition 많온양의데이터훌가진칼럼에빠르사용하기쉽고제약조건이적다. 다. Column Definition뽕아니라 Data률도한번에여러칼렴을 migration할수있 NCHAR 로 Convert 한다. 다. NCHAR, NVARCHAR2 일때 Column length 가 2000, 4000 bytes 이므로 Table fragmentation 올피할수있다. 륙정 Mi 앤 gr 대 a 와 t ion 시 l SIZE 톨넘게되면 (space 률절약할수있고, data access NCLOB 데이터타입으로의변경도생가더빠르다.) 각올해본다. Migration 하는도중 DML 작업을할수 었다. dob datatype 율 바꾸는데쓰일수있다. 표 7. 떼이터떼이스태이률변환융위한두명령어간의비교 ndob datatype 으로 다섯째, 변환을마친후에는변환전에변경해놓았던항목에대하여주의깊 게원래의상태로회복올시켜주어야한다. 변환전에고려되었던항목은다음 과같다. _ 38 _

항목 내용 인텍스 (Index) 데이터전환전에 Drop 한인펙스는반드시재생성해주어야한다. 제약 ( Constraints) 천환을위해서 disable 시킨 constraints 는 enable 시킨다. 트리거 (Trigger) 전환율위해서 disable 시킨 trigger 률 enable 시킨다. 중복 (Replication) 전환된칼럼이여러 DBMS 사스댐에중복된 Replication 테이터라 연, 이에따흔풍기화작업을수행하여야한다. 표 8. 데이터때이스외변환천고려항목 위의 5 단계작업외에도데이터의질적향상을위해서 데이터고품질화 작업 올생각해볼수있다. 고품질화작업은데이터의 Sort 와관련된것 (Data 자체 및 Index 관련 ) 과움라우트문자입력문제동을생각해볼수있다. 3.2.2. 검색앤진 검색엔진데이터는검색속도향상을위하여, DB 에서추출한자료들을사용하 기때문에현재운용중인 KS C 5601:1987 기반의검색엔진데이터를유니코 드체계로변화시키는것이아니라유니코드로변환된 DB로부터새로이데이터를생성하는것이다. 이는신규로모든데이터를생성함으로써보다최적화된검색엔진데이터구성이가능하기때문이다. 아래는유니코드지원버전과엔코딩방식에따른검색엔진의제품별특정이다. Verity K2 Unicode 3.0 UTF-8 다셈 21 Unicode 2.0 UTF-8 Konan DOCRUZE Unicode 3.0 (2005.2 월부터 ) UTF-8 색인구축가능 Search Formula-l I Unicode 3.0 UTF-8 색인구축가농 표 9. 검색앤진의제품별륙정 - 39 -

다국어로입력된자료률검색시스댐에서검색하고자하는경우시스댐은이용자로하여금유사한영어자모를쉽게검색할수있도록해주어야한다. 즉독일어의경우 U 가있고움라우트가있는 n 가있올수었다. 이때실제목록자료는 ü 로되어있는경우이용자는 U 를입력하여검색올실행하더라도해당 목록이검색될수있도록처리하는기능올지원해야한다. 이렇게해야하는 이유는융라우트를글자판에서직접입력하지못하고문자표둥을이용해야하는경우가대부분이기때문이다. 따라서, 시스댐은 η 와 U 풍의모든경우를처리하는방향으로개발하여야한다. 위와같이다국어에대한색인작성규칙을다음과같이보다명확하게하여야한다. Unicode에서지원되는다국어는 80여개에이른다. 그러나, 현실적으로우리가시스탬을개발하는데있어모든언어를다고려할수없다. 따라서, 대략 5-7 개언어를목표로개발을하는것이필요하다. 시스템에서지원한다는것은문자의입력과는무관하며입력된문자를가지고색인어를만들고검색어롤처리 하는데만영향올미친다. 즉, 입력된글자가문자나숫자이면그대로색인어를 만들고기호나특수문자, 공백이면삭제한다. 또한라틴계열언어중 éàùç 둥과 같은문자는 eauc 퉁으로바꿔서색언어를생성한다. 입력작업시기본적으로 os 에서지원되는압력기를이용하여모든다국어의 문자는입력할수있다. 키보드에서바로입력할수없는확장문자나부호, 기 호, 특수문자동은 문자표입력기능 올지원하여입력작업올수행하도록한 다. 색인어생성시 색언어를만들고자하는문자열에공백이나기호, 부호, 특수 문자둥이포함되어있으면이는제거하고만든다. 글자에악상떼기나움라우트 - 40 -

등의기호가결합된문자는유사한문자로변경하여색인을생성한다. 검색시, 검색어로입력된문자열은위에서언급한동일한방법을따른다. 3.3. 전환후판리 유니코드기반시스댐과 KS C 5601:1987 기반시스템사이에는많은데이터 교환이근본적으로발생한다. 이러한데이터의교환을자연스럽게지원하기위 해서는국립중앙도서관을유니코드사용기관으로보았을때 외부기관들에따 라아래와같이하면된다. 잃뽑픈흔 r 연외부기관의반입시외부기관으로반출시 유니묘드파일사용기관별도의변환없이바로반입별도의변환없이바로반출 KS C 5601:1987 파일해당파일을유니코드로해당파일을유니코드로자동변환 사용기관자동변환후반입 ( 데이터손실발생할수있음 ) 표 10. 외부기판별반입 / 반출융위한파일형식 그밖에 데이터고품질화를위한데이터및인텍스정렬과움라우트입력에 따른문제는오라클데이터베이스에서의다국어전환에서다루어져있으므로 참조를바란다. 3.4. 오라클과데이터베이스에셔다국어전환 ( 세부사항포함 ) 3.4.1. Multilingual Support Database 의기본 Architecture 다국어로된서비스와자원을제공하고자할경우, 개별언어별로시스템을구축하는것은구축과관리측면에서의비용증가가 Business의효율성을저하시 킬것이다. 여기에대한대안이 I18N(lnternationalization), LlON (Localization) 에기초한 Multilingual Support Database를구축하는것이다. 아래는 Multilingual Support Database 에서의 Client/Server 의 개요를나타낸구성도 - 41 -

이다. 훌 ; Fr.n 야, Clont (WE8 뻐 88 1!11 Pl) 그렴 6. ClientlServer 의다국어지원데이터베이스 그렴 7. 다계충환경의다국어지훨쩨이터빼이스 Globalization/Multilingual Support Database 의실제구축작업에있어서는 DB 뿐만아니라시스댐작업환경에대해세부적으로고려해야할사항이매우 - 42 -

많아진다. 아래는세부적으로고려되어야할실제적인요소들에대한내용이다. 3.4.2. 유니코드 (Unicode) 와오라클의유니코드지원 대표적으로사용되는유니코드로는 UTF-8, UCS-2. UTF-16 이 있으며각각 의특정과장단점을도표로나타내면다음과같다. 가변잃이 - 유럽어 : 1-2 UTF-8 1 8 bit 1 - 아시아어 : 3{ 대부룬 ) ASCII 보충 (supplementary) character : 4 byte 가변길이므로유럽어저장시공간울덜차지한다. ASCII 의 SupersetOI 므로 ASCII 에서마이그레이션이쉽다. 고정길이 - 유럽어 : 2 byte UCS-2 116 bit 1 - Of 시아어 : 2 byte. 보충 (supplementary) character : 지원만함 아시아어저장시공간물덜차지한다. JavaU Microsoft 클라이언트와효환성이졸다. 고정길이 - 유럽어 : 2 UTF-16116 bitl - Of 시아어 : 2 UCS-2 보충 (supplementary) character : 4 byte 아시아어률저장시공간울덜차지한다. Java나 Microsoft 클라이언트와호환성이좋다. 표 11. 유니코드전송방식별혹정 가변길이는언어마다한글자가차지하는길이 (byte) 가다르다는것을말하 고, 고정길이는언어에관계없이한글자가차지하는길이는동일하다는것을 의미한다. 각유니코드별장점도이러한특성을고려하면쉽게이해할수있을 것이다. 오라클의경우 V7 에서는유니코드버전 1. 1 을지원하는 AL24UTFFSS - V7-43 -

에서만사용가능 - 도입하면서유니코드를지원하기시작하였고 V8 에서유니코 드버전 2.0 을지원하는 UTF-8 이도입되고 V9 에서는유니코드버전 3.1 을지 원하는 AL32UTF-8 / AL16UTF-16 이도입되어유니코드를지원하고있다. 자세한것은아래표를보면알수있다. ι r ι ιι ι ι 서 ιf ν ι ι ι, ri,; / (ι ι~t< "γ Yι/ ;? ιυ 7 Y ι ιl 지 :g 1! 뻐 I~ 쉴인Q 정월딩양 ι유u 코드버전 Database character set National character set AL24UTFFSS 7.2-8i UTF-8 1.1 지원지원안함 UTF-8 8.0-9i UTF-8 8.0-8. 1.6 : 2.1 8.1.701 후 : 3.0 UTFE 8.0-9i UTF-8 8.0-8.1.6 : 2.1 8.1.701 후 : 3.0 9iR1 : 3.0 AL32UTF-8 9i UFT-8 9iR2 : 3.1 9iR1 : 3.0 A116UTF-16 9i UFT-16 9 i R2 : 3_j 표 12. Oracle 의버천별유니코드지원현황 지원 9i 만지원 지원 지원안함 지원 지원안함 지원안함 지원 3.4.3. 다국어지원을위한데이터베이스구축방안 지금까지유니코드와오라클에서지원하는유니코드에대해서살펴보았다. 다 국어를지원하는데이터베이스를생성하기위해서오라클에서지원하는두가 지 방법이있는데하나는유니코드를데이터베이스 character set 으로지정해 서유니코드데이터베이스를구축하는방법이고, 다른하나는데이터베이스 character set에관계없이 NCHAR (National Character) 데이터타입을이용하는방법이다. 오라클 9i부터 NCHAR 데이터타입에유니코드 character set을지정할수있게되었으므로두번째방법은 9i부터고려할수있는방법이다. 비교적방법자체는간단하다고할수있다. 데이터베이스생성시데이터베 - 44 -

이스 character set 에유니코드를지정해서 char 나 varchar2 에다국어를저장 하거나데이터베이스의 character set 을변경하지않고다국어를저장할칼럼 을 NCHAR (National Character) 데이터타입으로설정해서다국어를저장하면 된다. 그렇지만방법을결정함에있어서프로그래밍환경 마이그레이션의용이 성, 성능, 데이터타입, 어플리케이션의타입등많은요소들을고려해야하기 때문에결코쉬운일은아니다. 이제부터두방법을사용할때 어떤 character set 을지정하는것이유리한 가를살펴볼것이다. 유니코드데이터베이스구축하면서지정가능한 character set 은 UTF-8, AL32UTF-8, UTFE 이다. UTF-8 과 AL32UTF-8 은유니코드 에서지정한 UTF-8 과거의동일특성을가지고있는데 UTF-8 의 경우는보충 (supplementary) character 가 6byte 를차지한다는점이다르다. UTFE 는 EBDIC platform 을위한것이므로일단논외로하겠다. 남은 UTF-8 과 AL32UTF-8 중에서 UTF-8 과통일한특성을지닌 AL32UTF-8 을사용할것 을권장한다. AL32UTF-8 은보충 (supplementary) character 가 4byte 를차지 하므로 UTF-8 에비해서공간을덜차지하고유니코드에서정한 UTF-8과도 동일하기 - 유니코드 3.1 기준에맞기 - 때문에보충 (supplementary) character 를처리하면서 data conversion 의부하가발생하지않기때문이다. NCHAR 데이터타업의 character set 은데이터베이스생성시 NATIONAL CHARACTER SET 에지정된값에따르며 UTF-8 과 AL16UTF-16 을지정할 수있다. UTF-8 은가변길이기때문에스토라지를절약할수있지만처리시 스페이스를붙이는부하가생기며 AL1 6UTF-16 은고정길이이기때문에처리 시스페이스를붙이는부하는없지만스토리지의낭비를초래할수도었다. 따 라서 저장한언어가주로어느나라언어인지성능과스토리지절약중어떤 것에중점을둘것인가를고려해서결정해야한다. 까%

여러고려요소들올떠나서가장이상적인방법은 AL32UTF-8 을 database character set 으로정하고 UTF-8 을지원하는언어로프로그램을개발해서 character set conversion 이없이데이터가오가는것이다. 3.4.4. 스키마셜계시고려해야할점과떼이터타업 테이블셜계시고려할점으로는, 다국어를저장하고자할경우언어별로칼 럼을달리해서저장하는방법, 특정칼럼에모두저장하는방법을생각할수있 다. 업무의특성과여러요인을고려하여방법을선택해야겠지만가장이상적 인방법은동일칼럼에모두저장하는방식이다. 그렇지만이경우칼럼에있는 데이터만으로는어느언어인지알수없으므로언어정보를관리할칼럼을추가 해서셜계해야한다. 이러한언어정보칼럼의추가는다음연재에서다루어질 Linguistic sort 와도밀접한관계를가지며특정언어로된데이터만을검색하 고자하는요구를만족시킬수있는유일한방법이다. 데이터타입을정할때고려해야하는요소는다음과같다. 데이터타입과길 이를정할때는 database character set 에가변길이인 UTF-8 / AL32UTF-8만지정할수있다는한계점을인식하고접근하는것이좋다. V9 R2에서부터문자데이터타입의경우데이터의길이를기술함에있어서 BYTE 또는 CHAR이라는키워드를사용하여 BYTE 단위또는문자단위로기술할수가있다. NCHAR 데이터타입의경우는문자단위로밖에길이를기술할수없다. 사용상의주의점은데이터타입과길이기술방식모두에관계가있으므로각길이기술방식에대해서알아보자. 간단한사용예를보이면다음과같다. 예 ) CREATE TABLE lang_test - 46 -

(ename 1 CHAR(4), ename2 CHAR(4 CHAR), ename3 VARCHAR2(4), ename4 VARCHAR2(4 CHAR), ename5 NCHAR(4), ename7 NVARCHAR2(4) ) 그렇다면발생할수있는경우의수뜰에대해서길이를 4byte 또는문자 4 개 로주고 a 엔 이라는데이터를 insert 한경우 lengtho 와 lengthbo 의결과가 어떻게나타나는지에대해서살펴보자. UTF-8 I AL32UTF-8 길이 4 4 4 4 4 4 4 4 입력데이터 a 멘 a 맨 I '8 엔 a 엔 I '8 엔 '8 엔 a 엔 a 엔. 저장테이터 a 엔. a 엔 bb a 엔 a 엔 a 맨 bb I '8 엔 bb' I a 엔, I a 엔 Length 2 4 2 2 4 4 4 2 Lengthb 4 6 4 4 6 8 4 4 테이훌륭에 12-UTF-8 만들어지는 4 16-AL32UTF-1 12 I 8 I 12 I 8 컬럼킬이 8 표 13. Oracle 자료형별륙징 (. b 는공빽율뭇합.) 여러결과를종합해보면다음과같은결론을내릴수있다. CHAR 데이터타 입의경우우리가잘알고있듯이길이의선언방식에관계없이기술된길이보 다작으면정해진길이가될때까지채운다. 이때채우는길이가다른데 byte 의경우는부족한 byte 만픔스페이스를채우고문자개수의경우는부족한문 자개수만큼스페이스를채우며스페이스가차지하는 길이는해당 character - 47 -

set 의최소길이다. 좀더거시적인관점에서얘기한다면 CHAR 이므로정해진 길이보다모자란부분은스페이스로채운다. 사용상의주의점에대해서알아보자. VARCHAR2/NVARCHAR2 의경우는 가변길이이므로발생할데이터의전체길이에맞게길이를잘정하는것외에 는사용상에주의점은없다. 그러나고정길이인 CHAR!NCHAR 의 경우는다 르다. 길이를문자개수로선언하거나데이터타입을 NCHAR 로선언한경우 해당컬럼내에서언어에따라서길이가달라지므로값을비교할경우길이가다른 CHAR 타입을비교할때와마찬가지로스페이스패딩이일어난다. 따라서 CHAR 타입을사용할경우는 byte로길이를명시하고 NCHAR를사용하고자할경우는 character set을 AL1 6UTF-16으로하여저장및비교시스페이스패딩의부하를최소화하여야한다. 나아가서는 CHAR나 NCHAR 보다는 VARCHAR2, NVARCHAR2를사용하여스페이스패딩부하와저장공간낭비를줄이는것이좋다. 3.4.5. 클라이언트의 NLS_LANG 셜청다국어데이터베이스를구축하기위해서서버쪽에서어떻게할것인가에대해서살펴보았다. 그렇다면클라이언트의경우를알아보자. 직접적인방법을언급하기에앞서 NLS_LANG의역할을살펴보자. NLS_LANG에 Language, Territory, Characterset을기술하게된다. 이중에서 Language는오라클의메시지나요일이나월등을나타내는언어를의미하고 Territory는통화나숫자를나타내는형식, 주 (week) 를계산하는방식을의미하며 Characterset은클라이언트의 character set을의미한다. 오라클은 NLS_LANG 에설정된 Characterset 의 값이클라이언트의 O/S 또는 클라이언트프로그램의 character set 설정에맞게설정되어있는지확인하지 _ 48 _

않는다. 따라서클라이언트의 character set 이 오라클데이터베이스와다를지 라도 NLS_LANG 이데이터베이스의 character set 과동일하게설정되어있으 면 character set conversion 을하지않고데이터를저장하게된다. 이렇게되 면손상된데이터가저장되게되므로 Characterset 의설정에주의해야한다. 따라서 NLS_LANG에설정된 Characterset의값은클라이언트의 O/S 또는클라이언트프로그램의 character set에맞게설정을해주어야한다. 그렇다면 클라이언트의 character set은무엇에의해서결정될까? 윈도우의경우는 ACP (ANSI Code Page) 에의해서결정되고 Unix의경우는터미널의 character set 에 의해서결정된다. 윈도우의경우는윈도우화면에서와도스프롬프트에서의 ACP가다른경우 - 한글윈도우의경우는같다 - 가있으므로설정에주의해야한다. 윈도우화변에서의 ACP는 HKEY _LOCAL_MACHINE SYSTEM CurrentControlSet Control Nls CodePage ACP 라는레지스트리정보를이용하면알수있고, 도스프롬프트에서는 chcp라는명령을통해서알수있 다. 이렇게하면코드값이나오는데한글윈도우에서는 949 이고이는오라클 character set 중에서 K016MSWIN949 에해당된다. 값과오라클 character set 의매핑에대한정보는 Globalization support 를참조하면된다. 유닉스의 경우는터미널의환경정보를이용하면된다. NLS_LANG 의 Characterset 을설정함에있어서반드시클라이언트의 O/S character set 을따라야하는것은아니다. 클라이언트에프로그램을사용하여 데이터를주고받을경우이 프로그램이 UTF-8 을지원한다면 O/S character set 에관계없이 UTF-8 으로설정도가능하다. _ 49 _

3.4.6. Sorting의종류와셜명 3.4.6.1. Binary Sort Binary Sort는각문자를 encoding하기위해사용된 binary값에의해정렬되는기법이다.ascn나 EBCIDIC의기준에의해각각의 A-Z의문자를 binary 값 으로지정하여그순서에따라정렬하며, UNIX 상에서는 ASCII 로, 그밖의대 다수환경에서는 EBCIDIC 방법을따른다. 인코탱방식 ASCII EBCIDIC 정렬순서 숫자 -> 대문자알파뱃 -) 소문자알파뱃 소문자알파뱃 -) 대문자알파뱃 -) 숫자 표 14. 인코명별갱혈순서 수행속도가가장빠른정렬방법중의하나이다. 하지만해당언어의 encoding 방식이 각문자에지정된 binary 값의순서와같은경우만정렬이올바 르게되는단점이있다. 결국각언어별로적합한정렬결과를보장받기는힘 들다. 영문알파뱃에가장적합한방법으로, NLS_LANGUAGE 가 AMERICAN(default) 으로지정된경우나 binary _sort ~ 경우에 binary sorting 의방법으로정렬된다. 3.4.6.2. Linguistic Sorting 각언어에적합한정렬방식을선택하는방법으로 Binary sorting보다데이터 프로세스양이더많다. Linguistic Sorting에는 Monolingual과 Multilingual 의두가지방법이있다. - 50 -

3.4.6.2.1. Monolingual Linguistic Sorting 각언어에적합한정렬순서에맞추어문자에숫자값을지정하여재정의하는 방법이다. 각각의숫자값은 Major 값과 Minor 값을저장하고있는 Table 을참 조하여정렬한다. 각각의문자는두개의 major 값과 minor 값을배정받아위에서언급한 Table 에저장된다. 이값을이용하여두단계에거쳐정렬을하게된다. 알파뱃정렬 이끝나고나면각각의문자는 major 값과 minor 값으로변환이된다. 그두개 의값으로 binary 정렬방식에서처렴숫자값의순서에따라데이터를정렬한다. 유럽문화권언어에맞게정렬이가능하다는장점이있다. 아시아언어에는적절하지못하다는단점이있다. Oracle 에서한국어나중국어는 monolingual 정렬방법이제공되지않는다. 언어별로 Sorting에관한정보는 Oracle의 Globalization Support Guide 를참조할수있다. 주로유럽지역언어에적합 한정렬방식으로알파뱃을기본으로하는언어에많이사용된다. 또한 DB 에 한가지의언어로저장된경우에는 monolingual sorting 방식이더효율적이다. Multilingual 을사용하는경우엔불필요하게정의된운자로인해메모리사용이 증가하는비효율이발생한다. 3.4.6.2.2. Multilingual Linguistic Sorting Oracle 9i부터 monolingual 정렬방법의확장된정렬방법으로유럽어이외의 통양권언어에도사용이가능한정렬방법이다. 더 많은문자가IS0 14651 과 Unicode 3.1 을기준으로정의되어있다. Multilingual sorting 작업은 3 단계를거친다. Primary, Secondary, Tertiary 를 거쳐정렬작업이수행된다. 동양권언어인경우엔 ISO 14561 에 기준하여그 - 51 -

나라의언어에맞게정렬된다. Primary Sorting Secondary Sorting Tertiary Sorting Base character의구분올하는단계로 a와 b가다른단어라는근본적인구분단계 Base character + Diacritics까지구분하는단계 Base character + Diacritics + Case까지구분하는단계 표 15. 소탱항식별혹정 가령 monolingual 정렬방식에서 multilingual 정렬방식으로정렬방법을수정한다면 NLS_SORT = French에서 French_M으로변경하면된다. 이경우 Generic_M( 알파뱃을기준으로하는언어의정렬 ) 으로의정렬을기초로하고거기에추가로 French 정렬을하게되는것이다. Multibyte character인동양권언어나정렬기준이난해한정렬에적합하다. 특히한국어나중국어같이 monolingual 정렬로는불가능했던언어가 multilingual 정렬로가능해졌다. 무엇보다한번의정렬로여러개의언어를동시에정렬할수있다는장점이있다. 특정언어에대한정렬과동시에라틴어 를기초로하는문자에대한정렬을동시에할수있다. 예를들어 Korean_M 이라고정렬을하는경우한국어와라틴어를기초로한문자가동시에정렬이 가능하게된다. 하지만, 중국어나일본어도테이블에포함되어있다고한다면 이 언어는동시에정렬이불가능하다. 지정된정렬언어도아니고라틴어를기 초로하는문자도아니기때문이다. 한번의정열작업으로한개이상의언어를 정혈이가능하므로데이터가다국어로저장되어 있는경우에 multilingual 정렬 이추천되는데이는한가지의언어만저장된경우 multilingual sorting 을사용 하여정렬하면수행속도가 monolingual 을사용한경우보다저하된다. 이 같은 현상은 multilingual sort 에더많은문자가정의되어있기때문이다. ( 정렬지 정 언어 + Generic_M) _ 52 _

3.4.6.3. 각각의 Sorting 비교 불어를다음과같이입력한경우소탱의종류별로다른결과가나온다. => Diet, A voir, Freizeit, Ðñ 표 16. 소탱방식간의비교 Binary Sorting 의경우, Diacritic 과 E 를인식하지못하여정렬이되지못한 경우이고 monolingual sorting 의경우에는 E 가불어문자체계에없는문자라 인식하지못하여정렬작업에참여를하지못했으나 multilingual sorting 의경우 엔참여가가능하여모든문자가정렬된경우이다. Multilingual 의 경우엔라틴 어를기초로하는언어와불어가동시에정렬되어다음과같이모두정렬이가 능하다. 3.4.7. Migrating to Oracle9i NCHAR Datatypes 3.4.7.1. Migrating Oracle8 NCHAR Columns to Oracle9i Oracle9i에서는 NCHAR Datatype의경우 UTF-8, A L1 6UTF-16 의 Unicode Character set Encoding 방식만을채택한다. 따라서 Oracle8 버전에서지원이되었던 "JA16SJISFIXED" 와같은 Asian Character set은더이상지원올하지 않게되었다. 8 버전의 NCHAR, NVARCHAR2, NCLOB 컬럼올 9i 의 NCHAR Datatype 으로변경하는방법은다음과같다. ωm

1) Export all NCHAR columns from the Oracle8 or Oracle8i database. 2) Drop the NCHAR columns 3) Upgrade database to Oracle9i. 4) Import the NCHAR columns into Oracle9i. 표 17. Oracle 에애셔때이터타업융변경하는순셔 또다른방법으로는 NCHAR Upgrade script 인 $ORACLE_HOME/rdbms/ admin!utlchar. sql 을이용해도 Oracle8 의 NCHAR Column 을 Oracle9i 의 NCHAR Column 으로 Upgrade 할수있다. 이스크립트를한번실행한뒤에 는 Downgrade 가불가능하다. Downgrade 를하려면모든 NCHAR Column 을 drop 을하고다시 import 를받아야한다. 따라서이스크립트를실행하기전에 export 를받아놓는것이좋다. 3.4.7.2. Changing the National Character Set 앞에서다국어통합 Database 생성시 National Character Set 의선택파이 용방법에대해서살펴보았었다 National Character Set 을 UTF-8 에서 AL16UTF-16 으로또는그반대로변경할경우간단하게 Alter database national character set new_charactelset; 명령으로바꿀수있다. 이경우 AL TER DATABASE CHARACTER SET 과 ALTER DATABASE NATIONAL CHARACTER SET 을함께적용하는것이좋다. 3.4.7.3. Migrating CHAR Columns to NCHAR Columns in an Orade9i Database Oracle9i Database에서 CHAR 컬럼올 NCHAR 컬럽으로변경하는방법에는다음두가지가었으며, 각각의특정들이있다. _ 54 _

첫째, Alter table table_name modify 명령어를사용하면, 사용하기쉽고제 약조건이적고, Column Definition 뿐아니라 Data 들도 NCHAR 로 Convert 한 다. 반면, NCHAR, NV ARCHAR2 일때 Column length 가 2000, 4000 bytes 이 므로 Migration 시 이 SIZE 를넘게되면 NCLOB 데이터타입으로의변경도생 각을해봐야한다. 둘째, Online table redefinition 명령어를사용하면, 많은양의데이터를가진컬럼에빠르고, 한번에여러컬렴을 migration할수있으며, Migration하는도중 DML작업을할수있다. 또, Table fragmentation을피할수있어서 space 를절약할수있고, data access 가더빠르다는장점이었다. 이외에도 clob datatype을 nclob datatype으로바꾸는데쓰일수있다. 이명령어를사용하기위한구체적인순서는다음과같다. 1) dbms_redefinition.can_redeltable( scott, emp ); 2) empty interim table올 create 한다. CREATE TABLE int_emp ( empno number. ename nvarchar2(0). job nvarchar2(9). org nvarchar2(lo) ) 3) online table redefinition dbms_redefinition.start_redeltable ( scott, emp, int_emp, empno empno. to_nchar(ename) ename. to_nchar(job) job. to_nchar(org) org ) 했 clob를 nclob 칼럼으로 migration할경우는 to_nclob를쓴다. 4) interim table에 triggers, indexes, grants, constraints둥을생성한야써

다. Referential constraint는 disabled mode로만든다. Trigger는 online Table redefinition process가끝나면실행이된다. 5) Original table과 interim table을 sync를맞훈다. Original table에 DML작업이많다면 dbms_redefinition.sync_ interim_table procedure를실행한다. Ex) dbms_redefinition.sync_interim_table( scott, emp, int_emp ); 6) dbms_ redefinition.finish redeltable 프로시저실행 Ex) dbms_redefinition.finish_rede í_ta 비 e( scott, emp, mt_emp ); 이프로시저가실행되면 original table은 interim table 의모든 attributes, indexes, constraints, grants, triggers로재정의된다. Original table의 referential constraints가적용된다. 7) interim table을 drop 한다. 3.4.8. CHARACTER SET SCANNER Character Set Scanner 는 Character Set Migration 을할때 Database 내에 있는모든 Data 를확인하고발생할수있는문제점들을나타내어준다. 이 작 업은 Character Set Migration 시반드시해야할펼수작업으로서이후나오게 되는 Summary Report 는우리가하는 Migration 의 방향을알려준다고할수 있다. Character Set Scanner 는다음과같이세가지 Mode 에서 scanning 할 수었다. 1. Full Database Scan 2. User Scan %

3. Table Scan 이는우리가 Migration 하는 Data 의 범위에따라결정이된다. Character Set Scanner 를실행하는방법을정리하면다음과같다. 1. Before using character set scanner 2. Csmins t. sql을실행한다. ( 오직한번만실행 ) 실행순서는다음과같다. 3. create a user named CSMIG 4. assigns the necessary privileges to CSMIG 5. assigns the default tablespace to CSMIG 6. connects as CSMIG 7. creates character set scanner system tables under CSMIG 혔 CSMIG 의 default tablespace 는 system 이므로 Csminst.sql 를편집하 여 default tablespace 률바꾸어준다. %cd $ORACLE_HOME/rdbms/admin %sqlplus "systern/xxxxx as sysdba" SQL>start csminst.sql 3.4.8.1. Invoking the Character Set Scanner Character Set Scanner 를실행하는방법은다음과같이세가지로나뀐다. Using parameter file : csscan system/manager parfile=filename Using the command line : csscan system/manager full=y tochar=utf-8 array=10240 process=3 ωn

Using an interactive session 3.4.8.2. Getting Online Help for the Character Set Scanner 앞서언급했던대로 Character Set Scanner 률실행하면 Report 를생성하게 된다. 다음과같이두개의 Reports 률생성하게된다. 3.4.8.2.1. Database Scan Summary Report Database Scan Summary Report 는다음의 section 으로되어있다. Database Parameters for the Character Set Scanner Database Size Scan S따nmary Data Dictionary Conversion Summary Application Data Conversion Summary Application Data Conversion Summary for Each Column Size Bound 웰 "y_ Distribution of Convertible Data for Each Table Distribution of Convertible Data for Each Column lndexes To Be Rebuilt 위의 Section 중에서 Bold 체로표시된중요한 section 들에대해서그내용을 보면다음과같다. Scan Summary Database character set migration 이가능한지를알려준다. 하나는 Data dictionary 의조건, 다른하나는 Application data 의조건이다. - 58 -

Possible Data Dictionary Status I Possible Application Data Status AlI character-type data in the data I AlI character-type application data dictionary remains the same in the I remains the same in the new new character set. I character set. AlI character-type data in the data dictionary is convertible to the new character set. AlI character-type application data is convertible to the new character set. Some character-type data in the data Some character-type application data dictionary is not convertible to the I is not convertible to the new new character set. character set. 표 18. Data Dictionary 와 Application Data 의상태조건 위의표에나와있는형식대로표현이된다. "all the data remains the same in the new character set" 이라고나올 경우는 original character set 의 encoding은 target character set의 encoding과같고, alter database character set명령으로 migration할수있다. "all the. data is convertible to the new character set" 이라고나올경우는안전하게 Export & Import utility 를이용하는것이좋다. 그러나이경우에도 encoding방식이같을수도있고 다를수도있다. Data Dictionary Conversion Summary 이것은 full database scan 이실행될때만나오게된다. 나오는형식은다음과 같다. - 59 -

Status Changeless Convertible Exceptional Description Number of data cells that remain. the same in the new character set. Number of data cells that will be successfully converted to the new character set. Number of the data cells that cannot be converted. If you choose to convert anyway, some characters will be lost or data will be truncated. 표 19. Data Dictionary 의상태 만약 Convertible 과 Exceptional column 의값이 0 이면모든데이터가 convert 없게된다. Exceptional column 값이 0 이고, Convertible column 값이 zero 가아니면모든 dictionary 에있는데이터가새로운 character set 으로 convert 되어야한다. 만약, Exceptional column 이 0 이 아니라면 dictionary 데 이터중에서 convert 되지않을데이터가있다는의미이다. Application Data Conversion summary for Each Column Size Boundary char 와 varchar2 application data 의 conversion summary 를나타낸다. 이것 은 boundaries parameter 를지정했을때만나오게된다. Status Changeless Convertible Exceptional Description Number of data cells that remain the same in the new character set. Number of data cells that will be successfully converted to the new character set. Number of the data cells that cannot be converted. If you choose to convert anyway, some characters will be lost or data will be truncated. 표 20. Application Data 변환요약 - 60 -

Distribution of Convertible Data for Each Table Database 내에서 Convertible, Exceptional data7t 얼마나분포되어있는지보 여준다. 이자료가많을수록 Database 내에서의 Convertible Data 가많음을의 미한다. 3.4.8.2.2. Individual Exception Report lndividual Exception Report 는다음의 section 으로되어있다. 1. Database Scan Parameters 2. Data Dictionary lndividual Exceptions 3. Application Data lndividual Exceptions Database Scan Parameters scan 의 type 과 parameter 를나타내준다. Par 톨삐를 ær va.lue 양홉 n 다 tpe 앉껄 1 æm æta7 o.un 를 11: 휠뎌 basξ 야훌훌 ter 흩 et New 울 ltat 훌훌갱파 rad:.er øet 혜 ñn 떠 1IR data'1 양ray fetch bj.ffer siz를 tbrt:l훌. of rowa to he핵p l.i) for 뇨1훌양t lbd:ler of praoeaeea rull data 월톨 e YES W 톨훌 IIIWÚ 다 252 1tf9 RJ 102400 10 l Data Dictionary lndividual Exceptions convertible, exceptions 를가지는 Data dictionary 를나타내준다. - 61 -

Exceptions 에관해서는다음의두가지경우가있다. 1. Exceed column size 2. Lossy conversion Application Data Individual Exceptions Exceptions 를가지는 data 를나타내고필요시수정을해야한다. n Exceed column size Maximum column width률념게되면 column size롤늘려야한다. n Lossy conversion Lossy conversion의데이터는 migration전에수청이되어야한다. 만약수정을하지않으면 replacement character로변환된다. WE8IS08859P1 의 character set 을 UTF-8 로변환시 Individual exception report 의예제는아래와같다. Uller: 'l'il 삐 t!: Cbl\DH 댐 i limpid! 훌훌 L 뼈 rn 톰훌 ~: V. 함 t 뀐빼 2(10) a.r 빼 roflb 힘한 :lt.ic:mø: 2 MiIX lqrt ccuv 를 niclll Ðabl Size; 11 흩 JfID 훌 @ 록 :ltial 차 IP Size αùl DIltA fir 톨 t 30 아 πee) A 뼈 A2f 뼈 F 빼훌 kα 핸 Ig IIKC 톨 d col\d1 si 톨를 11 빼 u-e:nf 를 ldt A 힘 WfAA1'A 빠혈 뼈빼 1 l Cl!8)' c:cnvem Jao ð 벼 clι8" AAM2f 삐 PAAB: 4 빼 1 erxceed c:ol\d1 Iri_ 11 6r 훌 ζl 뼈 - 62 -

Migration시 Ährenfeldt 와 ö d. cl 훌 8 1 1\1는 column size (1 0) 을넘게된다. 왜 나랴면 WE8IS08859Pl 상황에서는 A.6.å. 와툴 둥의문자가 l-byte 를차 지하게되지만, UTF-8 상황에서는 2-byte 를차지하기때문이다. 또한 ödcl 흩 8 1 1\1 은 lossy conversion 이다. UPDATE hr.employees SET last_name = Oracle8 TM WHERE ROWID = AAAA2fAAF AABJwQAAu Trademark sign 은 WE8IS08859P 1 의유효한데이터가아니기때문이다. 따 라서이런경우는다음과같은데이터조작을통해변경해줘야한다. - 63 -

4. 국내외유니코드지원사혜폼석 4. 1. 국내사례유니코드를지원하는도서관시스댐을개발하였다고관련업계에서홍보를하고있으나, 실제적으로대학도서관수준의정보서비스기관에서유니코드시스댐으로전환을한사례는찾아보기어렵다. 더욱이완전한유니코드체계로전환한사례는더욱드물다하겠다. 도서관시스템이완전한유니코드체계를지원하기위해서는소장자료의정 보가유니코드로저장이가능하고, 유니코드로입력, 편집, 검색이가능하여야 한다. 또한, 목록, 상호대차, 원문서비스퉁각종도서관서비스가유기적으로연동되어야한다. 그리고, 외부도서관과의정보교환을위해서는유니코드 MARC 반입, 반출을지원해야한다. 그러나, 아직유니코드문자셋을지원하는 KORMARC가발표되지않았다. 따라서, 국내에완전한유니코드체계를가진도서관시스템이존재하지않는이유는당연한것일수있다. 국립중앙도서관, 한국외국어대학교, 광주과학기술원, 국어연구원, 한국역사정보통합시스템퉁의국내와외국의유니코드서비스시스템구축사례를살펴보겠다. 4. 1.1. 국립중앙도서관 (http://www.nl.go.kr) 4. 1.1.1. 개요 2003 년 5월에정보시스템에대한유니코드체계로의전환을위한정보화전략계획 OSP) 에착수하여유니코드체계로의전환에따른문제점과해결방안을모색하고있는상태이다. 그리고, 유니코드문자세트를수용하는 KORMARC 에대한초안을 2003년중에발표하였다. 2004년 12월현재는조달입찰로 목록, 목차 만유니코드로변환하였고, DB를 P/G로일괄유니코드로변환하였다. 2005년 1 월에유니코드시스탬을위한전용홈페이지를개통1) 하였다. 1) http://unicode.nl.go.kr - 64 -

4. 1.1.2. 단첨 KS C 5601:1987 에 정의되지않은다국어문자, 한글고어의지원은불가능 하다. 2003 년현재, 유니코드데이터반업및국가간서지데이터의상호교 환불가능한상태이다. 4. 1.2. 한국외국어대학교 (hhttp://weblib.hufs.ac.kr/) 4. 1.2. 1. 개요한국외국어대학교도서관은학교의특성상 KS C 5601:1987로표현할수없 는다국어자료들이타대학교에비해서많은편이다. 따라서, 이들자료의목록작성및검색서비스를위하여유니코드시스탱도입을서두른것으로생각된다. 4. 1.2.2. 륙정 윈도우 2000 이상의운영체제환경에서 DBMS 로 MS-SQL 서버를이용하고 있으며, 문자세트로는 UTF-8을사용하고었다. 유니코드의업력은운영체제에서지원하는 IME를이용하여웹을통한검색을수행하고그결과를볼수있다. 현재독어, 불어와같은로마자형태자료는일부음독기호 (ex. @, <, >, *, -, #, ^ ) 를이용하여업력한다 KS C 5601:1987에서지원하지않는한자는한글로입력하고 KORMARC 890 태그의 $h를활용하고있다. 기존의 KS C 5601:1987에서지원하지는않 지만불완전하나마업력과검색이가능한자료는기존의도서관시스댐에서관리하고, 비로마자형태의자료는별도의유니코드시스댐으로관리하고었다. %

비로마자형태의외국어 ( 베트남어, 아랍어, 이란어, 태국어, 힌디어 ) 자료는 10,000 여건정도보유하고있으며, 이들자료에대한서지정보가신규유니코 드시스템에구축되어웹올통해검색이가능하다. 4.1.2.3. 단챔 기존의도서관시스템과연동되지않고독립적으로존재하는형태로구축되어 있어기폰 MARC 데이터베이스와통합관리가불가농하다. 또한, MARC 레코드 률이용한서지정보교환도불가능하다. 4. 1.3. 팡주과학기술원 (http://www.k:jist.ac.kr/) 4. 1.3.1. 깨요광주과학기술원은국내에수입되고있는방대한양의외국학술지를공동활용할목적으로 1998년부터 2000년까지과학기술부와정보통신부에서추진한과학기술정보화근로사업올통해외국학술지목록구축작업올수행하였다. 이렇게구축된목록을토대로외국학술지의분담수서및공동활용체계의지속적 인발전을위하여 학술지공동활용협의회 KORSA(Korea Resource Sharing Alliance) 률결성하였으며, 현재 120여개도서관에서소장하고있는 24, 000여종의외국학술지에대한목차및소장정보를구축하여서비스하고있다. 4.1.3.2. 륙정 현재 KORSA 시스템의운영체제는윈도우 2000, DBMS 는미국 InterSystems 사의 Cache 를채용하고었으며유니코드률지훤하고었다. 데이터베이스스키 마전환시, Cache 가각필드의데이터길이를명시하지않기때문에비교적 손쉽게이루어졌다. 또한, 색언을추출하고관리하는별도의검색앤진올사용 하지않고 DBMS 자체의검색기능올사용했기때문에큰문제가되지않았다. - 66 -

4.1.4. 국어연구원 (http://www.korean.go.kr) 4. 1.4. 1. 개요 국어연구원은 1999년부터유니코드작업을시작하였다. ms-word2000을사용하여서유니코드데이터를구축하였다. ms-word2000의경우는실제유니코 드테이블올사용한것이 아니고어폴리케이션에서코드를확장하여 KS C 5601:1987에서지원되지않는한자또는옛글자를지원하였다. 따라서추후에유니코드로의변환작업이반드시있어야한다. ms-word2002(windows는 2000이상 ) 로구축한데이타는실제유니코드체계로구축된것이므로추후에유니코드로의변환은필요없다. 4. 1.4.2. 륙청 한글 97 조합형으로데이터를구축하였다. 내부적으로는유니코드기반이라볼 수없으므로추후에유니코드표준이확정되면데이터에대한변환필수적이다. 다만, 홈페이지서비스시유니코드로변환하여보여주고있는데, 홈페이지에서확장한자나옛글자를검색하거나입력하기위해서는 MS사에서지원하는유니코드폰트와입력기를다운받아야한다. 국립국어연구원의검색시스댐은, 유니코드를사용하므로다옴사항이충족되 어야검색기능을제대로활용할수었다. 가. 운영체계 : Windows 98/NT 나. 브라우저 : Internet Explorer 5.0 이상사용 ( 내려받기 ) 다. 옛글자글꼴 ( 옛글자및확장한자 ) - MS Word 2000 에서지원하는옛글자및확장한자글꼴사용 라. 옛글자입력기 - 옛글자입력기및업력창 ActiveX 모률사용 - 67 -

옛글자및확장한자, 옛글자입력기동은 MS 사에서지원하는기능올다운받아 서사용함 4.1.5. 한국역사청보통합시스댐 (http://www.kore없피istory.or.kr) 4. 1.5. 1. 개요 2000년부터유니코드사업을시작하였다. 데이터는구축시부터유니코드체계를따랐으므로데이터변환은없었다. 4. 1.5.2. 륙정 한글 2002를이용하여데이터를구축하고있으며, 유니코드폰트나한적업력기를자체개발하였지만, 유니코드표준을따르고있지않다. 유니코드기반으로구축되어있다고하나현재제정된유니코드표준형태를따른것이아니므로국어연구원과마찬가지경우로유니코드의표준이제정된후데이터변환은필수 2) 이다. 4.2. 국외사혜 4.2.1. 일본 NII 사례 (http://www.nii.ac.jp/index-j.htn 너 ) 4.2.1.1. 개요 일본국립정보학연구소 (NII, National Institute of Informatics) 는정보학관련 종합연구및학술정보유통을위한기반기술개발및정비롤목적으로 2000 년 4 월에설립된기관이다.(1986 년 4 월에설립된문부성산하의학술정보센터 2) MS Word 2000, 워디안, 한글 2002 의경우유니코드체계를따르는것이아니고사용자정의영역올확장하여 KS C 5601:1987 에서지원하지않는한자를지원하는것으로유니코드로의 변환은필수이다. 그러나. Windows2000 운영체제에서 MS Word 2002 로 DB 를구축하는경우는유니코드형태로데이터가구축되므로추후에유니코드로변환하지않아도된다. - 68 -

를폐지전환하여껄립된기관엄 ) NII 는목록정보서비스, 정보검색서비스, 전 자도서관서비스, 학술정보네트워크등의학술정보서비스를제공하고있다. NII 목록시스댐의전환과정및다국어대웅에대하여살펴보기로한다. 4.2.1.2. NII 목록시스댐 NII의목록시스템 (NACSIS-CA T) 은 1984년 12월에운용을시작하였다. 그후, 하드웨어의소형화와고속화를통한다운사이정바람이일어났으며, 소프트 웨어측면에서는오픈시스템, C/S 시스댐 (client/server system), GUI(graphic user interface) 조류가일반적인것이되었다. 이에따라구 NACSIS-CAT 과 ILL 시스댐도변화하는적웅하는데한계가있다고판단하였다. 그래서, 1995년신 ( 新 ) CAT-ILL 시스렘검토회의를셜치하고, 신규시스댐이갖추어야할주요한내용에대하여논하였다. 그내용은다음과같다. 4.2.1.3. [ 신 ( 新 ) CAT-ILL 시스햄검토회의 ] 주요논의내용 첫째, 다운사이징과인터넷시대에맞는새롭고유연한시스댐이필요하다. 둘째, 급격한이용자증가에따른고가용성, 고안정성, 고성능시스템이필요하다. 셋째, 다국어문자에의대웅이필요하다. 4.2.1.4. NII 목륙시스햄의다국어대웅 1997 년에 [ 신 ( 新 ) CAT-ILL 시스댐검토회의 ] 에서제시된요구사항에서신 CAT 시스템 (C/S 시스템 ) 을개발하였으나다국어대웅은구현되지않았었다.( 왜 냐하면, 그당시에는 UCS 처리환경이정비되어있지못하였다.) 따라서, 종합목록데이터베이스에는중국어, 한국어동의자료에대한동록은전체적으로진행되지못하였다. 전국의대학도서관에는약 700만권의중국어자료, 약 70만권의한국어자료를소장하고있었다. 그러나, 목록시스댐이다국어를지원하 - 69 -

지못하였기때운에, 정보의유홍과교육, 연구에큰지장올초래하였다. 2000년 1 월전산기교체와맞추어서, 데이터베이스에수록되어있는모든데이터를 UCS로변환하였다. 그리고, 신 CAT 시스탬이다국어 ( 중국어, 한국어...) 롤지원할수있도록함으로써각도서판소장자료의목록작성이가능해졌다. 4.2.2. 일본 NII 의신 CAT 시스햄 4.2.2.1. 깨요 다국어대웅의신 CAT 시스댐은다국어데이터률보존하는데이터베이스의변경파다국어데이터를입출력하는서버의변경으로구현된다. 아래는신 CAT 시스댐의변경사항올나타낸것이다. 문자세트를 ucs 로변환 률라이언트가지 정한문자세트변흰 뿔 뤘활췄췄뚫훨 : 그렴 8. 신 CAT 시스댐외깨요 - 70 -

4.2.2.2. 신 CAT 시스댐의다국어대용목록소재정보데이터베이스 ( 종합목록데이터베이스, 참조파일 ) 의문자세트를일본어 EUC에서 UCS로변경한다. 신 CAT 시스템의서버에서클라이언트로데 이터를보낼때문자세트로 JIS와 GB, UCS도추가한다. 도서관시스템측에서는중국어전용으로는 GB 대웅클라이언트, 중국어이외의문자도취급하려면 UCS 대웅클라이언트가필요하다. 4.2.2.2.1. 데이터베이스의다국어대웅 데이터베이스문자세트를 UCS 로변경하는것으로써수록데이터는다음표와 같이표현된다. 기존의 EXC 문자와 UCS 외자 ( 클라이언트문자코드로변환할수 없는 UCS 문자를말한다. 형식은 +UOx+ 이다. 이때 Ox 는 UCS16 진코드를 의미한다.) 는 UCS 로정의되고있는확장알파뱃이나한자로변환된다. 중국어 간체자 ( 간체자 ) 와번체자, 한글둥대부분의문자가 UCS 로정의되어있으므로 표시가가능해졌다. 영숫자 (JIS X020 1), 가나, 한자 (JI S I 대응하는영숫자, 대웅하는일본어 X0208) I ( 가나, 한자 ) 발음식별부호첨부문자 (EXC 문자 ) I 대웅하는확장라틴문자 한자, 간체자동의화자 대웅하는한자 표 21. 떼어터베이스수록데이터 4.2.2.2.2. 신 CAT 서버의다국어대웅 기존의서버에서는 J1S7 인코딩만대웅할수있었지만, 신규시스댐에서는 GB, GBK, UTF-8, 1S0 2022 JP 의 4 종류의인코딩에대응할수있게되었다. - 71 -

각인코딩방식을요약하면아래와같다. 1S0 2022 GB EXC 문자를포함하지않는 J1S7 문자세트를취급하는것이어서 ECC 문자는 UCS 외자로표시된다. 간체자중심이중국어용문자세트로일본어표시는할수없다. GBK GB 의확장판으로 UCS 와동동의 CJK 통합한자를포함한다. UTF-8 UCS 의문자세트에대한인코딩방식 표 22. 신 CAT 셔버의언코당방식비교 지정한문자셋트에의한데이터표현은아래표와같다.0 표시는해당하는문 자로표현할수있는것이고 X 표시는 +UOx+ 와같이 l 문자씩 UCS 코드를나 타내는번호로표현할수있음을의미 3) 한다. 표 23. 신 CAT 셔버의인쿄덩땅식들의 UCS 데이터기술놓력비교 3) * 히라가나, 가타가나및중국어에대웅하는것이있는한자만해당하는문자로표현가능 ** 한자를중국어발음으로표시하는데사용되는음표부호첨부문자는해당하는문자로표현가능 *** 일본어에대웅하는것이있는한자만해당하는문자로표현가능 - 72 -

4.2.2.2.3. 클라이언트의다국어대웅 UCS 에의한데이터의표시와입력을실시하기위해서는, UCS 에대응하는 CATP 클라이언트가필요하다. 구체적으로는윈도우 2000 등과같이 UCS 에 대 응할수있는 CATP 클라이언트가필요하다. 구체적으로는윈도우 2000 등과같이 UCS에대웅할수있는 OS에서동작하는 UCS문자세트의입력툴을갖훈 클라이언트를개발할필요가있다. CATP 클라이언트를개발하고있는각도서관시스템업체들로하여금 UCS 대응클라이언트의개발을진행하도록하고있다. 또한 NII에서개발한 UCS 대응클라이언트 WebUIP를 2001 년 1 월부터공개하였다. WebUIP는웹에대웅한신 CAT/ILL 시스템게이트웨이시스템으로표준적인웹브라우저를 CATP 클라이언트로사용하여시스댐으로표준적인웹 브라우저를 CATP 클라이언트로사용하여 CATP 서버를이용할수있다. WebUIP 자체는 CATP 서버의외부에위치해웹브라우저로부터서비스요청을받아 CATP 서버를경유하여데이터베이스를이용하는구성을취하고있다. 인 터넷익스플로러 5 등의 UCS(UTF-8) 의입출력이가능한브라우저환경에서중 국어, 한국어자료둥의입력과디스플레이가가능해졌다. 4.2.3. 미국 OCLC 사혜 (http:νwww.oclc.or밍) 4.2.3.1. 개요 1971 년부터 OCLC서비스의기반이되고있는종합목록 WorldCat은운용을시작하여, 현재 9, 000여회원기관이공동으로목록작성에참여하고있으며, 현재 40여개언어로구현된 5, 000만건이상의서지레코드를보유하고있는세계적인서지데이터베이스이다.OCLC는종합목록이용기관들의다양한요구를충족시키기위하여자동편목 (PromptCat) 서비스, 갱신목록통지 꺼(Bibliographic Record Notification) 서비스, 정부문서목록 (GovDoc) 서비스, 맞춤형편목 (Custom Cataloging) 서비스, 일괄 처 èl (Batch Processing) 서비 ω

스둥각기관의특성에적합한목록서비스를지원하고었다. 4.2.3.2. OCLC의목혹시스댐의다국어대용 4.2.3.2.1. 개요 OCLC의목록서비스는 WorldCat올근간으로하여제공되는서버스로 OCLC 목록서비스의핵심은 WorldCat을유지 / 관리하는종합목록시스탬이라고볼수있다.30여년전에운용을시작한종합목록서비스시스템은정보기술및환 경의 변화에대웅하여지속적인성능개선과추가기능개발을통해발전되어 왔으며, 21 세기에걸맞은차세대의 WorldCat 을구축하기위하여전면적인시 스템전환올서두르고있다.2002 년 7 월에 OCLC 에서발간한뉴스레터에의하 면 Worl 페 at 데이터베이스플랫폼올기존의독자적인데이터베이스관리시스 댐 (DBMS) 에서오라클 DBMS 로전환하는계획올수립하였으며, 전환된시스댐 에서는 MARC 쁜만아니라더블린코어 (Doublin Core), TEI, EAD 와같은여 러 메타데이터형식의지원은물론유니코드를지원함으로써다국어에대웅할 수있도록하고있다. 이계획에따르면오라클플랫폼에서서비스되는차세대 WorldCat 은 2003 년말에완성될예정이다. 4.2.3.2.2. 륙정 WorldCat파 Resource Catalog는 ALA 문자세트만이지원된다. ALA 문자세트는영어권국가의도서관에서널리사용되는문자세트로로마자알파뱃, 특수문자, 그리고로마자에기반올둔공통적으로이용되는발옵식별기호를지원한다. ALA문자세트로구성된 OCLC MARC 또는 UTF-8 형식의 DC롤반출한다. Connexion 전거파일도 ALA문자세트만을지원하며반출은 ALA 문자세트로구성된 MARC21 형식을취한다. Pathfinder 는완전한유니코드를지원하며, Dewey 서비스는유니코드디스플 - 74 -

레이를지원한다. Connexion은전세계의사용자를위한웹기반시스템으로의잠재력을확보하기위하여웹브라우저와의통신방식과내부저장형식으로 UTF-8을사용한다. 아래의표는 Connexion에서지원하는문자세트를정리한것이다. WorldCat and Resource Catalog ALA 문자세트에유니쿄드변환 대용되는 IALA 문자째트유니코드 OCLC MARC:ALA 문자세트 DC HTML& DC RDF: UTF-8 Connecxion Authority File N/A ALA 문자세트액대웅되는 유니코드 IA 대문자세트 I MARC21:ALA 문자세트 Pathfinder DB 유니쿄드변환 유니코드유니코드 UTF-8 WebDewey N/A I N/A N/A N/A 표 24. Connexion 에셔지훤하는문자세트 WorldCat은 ALA문자세트로표현할수없는자료중상당부분을차지하고있 는한국어, 중국어, 일본어, 페르시아어, 터키어등의자료를입력할수있도록 CJK 편목소프트웨어와 Arabic 편목소프트웨어를제공하고있다. Arabic 편 목소프트웨어는아라비아어문자로작성된자료에대한편목을지원하는윈도 우기반의프로그램이다.(CJK 문자를디스플레이하기위해서는윈도우NT, 윈 도우 2000, 윈도우 XP 와같은유니코드를 지원할수있는 os를갖추어야한다.) πω

5. 서울대학교도셔판휴니코드천환시고려사항 5.1. 셔울대학교도셔판유니코드적용의펼요생 5. 1.1. 국가통합셔지판리기판의유니코드체계검토앞에서살펴본것처럼, 국외기관들의유니코드체계검토에발맞추어, 국립중앙도서관에셔는 국립중앙도서관정보시스댐유니코드체계구축정보화전략보고서 "(2003.10) 를출간하면서 2004년국립중앙도서관의일부시스댐혹은특정시스댐에유니코드체계를도입단계를거쳐 2005년에현재시범운영하고있으며 4), 2006년에전면구축등으로점진적으로구축하려고계획중이다. 또한한국교육학술정보원 (KERIS) 에서는 학술 데이터베이스의유니코드변환 적용에관한연구 "(2003 년 ) 를출간하는등, 여러기관들이유니코드체계전환 을검토하고있다. 5. 1.2. 다국어자료에대한고품질데이터베이스구축 서울대학교도서관은전문학술자료및외국자료를다량보유하고있으며, 이률위한고품질서지데이터베이스를작성및관리해야할필요가있다. 서울대도서관에서보유하고있는외국어자료의분포현황을다음과같다. 언어구분 건수 ( 비율 ) 언어구분 건수 ( 비율 ) 영어 445,381 (39.48) A 웨덴어 108(0.01 ) 한국어 353,736(31.36) 덴마크어 97(0.01 ) 일본어 136,231 (12.08) 포 E 투갈어 79(0.01 ) 독일어 76,770(6.81 ) 롤란 I 어 65(0.01 ) 중국어 37,708(3.34) 투 E 크맨어 52(0.00) 끄랑 A 어 28,556(2.53) 아랍어 49(0.00) A 퍼 인어 5,315(0.47) 아제 E 바이잔어 48(0.00) 4) http://unicode.nl.go.kr/index.php - 76 -

러시아어 4,873(0.43) 팔리어 42(0.00) 이탈리아어 2,194(0.19) 체코어 38(0.00) 라틴어 1,194(0.1 1) 인도네시아어 30(0.00) 터키어 880(0.08) 노르웨이어 26(0.00) 헝가리어 272(0.02) 키 E 기 A 어 23(0.00) 네덜란 I 어 240(0.02) 몽골어 22(0.00) 그리 A 어 ( 고대 ) 145(0.01) 핀란드어 21(0.00) 그리 A 어 ( 현대 ) 67(0.01 ) 루마니아어 19(0.00) 표 25. 서율대도셔판의외국어자료분포혐황 (2004 년 4 월기준 ) 이런다국어자료들을 KS C 5601:1987 에서모두표현할수없으므로, 서울 대학교도서관에서는엄의의기호규칙을만들어다국어데이터를구축하였다. 첫째, 890 태그를사용하여한글이나다른문자로대체하여작성하였다. KS C 5601:1987에서는한자를 4, 888자만을지원하므로한자가없어서한글로입 력하는경우가있었는데, 그통계는다음과같다. 변형문자표시내용건수비고 890 $b 한글고어나특수문자롤입력 1,160 890 $h 한자가없어서한글로입력 21.413 890 $r 로마문자로변형하여입력 9 890 $x 한자이외의외국문자롤한글로입력 200 겨 22,782 표 26. 한글및다혼문자로대체한정우 둘째, 존재하지않는문자를특수문자나기호를통해대체입력하거나, 셋째, 로마나이즈로입력하는방법을사용하였는데, 그방법의예는아래표와같다. -77-

언어구분특수문자입력방법비고 ( 악쌍떼귀 ) > ( 악쌀그라브 ) < 프랑스어 c( 세디유 ) * ( 트레마 ) @ ^ ( 악쌍시르꽁플레스 ) 무시함 독일어 ( 몰라우트 ) @ ß( 에스처 트 ) ss ( 악센또 ) > 스떼인어 fi( 월드 ) * ( 디에르시스 ) @ 중국어 ( 특벌밭옴부효 ) @? ( 한굴용이없는경우 )?? / 로마나이즈 일본어 -( 장옴부호 ) < 표 27. 륙수품자업력외예 5. 1.3. 국외기판과의데이터베이스교휴활성화 미국의국회도서관 (http://www.l oc.gov/) 온유니코드문자세트를수용하는 MARC21 5 ) 을제안하였다. 이에의하면, 2002 년도 MARC21 의서지, 소장, 전거 레코드를유니코드로구축하기로계획하였으며, 2003 년 1 월, 유니코드로 1 차 테스트변환하여, 변환된목록 6) 에대한검증율수행하였다. 또한, 일본의 NII 는 이미유니코드로자료를변환하였다. 이와같이유니코드로저장되어있는자료들올현재 KS C 5601:1987 에서받 아들일경우, 일부문자들이소실되거나변형된형태로저장하여서비스해야하 5) http://www.loc.gov/marc/ 6) 1, 200 만서지, 500 만전거, 2, 000 만소장레코드 - 78 -

는불편이있다. 따라서, 국외기관과다양한도서관자원의유통을위해유니 코드수용이필요하며 고품질데이터베이스를생성하기위해서도유니코드수 용은필수적이라고할수있다. 5.2. 서울대학교도서관유니코드체계구축올위한현시스댐검토 5.2. 1. 서울대학교도서관현행시스댐의유니코드지원유무현황 Linux 2 대 0 인터넷디스크용및게시판서버 I Win XP 0 클라이언트 PC I Win 2000 ( 업무용 *) 20대 A 완벽하게지원못함 Win 95/98/ME 퉁 ( 추정 ) X 표 28. 유니코드지원휴무혐황 5.2.2. 유니코드체계구축올위한시스댐구비 기존 SOLARS II 시스템에서사용하던 BRS Search 는유니코드를지원하지 않기때문에다른검색엔진으로교체하는방안을마련해야하며, 업무용 PC들도유니코드를지원하는운영체제로업그레이드해야한다. 또한, 소프트웨어적인측면에서유니코드를지원하지않는 VB 6.0으로개발된클라이언트둥은유니코드를수용할수있는 Java,NET 동으로전환해야한다. - 79 -

5.3. KS C 5601:1987자료의유니코드전환시고려사항 5.3.1. 동형이옵한자데이터변환유니코드에서한자들을 CJK Ideographs Area에배당하면서도, KS C 5601:1987과의호환을위해서 CJK Compatibility Ideographs 영역을마련하고, 그곳에동형이음한자들을배치해놓았다. 따라서, 이와같은자료들을변환하기위해서는두가지방법들올고려해볼수있다. 첫째, 동형이음한자의다른음가를가진코드를서로다른코드포인트에배당하여모두코드체계에수용하는방법으로아래의표와같다. 이방식은한자를정확하게업력하며, 한자의한글음을기계적으로부여가능하고, 정렬가능하다는장점이있다. 하지만, 다른음으로검색했을경우 ( 예를들어요산요수 ( 樂山樂水 ) 를낙산낙수 ( 樂山樂水 )) 는검색이되지않고, 중국, 일본한자와호환안된다는단점이있다. 글자 KS C 5601:1987 Unicode 악할악 ( 惡 ) E4C2 60E1 CJK Ideographs(3400-9FFF) 미워할오 ( 惡 ) E7F7 F9B9 CJK Compatibility(F900-F AFF) 비고 표 29. 동형이용환자률셔로다른유니코드영역에배당하는청우 둘째, 서로다른음중대표적인음하나만을코드체계에수용하는방식으로, 유니코드 CJK Ideographs Area에있는대표음만을수용하는것이다. 이방식은음가에상관없이하나의한자로변환하여추가비용을줄일수있고, 중국 / 일본한자와도호환가능하다는장점이있지만, 발음에의한정렬이힘들고동일한문자를각나라마다다르게인코딩할수없다는단점이있다. - 80 -

글자 KS C 5601:1987 Unicode 악할악 ( 惡 ) E4C2 60El CJK Ideographs(3400-9FFF) 미워할오 ( 惡 ) E7F7 60El CJK Ideographs(3400-9FFF) 비고 표 30. 동형이음한자를같은유니코드영역에배당하는경우 이두가지의견중에서, 국립중앙도서관은이론적으로는동형이음한자를 CJK Ideographs Area로변환하는것올추천하면서도, 유니코드데이터를 KS C 5601:1987로변환하여많이사용하는향후몇년동안은 CJK Compatibility Ideographs Area 와함께변환하는첫번째방법을추천하고있다. 따라서, 본연구는, 국립중앙도서관의분석과마찬가지로, 기본적으로 KS C 5601:1987 과호환을위해마련된코드를이용하여두가지로변환하는것이바 랍직하다고생각된다. 또, 첫번째안을채택했을경우, 발생하는검색문제는 CJK Compatibility Ideographs Area 에 배당되어있는코드포인트들의수가 361 여개밖에되지않으므로별도의매핑테이블을고안하는것이낫다고생각된 다. 또한, 검색시에도단순한매평테이블만으로도검색및변환이가능하다. [ 부록 3] 은 C 언어로구현한. CJK Compatibility Ideographs Area 와 CJK Ideographs Area 의매핑테이블을출력하는프로그램이다. 5.3.2. 외부기판과데이터교류방안도서관시스댐을유니코드로전환할경우, 외부기관과데이터를교환시유니코드데이터들을주고받을때는문제가생기지않으나현재대부분의시스템 이 KS C 5601:1987 로인코딩된데이터들을사용하고있으므로자료의손실이 발생할수었다. 이미서울대학교중앙도서관에서분석한것처럼, 데이터의반 - 81 -

입 시에는유니코드가 KS C 5601:1987 인코딩시스댐올포괄할수있으므로 단순변환시스댐올구성할수있지만, 유니코드데이터롤외부에반출할때 KS C 5601:1987 에없는문자률대체문자로변환하여반출해야한다. 이에대한대처방식으로현도서관시스댐에서사용하고있는독자적인대체 문자표현규칙이있올수도있겠으나, 가급적 W3C 의 HTML 문자엔터티표 현규약을따르는것이좋다. HTML 에서는문자엔터티를 &# 와 ; 사이에 십진 수 {decimal} 로기입하도록하고있다. 예를들어. HTML 또는 XML 에서한글 가 를표현하기위해서는단순히 가 라고입력할수도있지만, 다음과같은방 식으로표현할수도었다. 다른문자들도마찬가지이다. 문자 16진수 (hex) 10진수 (dec) I (èfitity 앤 r터 eø타 Ite 표se혈ntadön) 가 ACOO 44032 가 惡 60El 24801 惡 A 0041 65 A 표 31. W3C 의련고안융따혼앤터티표혐의얘 이와같은 W3C의 HTML 엔터티표준규약을따를경우, 자료들의규칙적인변환도쉽고, 브라우처에보여주기도편하며, 이런변환올위해서개발된공용컴포넌트들올그대로이용할수있다는장점이었다. 하지만, 본문서에서제시한엔터티표현방식은원론적인논의로서, 기존기관에서사용하는정보공유방식이었다면, 정보전달및검색엔진과의효환성올위해서기존의공유방식을유지하는것이낫다. 5.3.3. 다국어업력방식 다국어를입력하기위해서는 Microsoft 에서개발한 IME 시스댐을그대로이 - 82 -

용하는방법과, 자체적으로입력웅용프로그램을개발하는방법이있다. 첫째, IME 시스댐을그대로이용하면개발비용이들지않지만, 윈도우 2000 이상 지원해야하고, 폰트가없으면업력불가능하며환경설정을사용자에게요구한 다는단점이었다. 둘째 입력프로그램을자체제작하면, 운영체제에독립적으 로이용할수있지만주기적인개발비용이중가한다는단점이있다. 두가지방법중, 다국어입력기를독자적으로개발하는것은여러모로비용 이많이드는일이다. Microsoft IME를그대로사용한다는것은사용자에게불편을초래할수있다. 하지만, 일반적으로, 사용자는자신이찾고자하는특정언어를많이사용하는경향이있으므로, Microsoft IME의환경설정이그리문제가되지않는다. 따라서, 현재운영체제에서제공하는 Microsoft IME를사용하는것이바람직하다. 5.3.4. 유니코드 Encoding 방식 유니코드의인코딩방식에관해국립중앙도서관에서다음과같은의견을제시 하였다. 첫째, UNIX 운영체제및 UNIX 어플라케이션프로그램은 UTF-8 을기반으로 하는것이안정성이뛰어나며, 둘째 Microsoft Windows 기반시스댐인경우 UTF-16 을기본인코딩방식으로사용하는것이좋으며, 셋째, 데이터베이스 관리시스템은각각의컬럼에대해별도의인코덩방식을셜정할수있으므로 해당데이터의종류에따라인코딩방식을결정하는것이좋다. 위와같은원칙에동의하면서도, 운영체제의저장공간이얼마나남아있느냐 를반드시고려해야하고하드웨어의업그레이드시기와잘맞추어야한다. - 83 -

5.3.5. 유니코드에서지원하지않는한자처리 현시스댐에서유니코드에포함되지않는한자들을처리할수있는방법은없 다. 이를보완하는방법으로, 한국역사정보통합시스템및국제한자표준화기 구에서지정하는코드번호등을통일되게부여하여통일된관리를할수있는 방법을마련해야한다. 5.3.6. 유니코드의한자가한글옴이없는청우입력방법 유니코드입력기와연관된문제로, 또다른입력방식 ( 부수및획수 ) 을개발 해야하거나, 유니코드 Ideograph들의공식적인 로마나이즈이름으로입력할 수있다. 5.3.7. 옛한글문제 주리정 (200 1) 은현유니코드시스템에옛한글의자모만이들어있고, 이에대 한선정기준도모호하다는단점을지적한바있다. 옛한글의음절을구성하기 위한자모만이들어있고, 이에대해기본적인음절구성원리만이들어있을뿐, 이를출력하기위한방법도아직마련되어있지않다. 따라서, 현재옛한글을 효과적으로표현하기위해서는유니코드시스템에옛한글영역을할당받기위 해체계적인조사및연구가필요하다. - 84 -

5.4. 서울대학교도서판유니코드체계적용시소요일정및예산 5.4.1. 유니코드개발예상소요일정 표 32. 유니코드개발예상소요일청 5.4.2. 소요예산 표 33. 유니코드개발소요빼산 5.4.2.1. PC OS 업그레이드유니코드기반의시스댐이원활히운영되기위해서는업무용 PC는 Window XP로반드시업그레이드되어야한다. 다행히도대부분의업무용 PC는 XP를사용하고있으며, 분관의일부 PC와학과및연구소 PC 중에서 XP로 OS 업그레이드되어야할 PC는대략 20여대일것으로추정된다. %

5.4.2.2. 유니코드검색엔진도입도서관에서현재검색엔진으로사용하고있는 BRS는유니코드롤지원하지않으므로, 유니코드기반의시스템에서구동할수있는검색엔진을새로도입해야 한다. 유니코드를지원하는검색엔진으로는 Verity K2, 다센 21, Konan Docruzer, Search Formula-l(Korea WISEnut) 둥이있다. 이들검색엔진도 입 시에는성능테스트 (BMT) 를통해도서관의데이터의특성과이용자이용행 태를반영할수있는검색엔진을도입해야한다. 5.4.2.3. 어폴리케이션업그레이드어플리케이션업그레이드대상은 SOLARSII 의수서시스댐, 연속간행물시스댐, 기중 교환시스댐, 목록시스템, 검색시스템, 대출 / 반납시스템, 장서관리시스템, 상호대차시스댐, 경영정보시스댐, 도서비판리시스댐, 권한관리시스템, 통합검색시스댐, 이용자관리시스템, 기사색인시스탬파전자도서관시스댐을대상으로한다. 어플리케이션업그레이드비용은 Man/Month로다음과같이예측하였다. 구분산출내역금액비고 직접인건비 고급기술자 ( 단위 : 원 ) 176, 998원 xo.5명 x25 일 xl07fl 월 22,1 24,750 중급기술자 188,250,125 53,595,375 142, 921 웬 x 1. 5명 x25 일 xl0개월초급기술자 112,530,000 112, 530 훨 x4 명 x25 일 x107fl 월직접경비 - - 제경비칙접인건비 x 110% 207,075,138 기술료 ( 칙접인건버 + 제청비 ) x 20% 79,065,053 부가세 47,439,032 ) II! 씨 ι ; I!ll l I -... 표 34. 어폴리케이션업그혜이드비용 - 86 -

5.4.2.4. 스토리지 (Storage) 도서관의전체데이터가유니코드로변환되면서데이터사이즈가 2 배 이상으 로커질것으로예상되는바, 스토리지가추가구매되어야한다. 구분용량비고사용 150GB 오라클 DB (50GB) 사용용량현재가용 150GB 색인 (70GB) (150GB) 전체 300GB 기타 (30GB) EMC Symme타 trix 현재 DB 사용용량의 2 배이상필요 8530 유니코드전체 400GB (300GB + 추후 DB 증가고려 ) 변환시 스토리지에 400GB 디스크확장필요 표 35. 스토리지추가구매예상비용 5.4.2.5. DB 변환및교열 SOLARSII 시스템내의 MARC 서지데이터를비롯하여, 이용자DB, 수서 DB, 예산DB 동방대한양의데이터가유니코드로변환되어야하고더불어전자도서관내의 XML 메타데이터와관련운영데이터들이모두유니코드로변환되어 야한다. 전체데이터의일괄유니코드로의변환과아울러대체문자는정확한 유니코드값으로대체되어야한다. 기본적으로프로그램으로일괄변환을하고, 이후교열작업을통해서데이터변환에따른오류를줄여나가야한다. 이에대한구체적인작업내용및소요예산은다음과같다. 구분 대상물량 ( 건 ) I 작업내용 ( 일처리건수 ) I 예상비용 ( 천원 ) 1) 전체 DB 얼괄변환 I I I 전체 DB 변환 I 11,493,473 I I 100,000 대체입력문자변환 표 36. 데이터베이스변환및교열예상소요비용 - 87 -

첫째, 전체 DB 일괄변환은 SOLARSII 시스템내 MARC 서지데이터와관련 운영데이터, 전자도서관의 XML 메타데이터와관련운영데이터둥전체적으로 데이터변환을위한프로그램개발적용교열, 검수작업까지포함한내용이다. 그러나정확한대상물량산출이어렵기때문에, 산출이가능한서지 DB, 전거 DB, 기사색인 DB, 컨텐츠메타 DB 만을대상으로하여서지 DB 1, 227, 676 건 / 전 거 DB 244, 496 건 / 기사색인 DB 9,615,098/ 원문DB 406, 203 건 (2003년정보화 현황책자참고 ) 으로추정하였다. 물째, 대상물량 250, 642 건은 MARC, 셔지데이터중에프랑스어 (28, 556 건 ) 독 일어 (76, 770 건 ) 스페인어 (5, 315 건 ) 중국어 (3, 770 건 : 전체량중 10% 예상 ) 일본 어 (136, 231 건 ) 를추산해서산출하였으며, 또한자료의특성상해당언어별전 문가를채용하여교열작업을수행하도록계획하고있다. ( 교정자 38, 955 원 *25 일기준 ) 셋째, KS C 5601:1987 에서지원하는한자가없어서한글이나다른문자로 대체작성하여 MARC 의 890 태그에표기된자료가 22, 782 건이고, 이자료는 실제자료를확인해서데이터에수작업으로입력해야한다. - 88 -

6. 결론 유니코드는 KS C 5601:1987 을비롯한기존의문자집합이가지고있었던다 국어환경에서의문제점들을극복하고, 이들을대체하기위해개발되었다. 유니코드는컴퓨터에저장하려는모든문서텍스트들을인코딩하기위한방법을제공하기위한국제표준으로, 오늘날실제사용되는모든분자들과, 학술기호, 수학기호, 언어학기호, 프로그래밍기호들을망라하고있다. 비록기술적인문 제와비판도있지만, 유니코드는컴퓨터의주요인코딩체계로부상했다. 다국어환경을지원하기위한국외기관들의유니코드체계검토에발맞추어, 국립중앙도서관, 한국교육학술정보원둥, 여러국내기관들도유니코드체계전 환을검토해왔다. 특히, 서울대학교도서관은전문학술자료및외국자료를 다량보유하고있으며, 이를위한고품질서지데이터베이스를작성및관리해 야한다. 이와같은다국어자료들을관리하려면 KS C 5601:1987 코드체계 로는한계가있어서, 서울대학교도서관에서는임의의기호규칙을만들어다국 어 다. 데이터를구축해왔으며, 이를극복하기위해서는유니코드도입이절실하 서울대학교도서관은향후대학도서관들이유니코드체계로전환하는데따 른표준모델을제시하고, 유니코드체계로전환한대학도서관의목록을수용 할수있도록미리대처해야한다. 또한, 국외학술정보서비스기관들과의목 록상호교환을통한정보서비스의확대도준비해야한다. 도서관시스템이완전한유니묘드체계를지원하기위해서는소장자료의정보가유니코드로저장이가능하고, 유니코드로입력, 편집, 검색이가능하여야한다. 또한, 목록, 상호대차, 원문서비스퉁각종도서관서비스가유기적으로연동되어야한다. 그리고, 외부도서관과의정보교환을위해서유니코드 MARC 반입, 반출을지원해야한다. - 89 -

본연구에서는서울대학교도서관을유니코드체계로전환하는데필요한기술적환경, 서지목록정보, 웅용프로그햄환경퉁올종합적으로검토하였으며, 여러면에서유니코드로의전환에필요한제반여건이갖추어졌옴을알수있었다. 첫째, 기술적인면에서많은운영체제와데이터베이스시스템들이유니코드를지원하고있다. 사용자 PC에서도현재사용자가가장많은 Windows XP는유 니코드를완벽히지원하고었고. Oracle9i 와 Microsoft SQL 2000 퉁의데이터 베이스시스댐도자료의유니코드화가가능하다. 툴째, 서울대학교도서관서지목록들은다국어률많이포함하고있어서. KS C 5601:1987에서표현하지못하는문자들은엄의의기호들로변환하였다. 따라서, 이률유니코드로변환하기위해서는일괄프로그램을작성하여변환하되, 동형이옴한자, 유니코드에서지원하지않는한자, 인코딩방식, 다국어업력방식퉁은본연구에서제시한원칙을사용하여야할것이다. 셋째, 도서관시스댐을유니코드로전환할경우, 외부기관과데이터를교환시유니코드데이터들을주고받올때는문제가생기지않으나, 현재대부분의시 스햄이 KS C 5601:1987로인코딩된데이터들올사용하고있으므로자료의손실이발생활수있다. 유니코드데이터를외부에반출할때는 KS C 5601:1987로표현할수없는문자를해당기관파협의를거쳐반출해야한다. 서울대학교도서관의유니코드체계로의전환이국내도서관시스댐의유니코 드전환의모델올제시하기를바라며, 본연구를바탕으로효율적언유니코드 전환이이루어지길기대한다. - 90 -

참고문헌 김경석 (1 999), 김경석 (1 995), 컴퓨터속의한글이야기둘째보따리, 부산대학교출판부 컴퓨터속의한글이야기, 영진출판사 김태수외 (1 996), 류종범외 (2002), 오동근역 (200 1), 기계가독목록의이해, 문헌정보처리연구회 과학기술정보유통시스댐개발, 한국과학기술정보연구원 MARC 의이해, 태일사 이경호, 김정현 (2003), 자료목록별 KORMARC/MARC21 을중심으로, 대구대학 교출판부 국립중앙도서관 (2003), 국립중앙도서관표준화연구중단일문자표준연구, 한 국전산원 주리정 (200 1), 유니코드구조와문제점, 한국정보관리학회제 8회 학술대회논문 집 최석두 (1 997), 대학도서관분담편목용입력기본표준에관한연구, KRIC 한국어정보처리연구소 (2001), "C 로구현한한글코드시스햄프로그래밍가이 드, 도서출판골드한혜영 (1 998), 국내서단행본입력방안에관한연구, KRIC About search system, K2. <http://www.3soft.com> Building International Application with Power Builder <http://www.sybase.cùm/detai1> Guide to Developer s Kit for Unicode, 1997. <http://www.sybase.com/onlinebooks> Forms of Unicode, IBM developer and President of the Unicode Consortium, IBM 1 September 1999. <http://www-l06.ibm.com/ developerworks/library /utfencodingforms/> - 91 -

General Information About the Arial Unicode MS font. <http://support.microsoft.com/defalllt.aspx?scid=kb;en-lls; 287247> Internationalizing an Application. <http://manllals.sybase.com/onlinebooks/grollp-pb/p bg0900e/ apptech> Library of Congress(2000), MARC21 Specifications for Record Structure, Character Sets, and Exchange Media, Library of Congress Network Development and MARC Standard Office, Web Version. <http://www.loc.gov/marc/specifications/sdechome.htm1> MARBI(1996), MARC Proposals No. 96-10, USMARC Character Set Issues and Mapping to Unicode/UCS, <http://www.loc.gov/marc/marbi/1996/96-10.htm1> MARBI(1997), MARC Proposals No. 97-10, Use of the universal code character set, <http://www.loc.gov/marc/marbi/1997/97-10.htm1> MARBI(1998), MARC Proposals No. 98-18, Unicode Identification and Encoding, <http://www.loc.gov/marc/marbi/1998/98-18.htm1> Microsoft(2000), MSDN help for Microsoft Visual Studio 7.0, <http://www.microsoft.com/msdn> Microsoft, Develop Unicode Applications for Windows 9x Platforms with the Microsoft Layer for Unicode, <http://msdn.microsoft.com/msdnmag/isslles/o 1/ 1 O/MSLU/ defa III t.aspx> Microsoft, Overview of Windows XP International Support <1lttP:/ /www.microsoft.com/globaldev/handson/ dev /winxpintl. mspx> Microsoft, The Microsoft Layer for Unicode on Windows 95/98/Me - 92 -

Systems, <htto:j/www.microsoft.comlglobaldev/handson!dev/mslu_annolmce.msox> Microsoft, Windows XP/2000 default system font, <htto:/ /www.microsoft.comlglobaldev!drlntllcolumns/o 17 /default.mspx#q2> NII(2000), 圖홈館 ~Ä7.L. σ) 多言語對應, 平成 12 年度신 CAT/ILLν Ä7.L. 說 明資料 -7. NII(2001), NACSIS-CAT, 텀錄 ~Ä7.L.(J) 多言語對應, 第 2 版 NII(2001), 따 t ð<? τ σ) 新 CAT/ILL, 第 2 版 NII(2001), NACSIS-CAT끼 LL 二그 -Ä ν ~-5묻. NII(2001), NACSIS-CAT끼 LL..::. 그 -Ä ν ~-8융. NII(2001), NACSIS-CAT/ILL 二.:t. -Ä ν ~-9뭉. OCLC(2001), OCLC Annual Report, 2000/2001. OCLC(2002), OCLC NewsLetter, July. OCLC(2002), OCLC Annual Report, 2001/2002. Oracle(2000), Migration Oracle Internet Applications to Support Unicode, An Oracle Technical White Paper. Oracle(2000), Oracle8i Release 3 National Language Support. Oracle(2001), Best Practices for Globalization using the Oracle 9i Internet Application Server, Version 1.0. Oracle(2002), Globalization Support Oracle Unicode database support, An Oracle White Paper. Oracle(2002), Migration to Unicode Datatypes for Multilingual Databases and Applications in Oracle9i, An Oracle White Paper. Oracle(2002), Oracle9i Database Globalization Support Guide, Release 2(9.2), Part No. A96529-01. PowerBuilder 8.0.2 Maintenance Release New features. - 93 -

<htto://www.justinfo.com!pb802.asp> Richard Gillam(2003), Unicode Demystified, A Practical Programmer s Guide to the Encoding Standard, Addison Wesley. The Unicode Consortium(2003), The Unicode Standard Version 4.0. Unicode and Multilingual File Conversion, Font and Keyboard Utilities for Windows Computers. <htto:/ /www.alanwood.net/unicode/utilities fonts.html#globalime> Unicode fonts for Windows computers <htto://www.alanwood.net/unicode/fonts.htm1> Unicode Support in the Solaris Operating Environment <htto:/ /www.sun.com!software/whiteoaoers/wo-unicode> YAZ Toolkit <htto:/ /www.indexdata.dk./yg_z/> 다국어지원데이터베이스 :1. 개념및아키텍처 <http:/ /www.en-core.com/bin/main/module/ solution/view.asp?solution_code=&se archstring= &col umn = & arti c le_id = 13329 & sta te=vie W & board_id =sol ution& page_n um=3 &group_id= 195 70&direction=n&steo=0> 다국어지원데이터베이스 : 2. 데이터베이스구축하기 <htìp://www.en-core.co m/bin/main/module/solution/view.asp?s 이 ution_code=&se arc hstring= &co 1 umn = & article_id = 13330&sta te =vie w & board_id =sol ution& page_n um=3&group_id= 19570&direction=n&step=0> 다국어지원데이터베이스 : 3. Linguistic 정렬과인텍스 <htto: / /www.en-core.com/bin/ main/mod ule/ so 1 ution/vie w. asp?solution_code=&se archstring=&column=&article_id= 13331 &state=view&board_id=solution&oage_n um=3&grouo_id= 195 70&direction=n&step=0> 다국어지원데이터베이스 : 4. Character Set Migration <http://www.en-core.com/bin/main/module/solution/view.asp?solution_code=&se archstring= & co 1 umn =&artic 1 e_id = 13332 &sta te=view & bo ard_id =sol ution&oage_n um=3&grouo_id= 19570&direction=n&steo=0> - 94 -

부록 1. ISO 2022에서사용하는문자세트에대한용어의청의들 Bit Combination : An ordered set of bits used for the representation of characters Byte: A bit string that is operated upon as a unit (includes 7-bit, 8-bit, and 16-bit "bytes," octet equals 8 bits) Coded character set; code : A set of unambiguous rules that establishes a character set and the one-to-one relationship between the characters of the set and their bit combinations. Code table : A table showing the character allocated to each bit combination in a code Code extension : The techniques for the encoding of characters that are not included in the character set of given code Combining character : A member of an identified subset of a coded character set, intended for combination with the preceding or following graphic character, or with a sequence of combining characters preceded or followed by a non-combining character Control character : A control function the coded representation of which consists of a single bit combination Control function : An action that affects the recording, processing, transmission or interpretation of data, and that has a coded representation consisting of one or more bit combinations Designate : To identify a set of characters that are to be represented, in some cases immediately and in others on the occurrence of a further control function, in a prescribed manner Escape sequence : A string of bit combinations that is used for control purposes in code extension procedures; the first of these bit %

combinations represents the control function ESCAPE Graphic character : A character, other than a control function, that has a visual representation normally handwritten, printed or displayed, and that has a code representation consisting of one or more bit combinations Invoke: To cause a designated set of characters to be represented by one or more bit combinations of a coded character set Repertoire: A specified set of characters that are each represented by one or more bit combinations of a coded character set - 96 -

부륙 2. KS C 5601:1987 문자표 1) b. 010 010 0 010 0 @ @ 010 010 010 010 0 b. 11 1 1 11 I 1 I 1 I l l l 111 1 1 111 l 1 11 1 1 1 1 bo 010 010 0 @ 0 010 n 111 i I l I l 쉰 bo 010 010 @ @ 0 l 111 l l l l I 010 0 0 0 0 0 bo 010 011 l l l 010 I I l l '10 i @ I I I l b, 011 110 0 l l 01 t I 0 0 1I l 010 l I Lo 0 1 b. 110 110 I @ I @ 1 10 i l 11 10, l 011 10 l 10 i @ 1 b, b. bo 111. b. b. b. I~ 111 s 9 빼 It 12111 i 15 11111 혐.. 10 21 22 a 01 1 010 01011 l. I. ÞrJ "1. -.- -".. " 1 [ ) 1 < > 01 1 010 01110 i.,. V.. -.. - v., 톨 I.1 I.," t 4 01 1 010 011 11,! 1,..,., 1 t, t +1. -.. /.1 I., 1 I., 7 011 010., 0 I 0.,..,,,,.,. 011 010 1 101& s.,. "".,..,..,..,. -.1- IiI IW 에 애 빼.1-11&.1. 011 010 111 10 " ",., H.,. 4 -... + 1 1I" ", I&.. 1-1.,. -4 1... +1 t- 01 1 010 I 11 11 11 "' 메i '-' t "-'... - t... -1,. 011 011 010' 0 l톨톨.111 u k., 0 --1- "'þ ðlg 01 1. @ 011 011 01011,..,. u.,.... tl' -u, Þlt..,_ 4 11:11 u 01 1 011 011 Ò 1 10.16 흥 4.(.1.. i.. (1(' * ti (;I~ 훌훌 L 011 011 011., 11 TI7.(1,( dj..,~..., 1* 11.,+.,~ f"1+' ":1 2'1"1'., ν 011 011 110 01 12 AII Ilr Jl I~ 1I)1l 3 1.M A Jl IM 삐 O "Ip CIT ~I. x 011 01 t 110 1 1 ls 011 01 t t 1 t 0114 011 011 1 11 1 1 15 011 110 010 0 11 짜혹깐흩훌흩 } 암홈 011 ljtjl홈. 훌흩톨I 훌끼찍갱톨홈 011 1 10 010 1 117 를톨톨를 1 를톨톨톨톨찌 1 휠. 톨톨톨톨 i 톨톨톨톨 011 1 10 011 o 1 tl 옛. 톨-t 혹톨찌찌찌 ~ 톨톨톨 찌에연! 명 01 1 110 01 t 1 1 1 를끼찍 ". "'fi껏" 나낙낚냥낱낱남낭냥냥낫 ~ 냥낮 011 1 10 0120 낯-"'" 툴툴.. 늦를... "'" 늘를늘를늘!t'. 껴뭘셰애월뭘 011 1 10 1 I a: l 엇엉영I 멍에익믿톨엠톨에 11 톨며명를톨멍에명도를흔 011 110 1 11 01 ZZ 훌를맛훌톰땅엑II1II"'. 맛 이1IIII1l!l l 톨! 01 l 1 10 111 1 1 2J 빼. 믿...!.!I톰야 ~ 믿빠! 빼찌 ~. 멍,. 맺뭘엉 011 1 11 010 0124 를톨훌를톨를톨톨톨톨를톨톨믹액! 밍믿쩨잊믿마 ~ 011 1 11 010 1 125 를... B. 톨톨톨톨후를휴톨톨를를톨톨톨를톨를 011 1 1I 011 01 ZI... IIIIIJ'" l 예익톨. 톨..... 예임 011 1 11 011 톨톨앗... 빼!I... 톨톨 "'t톨빼찌임 011 t 11 t 10 01 za } 깐 Hl 삿상세씬. 엠생셔혜껴.. 월월.. 엉혐갱 011 1 11 110 t 12D 톨... i.. 찌를. 예잉껴억 41<< 를애... It"" 011 1 11 111 0130... ft 후... 를.. 껴잊 "of1 앤를 i 얀 t 011 1 11 11 1 1 131 예찌헨톨엉톨잊 g 여억 'ltcd톨톨. 엉옐톨 'Jl었엉엉힐 - 97 -

i bt @ (2 IU.11 111 l l 111 i I 1 11 111 l 111 b. I 11 I 11 I 11 1 1 10 010 0 0 @ 0, 010 bt 1 l i i l 111 i @ @ 쫓 3 b. i i l 1 11 l 0 @ 1 11 llt l 111 bo 10 l 1 11 l l l 111 011 1 111 휠! @ 10 I 11 011 l 10 10 l l 0 111 011 110 0 111 b. 10 l 11 1 10 l 10 l 0 Lt_ I 011 @ 110 110 I 011 빼힌 Ie.1. @ <Þ IÐ 81 1 w,w bo b. t i 110. b. ~ 삐 i 111*, JO 11111 힐 톨 111 ι i 빼... 011 010 010 1 I l... flj 'I~ 1 * * :1:,-.'.1 t: IA.1. I a l!~ 0'1 010 011 01 I 41 Þ- >. '1 010 o It 11 : - >., c 0'. H '1 J 1" L'M 1110 i 011 o 110.,..,'".,.., 11 1 4...,..... 예 011 010 I 011 8 1 rll." N'. 11. ",., 011.. l "1"," + F... 1... +1' "I.J..I IL., r F...... { 내 011 010 I 11 11-111 l 톨! 윈 "' JIII'-.., rn fiiii... - 1M A 1.. ""1 011 011 01010 1 18.1 1,,, 1,,. -1. g 011 011 @ l 1111111 1_ I'IIl ei -1.. "1M "1" "".. 1M "1" "1" to) 에! 011 011 011 01 10 ~I'" "'I~ ~ 를톨 t:l t.! g.,,? -='I 'C ~U: Ll! t,( κ* ållfl 1" 011 011 011 1 1 11 x t 예t v r, 1,. -:11 1' f 1'1 -t' ~'" *11, 011 011 110 01 12 U 에 Ul IUι b b 10111 011 l 110 1 1 13 011 011 I 1 1 o 011 Oll 1 11 1 1 11 I. 011 110 010 11 톨쩌. 톨7þ~~ 훌혹흩께건톨껴찍혀톨. 톨톨률 ~ 11 훌 011 o I 1 117 구혹를훌를톰 ii 를를를룰률 jf 쩌. 를 헤톨뀌찍윈 011 110 011 0118 찌톨 톨... g 혹톨를톨톨훌훌훌톨톨,. 혹톨훌.. 111 l 1 011 1 1 1 낱낱냥내내냉녕 ""'.ii~ 냄냐낙넬냥냥 'i너녁에녕널넘 011 t...... 10 1 @ 빼를. 를늘 it r 뇨를는늘 ", ttitit* 를 tht 빼닝낱니 l 110 l 1 111 를톨톨톨톨. 톨톨톨 I 톨혹톨... 를푸톨 ~ 톨 톨. 011 1 10 1 11 11 U...... "'.. 빼... '11 잉 l 를 1 1 11, 0124 ~ 앙룰앙...! 아맛땅훌훌톨예빼톨 l 빼 011 1 11... 1 1211 를찌톨톨 톨...... 톨를 톨률 S 톨톨톨률에쩨밍멈 011 111 011 21 l 를빠톨톨톨톨톨톨싸훌훌... 톨.'1'1. 톨 의빼... 톨톨 l 톨톨톨톨톨톨 011 111 110 0121 섯 생를셰찌i!... ~. 셰찌를... 섯 l 에씨녕 011 1 11 110 1 129 *. A 4t è.*.**+ai 4예깅필 엠 에싱.. 액 011 1 11 111.... 빼엉 를... 쩌엉톨톨톨 ~.ot 빠합.. 영앙 훌앤 011 1 11 1 11 1 131 엄. 톨... 를툴툴흩를톨를를를훌를훌를... 1 011 1.10 1 1 1 0121... 의톨." 를톨톨를 l 획 011 111 I 1 1 2T... - 98 -

(J b. 111 1 1 11 111 111 1 1 1 1 11 1 11 1 11 l 111 1 11 11 ]1 b. 010 010 010 010 010 010 010 011 I 111 1 11 111 h 1 1 1 l 1 11 111 1 11 1 1 1 1 11 1 11 110 0 010. 010 b 010 010 010 011 1 1 1 1 11 1 11 110 0 010 010 010 b. 010 011 111 1 10 010 o 11 1 11 110 0 010 1 11 1 11 b. 010 I 110 011 1 10 011 1 10 011 110 0 1 11 010 I 11 ret 8yte b. 01 I 0 110 110 1 10 110 1 10 l' 0 110 l 011 o 1 1 011 b, b. b. b. b. b. b. 빠! 481. &0 1153 51 54 66 s 57 58 빼 @ 61112 M. 훌빼.., 88 g 해 71 01 I 010 01011 l, ( 1'17 0' 1 010 011 01 2 ~,... 익 f tl t 1'1... j n 훌우 i. 'N 11. '1)1*.. 디 -.- 01 1 010 011 11 3 PIQ _11 TIU XIY, I t ] - 1".,..1 "1 01 I 010 110 4 - 껴 l 4t.,..,. ",..,.. -1-.- 01 1 010 1 10 11 s nl l' %IT TI. %,. Q.1", 1 01 1 010 111 10 에 r ""1'- TI.J- "'I.J- + +1+ + +1+ +1+ + +1+ + 01 1 010 111 1 I 7 t i 11. 1'" 110 01110 ~ a "I~ c.i... 빼! 껴 현.. 01 1 011 01010 tl. <l) 1f).IGl CDle CDI. f) 1f) @ f)1t) f)11i) 4ille.I f) ~l idl$ 01 I 011 01011.) ( 매 * 매 매 에 p).) ).).).) ~ I.) ~l 01 1 o 1 1 011 o 1 10 ;[lit 0101 CJf 1 " J;I.Þ, r l 훌 1I "I~ ålð ~I. 4 * 011 o 11 011 1 1 11 l ~17 7"17 - t, "'11 11<! (1 >tt -'1 t * tl. 에.. 1... a - 011 011 1 10 01 12.1 11., 11 1 11. 11-.,..'0 ßIP CIY 011 o 1 I I 10 1 1 13 o 1 I 011 1 1 1 o 1 14 011 o 1 1 1 1 1 I 1 1& 011 1 10 010 o 1 18 월톨월흩깨 ~ 톨톨톨 '1. 정져끽껴건톨. 홈톨킷 11. 톨 011 I 10 010 1 1 17 를흩률뭘큐률를그혹은룰를를률률긋률며끼찍낀걷훌 I 011 1 10 01 1 01 18 l 톨피톨톨톨톨 끄쭈훌훌를 ii 훌훌풋훌훌쩌... 껴 011 1 10 01 I 1 1 111 넘녕냉엇삐녕 예넷에앵녀녁액 s.. 냉 a 4 냉 \t 녕 011 1 10 1 10 0120 나닝닝닝냥닝닛냉닝다닥닦앙당당담당당를당당닷Iit 당 011 110 11 U 톨톨톨톨풋톨쩌뭘껴톨쩌톨 l 뭘뭘엉퓨톨를톨톨드를톨 01 1 1 10 1 11 0122 를후특톨톨. 톨톨 휘 '\!!.. 톨톨 훌.. ~ 톨톨톨톨룻획 01 1 1 Il' 1 11 11 U 를톨톨톨톨톨혹톨 삐를톨 를톨톨Jl. 를톨톨톨톨 011 1 11 010 0124 * 맡 v 여액면멸빼범법옛명톨명예,,'t!. 톨톨찌... 며 01 1 111 010 1 125 명밑멈법옛잊명잊필 11. 빠에t 'f1 't!'ft V 빠빠앙 'f}'o' 엇 'f}... 01 1 111 011 0126 톨툴를톨를를톨톨톨톨톨찌를 1Il쩨위찍 ~ 뭘톨 * 톨. 를 011 I It 011 I1 n 톨... 톨를톨룻톨휴를톨톨톨톨톨빼빼잉 " 엠! ljl앵사 011 1 1 1 110 0128..,,~ <llt4t 흔... *.. 악한를를씌엠. 톨 l 011 1 11 110 1 120 훌훌톨 홉땅. 에 "f!. 톰 톨써찌 g 톨잉톨 011 1 11 I 11 0130 앙빠 ~ 양앙양예액!... 11 l 잉야악얀 v 양양앗양 01 1 1 11 1 11 1 131 톨톨톨톨 11 톨... 찌영톨톨훌훌훌.a. 혹톨를 의를 - 99 -

4!! b. 1 11 1 1 1 111 1 11 1 11 1 11 1 1 1 111 1 11 111 1 11 11 훌 b. 111 1 1 1 111 1 11 111 1 11 1 1 1 111 1 11 1 11 1 11 11 010 0 0 010 010 1 11 1 11 1 1 1 111 1 11 I 1 I I 11 11 b. 111 l l 111 1 11 o 10 010 010 010 1 11 1 11 1 11 11 b. 010 0 111 1 11 010 010 1 1 1 111 o 10 010 I 11 11 b. 010 1 l 010 1 11 010 1 11 010 111 010 1 11 010 It b. 011 0 l 011 011 011 o 1 1 011 o 11 011 011 10 b.lb. b. b. bo b. b.in 12173 7. 'fli 76π π R @ 1182 13 s 8Ií MI". 111 빼 ftl t2 t311m 01 1 010 01011 I l -.. (1:>>0.r - : I11. S 깅 C: I;:) uln ^IV 01 1 010 01110 g 01 1 010 o 11 1 I.1 I 11 11,., t 1 I 11 11-011 010 110 014.1..... l..,..1"..1.111 에히.1.1 히 1.1 1>... 1 P. u f3 냉 b. 01 1 010 11011 5 I 1 A '". f 011 010 111 10 6 011 010 1 11 11 7 1-.11.. IG, 5Y 특 ; 01 1 011 01010 8 ~I~ <il 1~ 111 12> ~l ii).10 @ (Jþ ""1 1/1 i u '" '''1" s 1 01 I 011 01011 9 빼 빼 (lum 빼 lti. 삐.. 1.. (15) 11 I ".... * ","., 1 '1.11 "1% i, 011 011 1.. P,,1: 흩 t ~ Olt 011 011 1 1 11, 를.. 1'" b k 흩 -1. 011 011 1 10 o 1 12 o 1 1 011 1 10 1 1 13 bl. '01 '"! 빼 어 011 o 11 1 I 1 01 14 o 11 011 111 1 1 15 01 1 1 10 010 o 1 1& 져톨톨톨갯고혹공률훌훌훌훌훌훌훌공를파확훌훌훌 o f 1 1 10 010 17 낌갱쩌킹경 ~ 11 III... 깐 * 훌훌률핫J1~. 에찌언톨앵 011 1 10 011 01 18 l 톨 l 톨톨톨쩌뀐톨뭘률퓨 n 혹혼훌훌훌를훌훌훌용 011 I 10 01 t 1 1 19 녁예앤노! 플를 를톨 ~. 늪를놔툴 'lt lll 펴앤닐녕월 o L 1 1 10 1 10 o L 20 달당당대댁연톨밍벌렛힐밍야빼댁법엉엉 a 엉엉엉엉 o L 1 I 10 1 10 1 I 21 를톨톨톨를톨를씌다익단딛당잉딩딪 il 팀딪따악딴 g 01 1 1 10 1 11 01 22 영를를톨떼 "f.! 월멈힘옛명학 wt t} 맡함당핫. 땅 * 011 1 10 1 11 1 1 23 를톨톨톨를툴툴찌뭘.. 빼액윈뭘뭘! 삐엉... - 톨를톨톨 011 1 I 1 010 0124 익명 멧 " 멈잊예묘륙훌톨톨톨톨톨훌용혹톨률톨의 o f 1 I 11 010 1 125 빼익임. 를.. 잇 l 빠,@'II' 배벅언멸앨 @ 영혐뱃 01 1 111 011 0126 를를l!. 를툴툴톨톨톨 "1 써 >n넬 명에넷앵 'tl 11 아빠 "" 011 1 1 t o f 1 1 127 삭앙상앨 i 앙 앙-tt 삿 M 장앙셰세샌세생생 AJI~ 생샤 011 I 11 110 o 128 혀생 4111 엠 i 쇼 "t e * 흩 **'* 수흑 t 흩 * 슷슐 011 I 11 110 1 1 211 tl g 연 ~ 야를를 를 *.. 확.. 훌tl: 111. 씌흰 011 1 11 111 0130 양양예 g... 여액연훨엉엉혐염엉엉없엇었엉엉얻얼 011 l 111 1 1 31 를톨훌톨 4 혹툴툴훌 * 를를훌훌빼객휠톨엉휠웠엉. - 100 -

훌 bt 010 010 0 010 010 0 010 010 @ 010 010 0 010 0 b. 111 t 11 l l 1 11 1 1 11 1 11 l III 1 11 1 1 1 1 l Þ. 010 010 010 010 0 010 010 0 111 1 11 I 11 1 1 1 n펀 b. 010 010 0 010 1 11 l 1 11 I 11 i 010 010 0 01010 bo 010 011 l 1 1 1 010 @ 011 t 11 I 010 010 I 11 111 b. Oft I 0 1 1 I 010 i 110 OH 1 010 1 11 0 011 1 1 b. 110 I 01 1 011 0 1 10 1 10 I 011 011 0 11011 bt b. b. b. b. b. b.! t 11 314 s 1 m 1t112 13114 11.11' 1811. 20 21 22 23 l 0 0 @ 0 0 0 32 의톨... 를빼액흰. 뭘훨톨유혹훌톨흩톨훌훌훌 110! 0 0 0 l 3J 를훨갯톨경찌찌견 1 톨 톨져원. 를톨훌갱찌훌측 110 0 0 0 I 34 청힐필... 아딴톨톨를. 톨톨훌앙 찌익믿 l 110 0 l 1 1 35 Bltt 활 1 찌 ~. 톨톨옛훌. "'l 환훌... 쳐억헌톨톨 110 0 0 110 0 31 "'1 의원힐휠 w 쩨켓쟁 확칸톨 o 률 '1l함께피 It! 톨톰 0 0 0 1 10 1 1 37 g 률 ".'" 톨톨톨 S 톨톨톨톨를톨찌피 tl iuti 힐잊 g 110 @ 0 111 0131 찌껴쩌톰! 뭘훌훌명휴톨를톨톨 I 톨를를톨톨톨톨웃의 110 0 0 1 11 1 13 빠를 JII.t Jε 톨톨톨톨루. 톨를를를톨톨룰를껴명빼톰 010 11 010 01 to... 혹툴훌훌톨톰톨톨흩학확훌.... 를톨톨 110 o 11 010 t 1 41 110 I I 0 42 빼훌톨.111 며따훌훌. * 를훌예1M IkJ1lJ훌., 홉톨훌 110 0 I 0 11 u 를 l "''' 삐! 삐를빼삐톨툴톨에I 江톨 IU톨흩 1 111 110 0 I I 0 l 4fi 톨톨 훌 l ~ It l 훌톨. 톨빼훌빼빼홉 IκI I I 10 @ 44.~ 톰.t 훌 a 톨 l 톨. 훌 톨톨톨 :11::.... 110 011 llt 01.. 1 빠훌 톨헤 1. 톨 l 톨훌훌톨 I 톰삐 I 흩훌 110 011 11 1 l 1& 디 1IJ tt.. 훌훌훌 훌삐 훌 <<.~III l 110 010 48 따훌톨 훌훌훌흩뼈 l 를 ø 훌삐월 1 톨 l 원 11 I 110 010, 1 411 훌 1 e. 흩 I"tf1i' 훌훌 e Jlt 훌훌톨 톨훌톨 '11 톨 I'i l 1 10 011 01 50 " IiJ 훌훌 l l 톨乃흥.,... 훌.01 톨女훌. 후 II l 110 011 11 51 It.a 흩. 且톨 톨 톨훌훌 흩 l i 110 110 0152... 톨톨빼 톨톨. 톰홉 Il 훌훌훌 톨 l 110 110 1 1 53 톨 홉톨훌톨를톰톨홉꺼 l 빼 톰.. " i llu 111 015 톨 빼껴l,; "ft 를 l 훌.. 깨톨 l 110 1 1 1 11 55 훌 톨를 훌톨 톨 I 111 010 0151 효효 훌 훌를 l 方 æ 홉 톨 I 1 1 I 010 11 &1." 훌 * 빼톨 톨... 훌률. 톨톨 톨 l 1 1 1 011 01 &1 fi 훌 R 톨.,. 빼 를.il 훌톰톨훌 311 l 1 1 1 011 I1 59 톨 톨. 훌톨 t;!ø1 i 삐 fj 톰. 1H' 11th a I 톨톨톨... I 111 110. 톨톨 톨... ft. 를톨. 를 톨. JIIIftA"# 110 If l 110 1'" 훌 ø. 훌." I! 톨톨 ~ 톨. 룰톨 톨훌훌 I~ 110 t' 1 111 12 i1 톨 톨톨 ~ "'... I 홈 훌.~ 빼 110 1 1 1, 1 1 11 13... 山 IU.l 1.JIIII aø JJ 훌 톨톨 三.. 를회 - 101 -

(6 ~ bt 010 @ 010 011 111 111 III 111 1 1 111 1 1111 i b. 111 1 11., 1 11 1 010 010 010 010 010 o 10 010 010 b. l i 1 l i i l 0, 010 010 01010 t펀3 b. l i i i l I l @ @ @ @ 011 1 1 t t 1111 @ b 0 l I l l 0 0 10 0 I I I 1 10, 011 11111 b. 10 0 @ l I 0 @ I @ 1I 1 10 011 1 10 01111 1). i 10 I 0 0 i 0 11 10 l I 0 1 10 1 10 110 11011 1 b. b. b. 11.,. b. b. 흩! a g 톨 R.,80 31132.IM 훌 3'11. 톨 40 41141 빼 45 "4'7 1 1 Q 0 0 0 0 0 32 혹를를흩툴툴훌를훌훌훌... 를 톨. 톨 41 01 찌잉밑 110 0 0 1 1 aa 를를. 를톨를를. 를. 톨... 를를톨...... 톨를. 를 찌익!. 를... 의톨톨 ~ 톰 를톨 110 0 0 I 1 1 li5 톨엇."'111" 월. 를 tjl 찌톨. 톨.a.. ~ 110 0 0 110 36 g 톨야 ct 'l앙 꺼! ~ 톨톨톨 g i 톨에... 톨 110 0 110 1 1 37 하빠 11... 당룰훌훌톨빼 톰 l 밍..... ~ 110 @ 1 11 0131... -, 익 1잉딩염 v 멧핑따 훌톨. 톨를훌훌톨톨 110 010 111 1 1 at. 톨잊휴톨톨를을를훌톨톨를톨률찌쩌 '8톨홈껴 fl 톨.. 110 0 I 0140 희... 를잊톨 i 흔톨톨톨후혹-톨톨톨톨훌를쩌톨. 톨 l 011 010 1 1 41 샤흩까쩨 l 0 l u l u 41 1If 톨 훌.t빼 흩톰톨톨훌 l 1-- 톨힘J. tf훌추.. l 0 10 l 0 11 11 43 톨 介 fil' 빼 iit..fif. 톨. ~ 훌 i @ 0 l I 0 0 44 l 훌훌훌홉 톨 * 톨.ft -11. 0 10 l 10 l 밍l 톨 * 훌.. ii!i *''t톨톨훌 " 를 11., 0 011 111 O 빼. 를 톨빼훌훌톨 tbt lic IU~ 110 011 111 1 47 Il흩 l 훌 u... a 훌를 훌 g.11 li O 110 010 014...... JlfII 뼈를톨1f톨 " 훌i:. 110 110 010 11 4' e IRE. 톨훌 11. 를 M 110 1"1 0 011 0150 * 훌 t.!i i 010 @ l 0 "... ~~ " IUI 톨 l 톨 l 훌 l. 톨 110 110 011 11 51 l 톨 _*f 훌훌. 톨톨 110 110 110 01 52 톨톨 껴 톨 l l 빼 l 빼톨톨 톨엇 ~ 흘 I 10 110 I 10 11 53 톨 흩 I 톨 l 훌 톨톨 빼 110.10 1 1 1 0154."1톰... 111 에J IIfI 톨 "s 뼈 톨 110 110 111 11 51 톨 :t.:: a 톨 률 111 뼈훌 1 1 1 010 16 톨톰톨 톨훌훌훌훌 i톨톨 1 'C:' 훌훌1c... 110 111 010 l 7 톨훌훌훌톨훌훌.ti:"" 룰 흩 *_a 톰 1 1 1 011 0118 톨 1IIl 톨 톨 It톨iIID:. l 빼톨 110 111 011.1 5. e 톨.39".111."11. 톨.~t 훌 ".. 톨훌를 IIE 110 11 I 110 O 뻐."... 110 111 110 1111. 훌 110 1 1 1 1 11 62."... It 빼 lt 톨톨. I 훌훌 M 훌.~ 톨삐톨톰훌..~t 分 l!it " 톨 & t& IUi) '1( 에11. 톨tt: 쩌 a. 톨. 훌 111. 11 I!I 土. 흩 110 111 1 I 1 11.ø I 톨흩 l 上 톨 빼 톨...... - 102 -