W3C4 부합성(conformance): 필요 사항과 추천사항Trio 홈페이지 
목차
  1. 정의
  2. SGML
  3. text/html 컨텐트 타입(content type)

이 항목은 HTML 4 규격에 대하여 제작자, 문서, 사용자와 사용도구들 간의 약속으로 시작한다.

이 문서에서 "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY"와 "OPTIONAL" 등 키워드는 [RFC2119]에 설명 된 것과 같이 해석한다. 그러나 읽지 쉽게하기 위하여 이 규격에서 모두 대문자로 쓰지는 않았다.

그러나 번역문에서는 그대로 표현 할 수 없어, "REQUIRED"의 경우 예를 들어, 같은 의미를 갖는 "필요하다, 필요로 한다, 필요 .." 등과 그 변형, 예를 들어 "필요한, 필요 .., 필수적" 등으로 표시하였다.

이 규격의 저자는 문서 제작자와 사용도구에게 좋은 방식을 때때로 추천하였다. 이들 추천사항들은 사용에 따라, 반드시 이 규격에 정의되어 있고 부합한다는 의미는 아니다. 이들 추천사항은 "...을 추천한다 ", "...을 권한다", "추천되는" 또는 이와 비슷한 문구로 표시하였다.

4.1 정의

HTML 문서
HTML 문서는 이 규격에 부합하는 SGML 문서의 하나이다.
제작자(author)
제작자는 HTML 문서를 작성하거나, 자동으로 제작하는 사람이나 프로그램을 말한다. 편집기란 HTML 문서를 자동적으로 제작하게 하는 프로그램을 말하며 특수한 제작자의 하나이다.

제작자가 문서를 작성 할 때 DTD에서 정의 된 다른 표준보다는 꼭 부합하는 엄격(strict) DTD에 맞게 작성 할 것을 권한다. HTML 4에 정의 된 DTD의 보다 상세한 정보는 버전 정보를 참조하라. 단순히 DTD 만 표시 된 것은 엄격(strict) DTD를 말한다.

사용자(user)
사용자는 사용도구을 통하여 HTML 문서를 보거나, 듣거나, 다른 방식으로 사용하는 사람을 말한다.
사용도구(user agent)
HTML 사용도구은 HTML 문서를 표현하는 어떤 장치를 말하며, 보는(visual) 브라우저(텍스트만 보는 것과 그래픽을 보는 것), 보이지 않는(non-visual) 브라우저(오디오, 점자 리더), 검색 로봇(search robot), 작동기(proxies) 등을 포함한다.

HTML 4 규격에 부합하는 사용도구는 다음 사항을 포함하여 이 규격의 필수적 조건(must)들을 따른 것이다.

오류(error) 상황
이 규격에는 오류(error) 상황에서, 어떻게 사용도구가 일반적으로 처리 할 것인가를 명시하고 있지 않다. 사용도구가 규격에 없는 엘레멘트, 애트리뷰트, 애트리뷰트 값, 엔트리를 만났을 때 어떻게 할 것인가도 포함되어 있지 않다.

그러나, 오류(error) 처리의 추천사항은 무효 문서의 주석을 참조하라.

불량한(deprecated)
불량한 엘레멘트나 애트리뷰트는 새로운 버전으로 그 내용이 변경 된 것을 말한다. 불량한 엘레멘트들은 참고 매뉴얼의 해당 위치에서 설명되어있고, '불량한'으로 표시되어있다. 이 불량한 엘레멘트들은 HTML의 향 후 버전에서 폐기 될 것이다.

사용도구들은 과거 버전 부합성을 위해서, 불량한 엘레멘트를 계속 지원하여야 한다.

엘레멘트와 애트리뷰트의 정의에 불량한 것들은 '불량한'이라 표시하였다.

이 규격에는 어떻게 이들 불량한 엘레멘트를 회피 할 수 있는가의 예제를 포함 시켰다. 대부분의 경우에는 사용도구가 스타일쉬트(style sheet)를 지원하는 상황에 의해 좌우된다. 일반적으로 제작자는 HTML 표현을 위 한 애트리뷰트의 사용보다는 스타일쉬트를 사용하여 스타일과 양식을 만들도록 노력하여야 할 것이다. 스타일쉬트[CSS1 번역문]로 구사 할 수 있게 된 HTML 표현 애트리뷰트들은 '불량한' 것으로 되었다.

폐기 된, 틀린(obsolete)
폐기 된, 틀린 엘레멘트나 애트리뷰트는 사용도구들로 부터 지원 됨을 보장 받을 수 없는 것으로 "틀린"으로 표시하였다. 폐기 된 엘레멘트는 더 이상 이 규격에 정의되지 않았다. 그러나 역사적인 목적으로 참고 매뉴얼의 변경 항목에 수록되어있다.

4.2 SGML

HTML 은 국제 표준[ISO8879]에 맞는 SGML(Standard Generalized Markup Language)의 적용(application)이다.

예제 문장들의 엘레멘트나 애트리뷰트의 문서 타입 정의(DTD)는, 변이(transitional) DTD 또는 프레임 세트(frameset) DTD가 표시된 경우를 제외하고는, 모두 꼭 부합하는 엄격(strict) DTD 기준에 맞게되어있다. HTML 문서 시작에 필수적임에 불구하고, 간략성을 위하여 이 규격에서 대부분의 예제에서 문서 타입 정의(DTD)로 시작하지 않았다.

엘레멘트 정의에서 DTD 프레임 세트(frameset)는 프레임(frame)과 관계 된 엘레멘트를 제외하고는, 엄격(strict) 문서 타입 정의(DTD)에서 왔다.

엄격, 변이, 또는 프레임 세트 DTD를 언제 사용하는가 하는 세부사항은 HTML 버전 정보를 참조하라.

HTML 4 DTD에 나오는 코멘트(comment)은 작용하는 값이 아니고, 정보 만을 제공하는 참고사항이다.

사용도구는 <?full volume>과 같은 SGML 명령이나 코멘트을 표현하면 않된다. HTML 사용도구에서 널리 지원되지 않지만, HTML에서 기준에 맞게 사용 될 수 있는 SGML 기능들은 제한 된 SGML 지원 기능을 참조하라.

4.3 text/html 컨텐트 타입

HTML 문서는 인터넷을 통하여 엔코딩(encoding) 정보(글자 엔코딩 참조)를 연속 된 바이트 데이터로 발송한다. 이 송신구조를 메세지 엔티티(message entity)라고 하는데, [RFC2045]와 [RFC2068]에 정의되어있다. 컨텐트 타입 "text/html"와 메세지 엔티티는 HTML 문서를 구성한다.

HTML 문서의 컨텐트 타입(content type)은 아래와 같이 정의된다.

컨텐트 타입 이름(Content type name):
text
컨텐트 서브타입 이름(Content subtype name):
html
필요한 파라메터(parameter):
none
선택적 파라메터:
charset
엔코딩(encoding)의 고려:
어떤 엔코딩도 허용된다.
보안의 고려:
보안에 대한 주석 참조.

선택적 파라메터 "charset"는 바이트 데이터로, HTML 문서로 표현하기 위하여 사용하는 글자 엔코딩에서 참조 할 수 있다. 이 파라메터의 유효한 값은 글자 엔코딩에 정의되어있고, 선택적이지만 항상 지정 할 것을 추천한다.

Trio 홈페이지 문서(http://trio.co.kr/webrefer/html/conform.html)는 자유로이 연결 사용이 가능함.