번역에 관련한 주석는 이 색상으로 표시하여 원문 번역 내용과 구분하였다.
CSS 적용은 원본에 준하여 하되 한글 표현이 어색한 부분은 약간 조정하였다. W3C에서 프레임을 허용하지 않아 프레임을 선택 할 수 있게 하였다. 번역문 시작 |
원문 저작권© 2000년, 원문 W3C의 ? (원문 MIT, 원문 INRIA, 원문 Keio ), 모든 권리 보유.
W3C의 원문 책임, 원문 상표권, 원문 문서 사용과 원문 소프트웨어 면허 규칙이 적용 됨.
이 XHTML 1.0 규격은 HTML 4를 XML 1.0 적용으로 재 구성하고, HTML 4에서 정의된 세가지 DTD들을 각각 다시 정의한다. 엘레멘트(element)들과 그 애트리뷰트(attribute)들의 문법들은W3C의 HTML 4 추천안에서 정의된 바와 같다. 이 문법들은 향후 XHTML의 확장성(확장성)을 기초를 제공한다. 현재의 HTML 사용도구들과의 공통 사용성(부합성: compatibility)은아래 작은 안내서에 의하여 가능하다.
이 항목은 계시한 싯점에서의 본 문서의 상태를 기술 한 것이다. 다른 문서들이 이 문서를 개정 할 수 있다. 이 문서의 최종 문서 상태는 W3C에 의하여 연속적으로 유지된다.
이 문서는 W3C의 멤버와 관련자들의 검토를 거처, 임원회의 승인을 받은 상태이므로 인용하고 사용하는데 안전하다.
W3C의 추천안 형성 기능은 웹의 통용성을 돕도록 주의를 모으고, 그 결과를 널리 보급하는 것이다. 이렇게 함으로서 그 기능성과 상호 통용성을 강화한다.
이 문서는 원문 W3C HTML 활동의 일환으로 작성되었다. 원문 HTML 작업 구룹(원문 멤버 만)의 목표는 원문 HTML Working Group charter(원문 멤버 만)에서 논의 되었다.
현 W3C 추천안 목록과 다른 기술 문서들은 원문 http://www.w3.org/TR에서 볼 수 있다.
HTML 능력에 대한 공개 토론은 원문 www-html@w3.org(원문 전자 우편 목록)에 있다. HTML 작업에 관 한 W3C 접촉 직원은 원문 Dave Raggett이다.
이 문서의 요류에 관 한 보고는 원문 www-html-editor@w3.org에 해 주기 바란다.
이 문서의 알려진 오류들의 목록은 원문 http://www.w3.org/2000/01/REC-xhtml1-20000126-errata에서 볼 수 있다.
XHTML은 번역문 HTML 4를 재생성, 하부세트(subset)하고 확장하는 현재와 향후 문서 타입(type)과 모듈(module)들의 한 가족이다. XHTML 가족(family) 문서 타입들은 XML에 기초하고, 궁국적으로 XML에 기초한 사용도구들과 연관하여 작동하도록 설계되었다. 이 가족의 세부사항들과 그 개선은 향후 방향 항목에서 더 상세하게 다루었다.
XHTML 1.0(이 규격)은 XHTML 가족에서 첫번째 문서 타입이다. 이는 세가지 HTML 4 문서 타입들을 XML 1.0 (XML) 적용으로 재 작성 한 것이다. 이는 XML 규격에 맞는 것과 함께, 간단한 안내서가 있으며, HTML 4의 규격에 맞는 사용도구들에 사용하도록 의도하였다. 내용들을 XHTML 1.0로 변경(이전)하는 개발자들은 아래의 잇점들을 얻을 것이다:
XHTML 가족(family)은 인터넷 발전의 다음 단계이다. 오늘날 XHTML의 이전으로, 내용(content) 개발들이, 내용의 이전 버전과 향후 공통 사용성(compatibility)의 확신을 가지면서, 그 들의 모든 고객들에게 XML의 세계로 들어 갈 수 있는 잇점을 줄 수 있다.
번역문 HTML 4은 국제 표준 ISO 8879 규격에 맞고, 월드와이드웹(World Wide Web)에서 표준 작성 언어로 널리 인정되는 하나의 SGML(Standard Generalized Markup Language) 적용이다.
SGML은 마크업 언어를 위 한 언어이며, 특히 전자 문서 교환, 문서 관리,과 문서 발행(게시)에 사용된다. HTML는 SGML로 정의 된 하나의 예제이다.
SGML은 1980대 중반 발표되었고 거의 변화없이 그대로 있다. 이 안정성의 많은 부분은 그 언어의 풍부한 기능과 탄력(융통)성에 근간을 두고 있다. 그러나, 이 탄력성의 대가로의 복잡성은 월드와이드웹을 포함 한 여러 환경에서의 적용을 제한하여 왔다.
HTML은 처음부터 과학과 다른 기술 문서들을 교환하기 위한 언어였으며, 문서 비 전문가가 사용하기 적당하다. HTML은 상대적으로 단순한 문서들을 작성하기 적당하게 작은 구조와 문법 태그들을 지정 함으로서, SGML의 복잡성 문제를 해결 하였다. 문서 구조의 단순화에 추가하여, HTML에 하이퍼텍스트를 지원하기 위 한 기능을 추가하였다. 멀티메디아(Multimedia) 기능은 그 후에 추가 되었다.
대단히 짧은 시간 동안, HTML은 널리 빠르게 사용되었고 당초 목적 이외로 발전했다. HTML의 참여 이래로, HTML(표준으로)안에서의 사용과 HTML은 수직적, 대단히 특화된, 시장에 적용하기 위하여 새로운 엘레멘트들의 빠른 발전을 해 왔다. 이 과다한 새로운 엘레멘트들은 여러 다른 플래트홈들을 통 한 문서들에 접속하는 공통 사용성(compatibility)에 문제점들 일켰으다.
소프트웨어와 플래트홈들의 불 균일성(heterogeneity) 의 빠른 확산에 따라, 이들 일부 플래트홈들에서 옛('classic') HTML 4의 적정성이 다소 제한 됨이 명백 해 졌다.
XML™은 확장 마크업 언어(Extensible Markup Language)를 짧게 쓴 것이고, 생략어 XML(eXtensible Markup Language)이 있다.
XML은 SGML의 능력과 탄력성을 거의 모든 복잡성을 제거하고 다시 얻기 위 한 수단으로 채택되었다. SGML의 제한 된 양식 임에 불구하고, XML은 SGML의 대부분 능력, 풍부성을 가지며 SGML의 일반적으로 사용되는 모든 기능을 여전히 포함하고 있다.
이들 유익한 기능들을 유지하면서, XML은 문서 제작과 소프트웨어를 설계를 어렵고 비싸게하는 많은 SGML의 복잡성 기능을 제거하였다.
XHTML 1.0으로 이전하여 얻는 잇점은 위에서 기술하였다. 이 XHTML로 이전의 잇점을 아래 요약하였다:
아래 용어들이 이 규격에서 사용되었다. 이 용어들은 ISO/IEC 9945-1:1990[POSIX.1]에 기초 한 유사한 정의의 방식으로 [RFC2119]의 정의들를 확장하였다:
XHTML 이 버전은 엄격하게(strictly) 규격에 맞는 XHTML 문서들의 정의를 제시하는데, 이는 XHTML 1.0 이름자리(namespace)를에서 태그(tag)들과 애트리뷰트들에 제한을 받는다. 예를 들어, XHTML 문서들에서 자원 설명 양식(RDF: Resource Description Format) 안에 메타데이터(metadata) 표현을 포함하는 것 같은, 다른 이름자리(namespace)들에 XHTML의 사용에 대한 정보는 항목 3.1.2를 참조하라.
엄격하게(strictly) 규격에 맞는 XHTML 문서는 이 규격에서 강제적으로 기술 된 장치들 만을 필요하는 문서이다. 이와 같은 문서는 아래 기준에 모두 부합하여야 한다:
부록 A에 있는 세가지 DTD들 중에 하나에 의하여 유효성이 검정되어야 한다.
문서의 최상위(root) 엘레멘트는 <html>
이어야 한다.
문서의 최상위(root) 엘레멘트는 xmlns
애트리뷰트 [XMLNAMES]를 사용하여 XHTML 1.0 이름자리(namespace)를 지정하여야 한다. XHTML에서 이름자리의 정의는 http://www.w3.org/1999/xhtml
로 되어야 한다.
문서에서 최상위(root) 엘레멘트 이전에 DOCTYPE 선언이 있어야 한다. 이것이 있으면 DOCTYPE 선언 안의 공통 인식자(identifier)는 부록 A에 있는 세가지 DTD 중의 한개를 해당 공식적인 공통 인식자(Formal Public Identifier)로 참조하여야 한다. 시스템 인식자는 시스템을 반영하도록 적당하게 수정 될 수 있다.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/strict.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/frameset.dtd">
여기 최소의 XHTML 문서 예제가 있다.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Virtual Library</title> </head> <body> <p>Moved to <a href="http://vlib.org/">vlib.org</a>.</p> </body> </html>
이 예제에는 XML 선언이 되어 있슴에 유의하라. 모든 XML 문서들에서 위와 같이 XML 선언이 필요 한 것은 아니다. XHTML 문서 작성자들은 그들의 모든 문서들에 XML 선언을 할 것을 강력히 추천한다. 그 문서의 글자 엔코딩(encoding)이 디폴트 UTF-8 또는 UTF-16가 아닐 때는 이와 같은 선언이 필요하다.
문서들 위에서 정의 된 바와 같이 엄격하게(strictly) 규격에 맞는 XHTML 1.0 문서들이 아니 더라도, XHTML 1.0 이름자리(namespace)가 [XMLNAMES]에 따라 다른 XML 이름자리들에 사용 될 수 있다. W3C의 추가적인 작업이 복수 이름자리(namespace)들의 문서들에 규격 부합하는 방식들을 지정 할 것이다.
아래 예제는 MathML 추천안과 같이(동반하여) XHTML 1.0가 사용되는 방식을 보여준다:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>수학 예제</title> </head> <body> <p>다음은 수학 표기(MathML markup)이다:</p> <math xmlns="http://www.w3.org/1998/Math/MathML"> <apply> <log/> <logbase> <cn> 3 </cn> </logbase> <ci> x </ci> </apply> </math> </body> </html>
아래 예제는 XHTML 1.0 마크업(markup)이 다른 XML 이름자리(namespace)와 결합하여 사용 될 수 있는 방식을 보여준다:
<?xml version="1.0" encoding="UTF-8"?> <!-- 최초, 디폴트 이름자리(namespace)는 "books"이다. --> <book xmlns='urn:loc.gov:books' xmlns:isbn='urn:ISBN:0-395-36341-6' xml:lang="en" lang="en"> <title>Dozen에 의 한 챕터</title> <isbn:number>1568491379</isbn:number> <notes> <!-- 하이퍼 텍스트에 대한 언급을 위한 HTML 디폴트 이름자리 만듬--> <p xmlns='http://www.w3.org/1999/xhtml'> 이는 <a href="http://www.w3.org/">online</a>로도 접속 할 수 있다. </p> </notes> </book>
규격에 맞는 사용도구는 아래의 모든 기준을 따라야 한다:
ID
(예: 대부분의 XHTML 엘레멘트들에서의 id
애트리뷰트) 타입 애트리뷰트들 만 인식하여야 한다.
XML 처리자(processor)는 다른 시스템들의 줄 마감들를 한개의 줄 공급글자로 일반화하여 적용에 전달한다. XHTML 사용도구들은 추가적으로 다음 글자들을 공백으로 처리하여야한다:
xml:space' 애트리뷰트가 'preserve'로 설정된 엘레멘트에서 사용도구는 공백(whitespace) 글자를 모두 그대로 두어야 한다. 예외로 맨 처음과 맨 끝은 제거되어야 한다. 그렇지않으면, 공백은 다음 규칙에 따라 처리되어야한다:
애트리뷰트 값 안에서의 공백은 XML에 따라 처리된다.
XHTML은 하나의 XML 적용이므로, SGML에 기초 한 번역문 HTML 4 에서는 완전히 유효(legal)하던 일부 실행이 변경되어야 한다.
잘 구성 됨(well-formedness)은 XML에서 도입 한 새로운 개념이다. 모든 엘레멘트들은 종료 태그를 갖거나 또는 특수한 양식(아래 설명)으로 써져야 하고, 모든 엘레멘트들은 네스트(nest) 되어야 한다는 것이 필수적이다.
SGML에서 겹침(overlapping)이 불량(illegal) 한 것임에도 불구하고, 기존 브라우저들에서 널리 수용하였었다.
엘레멘트들의 네스트(neste)가 올바르게 됨.
<p>여기에 강조 된 <em>문단</em>이 있다.</p>
겹침(overlapping)으로 된 틀린 엘레멘트들
<p>여기에 강조 된 <em>문단이 있다.</p></em>;
XHTML 문서들은 모든 HTML 엘레멘트과 애트리뷰트 이름들에 소문자를 사용하여야 한다. XML은 대소문자를 구별(case-sensitive)하므로 이 차이가 필요하다. 예: <li>과 <LI>는 다른 태그들이다.
SGML에 기초한 HTML 4의 일부 엘레멘트들의 종료 태그 생략이 허용되었었다; 그 다음에 오는 엘레멘트들이 앞의 열린 태그를 닫는 의미를 가졌었다. XML에 기초한 XHTML에서는 이 생략이 허용되지 않는다. DTD에서 빈것(EMPTY
)으로 선언된 것 이외의 모든 엘레멘트들은 종료 태그(tag)를 필요로 한다.
올바르게 종료 된 엘레멘트들
<p>여기에 한 문단이 있다.</p> <p>여기에 다른 문단이 있다.</p>
엘레멘트들을 종료하지 않은 틀린 것
<p>여기에 한 문단이 있다. <p>여기에 다른 문단이 있다.
모든 애트리뷰트 값들은 명백한 수치에서도 따옴표 안에 들어가야 한다.
따옴표 안에 들어간 올바른 애트리뷰트 값들
<table rows="3">
따옴표 안에 들어 가지 않은 틀린 애트리뷰트 값들
<table rows=3>
XML은 애트리뷰트의 최소화를 지원하지 않는다. 애트리뷰트의 값의 짝들이 항상 완전하게 기술되어야 한다. compact
와 checked
와 같은 값이 지정되지 않은 애트리뷰트 이름들은 가진 엘레멘트들은 나올 수 없다.
최소화 없는 올바른 애트리뷰트들
<dl compact="compact">
최소화를 가진 틀린 애트리뷰트들
<dl compact>
빈 엘레멘트들은 종료 태그를 갖거나, 그 시작 태그가 />
로 종료 되어야 한다. 예를 들어, <br/>
또는 <hr></hr>
. HTML 4 사용도구들과의 이전버전 부합성을 확인하기 위 한 방식들에 대 한 정보는 HTML 공통 사용성(compatibility) 안내서를 참조하라.
빈 태그의 종료를 포함 한 올바른 것.
<br/><hr/>
종료 태그가 없는 틀린 것
<br><hr>
애트리뷰트 값들에서, 사용도구들은 애트리뷰트 값들로 부터 앞과 뒤의 공간(white-space)들을 제거하고, 한개 이상의 연속 공간 글자(줄바꿈 포함)들을 한개의 공간 글자로 처리한다(서양 글꼴에서 ASCII 공간 문자 같이). XML의 항목 3.3.3 참조.
XHTML에서, 스크립트와 스타일 엘레멘트들은 #PCDATA
내용을 갖고 선언된다. 결과적으로, XML 처리자(processor)에 의하여 <
과 &
는 마크업의 시작으로 처리되고, <
과 &
와 같은 글자(entities)들은 각 각 <
과 &
의 글자(entity) 참조로 인식 될 것이다. CDATA
로 표시된 부분에서 스크립트또는 스타일 엘레멘트의 내용의 막음은 이들 글자들(entities)의 확대를 막는다.
<script> <![CDATA[ ... unescaped script content ... ]]> </script>
CDATA
부분은 XML 처리자(processor)에 의하여 인식되고, 문서 오브젝트 모델(Document Object Model: DOM Level 1 추천안[DOM]의 원문 항목 1.3 참조)에서 노드(node)들로 나타난다.
대신 사용 할 수 있는 방법은 외부(external) 스크립트와 스타일 문서들을 사용하는 것이다.
SGML은 DTD 작성자가 엘레멘트 안에 포함하지 않게 특정 엘레멘트들을 제외 할 수 있게한다. 이와 같은 금지사항("exclusions"이라 함)은 XML에서는 가능하지 않다.
예를 들어, HTML 4 엄격(strict) DTD는 'a
' 엘레멘트를 다른 a
' 엘레멘트 안에 어느 수준의 하부(descendant) 구조에서나 네스트(nest)하는 것을 금지한다. XML에는 이와 같은 금지사항을 기술하는 것이 불가능하다. 이들 금지사항이 DTD에 정의 될 수 없지만, 일부 엘레멘트들은 네스트(nest) 될 수 없다. 이와 같은 엘레멘트들과 그 안에서 네스트 될 수 없는 엘레멘트들의 요약을 지명적 부록 B에서 볼 수 있다.
HTML 4는 a
, applet
, frame
, iframe
, img
, map
엘레멘트들에 name
애트리뷰트를 정의하였다. HTML 4는 id
애트리뷰트도 소개하였다. 이 두가지 애트리뷰트들은 부위(fragment) 지정자(identifier)들을 위하여 설계되었다.
XML에서는, 부위(fragment) 지정자(identifier)들은 ID
의 타입이고, 엘레멘트 마다 한개의 ID
애트리뷰트 타입 만을 가질 수 있다. 따라서, XHTML 1.0에서 id
애트리뷰트는 ID
타입으로 정의된다. XHTML 1.0 문서들이 확실히 잘 구성된 XML 문서들이 되기 위해서는, XHTML 1.0 문서들은, 역사적로 name
애트리뷰트들도 가지고 있던 엘레멘트들에서도, 부위 지정자들를 지정 할 때 id
애트리뷰트를 사용하여야 한다. XHTML 문서들에서 메디아(media type)text/html
로 서빙 할 때 이와 같은 앤커(anchor)들의 이전 버전 부합성을 확실히 하기 위한 정보는 HTML 공통 사용성(compatibility) 안내서를 참조하라.
XHTML 1.0에서 이들 엘레멘트들의 name
애트리뷰트는 공식적으로 폐기하였고, XHTML의 다음 버전에서는 제거 될 것 임을 유의하라.
XHTML 1.0 문서들에서 기존 사용도구들과의 공통 사용성을 위 한 필요 사항을 정의하지는 않았지만, 실제적으로는 쉽게 달성 될 수 있다. 공통 사용 문서들을 만들기를 위한 안내서는 부록 C에서 볼 수 있다.
이 추천안 발행시, XML에 기초한 적용에서 MIME 라벨링(labeling)의 일반적인 추천 사항을 해결되지 않았다.
그러나 부록 C의 안내서("HTML Compatibility Guidelines")에 따른 XHTML 문서들은 인터넷 메디아 타입(media type) text/html
으로 라벨 할 수 있고, 그들은 대부분의 HTML 브라우저에 맞을 것이다. 이 문서는 XHTML 문서의 다른 MIME 라벨링(labeling)을 추천하지 않았다.
XHTML 1.0은, 모듈(module)들을 정의하고 이 모듈들을 결합하는 기능(mechanism)을 지정 함으로서, 넓은 범위의 새로운 장치와 기구를 지원하기 위하여 XHTML의 확장과 하부 세트(subset)를 위 한 문서 타입들의 가족(family) 기초를 제공한다. 이 기능은 새로운 모듈들의 일정한 방식의 정의를 통하여, XHTML 1.0 확장과 하부 세트 설정이 가능하게 한다.
XHTML의 사용은 전통적인 컴퓨터(desktop) 사용도구들로 부터 다른 플래트홈들로 이전을시키는데, 모든 XHTML 엘레멘트들들이 모든 플래트홈들에 다 필요 한 것이 아닌 것은 분명하다. 예를 들어 수동 장치(hand held device) 또는 전화기(cell-phone)은 XHTML 엘레멘트들의 하부 세트 만을 지원 할 수 있다.
모듈화(modularization) 과정은 XHTML을 여러개의 작은 엘레멘트 세트들로 분리시킨다. 이 엘레멘트들은 그 후 다른 것에서 필요한 것들과 결합 될 수 있다.
이 모듈(module)들은 이후의 W3C 문서들에서 다룰 것이다.
모듈화(modularization)는 여러 잇점들을 제공한다:
XHTML 하부세트(subset) 설정의 공식적인 기능을 제공한다.
XHTML의 확장(extending)을 위 한 공식적인 기능을 제공한다.
문서 타입들 사이의 변환(transformation)을 단순화 한다.
새로운 문서 타입들에서 다시 사용 함을 촉진시킨다.
문서 프로화일은 문서들 세트(set)의 문법(syntax & semantics)을 지정한다. 문서 프로화일의 규격 부합성(conformance)은 공통작업성(interoperability)을 위 한 보증의 기초를 제공한다. 문서 프로화일은 그 타입에서 문서들을 처리하는데 필요한 장치들을 지정한다. 예: 어떤 이미지 양식이 사용 될 수 있는가, 스크립트의 수준, 스타일쉬트가 지원되는가 등.
이것은 제품 설계자들에게 여러 구룹들로 그들 자체의 표준 프로화일(profile)을 정의 할 수 있게 한다.
작성자들에게는 다른 고객들을 위하여 여러 다른 문서들의 버전들로 작성 할 필요가 있을 때 유용 할 것이다.
화학자, 의사나 기술자들과 같은 특수 구룹들은 특수 프로화일을 작성하여 표준 HTML 엘레멘트들에 추가적인 엘레멘트들 구룹으로 그들의 특별한 필요사항을 충족시킬 수 있다.
이 부록은 지명적이다.
이들 DTD들과 글자 세트(entity sets)는 이 규격의 지명적인 부분이다. 이 규격의 완전한 DTD 화일들은 XML 선언(declaration), SGML 공개 카타로그(Open Catalog)와 함께 원문 압축화일(zip)로 포함되어 있다.
이들 DTD들은 거의 HTML 4 DTD들과 같다. DTD들이 모듈화 될 때, 해당 HTML 4에 더 가까운 DTD 구성 방식이 채용 될 것이다.
번역문 DTD 읽는 방법은 HTML 4 을 참조하라.
XHTML-1.0-Strict(엄격 DTD)
번역을 생략하였다. 번역 HTML 4 Strice DTD 참조하라.
XHTML-1.0-Transitional(변이 DTD)
번역을 생략하였다. 번역 HTML 4 Transitional DTD 참조하라.
XHTML-1.0-Frameset(프레임세트 DTD)
번역을 생략하였다. 번역 HTML 4 Frameset DTD 참조하라.
XHTML 글자 세트들은 HTML 4의 것과 같으나, XML 1.0 글자(entity) 선언들에 맞게 수정되었다. 유로(Euro) 화폐 기호(?: €
또는 €
또는 €
)가 특수문자들로 정의되었슴을 주지하라.
라틴 글자들(Latin-1 characters)
번역을 생략하였다. 번역 HTML 4 라틴 글자들 (ISO 8859-1) 참조하라.
특수문자들(Special characters)
번역을 생략하였다. 번역 HTML 4 특수문자들 참조하라.
기호들(Symbols)
번역을 생략하였다. 번역 HTML 4 기호들 참조하라.
이 부록은 지명적이다.
아래 엘레멘트들은 그 엘레멘트들에 포함 될 수 없는 금지사항을 갖는다(항목 4.9 참조). 이 금지사항은 네스팅(nesting)의 어떤 수준에서나 해당된다. 말하자면 모든 그 하위(descendant) 엘레멘트들에 포함 될 수 없다
a
a
엘레멘트들을 포함 할 수 없다.
pre
img
, object
, big
, small
, sub
또는 sup
엘레멘트들을 포함 할 수 없다.
button
input
, select
, textarea
, label
, button
, form
, fieldset
, iframe
또는 isindex
엘레멘트들을 포함 할 수 없다.
label
label
엘레멘트들을 포함 할 수 없다.
form
form
엘레멘트들을 포함 할 수 없다. 이 부록은 정보를 제공하기 위 한 것이다.
이 부록은 그들의 XHTML 문서들이 기존 HTML 사용도구들에 표현되기를 원하는 작성자들을 위 한 설계 안내서를 요약하였다.
일부 사용도구들에서 처리 지시서가 표현 됨으 알아야 한다. 그러나, 문서에 XML 선언이 되어 있지 않으면, 그 문서가 UTF-8 또는 UTF-16 디폴트 글자 엔코딩(encoding)들 만 사용 할 수 있다는 점도 기억하여야 한다.
빈 엘레멘트들에 공간과 /
, >
를 포함시켜라.
예: <br />
, <hr />
, <img src="karen.jpg" alt="Karen" />
.
또한, 빈 엘레멘트들에서, 많은 기존 사용도구들에서 확실한 결과가 기대되지 않는 XML에서 허용하는 <br></br>
를 사용하는 대신, 예를 들어 <br />
와 같은 단축(minimized) 태그를 사용하라.
내용 모델이 빈(EMPTY
) 것이 아닌 엘레멘트(예: 빈 title 또는 paragraph)에 빈 인스탄스가 주어지면, 단축 양식을 사용하지 말라(예: <p />
가 아니고, <p> </p>
사용).
스타일쉬트(style sheet)에 <
,&
, ]]>
또는 --
를 사용하면 외부(external) 스타일쉬트를 사용하라. 스크립트(script)에 <
, &
, ]]>
또는 --
를 사용하면 외부 스크립트를 사용하라. XML 해석자(parser)는 코멘트의 내용을 조용히 제거하는 것을 허용 함을 유의하라. 그래서 역사적인 스크립트와 스타일 안의 숨김 코멘트를 위 한 과거 버전 부합성는 XML에 기초한 적용에는 작용하지 않을 것으로 기대된다.
애트리뷰트 값 안에서 줄바꿈과 여러개의 공백문자의 사용을 피하라. 이들은 사용도구들에 의하여 일정하지 않게 처리된다.
문서 head
에 한 개 이상의 isindex
엘레멘트를 포함시키지 말라. isindex
엘레멘트는 input
엘레멘트에 의하여 성능을 상실(폐기)한다.
lang
과 xml:lang
애트리뷰트들엘레멘트에 언어를 지정 할 때는 lang
과 xml:lang
애트리뷰트들을 둘 다 사용하라. xml:lang
애트리뷰트 값 이 우선한다.
XML에서, URI[RFC2396]들에서 끝의 "#foo"
양식 부위 인식자들은 애트리뷰트 name="foo"
의 엘레멘트들을 참조하지 않고, 타입 ID
로 정의 된 애트리뷰트로 엘레멘트들을 참조한다. 예: HTML 4의 id
애트리뷰트. 많은 기존 HTML 사용자들은 이 방식으로 ID
타입 애트리뷰트들의 사용을 지원하지 않는다. 그래서 같은 값들이 향후 버전과 이전 버전에서의 공통 사용성(compatibility)을 높이기 위하여 이들 양쪽 애트리뷰트들에 제공 될 수 있다.(예:, <a id="foo" name="foo">...</a>
).
또한 ID
타입 애트리뷰트들에서 유효한 값들은 CDATA
타입에서 보다 훨신 작으므로 name
타입 애트리뷰트는 NMTOKEN
으로 변경되었다. 이 애트리뷰트는 ID
타입과 같은 값들 만 가질 수 있거나, XML 1.0 항목 2.5, 5 번의 이름(Name
) 결과물(production)이 되도록 강요되었다. 불행하게도 이 강제사항은 XHTML 1.0 DTD에서 표현 될 수 없다. 이 변경 때문에 기존 HTML 문서들을 변환 할 때 주의하여야 한다. 이 애트리뷰트들의 값들은 그 문서 안에서 유일(unique)하여야 하며, 유효(valid)하여야 하고, 변환 과정에서 값들이 바뀌므로 이들 부위 지정자(내부나 외부 모두)의 어떤 참조는 업데이트(update: 변경) 되어야 한다.
마지막으로, XHTML 1.0은 a
의 name
애트리뷰트, applet
, frame
, iframe
, img
, map
엘레멘트들을 불량한 것으로 하였으며, 이 후 버전들에서는 XHTML로 부터 제거 될 것이라는 점에 유의하라.
문서에서 글자 엔코딩(encoding)을 지정하기 위하여 xml 선언의 규격 엔코딩(encoding) 애트리뷰트를 사용(예: <?xml version="1.0" encoding="EUC-JP"?>
)하거나 메타 선언(meta http-equiv 예: <meta http-equiv="Content-type" content='text/html; charset="EUC-JP"' />
)을 사용 할 수 있다. xml 처리 지시의 엔코딩(encoding) 애트리뷰트 값이 우선한다.
일부 HTML 사용도구들에서, 불린 애트리뷰트들이 XML 1.0에서 요구하는 완전한(단축되지 않은) 양식으로 나타나면, 이들의 해석이 불가능하다. 이 문제는 HTML 4 사용도구들의 불만사항은 아니다. 다음 애트리뷰트들이 관련된다: compact
, nowrap
, ismap
, declare
, noshade
, checked
, disabled
, readonly
, multiple
, selected
, noresize
, defer
.
문서 오브젝트 모델(DOM: Document Object Model) 수준 1 추천안[DOM]은 문서 오브젝트 모델의 XML과 HTML 4의 인터페이스(interface)를 정의한다. HTML 4 문서 오브젝트 모델(DOM)은 HTML 엘레멘트과 애트리뷰트 이름들이 대문자로 돌아옴(return)을 지정한다. XML 문서 오브젝트 모델(DOM)은 엘레멘트과 애트리뷰트 이름들이 지정된 것(대문자나 소문자)으로 돌아옴을 지정한다. XHTML 1.0, 엘레멘트들과 애트리뷰트들에서는 소문자로 지정된다. 이 명백한 차잇점은 다음 두 방식들로 설명 할 수 있다:
text/html
로 서브하는 XHTML 문서들에 접속의 적용(application)들은 HTML DOM을 사용 할 수 있고, 엘레멘트과 애트리뷰트 이름들이 인터페이스들로 부터 대문자로 돌아 온 것으로 간주 할 수 있다.
text/html
또는 application/xml
로 서브하는 XHTML 문서들에 접속의 적용들은 XML DOM도 사용 할 수 있다. 엘레멘트들과 애트리뷰트들은 소문자로 돌아 올 이것다. 또한, 일부 XHTML 엘레멘트들은 내용 모델(예: table
의 tbody
엘레멘트)에서 선택적이므로 오브젝트 계통(tree)에 나타날 수도 있고 나타나지 않을 수도 있다. HTML 4의 일부 엘레멘트들은 시작과 종료 태그가 둘 다 생략되는 단축(minimized)이 허용되어 있으므로(SGML 적용) 이와 같은 현상이 나타난다. 이것은 XML에서는 불가능하다. 문서 작성자들이 번잡한 엘레멘트들을 삽입하는 대신 XHTML에서는 이 엘레멘트들을 선택적으로 하였다. 적용에는 이에 따라 사용 할 필요가 있다. 애트리뷰트 값이 '&'를 포함하면, 이는 글자 참조(character entity reference)로 표현되어야 한다(예: "&
"). 예를 들어, a
엘레멘트의 href
애트리뷰트가 파라메터(parameter)들를 받는 CGI 스크립트(script)를 참조하면,
http://my.site.dom/cgi-bin/myscript.pl?class=guest&name=user
로 하지 말고,
http://my.site.dom/cgi-bin/myscript.pl?class=guest&name=user
로 기술하여야 한다.
카스케이딩 스타일쉬트 수준 2 추천안[번역문 CSS2]은 HTML 또는 XML 문서의 해석(parse) 계통(tree)에 적용되는 스타일 특성들을 정의한다. 해석(parsing)의 차잇점들은 사용 된 선택자(selector)들에 따라 보이거나(visual) 들리는(aural) 결과를 다르게 할 것이다. 아래 힌트들은, 이 두 메디아(media type)들에서 변경 없이, 문서들을 다르게 표현하는 영향을 감소시켜 줄 것이다:
이 부록은 정보를 제공하기 위 한 것이다.
이 규격은 W3C HTML 작업구룹의 멤버들의 참여로 작성되었다:
이 부록은 정보를 제공하기 위 한 것이다.
번역문 종료
|