W3C5 HTML ???? ǥ??Trio Ȩ??????
????
  1. ???? ???? ??Ʈ
  2. ???? ???ڵ?(encoding)
    1. ???ڵ? ????
    2. ???? ???ڵ? ????
  3. ???? ????
    1. ??ġ ???? ????
    2. ???? ??ƼƼ(entity) ????
  4. ǥ?? ?? ?? ???? ????

???⼭?? ?????? ??ǻ?Ϳ? ???ͳݿ??? ??? ǥ???Ǵ��??? ?˾ƺ???.

???? ???? ??Ʈ?????? HTML ?????? ???? ?? ?? ?ִ? ?????? ?????ϴ? ?????? ?ٷ??. ???ڿ??? ??ƾ??(Latin) "A", ?��???(Cyrillic) "I", ?߱??? "?" ???? ???? ?ִ?.

???? ???ڵ? ?׸񿡼??? ?̵? ???ڰ? ȭ???̳? ???ͳ??? ???? ?۽ŵǸ?, ??? ǥ??(represented)?Ǵ��??? ?ٷ??. ? ???? ???ڵ??? ???? ?? ?? ???? ??�� ?ֱ? ??????, ?????ڰ? ?????? ???Խ?Ű?? ??? ???ڸ? ǥ???ϱ? ???ϼ? HTML?? ???? ??????? ????? ?????Ѵ?.

?ΰ? ???鿡?? ????? ???? ???ڵ??? ?ְ?, ?? ???ڵ??? ǥ?? ??ĵ? ?????????? ?????Ƿ?, ?? ?????? ??뵵?????? ???? ?? ?? ?ֵ??? ?????? ????? ?־?? ?Ѵ?.

5.1 ???? ???? ??Ʈ

???Ÿ??? ?��? ???DZ? ???Ͽ? HTML?? ???? ?? ?? SGML?? ???? ?? ???? ???? ??Ʈ(document character set)?? ???? ?? ?ʿ䰡 ?ִ?.

HTML ?????? ???? ?? ?? SGML ?????? ?????丮?? ?ִ? ???ڵ??? ???? ?? ???̴?. ??ǻ?? ?ý????? ?? ???ڸ? ?ڵ忡???? ???? ??ġ?? ?��??Ѵ?. ???? ??? ASCII(?ƽ?Ű) ???? ??Ʈ???? ?ڵ忡???? ???? ??ġ 65, 66?? 67?? ???? ???? 'A', 'B', ?? 'C'?? ???ٳ???.

ASCII ???? ??Ʈ?? ???? ???? ?? ???????? ???? ?ý??ۿ????? ??????? ???ϹǷ? HTML?? ?????? ??Ʈ ????(UCS: Universal Character Set[ISO10646])??? ?��? ?? ?????? ???? ??Ʈ?? ????Ѵ?. ?? ǥ???? ?? ???迡?? ???Ǵ? ?? õ ?????? ?????丮(repertoire)?? ???��?.

?? [ISO10646]???? ???? ?? ???? ??Ʈ?? Unicode[UNICODE]?? ?��? ???? ???? ???ǵǾ??ִ?. ?? ?? ǥ???? ?????? ???��? ???ڸ? ?߰??ϸ鼭 ??????Ʈ?Ǵµ? ?ش? ?? ????Ʈ???? ??ȸ ?? ?? ?ִ?. ?????? ?԰ݿ??? ISO-10646?? ?????ڵ?(Unicode)?? ???? ???? ???? ??Ʈ?? ?ǹ???????, ?????ڵ? ?԰ݿ??? ????? ?ؽ?Ʈ ????? ??ȸ?Ѵ?.

?׷??? ???? ???? ??Ʈ?? ȭ???̳? ??Ʈ???? ?۽ſ??? ?Ϸ??? ????Ʈ???? ???ڵ??ϴ? ??뵵????????, HTML ?????? ?ٸ??? ǥ???ϴµ? ??????? ???ϴ?. ??뵵???? ???? ???? ?帧?? ????Ʈ ?帧???? ??ȯ?ϴ? ???? ???ڵ??? ???? ?ؾ??Ѵ?.

5.2 ???? ???ڵ?

?? ?԰ݿ??? ???? ???ڵ?(character encoding)???? ?Ҹ???? ???? Ÿ ?԰ݿ??? ?ٸ? ?̸????? ?˷??? ?ֱ⵵ ?Ͽ? ȥ???? ????ų ???? ?ִ?. ?׷??? ?? ?????? ???ͳݿ??? ???? ????. ?? ?? ???????? ???(protocol header), ??Ʈ????Ʈ?? ?Ķ???͵? ???? ???ڵ? "charset"?̶?? ???? ?̸??? ????ϰ?, [IANA] ???(registry)???? ???? ?? ???? ?׷???. ???? ?? ????? [CHARSETS] ?????϶?.

"charset" ?Ķ???ʹ? ???? ???ڵ??? ?????ϴ? ??????, ?Ϸ??? ????Ʈ ?帧?? ?Ϸ??? ???? ?帧???? ??ȯ ?ϴ? ?Ѱ??? ????̴?. ???? ?? ??ȯ?? ???? ?ۿ�� ?????ѵ?, ???????? ?Ϸ??? ????Ʈ ?帧???? ??뵵?????? HTML ?????? ??????, ??뵵?????? ?̰??? ?Ϸ??? ???? ?帧???? ?ؼ??Ѵ?. ?? ??ȯ ????? ?ܼ??? ?? ?? ?? ??ſ??? ???? ?????? ????Ī ???/???(switching scheme or algorithm) ???? ?ִ?.

[ISO10646]?? ???? ???ڰ? ??????, ?ܼ??? ??-???ڴ?-??-????Ʈ ???ڵ? ????��? ???? ?????丮(repertoire)?? ???ڿ??? ó???ϴ? ?? ?Ѱ谡 ?ִ?. [ISO10646]???? UCS-4?? ???? ?? ???? ?ٸ? ???ڵ? ????? ??ü ???? ??Ʈ?? ?߰??Ǿ? ?ִ?.

5.2.1 ???ڵ? ????

???? ?ۼ???? ???? ????????? ???? ?? ???? ???ڵ? ??????? HTML ?????? ???ڵ??ϸ?, ?? ?????? ????Ʈ??? ??? ?? ????? ???? ũ?? ?��?ȴ?. ?̵? ???????? ?????? ???? ?? ??��??? ???ڸ? ?????ϴ? ? ?????? ???ڵ? ????? ä?? ?? ?? ?ִµ?, ?̴? ?ùٸ? ???ڵ??Ǿ??ٴ? ???????? ?׷???. ??Ȥ ??Ÿ???? ?? ???ڵ??? ???Ե??? ?ʴ? ???ڴ? ?????? ???? ?????? ???? ?? ?? ?ִ?. ?̵??? ???? ???ڵ??? ???????? ?ʰ? ?׻? ???? ???? ??Ʈ?? ?????Ѵ?.

?????? ???Ͻ?(proxy)???? ??뵵???? ??û?? ???? ???? ???ڵ??? ???? ?? ?? ?ִµ?, ?̸? Ʈ???? ?ڵ?(transcoding)?̶? ?Ѵ?. [RFC2068], HTTP ??? ??û?? ???? ?޾? ???̴? ???? ??Ʈ, ?׸? 14.2?? ?????϶?. ?????? ???Ͻ?(proxy)???? ??? ???? ???? ??Ʈ?? ��???ϴ? ???? ???ڵ??? ?????ؾ? ?ϴ? ???? ?ƴϴ?.

?????? ?????????? ???Ǵ? ???? ???ڵ??? ???? ?????? ?????Ѵ?.

  1. ISO-8859-1: "Latin-1": ??��??? ?????? ?? ??? ????
  2. ISO-8859-5: "Cyrillic"
  3. SHIFT_JIS: ?Ϻ???
  4. EUC-JP: ?ٸ? ?Ϻ??? ???ڵ?
  5. UTF-8: ?ٸ? ????Ʈ ???? ????ϴ? ISO 10646 ???ڵ?
???? ???ڵ? ?̸??? "SHIFT_JIS", "Shift_JIS"?? "shift_jis" ??? ???? ??ҹ??? ???? ???? ???ȴ?.

?? ?԰ݿ??? ??뵵???? ? ???? ???ڵ??? ??? ?ؾ??Ѵٴ? ???????? ????.

?԰ݿ? ?????ϴ? ??뵵???? ? ???? ???ڵ??? ????ϴ? Unicode?? ?µ??? ??? ???ڸ? ??ġ?Ͽ??? ???? ?ּ??? ?׷??? ?۵??߿??? ?Ѵ?.

Ư?? ???ڵ??? ???? ?ּ?

HTML ?????? UTF-16(charset=UTF-16)?? ?۽? ?? ??, [ISO10646 ?׸? 6.3]?? [UNICODE C3?? ?????? 3-1]?? ????, ?????? ??Ʈ??ũ ????Ʈ ????(ū endian, ???? ???? ????Ʈ ????)?? ?۽ŵǾ?? ?Ѵ?.

?? ?? ?????? ǥ???Ǵ? ??ȸ?? ?ش?ȭ?ϱ? ???Ͽ? UTF-16?? ?۽ŵǴ? ?????? ?׻? ?ʺ? ???? ?ٹٲ? ???ڰ? ?ƴ? ???? ????(ZERO-WIDTH NON-BREAKING SPACE: 16???? FEFF: ????Ʈ ???? ǥ??(BOM: Byte Order Mark))?? ?????? ???? ???ϴ?. ?? ????Ʈ?? ????Ǿ? ??????, ?? 16???? FFFE?? ?????ϸ? ?ٸ? ???ڷ? ???????? ???? ???? ???? Ȯ???ϴ?. ??뵵???? ?׷??? ?????? ù??�� ????Ʈ?? 16???? FFFE?? ??????, ?????? ?��??? ?????? ???? ????Ʈ???? ?غ??ؾ? ?Ѵٴ? ???? ?˰Եȴ?.

IANA?? ISO-10646-UTF-1?? ??? ?? [ISO10646]?? ??ȯ ??? UTF-1?? ?????? ?ʾƾ? ?Ѵ?. ISO 8859-8?? ????? ??ɿ? ???? ?߰? ?????? ????⼺?? ???? ???ڵ??? ?????϶?.

5.2.2 ???? ???ڵ? ????

?????? ?????? ????ϴµ? ???? ?? ???? ???ڵ??? ??? ?????ϴ��?? ?Ϻ? ???????? ?????? ?? ???? ?? ????Ʈ???? ?????ϰų?, ?Ǵ? ?˰? ?ִ? ȭ?ϰ? ???ڵ? ?????ͺ??̽??? ?����??? ?????Ѵ?. ???? ???ó? ???????? ???? ???????? ???? ???????? ???? ?? ?????ڿ??? ???? ???? ?ɷ??? ?????Ѵ?. ?? ?????ڴ? ?????? "charset" ?Ķ???͸? ????Ͽ?, ?̵? ??ɿ? ?߸? ?? "charset" ?Ķ???? ???? ???????? ?ʵ??? ?Ͽ??? ?Ѵ?.

??뵵???? ? ???? ???ڵ??? ??? ?ߴ��??? ??? ?˾Ƴ???? ?????? ?? ?????? ?????Ͽ??? ?Ѵ?. ???? ?????????? ?????? ??뵵?????? ?????? ???? ???ڵ? ????? ?˷??ִ? ????? HTTP ????????(protocol) ?? "Content-Type"(????Ʈ Ÿ??) ????? "charset" ?Ķ???͸? ????ϴ? ???̴?([RFC2068] 3.4?? 14.18 ????).

HTTP ????? EUC-JP?? ???? ???ڵ??? ?????? ????:

 Content-Type: text/html; charset=EUC-JP

text/html ???ǿ??? ?԰ݿ? ???ռ? ?׸??? ?????϶?.

HTTP ????????(protocol: [RFC2068] ?׸? 3.7.1)?????? "Content-Type" ????? "charset" ?Ķ???Ͱ? ???? ?? ????Ʈ?? ISO-8859-1 ???? ???ڵ??? ????Ѵٰ? ??޵Ǿ??ִ?. ?????��? ?Ϻ? ?????鿡???? "charset" ?Ķ???͸? ??????? ?ʰ?, ?ٸ? ?Ϻ? ?????????? ?Ķ???͸? ?????ϴ? ???? ??????? ?ʱ? ?????? ??? ?? ?? ????. ???? ??뵵???? "charset" ?Ķ???Ϳ? ? ????Ʈ ???? ???????? ???ƾ? ?Ѵ?.

?????? ?˷? ?ְų? ?????? ?Ѱ踦 ?????ϱ? ???Ͽ?, HTML ?????? META ??????Ʈ?? ????Ͽ? ??뵵?????? ?????? ???? ???ڵ? ?????? Ȯ???? ?????????? ???? ?? ?? ?ִ?.

???? ???, ???? ?????? ???? ???ڵ??? "EUC-JP"?? ?????ϱ? ???ؼ? ?????? META ?????? ?Ѵ?.


META ???𿡼? ???? ???ڵ??? ?? ?????? ASCII ???? ??ü?? ǥ???ϴ? ASCII ?? ????Ʈ ?? ??�� ?????Ͽ?(?ּ??? META ??????Ʈ ?ؼ??? ?? ?? ??????) ??? ?? ?? ?ִ?. HEAD ??????Ʈ???? META ?????? ?????? ?????Ͽ??? ?Ѵ?.

HTTP ?????????̳? META ??????Ʈ???? ?????? ???? ???ڵ? ?????? ???????? ?? ?? ??츦 ????, ???? HTML?? ??? ??????Ʈ???? charset ??Ʈ????Ʈ?? ?????Ѵ?. ?????ڴ? ?? ??ɵ??? ?????Ͽ?, ????ڰ? ?????? ???? ??, ??뵵???? ???? ???ڵ??? ?��? ?? ?? ?ִ? ??ȸ?? ũ?? ??? ??Ų??.

HTML ?԰ݿ? ?????ϴ? ??뵵???? ?????? ???? ???ڵ??? ???? ?? ??, ???? ????? ???��????? ?�� ?????? ??????Ѵ?.

  1. "Content-Type"???? HTTP "charset" ?Ķ????.
  2. META ???𿡼? "Content-Type"?? "http-equiv" ?????? "charset" ??.
  3. ?ܺ? ?ڿ??? ?????ϴ? ??????Ʈ?? charset ??Ʈ????Ʈ.

?? ?�� ???? ??Ͽ? ?߰??????? ??뵵???? ????? ?????? ??? ?? ?? ?ִ?. ???? ???, ???? ??뵵?????? ?Ϻ??? ???忡?? ???Ǵ? ?پ? ?? ???ڵ??? ?????ϱ? ???Ͽ? ???? ü??(heuristics)?? ????Ѵ?. ???? ? ??뵵?????? ?ٸ? ?????? ???? ?? ?????ϵ???, ????ڰ? ?????ϴ? ??ü ????Ʈ ???? ???ڵ??? ???? ??쵵 ?ִ?.

??뵵???? Ʋ?? "charset" ?????? ????ڰ? ???? ????(override)?? ????? ???? ?? ?? ?ִ?. ?׷??? ??뵵???? ?׷??? ????? ?????Ѵٸ?, Ʋ?? "charset" ?Ķ???͸? ???? ?? ???????? ?????? ?ʵ???, ???? ?????????? ???????? ????, ????��?? ?? ?????Ͽ??? ?Ѵ?.

?ּ?: ???? Ư???? ?????? ???Ͽ? [ISO10646] ?̿??? ???ڸ? ??? ?? ?ʿ䰡 ???? ????, ?? ???ڰ? ????? ?̷??? ǥ?? ???? ???ڵ?? ?��???? ?ʵ???, ?????? ?????? ?????Ͽ??? ?Ѵ?. ?׷???, ??뼺 ??????, ?׷??? ???? ???? ???? ???ϰ? ??õ?Ѵ?.

5.3 ???? ????

?־??? ???? ???ڵ????? ???? ???? ??Ʈ?? ??? ???ڸ? ǥ?????? ?? ?? ?? ?ִ?. ?̷? ???ڵ?, ?Ǵ? ?ϵ??? ????Ʈ?????? ?????? ????ڰ? ?Ϻ? ???? ???ڸ? ???? ?Է? ?? ?? ???? ???, ?????ڴ? SGML ???? ?????? ??? ?? ?? ?ִ?. ???? ??????, ???? ???ڵ??? ?????? ???? ?ʴ? ???????, ???? ???? ??Ʈ?? ???? ? ???ڵ? ?Է??ϰ? ?ϱ? ???? ???̴?.

HTML???? ???? ?????? ???? ?ΰ??? ???��? ?? ?? ?ִ?.

?ڸ?Ʈ(comment)?ȿ??? ???? ?????? ?ǹ̰? ?????? ?ܼ??? ?????????̴?.

?ּ?: HTML?? ?��???(inline) ?̹????? ???? ?????͸? ǥ???ϴ? ?ٸ? ????? ?????Ѵ?.

?ּ?: SGML???? ???? ???? ???? ?? ";"?? ? ??��??(??: ?? ?ٲ? Ȥ?? ?��? ?ٷ? ??) ???? ?? ?? ?ִ?. ? ?ٸ?(??: ?ܾ? ?߰?) ??��?? ???? ?? ?? ????. ?? ???ڸ? ?ʿ???ϴ? ??뵵?????? ???? ?߻??? ???ϱ? ???? ?׻? ";"?? ??? ?? ???? ???Ѵ?.

5.3.1 ??ġ ???? ????

???? ?????? ???? ???? ??Ʈ???? ?????? ?ڵ? ??ġ?? ??Ÿ????. ???? ?????? ???? ?ΰ????? ???��? ?? ?? ?ִ?.

??? ???? ?????? ????:
???? ?? ?? ???????? ???? 16 ???? ???? ??ȣ, Ư?? ???? ??ȣ?? ǥ?????? ???ϴ? ??�� ?ִ?.

?ּ?: [ISO8879]?? 16?????? ???ǵǾ? ???? ?????? [WEBSGML]?? ????? ?????? ???��? ?????ǿ??? ???? ?? ?????? ???��?. ?Ϲ??????? ???? ǥ???? 16?????? ǥ???ǹǷ? ?? ??ȯ?? ?ſ? ???? ?? ???̴?.

5.3.2 ???? ??ƼƼ(entity) ????

?????ڰ? ???? ???? ??Ʈ???? ???? ?????ϴ? ?? ???????? ????? ???Ͽ?, HTML?? ???? ??ƼƼ(entity) ???? ??Ʈ?? ?????Ѵ?. ???? ??ƼƼ ?????? ?????ڰ? ?ڵ? ??ġ?? ??????? ?ʰ? ??��???? ?̸??? ????Ͽ???. ???? ???, ???? ??ƼƼ ???? å?? ?ҹ??? "å"?̸?, ?ϳ??? ??(a ring;)?? "å"???? ǥ???ϹǷ? å?? ????ϱ⺸?? ????.

HTML 4?? ???? ???? ??Ʈ?? ??? ???ڸ? ???? ??ƼƼ ?????? ?????????? ?ʾҴ?. ???? ??? ???? ??ƼƼ ?????????? ?��???(Cyrillic) ?빮?? "I"?? ???????? ?ʾҴ?. HTML 4?? ???ǵǾ??ִ? ???? ???? ??? ???��? ?????϶?.

???? ??ƼƼ(entity) ?????? ??ҹ??? ?????Ͽ? ???ȴ?. ?׷??? Å(Å)?? å(å)?? ?ٸ???.

???? ?װ??? ???? ??ƼƼ ???????? ???? ???? Ư?????ڷ? Ư???ϰ? ?????Ͽ???.

?????ڰ? ???忡?? "<" ???ڸ? ??? ?? ???? "<"(ASCII 10???? 60)?? ????Ͽ??? ?? ?????��??? ??????(delimiter)?? ???? ?? ?? ?ִ?. ?????????? ?????ڰ? ???忡?? ">" ??ſ? ">"(ASCII 10???? 62)?? ????Ͽ?, ????ǥ ???? ??Ʈ????Ʈ ?????? ?????��? ?????ڷ? ?߸? ?ؼ? ?? ?? ?ִ? ?????? ??뵵?????? ?????? ????Ű?? ?ʴ��?.

?????ڴ? "&" ??? "&"(ASCII 10???? 38)?? ????Ͽ? ??ƼƼ ?????? ???? ?????ڿ??? ȥ???? ???? ?? ?ִ?. ???? CDATA ??Ʈ????Ʈ ?? ?ӿ????? ?? ???? ?????? ???DZ? ??????, ??Ʈ????Ʈ ???????? "&"?? ????Ͽ??? ?Ѵ?.

?Ϻ? ?????ڴ? ????ǥ(") ??ſ? ???? ??ƼƼ ???? """?? ????Ѵ?. ?? ?????? " ???ڰ? ??Ʈ????Ʈ ???? ǥ?? ?? ?? ???DZ? ?????̴?.

5.4 ǥ?? ?? ?? ???? ????

??뵵???? ?????? ??? ???ڸ? ?ǹ??ְ? ǥ???ϴ? ???? ???????? ???? ?? ?ִ?. ???? ???, ??뵵???? ?????? ??Ʈ?? ????, ??뵵???? ??ü ???? ???ڵ????? ǥ?? ?? ?? ???? ???? ???? ?? ?? ?ֱ? ?????̴?.

?̷? ???? ?? ?? ?ִ? ????? ???? ??????, ?? ?????? ? ???? ?????? ???Խ?Ű?? ?ʾҴ?. ǥ?? ?? ?? ???? ??????, ?? ?뵵?? ????, ?? ???? ???��׷??? ?????? ?ʰ?, ??ü?? ???��??? ?ý??ۿ? ???? ó?? ?? ?? ?ִ?. Ư?? ??ũ??Ʈ?? ????? ?ʿ�� ???ߴ? ?? ?? ?????? ????? ???ٸ?, ??뵵?????? ?????? ???? ????? ???? ???? ???Ѵ?.

  1. ???? ?? ?ڿ??? ???? ????ڿ??? ??? ???? ??Ȯ?ϰ? ????ϴ? ??? ä??
  2. ???? ?? ???? ??ġ?? ǥ???? ???? ?? ???ڰ? ?ִٸ? 10?????? ?ƴ? ???? ??Ʈ ǥ?ؿ??? 16?????? ???

?? Trio Ȩ?????? ????(http://trio.co.kr/webrefer/html/charset.html)?? ???????? ???? ????? ??????.