이 문서는 더블린코어 메타데이터를 HTML/XHTML의 <meta>와 <link> 요소로 부호화하는 방법을 설명하고 있다.
1. 서론
이 문서는 HTML/XHTML의 요소를 사용하여 더블린코어 [DCMI] 메타데이터 레코드를 HTML/XHTML 웹 페이지에 내장할 수 있는 방법을 설명하고 있다.
DC 레코드를 HTML/XHTML [HTML] 자원과(혹은 DC 레코드를 HTML/XHTML자원에 내장하기 위한) 연결하기 위한 여러 가지 대안이 있을 수 있음을 유의할 필요가 있다. 여기에는 다음과 같은 대안들이 포함된다.
별도의 RDF/XML [DCRDF, QDCRDF] 기술을 작성하고 HTML/XHTML의 <link> 요소를 사용하여 이 기술과 연결하는 방법
별도의 XML 기술 [DCXML]을 작성하고 HTML/XHTML의 <link> 요소를 사용하여 이 기술과 연결하는 기법
이상의 대안에 대해서는 이 문서에서 다루지 않고 있다.
1.1 전문용어
이 문서에서는 다음과 같은 전문용어를 사용한다.
자원(Resource)
독자성을 지닌 것이라면 어떤 것이라도 자원이 될 수 있다. 흔히 볼 수 있는 용어로는 전자문서와 이미지, 서비스(예, “로스 엔젤리스의 오늘의 기상보고”), 기타 자원의 집서 등이 포함된다. 모든 자원이 네트워크상에서 ‘검색 가능한’ 것은 아니다. 예를 들어 사람과 단체, 도서관에 소장된 제본된 단행본도 자원으로 취급된다.
속성(Property)
레코드는 자원에 관해 얼 마간 구조화된 메타데이터로서, 하나 이상의 속성과 이와 관련된 값으로 구성된다.
레코드(Record)
레코드는 자원에 관해 얼 마간 구조화된 메타데이터로서, 하나 이상의 속성과 이와 관련된 값으로 구성된다.
더블린코어 메타데이터 요소는 속성이라는 점에 유의해야 한다(위에서 정의한 바와 같이). 아울러 HTML/XHTML에서 사용되는 ‘element’와 ‘attribute’라는 용어의 용법과 혼란이 있을 수 있으며, 또 일반적인 메타데이터라는 의미에서 사용되는 이들 용어의 용법 간에 혼란이 있을 수 있다는 점도 유의할 필요가 있다.
이 문서에서 기술대상인 자원은 HTML/XHTML 웹 페이지이고, 이 자원을 기술한 더블린코어 레코드는 HTML/XHTML <meta> 요소를 사용하여 이 웹 페이지에 내장된다는 점도 유의해야 한다. 이 방법을 통해서는 단 하나의 자원(이 웹 페이지)만을 기술할 수 있다. 복수의 자원(예를 들어 복수의 이미지)을 기술하기 위해서는 복수의 더블린코어 레코드를 수록하고 있는 하나 이상의 별도의 XML이나 RDF/XML 문서와 연결해야 한다.
2. XHTML 부호화
여기서 설명하고 있는 <meta>와 <link> 요소를 사용하여 메타데이터를 XHTML 웹 페이지 [XHTML11]의 < head > 부분에 내장해야 한다.
2.1 요소와 값
DC 요소(열다섯 개의 DCMES 중 하나 혹은 더블린코어에서 정의하고 있는 다른 요소 중의 하나, 예를 들면 audience)와 그 값을 부호화하기 위해서는 XHTML <meta> 요소의 'name'과 'content' 성질을 사용해야 한다. 다음과 같은 형식을 따르게 된다.
요소 세목에서는 더블린코어 메타데이터 용어(DCMI Metadata Terms) 권고사항에서 구체적으로 제시하고 있는 이름을 사용해야 한다('Label'로 제시된 것이 아니라 'Name'으로 제시된 것). 일반적으로 요소 세목명에는 대소문자를 함께 사용할 수 있지만 첫 번째 문자는 항상 소문자로 시작되어야 한다.
2.3 부호화 체계
부호화 체계는 XHTML <meta> 요소의 'scheme' 성질을 사용하여 부호화되며, 다음과 같은 형식을 따르게 된다.
부호화 체계에서는 더블린코어 메타데이터 용어(DCMI Metadata Terms) 권고사항에서 구체적으로 제시하고 있는 이름을 사용해야 한다('Label'로 제시된 것이 아니라 'Name'으로 제시된 것). 일반적으로 부호화 체계명에는 대소문자를 함께 사용할 수 있지만 첫 번째 문자는 항상 대문자로 시작해야 한다. 대체적으로 부호화 체계명은 모두 대문자이다.
2.4 다른 자원과의 연결
속성의 값이 다른 자원의 URI인 경우(예를 들어 DC.relation 요소에서 흔히 볼 수 있다), XHTML <link> 요소를 사용하여 또 다른 형식으로 부호화하도록 권장되고 있다. 다음과 같은 형식을 따르게 된다.
이 문서에 제시된 모든 용어는 XHTML 1.1에 따른 것이다. 이 문서의 권고사항은 XHTML 1.0 (예, HTML 4.01 [HTML401])) 이전의 HTML 버전에도 적용이 가능하지만, HTML의 이전 버전에서는 HTML의 <meta> 와 <link> 요소에서 종료 ‘>’ 앞에 오는 ‘/’을 필요로 하지 않기 때문에 최종적으로 작성된 구문에서는 약간의 차이가 있을 수 있다. 게다가 HTML 4.01과 이보다 더 오래된 HTML 버전에서는 값의 언어를 지시하기 위해 'xml:lang' 대신 'lang'을 사용해야만 하였다. XHTML 1.0 Transitional(즉 HTML과 호환이 가능하도록 설계된 XHTML)에서는 'lang'과 'xml:lang' 두 가지를 사용해야 하고, XHTML의 기타 버전에서는(1.1과 같은) xml:lang 만을 사용해야 한다.
5. DC 메타데이터와 다른 체계와의 혼합
DC 메타데이터는 HTML/XHTML <meta> 요소에서 DC 이외의 메타데이터와 혼용해서 사용이 가능하다. 다음 예는 동일한 HTML/XHTML 웹 페이지에 DC와 AGLS [AGLS] 그리고 명시적으로 제시되지 않은 메타데이터 속성을 내장하고 있다.
<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" />
<link rel="schema.AGLS" href="http://www.naa.gov.au/recordkeeping/gov_online/agls/1.2" />
<meta name="DC.title" content="Services to Government" />
<meta name="AGLS.Function" scheme="AGIFT" content="recordkeeping standards" />
<meta name="keywords" content="archives, information management,
public administration" />
속성과 부호화 체계에 이름을 부여하기 위한 더블린코어 규정은 DC 이외의 메타데이터 요소에는 적용되지 않는다는 점을 유의할 필요가 있다.
6. 용어
이 문서에 대한 확장 DC 메타데이터 레코드를 다음과 같이 제시하였다. 이 웹 페이지의 HTML 정보원의 <head> 부분에 이 레코드가 내장되어 있다는 것도 알 수 있을 것이다.
...
<head profile="http://dublincore.org/documents/dcq-html/">
<title>Expressing Dublin Core in HTML/XHTML meta and link elements</title>
<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" />
<link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" />
<meta name="DC.title" lang="en" content="Expressing Dublin Core
in HTML/XHTML meta and link elements" />
<meta name="DC.creator" content="Andy Powell, UKOLN, University of Bath" />
<meta name="DCTERMS.issued" scheme="DCTERMS.W3CDTF" content="2003-11-01" />
<meta name="DC.identifier" scheme="DCTERMS.URI"
content="http://dublincore.org/documents/dcq-html/" />
<link rel="DCTERMS.replaces" hreflang="en"
href="http://dublincore.org/documents/2000/08/15/dcq-html/" />
<meta name="DCTERMS.abstract" content="This document describes how
qualified Dublin Core metadata can be encoded
in HTML/XHTML <meta> elements" />
<meta name="DC.format" scheme="DCTERMS.IMT" content="text/html" />
<meta name="DC.type" scheme="DCTERMS.DCMIType" content="Text" />
</head>
...
7. 감사의 글
이 문서는 더블린코어 메타데이터를 HTML [RFC2731]로 부호화하기 위한 기존의 권고사항과 Simon Cox와 Eric Miller, Andy Powell이 작성한 이 문서의 이전 버전, 웹에서의 현재의 관행 및 HTML/XHTML 규격의 최신 버전에 기초한 것이다.