ISO/IEC 8859-1

ISO 8859-1（より正式にはISO/IEC 8859-1）はISO/IEC 8859の第一部であり、ラテンアルファベットの文字コード標準である。よりくだけた言い方ではLatin-1と呼ばれる。最初はISOによって開発されたが、後にISOとIECによって合同で保守されている。この標準に追加の文字を（16進符号0x00-0x1Fの「C0領域」と、0x80-0x9F「C1領域」の範囲に）割り当てたものは、2つの広く使われているキャラクタセットの基となる。ISO-8859-1（余分なハイフンに注意）とWindows-1252と呼ばれるものである。

2004年6月、8ビット符号化文字集合の整備を担当するISO/IECの作業部会は、国際符号化文字集合 (UCS) とUnicodeの開発に専念するために解散し、ISO 8859-1を含むすべてのISO 8859の整備を中止した。コンピュータアプリケーションにおいては、（UTF-8やUTF-16のような）完全なUCSサポートを提供するエンコーディングが、ISO 8859-1に基づくエンコーディングよりもますます多く使われるようになりつつある。

網羅範囲
ISO 8859-1が符号化しているものは「ラテン文字第1部」と呼ばれ、ラテン用字系の191文字からなる。この文字エンコーディングはアメリカ州、西ヨーロッパ、オセアニア、およびアフリカの多くで使われている。東アジア言語のほとんどの標準ローマ字表記でも広く使われている。

各文字は単一の8ビット符号値で符号化される。これらの符号値は、データ交換システムが以下のヨーロッパ言語で通信する際の需要をほぼ満たす が、足りない文字のためにわずかな例外がある。これについては注記を参照されたい。

現代のアルファベットを完全に網羅している言語
アフリカーンス語
アルバニア語
ブルトン語
デンマーク語
英語（アメリカ合衆国と現代イギリス）
フェロー語
ガリシア語
ドイツ語アイスランド語
アイルランド語（新しい正書法）
イタリア語
ラテン語（基本的な古典的正書法）
ルクセンブルク語（基本的な古典的正書法）
ノルウェー語（ブークモールとニーノシュク）
オック語
ポルトガル語（ヨーロッパのポルトガル語とブラジル・ポルトガル語）レト・ロマンス語
スコットランド・ゲール語
スペイン語
スワヒリ語
スウェーデン語
ワロン語
日本語 (訓令式ローマ字)

アルファベットをほぼ完全にカバーしているため広く対応している言語
オランダ語（「」「」が足りないがこれらは電子形式では常に「」や「」として表現されるべきである）
エストニア語（外来語で使われる「」「」「」「」が足りない）
 Windows-1252とISO/IEC 8859-15はこれらを含むことに注意
フランス語（「」「」およびきわめてまれな「」が足りない; これらは一般に通常は必要なリガチャなしで「」や「」に置き換えられ、トレマなしで「」に置き換えられる）
 Windows-1252とISO-8859-15はこれらを含むことに注意
フィンランド語（外来語で使われる「」「」「」「」が足りない）
 Windows-1252とISO-8859-15はこれらを含むことに注意

約物と引用符の範囲
上の一覧に挙げたいくつかの言語では正しい印刷用の引用符が足りない。「」「」、「」「」のみが含まれている。

加えて、このエンコーディングはアポストロフィーと方向付き単引用符に正しい文字を提供しない。が、テキスト中で6型/9型の引用符やアポストロフィーの代わりに前進付きグレイヴ・アクセントと前進付きアキュート・アクセント（これらはどちらもISO 8859-1に含まれる）を使うやりかたもある。なお、このやりかただと、これらの文字が傾いたくさび型のグリフで表示される書体でもうまく表示できる。

 歴史 
ISO 8859-1はDECの有名な端末で使われていたをもとに作られた。開発は欧州電子計算機工業会（ECMA、現Ecmaインターナショナル）と米国国家規格協会が共同で行い、1984年12月ECMA-94として制定、1985年3月にECMA-94として出版された。ただし、この時点のECMA-94は、13/07「×」と15/07「÷」を含んでいなかった。1986年6月にECMA-94は改定されており、
ECMA-94 第二版は規格の一部としてISO/IEC 8859-2、ISO/IEC 8859-3、およびISO/IEC 8859-4をも含んでいる。

ECMA-94の一部であるISO 8859-1およびISO 8859-2は、1987年2月15日にISOの国際規格として制定された。また、ISO 8859-3およびISO 8859-4は、少し遅れて1988年4月15日に制定されている。

 ISO/IEC 8859-15との関係 

ISO/IEC 8859-1にはほとんどのフランス語テキストの表記に十分な文字が含まれているが、使用頻度の低い少数の文字が欠けている。文字  の単一グリフによる表現、外国の固有名詞や少数の外来語で使われるフィンランド語の文字（と）、印刷用の引用符、ダッシュ、およびユーロ記号 (en) () やダガー (†) のようなよく使われる記号も不足している。

ISO/IEC 8859-15はISO/IEC 8859-1の更新版として開発され、これらの文字のいくつかを提供した。しかしそのためには、ISO/IEC 8859-1からあまり使われない文字をいくつか取り除く必要があった。取り除かれた文字は以下の通りで、分数記号や単独のダイアクリティカルマークが含まれる。 である。

 符号表 
ISO/IEC 8859-1によって符号化される191文字はすべて「図形」（graphic。制御符号でない文字を表すISOの用語）であり、かつほとんどのWebブラウザと互換性があるため、以下の表でグリフとして示すことができる。空白、ノーブレークスペース、およびソフトハイフン文字は通常不可視なので、その名前の省略形によって表現してある。すべての他の文字はそのまま表現してある。行見出しと列見出しは8ビット符号値を作り出すための16進数による桁の組み合わせを示す。たとえば、文字 L は符号値 4C である。

{| class="wikitable Unicode" style="text-align:center"
|-
!colspan="17" style="background-color:#fcb;"|ISO/IEC 8859-1
|-
|
!x0!!x1!!x2!!x3!!x4!!x5!!x6!!x7!!x8!!x9!!xA!!xB!!xC!!xD!!xE!!xF
|-
!0x
|rowspan="2" colspan="16" style="background-color:#CFC"|
|-
!1x
|-
!2x
|style="text-decoration: underline"|SP||!||"||#||$||%||&||'||(||)||*||+||,||-||.||/
|-
!3x
|0||1||2||3||4||5||6||7||8||9||:||;||<||=||>||?
|-
!4x
|@||A||B||C||D||E||F||G||H||I||J||K||L||M||N||O
|-
!5x
|P||Q||R||S||T||U||V||W||X||Y||Z||[||||]||^||_
|-
!6x
|`||a||b||c||d||e||f||g||h||i||j||k||l||m||n||o
|-
!7x
|p||q||r||s||t||u||v||w||x||y||z||{|||||}||~
|-
!8x
|rowspan="2" colspan="16" style="background-color:#cfc"|
|-
!9x
|-
!Ax
|style="font-size: x-small; text-decoration: underline"|NBSP
|¡
|¢
|£
|¤
|¥
|¦
|§
|¨
|©
|ª
|«
|¬
|style="font-size: x-small; text-decoration: underline"|SHY
|®
|¯
|-
!Bx
|°
|±
|²
|³
|´
|µ
|¶
|·
|¸
|¹
|º
|»
|¼
|½
|¾
|¿
|-
!Cx
|À||Á||Â||Ã||Ä||Å||Æ||Ç||È||É||Ê||Ë||Ì||Í||Î||Ï
|-
!Dx
|Ð||Ñ||Ò||Ó||Ô||Õ||Ö||×||Ø||Ù||Ú||Û||Ü||Ý||Þ||ß
|-
!Ex
|à||á||â||ã||ä||å||æ||ç||è||é||ê||ë||ì||í||î||ï
|-
!Fx
|ð||ñ||ò||ó||ô||õ||ö||÷||ø||ù||ú||û||ü||ý||þ||ÿ
|}

符号値00–1F, 7F–9FはISO/IEC 8859-1では文字を割り当てていない。

下位領域の20から7E（G0部分集合）はISO 646 US版（通称ASCII）のG0部分集合と正確に同じマッピングである。ISO 2022の指示シーケンスは"ESC ( B"。上位領域のA0からFF（G1部分集合）はISO 2022のシーケンス"ESC . A"で指示される部分集合と正確に同じマッピングである。

 関連する文字マッピング 
ISO/IEC 8859-1標準は、長い間多数の 文字マッピング（別名キャラクタセット、charsets、もしくはコードページ）の基盤となってきた。キャラクタセットのうちもっとも有名なものは ISO-8859-1とWindows-1252である。これらのマッピングはどちらもISO/IEC 8859-1の上位集合である。すなわち、これらは00–1F, 7F, および 80〜9F範囲にある符号値の少なくとも一部に追加の文字をマッピングすることにより、標準の191文字に割り当てを追加する。

 ISO-8859-1 
1992年、Internet Assigned Numbers Authorityは文字マッピングISO_8859-1:1987をインターネットで使うために登録した。ISO_8859-1:1987はISO 8859-1の上位集合であり、その推奨MIME名ISO-8859-1（ISO 8859-1に余分なハイフンが付いていることに注意）でより広く知られている。この写像はC0およびC1制御文字を符号値00–1F, 7F, および80–9Fに割り当てている。8ビットで可能なあらゆる値に割り当てをしているため、256文字を提供していることになる。

ISO-8859-1は（少なくとも規格によると）HTTP経由で配信され、"text/"で始まるMIMEタイプの文書における既定のエンコーディングである。ISO-8859-1はある種の記述的なHTTPヘッダの値の既定のエンコーディングであり、この文字集合を使うロケールのほとんどのUNIXマシン上でX Window Systemによって使われる標準エンコーディングである。ISO-8859-1はさらにHTML 3.2文書で許される文字レパートリの基になっている（しかしながら、HTML 4.0はUnicodeに基づく）。

エスケープシーケンス（ISO/IEC 6429やISO/IEC 2022に由来する）はISO-8859-1で符号化されているとラベル付けされた文書では解釈されない。上述の正式名称や推奨MIME名ばかりでなく、以下のような別名がISO-8859-1のために登録されている: ISO_8859-1, ISO-8859-1, iso-ir-100, csISOLatin1, latin1, l1, IBM819, CP819. ISO-8859-1はISO/IEC 10646とUnicodeの最初の256個の符号位置にも組み込まれた。

 符号値  制御文字  省略形 00  空文字 Null character  NUL 01  ヘッダ開始 Start of Heading  SOH 02  テキスト開始 Start of Text  STX 03  テキスト終了 End of Text  ETX 04  伝送終了 End of Transmission  EOT 05  問い合わせ Enquiry  ENQ 06 Acknowledge  ACK 07  ベル Bell character  BEL 08  1文字後退 Backspace  BS 09  水平タブ Tab  TAB 0A  改行 Line Feed  LF 0B  垂直タブ Vertical Tab  VT 0C  書式送り Form Feed  FF 0D  復帰 Carriage Return  CR 0E  シフトアウト Shift Out  SO 0F  シフトイン Shift In  SI 10  データリンク拡張 Data Link Escape  DLE 11  装置制御1 Device Control 1  DC1 12  装置制御2 Device Control 2  DC2 13  装置制御3 Device Control 3  DC3 14  装置制御4 Device Control 4  DC4 15  否定応答 Negative-acknowledge character  NAK 16  同期信号 Synchronous Idle  SYN 17  伝送ブロック終了 End of Transmission Block  ETB: 18  キャンセル Cancel character  CAN 19  媒体終端 End of Medium  EM 1A  置換 Substitute (character)  SUB 1B  エスケープ Escape character  ESC 1C  ファイルセパレータ File Separator  FS 1D  グループセパレータ Group Separator  GS 1E  レコードセパレータ Record Separator  RS 1F  ユニットセパレータ Unit Separator  US 7F  削除 Delete  DEL  符号値  制御文字  省略形 80  Padding Character  PAD 81  High Octet Preset  HOP 82  Break Permitted Here  BPH 83  No Break Here  NBH 84  Index  IND 85  Next Line  NEL 86  Start of Selected Area  SSA 87  End of Selected Area  ESA 88  Character Tabulation Set  HTS 89  Character Tabulation with Justification  HTJ 8A  Line Tabulation Set  VTS 8B  Partial Line Forward  PLD 8C  Partial Line Backward  PLU 8D  Reverse Line Feed  RI 8E  Single Shift 2  SS2 8F  Single Shift 3  SS3 90  Device Control String  DCS 91  Private Use 1  PU1 92  Private Use 2  PU2 93  Set Transmit State  STS 94  Cancel Character  CCH 95  Message Waiting  MW 96  Start of Guarded Area  SPA 97  End of Guarded Area  EPA 98  Start of String  SOS 99  Single Graphic Character Introducer  SGCI 9A  Single Character Introducer  SCI 9B  Control Sequence Introducer  CSI 9C  String Terminator  ST 9D  Operating System Command  OSC 9E  Privacy Message  PM 9F  Application Program Command APC

注: これらの制御文字のほとんどは、移植可能なISO-8859-1で符号化されたプレーンテキスト文書で使うために設計されたわけではなく、動作が標準化されている数個の文字を例外として、特定のプロトコルや機器でのみ使われる。例外は次の通り。TAB (09), LF (0A), CR (0D), NEL (85)。TAB以外は行の終わりや段落の区切りを符号化するために使われ、TABはしばしばホワイトスペースと等価であるとみなされる。しかしながら FF (0C) もプレーンテキスト文書を解釈するいくつかのアプリケーションで追加の無視可能な行頭のホワイトスペースとして広く受け入れられ、印刷時の明示的な改ページ位置を示すために使われる。

また、いくつかのエンコーディングでは、BS (08) を使って印刷機器上での複数文字の重ね打ちをエミュレートすることによって追加の文字を作成することを認めている。

いくつかのISO標準（たとえば ISO 2022）ではいくつかの制御記号に特定の機能を割り当てている。
SO (0E), SI (0F), DLE (10), ESC (1B) および SS2 (8E) が後続の文字エンコーディングの制御や、複数のエンコーディング間での切り替えに使われる。

NUL文字 (00) はいくつかのプログラミング言語における文字列の終端子やデータベースレコードの埋め草として広く使われ、無視されなければならず、符号化されたテキストの一部ではない。STX (02) とETX (03) はいくつかの伝送プロトコルでフレームの区切りとして広く使われる。SUB (1A) も入力伝送ストリームで検出されたエラーを示すために広く使われ、図形的に描画されることもある。DC1 (11) とDC3 (13) はXON/XOFFプロトコルで伝送速度の制御に広く使われる。最後に、EM (19) やEOT (04) はいくつかのテキストファイル形式でファイル終端マーカーとして使われることがある。

 ISO-8859-1とWindows-1252の取り違え 
実際にはWindows-1252で符号化されているのに、誤ってキャラクタセットISO-8859-1のラベルを付けることは、きわめてよくある誤りである。Windows-1252では、0x80から0x9Fの間の符号は文字と約物に使われるが、ISO-8859-1では制御符号である。多くのWebブラウザや電子メールクライアントはこのようなラベル付けの誤りに対応するため、ISO-8859-1の制御符号をWindows-1252の文字と解釈するが、これは標準に準拠した振る舞いではなく、ISO-8859-1とラベル付けされた内容ではこういった文字を生成することを避けるよう注意が払われるべきである。

 類似のキャラクタセット 

Apple Macintoshコンピュータはと呼ばれる文字エンコーディングを、1984年に導入した。Mac Romanは西欧のDTPに適切であることを意図していた。Mac RomanはISO-8859-1と同様ASCIIの上位集合であり、ISO-8859-1の文字をほとんど含んでいるが、文字の配列は完全に異なる。Internet Assigned Numbers Authorityが "Macintosh" として登録した後継バージョンは国際通貨記号 ¤ をユーロ記号 € で置き換えた。ISO 8859-1に含まれるがこの集合に含まれないわずかな文字は、しばしば古いMacintoshブラウザ（Internet Explorer for Macの最終版を含む）でWebサイト上のテキストを編集するとき、トラブルの元となる。しかしながらMacRomanでは、Windows-1252がC1符号値の範囲に持つ追加の文字にはすべて対応しており、わずかに不足している少数の文字を除き、グリフの符号値番号をマッピングし直すことによって、MacintoshでISO-8859-1（C1制御文字を含む）やWindows-1252として符号化/マークされたファイル (および電子メール) を送受信できる。

DOSにはコードページ850が存在し、これはISO-8859-1が持つすべての印字可能文字を (配列は完全に異なるものの) 持ち、加えてコードページ437の最も広く使われる図形文字も含む。

 関連項目 
Unicodeにおけるラテン文字
半角カナ

 外部リンク 
ISO/IEC 8859-1:1998（英語）
ISO/IEC 8859-1:1998 - 8-bit single-byte coded graphic character sets, Part 1: Latin alphabet No. 1 (draft dated February 12, 1998, published April 15, 1998)（英語）
Standard ECMA-94: 8-Bit Single Byte Coded Graphic Character Sets - Latin Alphabets No. 1 to No. 4 2nd edition (June 1986)（英語）
[ ISO-IR 100] Right-Hand Part of Latin Alphabet No.1 (February 1, 1986)（英語）
Windows Code pages （英語）
Differences between ANSI, ISO-8859-1 and MacRoman Character Sets（英語）
The Letter Database（英語）
ASCII - ISO 8859-1 Table with HTML Entity Names（英語）
The ISO 8859 Alphabet Soup - Roman CzyborraによるISOキャラクタセットのまとめ（英語）

01
ISO IEC 08859 01