본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "전자문서 편찬 실습"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.












본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "XPath의 이해"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.












본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "XSL의 이해"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.












본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "XML NAMESPACE의 이해"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.












본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "INTERNET과 www"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 

ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.












본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "XML의 이해"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.










본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "HTML의 이해"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.









본 내용은 한국학중앙연구원 인문정보학과 필수교육과정인 김현 교수님의 "전자문서와 하이퍼텍스트" 강의자료 중에서 "INTERNET과 www"부분 입니다. 디지털 인문학에서 데이터 수집-정리의 기본이 되는 XML에 대한 기초적인 내용과 디지털 인문학의 방향성과 방법에 대한 내용으로 구성되어 있습니다. 


본 내용은 출처표기를 하시면 자유롭게 활용 가능합니다. 문의사항이나 수정요청 사항 등은 ddokbaro@gmail.com 으로 메일을 보내주시기 바랍니다.








디지털 인문학에서 사용되는 중요 ICT 기술과 적용사례를 소개해본다. 해당 기술은 디지털 인문학에서 현재 가장 활발하게 사용되고 있는 기술일 뿐이며, 어떠한 ICT 기술도 디지털 인문학에서 활용될 가능성이 있다. 


XML 

XML(Extensible Markup Language)은 W3C에서 다른 특수 목적의 마크업 언어를 만드는 용도에서 권장되는 문서를 사람과 기계 모두가 읽을 수 있는 형식으로 부호화하는 규칙의 집합을 정의한 다목적 마크업 언어이다. XML은 텍스트 데이터 형식으로 유니코드를 통한 전 세계 언어를 지원할 뿐만이 아니라, 임의 자료구조에도 대응할 수 있도록 설계되어 있다. 이는 인문-사회학에서 진행되는 대부분의 연구가 다양한 언어와 형식의 자료를  바탕으로 진행되는 현실과 부합하기에 인문학 연구의 기초적인 데이터베이스 구축에 가장 적합한 ICT 기술로 생각되고 있다. 



[XML예시] 


해외의 디지털 인문학 연구에서 XML은 기본 언어로 다루어지고 있다. 다만 언어학 영역에서는 XML과 같이 SGML에서 파생된 TEI(Text Encoding Initiative)을 바탕으로 한 코퍼스 연구가 진행되고 있다. XML이나 TEI 모두 같은 SGML에서 파생되었기에 상호간의 호환이 가능하다. 


한국에서는 1995년 서울시스템주식회사(현 (주)솔트웍스)에서 CD-ROM <국역 조선왕조실록>과 <디지털 한국민족문화대백과사전>에 XML을 도입하기 시작한 이후로 한국고전종합DB을 비롯한 다양한 인문학 프로젝트에서 채용되고 있다. 그러나 한국 인문학 프로젝트의 ICT 기술편차로 인하여 다양한 인문학 프로젝트에서 XML 기술을 활용하지 못하고, 단순한 Text 데이터만을 제출하였다. 그 결과 재활용이 가능한 인문학 데이터베이스가 축적되지 못하였다. 




말뭉치(코퍼스, corpus)

말뭉치는 디지털 인문학의 주요 근원이 된 말뭉치 언어학(코퍼스 언어학)의 기초 기술이다. 말뭉치는 언어학에서 크고 구조를 이루고 있는 텍스트의 집합을 의미한다.  국제적으로 통용되는 말뭉치 언어는 SGML 기술의 일종인 TEI이다. 연구자들은 말뭉치를 통해서  빈도 정보를 획득한 이후에 연어 연구, 변이 연구, 비교 언어학 연구, 언어 교육, 사전 편찬등의 영역에서 신빙성 있는 증거자료로서 활용하고 있다.  


해외에서는 1963년 브라운 말뭉치 구축을 기점으로 1억 어절의 말뭉치를 구축한 BNC(British National Corpus)와 유럽 다국어 말뭉치(European Corpus Initiative Multilingual Corpus) 및 4억 어절을 구축한 COCA(Corpus of Contemporary American English) 등이 지속적으로 구축되고 있다. 코퍼스는 다양하게 활용되고 있지만, 언어학 내부의 활용이 아닌 인문학 전체에 대한 활용으로는 타이완역사 디지털도서관(台灣歷史數位圖書館, THDL)이 있다. 타이완역사 디지털 도서관에서는 1621년부터 1911년 사이의 250종류의 자료소스를 바탕으로 언어학의 분석 이론을 통하여 타이완의 근현대 사회상을 규명하고 있다. 예를 들어서 언어학의 접사분석모델을 이용하여 “主義”의 전방접사의 시대별 빈도를 추출해주고 있다. 특히 개념사 영역의 역사 연구자들은 특정 단어의 전방접사 빈도를 통하여 당시의 시대상과 용어의 변천에 대해서 규명하고 있다. 



[타이완역사 디지털도서관 - 主義 검색결과]


한국에서는 1987년 연세대학교의 연세 한국어 말뭉치가 구축된 이후에 1998년부터 “21세기 세종 계획 : 국어정보화 추진 중장기 사업”의 일환으로 국가차원에서 말뭉치가 구축되고 있다.  또한 서울대학교 꼬꼬마 프로젝트나 연세대의 깜짝새 프로그램 등 다양한 한글 자료 처리 프로그램들의 구축되어서 연구자들의 연구를 도와주고 있다. 그러나 한국의 말뭉치는 아직 언어학 내부의 방법론으로서만 활용되고 있으며, 다른 인문학 연구 영역에서는 활용도가 떨어진다고 할 수 있다. 




지리 정보 시스템(GIS, Geographic information system)

지리 정보 시스템은 지리공간적으로 참조가능한 모든 형태의 정보를 효과적으로 수집, 저장, 갱신, 조정, 분석, 표현 할 수 있도록 설계된 컴퓨터의 하드웨어와 소프트웨어 및 지리적 자료, 인적 자원의 통합체이다. 지리 정보 시스템은 1960년대부터 토지이용, 기상관측, 동식물연구 등의 다양한 영역에서 활용되어 왔다. 현재는 컴퓨터 기술의 발달과 더불어 구글 지도, 다음 지도, 네이버 지도와 같이 일반대중에게도 널리 활용되고 있다. 그러나 인문학 영역에서는 기술에 대한 능력 부족으로 시각화 영역에 한정되어서 사용되고 있으며, 지리 정보 시스템을 활용한 자료의 수집과 분석의 영역은 실험적인 단계이다. 


중국역사GIS(China Historical GIS, CHGIS, 中国历史地理信息系统)는 2001년부터 하버드 엔칭연구소와 복단대 역사지리연구소가 연합하여 하상주부터 민국시대까지 중국역사에 등장하는 모든 지명을 좌표점과 좌표면으로 시간축상에 표기하는 역사지리토대DB 구축 프로젝트이다. 중국의 고지명과 해당 고지명의 시간과 공간을 명시함으로써 인문학 연구에서의 지리적 토대를 마련했다. 



[China Historical GIS]


한국에서도 중국역사GIS와 유사한 개념으로 고려대학교 민족문화연구소가 중심이 되어서 조선시대 전자문화지도 시스템을 구축하였다. 조선시대 문화를 대상으로 하여 전자문화지도를 개발하고, 전자문화지도 개념을 응용하여 조선시대를 문화를 연구한다. 2년간 조선시대 문화를 주제별로 분류하고, 조선시대의 군현별 행정 구역을 초ㆍ중ㆍ후기로 나누어 복원하였으며 총 25개 주제에 대한 데이터베이스를 구축하였다. 그리고 그 연장선에서 현재 동북아역사재단의 주관으로 동북아시아 전자역사지도 개발을 진행중에 있다. 그러나 조선시대 전자문화지도 시스템은 유지보수가 이루어지지 않고, 데이터도 비공개로 되어 있어서 한계를 보이고 있으며, 동북아시아 역사지도는 아직 개발 단계에 있다. 


문화재청에서 주관한 문화재공간정보서비스는 문화재정보와 지도정보가 결합한 공간정보 활용체계이다. 문화재 위치정보, 속성정보에 대한 공간데이타베이스와 활용시스템을 구축하여 문화재 보존관리를 위한 의사결정을 지원하고, 위치정보를 기반으로 문화유산 콘텐츠 활용이 가능하도록 구축된 정보시스템이다. 문화재의 사진 및 도면, 영상, 설명등의 속성정보가 위성기반의 위치정보와 함께 결합되어 HGIS 지도 서비스 제공하고 있어서 연구적 가치 뿐만이 아니라 실용적 경제 가치도 뛰어나다.



[문화재공간정보서비스]




LOD(Linked open data, 링크드 데이터)

링크드 데이터는 웹 상에 존재하는 데이터를 개별 URI(Uniform Resource Identifier)로 식별하고, 각 URI에 링크 정보를 부여함으로써 상호 연결된 웹을 지향하는 모형이다. 디지털 인문학에서는 현재 산발적으로 진행되는 디지털 인문학 성과들을 통합하기 위한 방법으로서 각광 받고 있다. 



[LOD 다이어그램]


유로피아나(Europeana)는 유럽 연합의 전자 도서관 프로젝트이다. 선사시대부터 현대까지 유럽의 문화와 과학 유산을 종합하여 모든 사람들이 접근 가능한 데이터베이스를 만든다는 목적으로 유럽 문화에 관한 디지털화된 서적, 회화, 영화, 음악, 유물 등 모든 형태의 콘텐츠를 서비스하고 있다. 콘텐츠는 단순한 데이터모음이 아닌 EDM(the Europeana Data Model)으로 불리는 표준방식을 이용하여 대영박물관, 루브르 박물관 등 2000여 소의 관련 기관들에서 제공하는 정보를 통합데이터로 만들어 제공하고 있다. 



[유로피아나]


한국에서는 국사편찬위원회의 한국역사정보통합시스템을 통해서 한국고전번역원, 한국금석문 종합영상정보시스템, 조선왕조실록, 규장각 한국학연구원 등의 연계싸이트들로부터 데이터를 통합하여 한국 역사자료를 체계적이고 종합적으로 제공하고 있다. 연구자들은 개별 싸이트에 방문할 필요 없이 한국역사정보통합시스템을 통해서 통합적인 한국역사정보를 제공 받을 수 있다. 




[한국역사정보통합시스템]




사회 연결망(Social Network)

사회 연결망은 사회학에서 개인, 집단, 사회의 관계를 네트워크로 파악하는 개념이다. 즉 개인 또는 집단이 네트워크의 노드(node)이며, 개인과 집단 간의 연결 관계는 링크(link)로 표현한다. 연구자는 네트워크에서 노드와 링크의 관계를 파악하고, 그 의미를 연구하여 사회의 구조를 파악하는데 활용하고 있다. 


해외에서는 CBDB(China Biographical Database Project, 中國歷代人物傳記資料庫)가 대표적인 인문학적 사회 연결망 프로젝트라고 할 수 있다. CBDB는 중국역대인물들의 정보를 검색하고 활용할 수 있도록 하버드 옌칭연구소가 시스템을 지원하고, 중국 북경대학교에서 데이터베이스를 마련한 데이터베이스이다. 본 데이터 베이스는 인물의 생몰년뿐만이 아니라 지역, 관직, 저작 및 인물관계를 제공하고 있으며, 중국 역대 인물들의 모든 데이터 베이스를 제공하는데 목적을 두고 있다.  



[China Biographical Database Project(中國歷代人物傳記資料庫)]


한국에서는 성균관대의 한국족보자료시스템에서 족보에 수록된 혈연관계를 바탕으로 관계망을 구축하고 있다. 그러나 족보 정보에 한정되어 있으며 타 가문과의 연계정보도 극히 제한적으로만 제공하고 있기에 실험적인 단계에 멈추고 있다. 현재 성균관대 동아시아학술원은 고대 동아시아의 간찰(편지) 정보를 바탕으로 동아시아 교류 네트워크를 구성하는 사업을 추진중에 있다. 



[한국족보자료시스템]

DTD(문서 형식 정의(Document Type Definition)는 컴퓨터 용어로, SGML 계열의 마크업 언어에서 문서 형식을 정의하는 것이다. SGML을 비롯해 HTML, XHTML, XML 따위에서 쓰인다. XML DTD는 XML 문서의 구조를 정의한다. 다시 말해서 Valid XML 문서가 되기 위해 문서 내에 어떤 요소를 사용하고, 요소간의 계층구조를 기술하고, 요소의 내용으로 올 수 있는 내용을 정의한다.


DTD는 문법이 간단하며, SGML 계열에서 사용되어 왔기에 기존의 다양한 문서 정의가 DTD로 되어 있다. 그러나 DTD가 가지고 있는 XML에서의 다양한 확장의 한계로 인하여 XML_Schema 표준을 사용할 것을 추천한다.



1. DTD 선언 방식

1.1. 외부 DTD 선언

<?xml version="1.0" ending="utf-8"?>

<!DOCTYPE 루트요소이름 SYSTEM "DTD문서경로">


SYSTEM : 시스템에 존재하는 물리적인 위치정보. 파일이름 or 특정URL

<!DOCTYPE CONCEPT SYSTEM "concept.dtd">

<!DOCTYPE CONCEPT SYSTEM "http://ddokbaro.tistory.com/xml/concept.dtd">

<!DOCTYPE CONCEPT SYSTEM "file:///c:/concept.dtd">


PUBLIC : 특수한 형태를 식별자를 사용하여 외부DTD 참조

<!DOCTYPE member PUBLIC "-//W3C/DTD XHTML 1.0 Strict//EN" >


혼합방식 : SYSTEM  + PUBLIC 

<!DOCTYPE CONCEPT PUBLIC "-//W3C/DTD XHTML 1.0 Strict//EN" "http://ddokbaro.tistory.com/xml/concept.dtd" >


1.2. 내부 DTD 선언 - 실무에서 쓸일 없음.

1.3. 외부-내부 DTD 선언 - 실무에서 쓸일 없음. 




2. ELEMENT

2.1. ELEMENT 정의 형태

#PCDATA(문자 데이터) : <!ELEMENT ele-name (#PCDATA)>

자식요소 : <!ELEMENT ele-name (ele-name+, ele-name, ....)+>

자식요소와 문자 데이터의 혼합 : <!ELEMENT ele-name (#PCDATA | ele-name ....)*>

EMPTY(빈 content) : <!ELEMENT ele-name EMPTY>

ANY(위의 4가지가 모두 오는 경우) : <!ELEMENT ele-name ANY>


2.2. 출연횟수 정의


?

 0 or 1 (출현하지 않거나 1번만 출현)

 0개 이상 출현(출현하지 않거나 반복 출현가능)

+

 1개 이상 출현(무조건 1번은 출현해야되고, 여러번 반복 출현 가능)


2.3. #PCDATA(문자 데이터)

- PCDATA : Parsed Character Data 

- 출현횟수 정의 불가 : <!ELEMENT name (#PCDATA)+>  (X)


2.4. 자식요소

<!ELEMENT CONCEPT (time, place)> 

<!ELEMENT PEOPLE ( (Mr|Ms), Firstname, Middlename*, Lastname) >

<!ELEMENT PEOPLE ( email*, ( homePhone | officePhone | mobilePhone)+, address?) > 


2.5. #PCDATA + 자식요소

<!ELEMENT 요소이름 (#PCDATA|요소명1|요소명2.....)*>

#PCDATA는 반드시 자식요소보다 먼저 와야 한다.

- "|" 이외의 출현횟수나 출현방법은 괄호 밖에 정의한다.


2.6. EMPTY - 빈요소, 실무에서 사용빈도 적음

<!ELEMENT 요소명 EMPTY>


2.7. ANY - 모든사항 허용, 최대한 사용하지 말 것

<!ELEMENT 요소명 ANY>




3. Attribute

3.1. 기본형식

<!ATTLIST ele-name (att-name type default-decl)+>


ele-name : 속성이 포함될 요소의 이름

att-name : 요소 안에 포함될 속성의 이름

type : 속성값을 제한하기 위한 값으로 10가지 속성타입이 올 수 있다.

default-decl : 속성이 요소에 반드시 포함되어야 하는지 등의 특별한 제한을 두기 위하여 사용된다. => #IMPLIED, #REQUIRED, 기본값, #FIXED


3.2. att-name

- 문자 시작, 숫자 시작 불가, 공백불가, "_", ":"로 시작가능


3.3. type

 CDATA 

 문자데이터(단순한 텍스트 문자열) 

 열거형 

 속성값은 반드시 DTD에 명시적으로 정의된 일련의 값들 중의 하나가 되어야 한다. 

 ID 

 속성값은 해당 요소에서 고유한 식별자이다. 이것은 반드시 모든 XML 이름 규칙을 따르는 텍스트 문자열 이어야 한다.

 IDREF 

 IDREF의 값과 똑같은 ID 값을 갖고 있는 요소에 대한 참조 값 

 IDREFS 

 공백에 의해 경계가 나뉘는 IDREF들의 리스트 

 NMTOKEN 

 하나의 이름 토큰 - XML 이름 규칙을 따르는 텍스트 문자열 

 NMTOKENS 

 공백에 의해 경계가 나뉘는 NMTOKEN들의 리스트 

 ENTITY

 이미 정의된 ENTITY의 이름 

 ENTITIES 

 공백에 의해 경계가 나뉘는 ENTITY 이름들의 리스트 

 NOTATION

 속성값은 DTD에 명시적으로 선언된 NOTATION type이 되어야 한다. 


<!ATTLIST ele-name att-name CDATA default-decl >

<!ATTLIST elel-name att-name (value1 | value2 | .. ) default-decl >

<!ATTLIST ele-name att-name ID (#REQUIRED|#IMPLIED)>

<!ATTLIST ele-name att-name IDREF(S) default-decl>

<!ATTLIST ele-name att-name NMTOKEN(S) default-decl >



3.4. default-decl

#REQUIRED

 속성은 반드시 요소에서 사용되어야 한다. 

#IMPLIED   속성 사용이 선택적이며, 만일 사용하지 않으면 요소는 이 속성을 갖지 않는다. 기본 값은 줄 수없다. 

 #FIXED

 속성 사용은 선택적이고, 사용하지 않으면 고정 값을 기본 값으로 가지며 사용할 경우, "고정 값"을 속성 값으로 가진다. 즉 상수와 동일하다. 




4. ENTITY

- 반복적으로 사용되는 문장이나 문자열을 참조

XML조각, DTD조각, 긴 문자열, 상수, non-XML 데이터 사용가능

- 세부사항 참조 링크




5. NOTATION - 실무에서는 추천 안함

- XML 응용프로그램에서 사용할 외부 응용 프로그램이나 이진 데이터에 이름 부여

<!NOTATION not-name SYSTEM URI>

<!NOTATION not-name  PUBLIC pURI sURI>



MSSQL에서 XML 데이터를 운용하는 레퍼런스를 간략하게나마 정리해보았다[각주:1].


특히 상업적인 수요가 거의 없는 "인문학데이터를 XML을 기반으로 만들어서 RDB에서 사용"하기 위한 방법론 요약정리이다.



+ XML 기반 관계형 데이터베이스 설계의 3원칙[각주:2]

 1. 단위 노드의 XML 문서는 더 이상 분해하지 않고, 하나의 XML 컬럼에 적재한다.

단위 노드는 일반적으로 고유한 ID 값을 가지는 항목이면서 독립적인 관리의 대상이다. 


예를 들어서 종이사전의 하나하나의 명사("계절", "가구" 등)가 하나의 "단위 노드"가 된다. 물론 A로 시작하는 모든 명사("air, att....")를 "단위 노드"로 설정해도 무방하나, 실무에서 원고위탁등의 행위을 할 때 일반적으로 하나의 명사 단위로 관리를 하기 때문에 하나하나의 명사가 "단위 노드"가 되는 것이 관리하기 편하다.


 2. 주요 메타데이터 요소는 별도 테이블의 독립 컬럼 데이터로  관리한다.

일반적으로 자주 쓰이는 메타데이터 요소(ID, 이름 등)은 작업의 편이성을 위해서 독립적인 테이블로 만드는 것이 편하다. 또한 특정 서비스(갤러리, 지리정보서비스)의 구현을 위해서 필요한 데이터만을 추출하여 독립적인 테이블로 만드는 것도 작업의 편이성을 보장한다. 


다만 3번 항목을 충족시키기 위하여 View 테이블을 사용하는 것을 강력하게 권장한다.


 3. XML 본문 컬럼과 메타데이터 컬럼의 데이터는 항상 일치되도록 한다. 

XML 데이터에서 자주 사용되는 데이터를 View 테이블이 아닌 일반 테이블로 만들 경우 XML 데이터와 서비스되는 데이터 간의 상이성이 발생한다. 데이터 무결성은 DB 관리의 기본이지만, 기본이 지켜지지 않는 경우가 왕왕 발생하기에 다시 한번 강조된다. 


정말 왠만하면 View 테이블을 사용하라. 물론 View가 아닌 트리거를 사용할 수도 있다. 그러나 시스템부하나 일반적인 서비스환경을 생각하면 역시 View 기능을 사용하는 것이 비교적 합리적이다.




+ XML 데이터 입력

INSERT INTO  (테이블명)((컬럼명)) VALUES(

CONVERT(xml, -- XML이라고 명시 

N' -- 유니코드 명시

(XML 데이터)

', 1) -- data_type 설정(data_type 참고)

)


* CONVERT xml data_type(http://msdn.microsoft.com/ko-kr/library/ms187928.aspx)

0(기본값) : 불필요한 공백을 삭제하고 내부 DTD 하위 집합을 허용하지 않는 기본 구문 분석 동작을 사용합니다.

1 : 불필요한 공백을 유지합니다. 이 스타일 설정에 따라 xml:space="preserve"가 대신 지정된 경우와 동일하게 동작하도록 기본 xml:space 처리가 설정됩니다.

2 : 제한된 내부 DTD 하위 집합 처리를 설정합니다

3 : 불필요한 공백을 유지하고 제한된 내부 DTD 하위 집합 처리를 설정합니다.



+ XML 스키마 컬렉션

--스키마 만들기

CREATE XML SCHEMA COLLECTION 스키마명 AS '

XML스키마내용

'

-- 스키마 사용

CREATE TABLE 테이블명 (

              컬럼명 속성값 IDENTITY PRIMARY KEY,

              컬럼명 xml 스키마명 -- XML 스키마 컬렉션 지정

)


+ XML 데이터 조작 메소드

query() : XML 인스턴스에 대해 쿼리 : 검색된 XML 인스턴스 

value() : XML 인스턴스에서 값을 검색 : 검색된 XML 인스턴스의 값 

exist() : NULL이 아닌 결과를 반환하는지 여부를 확인 : TRUE/FALSE 

modify() : XML 데이터의 업데이트를 수행하도록 DML 문을 지정 : 반환값 없음 

nodes() : 여러개의 XML 인스턴스를 여러개의 행으로 반환 :노드별로 추출된 XML 인스턴스를 담은 행 집합(테이블) 


1. 기본적인 query()

select 칼럼명.query('/') -- 루트노드의 XML값 반환

select 칼럼명.query('/노드A') -- 자식노드 A의 XML값 반환

select 칼럼명.query('/노드A/노드B') -- 자식노드 B의 XML값 반환

select 칼럼명.query('/노드A/@속성B') -- 자식노드 A의 속성 B의 XML값 반환


2. 상대경로 지정 query()

select 칼럼명.query('/노드A/노드B/.') -- 자식노드 B 자체 XML값 반환

select 칼럼명.query('/노드A/노드B/..') -- 자식노드 B의 상위노드(A노드)의 XML값 반환


3. 재귀적내림 연산자 query()

select 칼럼명.query('//노드A') -- 모든 A 노드의 XML값 반환

select 칼럼명.query('//노드A[1]') -- 문서내 1번째 A 노드의 XML값 반환

select 칼럼명.query('//노드A[2]') -- 문서내 2번째 A 노드의 XML값 반환

select 칼럼명.query('//@속성A') -- 문서내 모든 속성A의 XML값 반환


4. 필터 사용 query()

select 칼럼명.query('//노드A[노드B]') -- 노드 B를 포함한 모든 노드 A의 XML값 반환

select 칼럼명.query('//노드A[@속성B]') -- 속성 B를 포함한 모든 노드 A의 XML값 반환

select 칼럼명.query('/노드A/노드B[노드C]') -- 노드 C를 포함한 노드 A의 자식노드 B의 XML값 반환

select 칼럼명.query('//노드A[.="키워드B"]') -- 노드값이 B인 모든 노드 A의 XML값 반환

select 칼럼명.query('//노드A[@속성B="키워드C"]') -- 속성 B의 값이 C인 모든 노드 A의 XML값 반환

select 칼럼명.query('//노드A[노드B="키워드C"]') -- 노드B의 값이 C인 모든 노드 A의 XML값 반환


5. Xpath 함수사용 query()

select 칼럼명.query('/노드A/node()') -- 노드 A의 XML값을 반환

select 칼럼명.query('/노드A/text()') -- 노드 A의 모든 하위 노드를 제외한 XML값을 반환

select 칼럼명.query('/노드A[last()]') -- 마지막 노드 A의 XML 값을 반환

select 칼럼명.query('count(/노드A)') -- 노드 A의 출현횟수를 count한 XML 값을 반환

select 칼럼명.query('sum(노드A/@속성B)') -- 노드 A의 모든 속성B을 sum 한 XML 값을 반환


6. 기본적인 value() 

select 칼럼명.value('(/노드A)[1]', 'nvarchar(100)') -- 1번째 자식노드 A의 값을 nvarchar(100) 형식으로 반환

select 칼럼명.value('(/노드A)[1]', 'real') -- 1번째 자식노드 A의 값을 real형식으로 반환

select 칼럼명.value('(/@속성A)[1]', 'real') -- 1번째 속성 A의 값을 real형식으로 반환



7. 여러개의 값 반환 value() + nodes()

SELECT 지정노드_임시명.value('/노드B', 'nvarchar(100)') 

-- "지정노드_임시명"의 노드A의 위치의 모든 노드 B의 값을 nvarchar(100) 형식으로 반환

FROM  테이블명 CROSS APPLY 칼럼명.nodes('/노드A') AS R(지정노드_임시명) 

- 노드A의 위치를 "지정노드_임시명"으로 저장


* 추천

text데이터(한글+한자) = nvarchar

geo(위경도)데이터 = real



8. 기본적인 exist()

-- exist()는 where 조건절에 쓰여서 특정값을 가져올 때 쓰인다

SELECT 칼럼명 FROM DB명 WHERE 칼럼명.exist('노드A') = (0 or 1)


9. 기본적인 modify()

9.1. replace

UPDATE DB명 

SET 칼럼명.modify('replace value of (노드A())[1] with "입력값" ') 

WHERE 조건값


9.2. insert

UPDATE DB명 

SET 칼럼명.modify ('insert 입력값 after (노드A)[1]') 

WHERE 조건값


9.3. delete

UPDATE DB명 

SET 칼럼명.modify('delete 대상위치값[1]') 

WHERE 조건값



value()도 더 자세히 해야겠고 exist()나 modify()도 넣어야겠네.....나중에...언젠가?!





+ 실무작업 예시[각주:3]

 

-- [Create Table] 기본테이블 세팅

create table jeju_xml (

id nvarchar(10) NOT NULL, -- ID 컬럼, 기본키

xmltxt xml NOT NULL, -- XML 항목 2G까지 입력가능.

primary key(id)

)

 

-- [Trigger] XML 데이터를 입력했을 때 해당 XML 데이터에서 자동으로 ID값 추출

CREATE TRIGGER jeju_getid ON jeju_xml INSTEAD OF INSERT

AS

INSERT INTO jeju_xml(id, xmltxt)

SELECT

t.xmltxt.value('(/항목/@ID)[1]', 'nvarchar(10)') AS id,

t.xmltxt AS xmltxt

FROM inserted t

 

-- [Data Input] 예시데이터 입력

INSERT INTO jeju_xml(xmltxt) VALUES(

CONVERT(xml,

N'<항목 ID="2011-5-01">

<항목명>용연(龍淵)</항목명>

<메타데이터>

<일시>2011. 10. 10. 09:30</일시>

<주소>제주특별자치도 제주시 용담동</주소>

<위치>

<경도>126.5144225</경도>

<위도>33.51488194</위도>

<고도>26.1</고도>

</위치>

</메타데이터>

<본문>

첫 방문지. <지명>용연(龍淵)</지명><지명>한천(漢川)</지명>이라는 이름의 하천이 바다와 만나는 지점. 양안이 절벽인 하천 하구에 바닷물이 들어 연못처럼 보인다. 옛날에는 <지명>제주</지명>에 부임한 관리들이 달밤에 이곳에서 배를 띄우고 놀았다고.... 지금은 연인들이 즐겨 찾는 여행 코스인 듯. 다리 난간 와이어에 이른바 사랑의 자물쇠를 채우는 일이 빈번해지자 시에서는 별도의 자물쇠 걸이를 설치하였다.

<삽도 url="L1080486m.jpg">용연(龍淵) 안내판</삽도>

<삽도 url="L1080477m.jpg">용연(龍淵)</삽도>

<삽도 url="IMG_9073.jpg">용연(龍淵)</삽도>

<삽도 url="IMG_9077.JPG">용연(龍淵) 석벽에는 목사 심원택이라 새겨져 있다.</삽도>

<삽도 url="L1080485m.jpg">시에서 설치한 자물쇠 걸이.</삽도>

</본문>

</항목>', 1)

)

 

select * from jeju_xml -- 입력 확인용

 

-- [Meta View] 기본정보 제공을 위한 view 테이블 생성

create view jeju_meta as

select

id,

xmltxt.value( '(/항목/항목명)[1]', 'nchar(80)' ) as 항목명,

xmltxt.value( '(/항목/메타데이터/일시)[1]', 'nchar(20)' ) as 일시,

xmltxt.value( '(/항목/메타데이터/주소)[1]', 'nchar(40)' ) as 주소

from jeju_xml

 

select * from jeju_meta -- 추출내용 확인용

 

 

-- [GIS View] GIS 서비스를 위한 view 테이블 생성

create view jeju_gis as

select

id,

xmltxt.value( '(/항목/메타데이터/위치/경도)[1]', 'real' ) as 경도,

xmltxt.value( '(/항목/메타데이터/위치/위도)[1]', 'real' ) as 위도,

xmltxt.value( '(/항목/메타데이터/위치/고도)[1]', 'real' ) as 고도

from jeju_xml

 

select * from jeju_gis -- 추출내용 확인용

 

 

-- [Photo View] 갤러리 서비스를 위한 view 테이블 생성

create view jeju_photo as

SELECT id as txt_id,

photo.value('./@url', 'nchar(40)' ) as 파일,

photo.value('.', 'nchar(100)' ) as 캡션

FROM jeju_xml CROSS APPLY xmltxt.nodes('/항목/본문/삽도') AS R(photo)

 

select * from jeju_photo -- 추출내용 확인용

 

-- [Keyword Index] 인덱스 서비스를 위한 인덱스 생성

-- 지명추출

create view jeju_place as

SELECT name.value('.', 'nchar(40)' ) as 지명, id as txt_id

FROM jeju_xml CROSS APPLY xmltxt.nodes('/항목/본문/지명') AS R(name)


-- 인덱스 추출 

create view jeju_pndx as

select distinct 지명, count(*) as 빈도 from jeju_place group by 지명

 

select * from jeju_pndx order by 지명 -- 인덱스 정보 확인용



  1. 사실 결정적인 이유는...본인이 매일매일 혼동을 해서......-0-;;; [본문으로]
  2. 김현교수님 제정-0-;; [본문으로]
  3. 본 내용은 김현교수님의 수업내용에서 추출했음. [본문으로]

우리는 인터넷 상의 지식 정보가 저절로 만들어지는 것이 아니라는 사실을 상기할 필요가 있다. 누군가가 지식의 작은 조각을 만들어내고, 다른 누군가가 뜻을 통하게 하는 연결 고리를 만들고, 또 다른 누군가가 그 자원에 대한 사람들의 접근을 용이하게 하는 노력을 기울인 결과이다.  그런데 그러한 일련의 일들이 체계 없이 무질서하게 엮어지는 것과 일정한 목표와 방법을 가지고 수행되는 것 사이에는 결과 면에서 큰 차이가 있다. 보다 유용하고, 신뢰할 수 있고, 더욱 많은 사람들의 관심을 모으고 도움을 줄 수 있는 지식 정보의 생산을 위해서는 전략과 기술의 개발, 그리고 그것을 운용할 수 있는 전문 인력의 육성이 필요하다.

  인문정보학은 인문지식의 정보화에 관련된 다양한 문제들을 탐구 주제로 삼는다. 정보 처리 기술 수준으로 이야기하자면, 가장 낮은 단계의 데이터 입출력 문제에서부터 정보과학의 궁극적 목표라고 할 수 있는 인공지능의 구현에 이르기까지, 거기에 인문 지식이 결부되는 과제들은 모두 인문정보학의 과제일 수 있다. 그 가운데 실용적인 측면에서 문화콘텐츠의 제작과 직결된 것을 우선적으로 꼽는다면 인문학적 지식을 디지털 미디어에 탑재하여 사이버 공간에서 유통될 수 있도록 하는 디지털 텍스트 편찬 기술, 그리고 ‘읽고 이해하는’ 대상이었던 인문지식 콘텐츠를 ‘보고 느끼는’ 감성적 체험의 대상으로 전환하는 인문지식의 시각화 기술을 들 수 있을 것이다.


1) 디지털 텍스트

  디지털 텍스트란 지식을 전달하는 문자 언어를 디지털 미디어에 전자적인 신호로 기록한 것을 말한다. 워드프로세서로 작성하여 컴퓨터 속에 저장한 한 편의 글도 넓은 의미의 디지털 텍스트라고 할 수 있다. 워드프로세서로 만든 문서는 종이에 출력하여 사람이 읽게 하는 것을 목표로 하지만, 우리가 관심을 갖는 디지털 텍스트는 기계(컴퓨터)가 읽고 해석할 수 있게 함으로써 종이에 쓰일 때에 얻을 수 없었던 부가가치를 낳을 수 있게 하는 것이다.

  컴퓨터와 정보 통신 네트워크, 모바일 컴퓨터라고 할 수 있는 스마트폰까지 대중화된 오늘날의 사회에서 우리는 이미 디지털 텍스트의 영향력을 실감하고 있다. 매일 매일 접하는 인터넷 상의 모든 웹(Web) 문서들이 모두 다 디지털 텍스트이다. 그러한 문서들이 종이 책의 텍스트와 다른 점은 무엇인가? 그것이 어느 나라, 어느 기관의 서버에 있든, 인터넷 포털이 제공하는 서비스를 통해 검색과 열람이 가능하다. 그리고 적지 않은 양의 웹 문서에는 그 문서상에서 내용적 관련성을 가진 다른 문서를 찾아갈 수 있는 연결고리가 포함되어 있다.

  다른 문서에 대한 연결고리를 가지고 있는 전자 문서를 하이퍼텍스트 문서(Hypertext Document)라고 한다. 이미 현대인들의 생업과 여가생활에서 빼놓을 수 없는 동반자가 되어 있는 월드 와이드 웹(World Wide Web)은 하이퍼텍스트 문서를 저장하고 있는 컴퓨터의 범세계적인 집합이다. 하이퍼 텍스트는 종이에 쓰였던 텍스트가 디지털 신호로 전환되었다는 점 외에, 그 문서의 이곳, 저곳에 태그(tag)라고 불리우는 특별한 표시가 기입되어 있다는 특징을 갖는다.

[예시 1] HTML 문서

  <html>
        <head>
                <title>웹 사이트 목록</title>
        </head>
        <body>
                <a href="http://www.humancontent.or.kr">인문콘텐츠학회</a><br/>
                <a href="http://www.aks.ac.kr">한국학중연구원</a><br/>
                <a href="http://www.digerati.kr">인문정보학</a><br/>
        </body>
</html>


  순수하게 문자나 삽도만으로 이루어진 기본 텍스트(Plain Text)에 이와 같은 태그를 기입하는 것을 마크업(markup)이라고 한다. 순수한 텍스트는 사람에게 읽히기 위한 것이지만, 여기에 부가된 태그들은 기계(컴퓨터)가 읽고 해석하며, 지시된 기능을 수행하게 한다. 이를 테면 <titlle>....... </title>이라는 태그는 표시된 부분이 그 문서의 제목이니 제목으로 취급하라는 의미이고, <a href="url“> ...... </a>라는 태그는 그곳을 클릭하면 "url"(Uniform Resource Locater)로 지시되는 곳(월드 와이드 웹 상의 주소)의 문서로 이동하라는 의미이다.


  이와 같이 미리 약속된 몇 가지 태그를 기입하여 월드 와이드 웹 상에서 통용될 수 있도록 한 문서를 HTML(Hyper Text Markup Language) 문서라고 하는데, 이는 하이퍼 텍스트 링크 기능을 위주로 하는 가장 단순한 형태의 디지털 텍스트라고 할 수 있다.


  텍스트 속에서 특정한 의미를 담고 있는 부분을 명시적으로 표현함으로써 컴퓨터로 하여금 더욱 다양한 부가가치를 만들어 낼 수 있게 한 또 하나의 약속 체계가 XML(eXtensible Markup Language)이다. HTML의 태그는 미리 만들어진 것을 쓰는 것인 데 반해, XML의 태그는 문서 제작자가 새롭게 정의할 수 있고, 그 각각의 태그에 대해 컴퓨터가 어떠한 처리를 할 것인지를 지시할 수 있다. 다음은 XML 문서로 만들어진 디지털 텍스트의 한 예이다.


[예시 2] XML 문서

2-1. 원시 데이터


敎旨
  吳性鎰爲鬱陵島島監者.
光緖十六年九月 日



교지
  오성일을 울릉도 도감으로 임명함.
광서 16년 9월  일






2-2. XML 문서: 고문서

<고문서 유형="교지">
        <표제>敎旨</표제>
        <본문><인명 성격="수급자">吳性鎰</인명>爲<지명>鬱陵島</지명>島監者</본문>
        <일자 성격="발급일" 서력="1890"><연호>光緖</연호>十六年九月 日</일자>
</고문서>



2-3. XML 문서: 위치 정보

  <공간정보 유형=“기관”>
        <명칭>독도박물관</명칭>
        <주소>경상북도 울릉군 울릉읍 도동리 581-1</주소>
        <위치>
                <위도>37.48332</위도>
                <경도>130.9008</경도>
        </위치>
</공간정보>


  우리는 [2-1] 문서에 쓰인 오성일(吳性鎰)이 사람 이름이고, 울릉도(鬱陵島)가 지역 이름이라는 것을 알지만, 컴퓨터는 그것을 인식할 수 없다. 하지만  [2-2]에서 처럼 ‘吳性鎰‘에 <인명> 태그를 달아주고, ’鬱陵島‘에 <지명> 태그를 달아주면 컴퓨터도 텍스트 속에서 그것을 식별해 낼 수 있다. 이러한 문서가 100만 건 정도 있다고 가정해 보자. 컴퓨터는 그 모든 자료에 대해 완벽한 인명 색인과 지명 색인을 만들어낼 수 있다. 그 뿐 아니다. [2-3]에는 이 문서를 소장하고 있는 독도박물관이라고 하는 곳이 지구상의 어느곳에 위치하는지를 알리는(Global Positioning) 정보가 포함되어 있다. XML 마크업을 통해 <경도> 요소와 <위도> 요소를 컴퓨터가 인식할 수 있게 하고, XML 문서의 시각화를 담당하는 XSL(eXtensible Stylesheet Language) 문서에 그것의 처리를 지시하면,[각주:1] 컴퓨터는 전자지도 상에서 그곳의 위치를 정확하게 나타내 준다. [2-2]와 [2-3]은 독립적인 문서로 존재할 수도 있지만, ‘독도박물관’이라는 키워드를 매개로 하이퍼 링크를 맺을 수 있다. 조선시대의 고문서를 3차원 위성 영상 지도를 통해 볼 수 있게 하는 서비스가 가능해지는 것이다.





[그림 1] 고문서와 위치 정보의 연계



위의 예시들은 소략한 정보만을 담고 있지만, 이보다 훨씬 크고 복잡한 데이터도 XML이라는 디지털 텍스트의 형식을 통해 체계적, 명시적으로 기술하여, 컴퓨터에게 그 처리를 지시할 수 있다. 낱장의 고문서나 지도뿐 아니라 수십권 분량의 백과사전이나 수백년에 걸쳐 만들어진 역사 기록이 모두 디지털 텍스트로 편찬됨으로써, 그 속에 담긴 작은 사실 하나까지도 사이버 공간에서 지식 정보로 활용될 수 있는 것이다.

  월드 와이드 웹 상에서 유통되는 디지털 텍스트의 양이 폭발적으로 증가되면서 그 가운데 서로 유관한 데이터가 서로에 대해 의미를 갖고 모여질 수 있도록 하는 기술이 탐구되기 시작했다. 이른바 시맨틱 웹(Semantic Web)이라고 하는 것이다. 이론적인 설명 대신 간단한 예시를 통해 시맨틱 웹을 통해 무엇을 얻을 수 있는지 알아 보기로 하자.



[예시 3] 내용적으로 유관한 월드 와이드 웹 자원



3-1. 함양 거연정 위치
Google Maps

   

3-2. 함양 거연정 사진

문화재청 문화재 DB

 

   3-3. 함양 거연정 기사
한국학중앙연구원 한국민족문화대백과사전

   

3-4. 거연정기 판액 사진
개인 홈페이지

   

3-5. 거연정기 한문 원문
고전번역원 문집총간 DB
   

3-6. 거연정기 번역문
개인 홈페이지

   

3-7. 임헌회(거연정기 저자) 기사
한국학중앙연구원 역대인물 DB


  위에 예시로 든 7개의 디지털 자료는 모두 경상남도 함양군 남강천에 있는 유서 깊은 누정 ‘거연정’과 관련이 있는 것이다. 그것들은 내용면에서 관련성이 있지만 각각 다른 곳에 별개의 문서로 존재한다.  이러한 자료를 고립된 자원으로 두지 않고, 의미의 연결 고리를 좇아 문맥을 이루게 하려면 어떠한 노력이 더해져야 할까?

  현재의 월드 와이드 웹 환경에서는 그 문서들에 공통으로 포함되어 있는 어휘- 이를테면 ‘거연정’-를 이용해서 서로 관계가 있을 수 있는 후보 문서를 모두 탐색한 후에, 이용자의 눈으로 그 결과 하나 하나를 확인하면서 필요한 것을 취하는 방법이 가능할 뿐이다.

  시맨틱 웹은 데이터가 생산될 때 유관한 자료의 의미적 연관 관계를 약속된 방식으로 명시함으로써 보다 지능적인 데이터 연계가 이루질 수 있게 할 것을 제안한다. 위에 예시한 월드 와이드 웹 상의 데이터에 대해 그 관계성을 정의하는 데이터를 다음과 같이 만들었다고 가정해 보자.

  - 개체의 고유한 이름(URI: Uniform Resource Identifier) 정의
  N1: 월드 와이드 웹 상에서 ‘함양 거연정’을 유일하게 지목하는 식별자
  N2: 월드 와이드 웹 상에서 ‘거연정기’를 유일하게 지목하는 식별자
  N3: 월드 와이드 웹 상에서 ‘임헌회’를 유일하게 지목하는 식별자
  D1: 3-1 문서의 고유한 식별자
  D2: 3-2 문서의 고유한 식별자
  D3: 3-3 문서의 고유한 식별자
  D4: 3-4 문서의 고유한 식별자
  D5: 3-5 문서의 고유한 식별자
  D6: 3-6 문서의 고유한 식별자
  D7: 3-7 문서의 고유한 식별자


  - 개체간의 관계성 정의
  N1의 누정기는 N2이다.
  N2의 저자는 N3이다.
  N1의 지도는 D1이다.
  N1의 사진은 D2이다.
  N1에 대한 설명은 D3이다.
  N2의 사진은 D4이다.
  N2의 한문 원문은 D5이다.
  N2의 번역문은 D6이다.
  N3에 대한 설명은 D3이다.


  이러한 방식으로 관계성을 기술한 정보가 [예시 3]에서 보인 개별 문서와 함께 인터넷 상에 존재할 때, 우리가 현재의 월드 와이드 웹에서 얻을 수 없는 무엇을 더 얻게 될 것인지는 쉽게 이해할 수 있을 것이다.  그 이전까지는 웹 상에서 고립된 형태로 존재하는 지식의 조각이 다른 조각들과 함께 모여 커다란 의미체를 이루게 된다.

  객체 사이의 관계성을 표시해 주는 방법은 여러 가지가 있을 수 있겠으나,  월드 와이드 웹의 세계에서는 RDF(Resource Description Framework)라고 불리우는 형식이 표준으로서의 지위를 얻고 있다.[각주:2] 웹 주소와 같은 명명법으로 객체에 식별자를 부여하고 두 객체 사이의 관계성을 약속된 서술어로 기술하는 방식이다. ‘거연정기’라는 텍스트와 ‘임헌회’라는 인물 사이에 ‘~의 저자는 ~이다’라는 관계성을 서술어로 부여하는 RDF 문의 모양새는 다음과 같다.






[그림 2] RDF 그래프


  현실세계에서는 지역과 조직, 그리고 전공이라는 벽 때문에 지식과 정보가 조각 조각 나뉠 수밖에 없었지만, 디지털 세계에서는 그 벽을 넘어서서 나누인 조각들을 모을 수 있다. 또 그것을 한 가지 기준이 아니라, 관심과 필요에 따라 다양한 방식의 문맥으로 만들어낼 수가 있다.

  인문정보학은 현실 세계의 다양한 영역에서 만들어진 지식의 조각들을 그것의 관계성까지 고려한 디지털 텍스트로 전환하여 가상 세계에 옮겨 놓는 일에 주력한다. 그렇게 함으로써 의미있는 지식이 그것을 필요로 하는 사람들에게, 그들이 필요로 하는 형태로 모여지고 쓰여질 수 있기 때문이다.



본 내용은 한국학중앙연구원 인문정보학 김현 교수의 "인문정보학"의 일부를 발췌한 내용입니다.



  1. XSL 문서에서 전자지도 콘텐츠 공급자가 제공하는 Open API(Application Programming Interface)를 구동하는 방법을 사용한다. 인문지식 콘텐츠를 위한 전자지도 활용 방안에 관해서는 「GIS와 지역문화 콘텐츠의 연계 응용 기술」(2009. 11. 『인문콘텐츠』 16)에서 상세하게 소개하였다. [본문으로]
  2. RDF(The Resource Description Framework)는 월드 와이드 웹 자원의 메타데이터를 기술하는 형식이다. 2004년 W3C(World Wide Web Consortium)의 권고안이 제시되었으며, 시맨틱 웹 활동의 일환으로 운용되고 있다. RDF가 기술하는 웹 자원의 속성은 인간이 아닌 컴퓨터가 읽고 해석하기 위한 것이며, 인간을 대신하여 지능적인 정보 처리를 하게 하기 위한 것이다. ☞ http://www.w3.org/RDF/ [본문으로]

+ Recent posts