Internet-Draft draft-abela-utf9-00 urn:ietf:id:draft-abela-utf9-00 で定義されていましたが、 expire されました。
UTF-8 と似ていますが、 Latin-1 (ISO/IEC8859-1) の範囲の文字 (U+0000-U+007F, U+00A0-U+00FF) はそのままの値で UTF-9 では表現されます。 UTF-8 とは違って、 0xA0-0xFF のオクテットが1文字である可能性がありますから、文字の始まり かどうかは前に戻らないと判断できません。
こうした欠点や既に UTF-8 が普及していたことから、 IETF protocols で使われることにはなりませんでした。
\R 0 1 2 3 4 5 6 7 8 9 A B C D E F C\ 0 <C><C><C><C><C><C><C><C><C><C><C><C><C><C><C><C> 1 <C><C><C><C><C><C><C><C><C><C><C><C><C><C><C><C> 2 SP ! " # $ % & ' ( ) * + , - . / 3 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ '_ 6 ` a b c d e f g h i j k l m n o 7 p q r s t u v w x y z { | } ~ DEL 8 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 2_ 9 3_ 3_ 3_ 3_ 4_ 4_ 4_ 4_ 5_ 5_ 5_ 5_ 5_ 5_ 5_ 5_ A <L><L><L><L><L><L><L><L><L><L><L><L><L><L><L><L> B <L><L><L><L><L><L><L><L><L><L><L><L><L><L><L><L> C <L><L><L><L><L><L><L><L><L><L><L><L><L><L><L><L> D <L><L><L><L><L><L><L><L><L><L><L><L><L><L><L><L> E <L><L><L><L><L><L><L><L><L><L><L><L><L><L><L><L> F <L><L><L><L><L><L><L><L><L><L><L><L><L><L><L><L>
* <C> Control Character (C0) <L> Latin-1 character 2_ 1st octet of 2 octets 3_ 1st octet of 3 octets 4_ 1st octet of 4 octets 5_ 1st octet of 5 octets
* <L>, 2_, 3_, 4_, 5_ are also 2nd, 3rd, ... octet of multi-octets character.
UCS-4 value (hex) | UTF-9 octet stream (binary) |
0000 0000-0000 007F | 0xxxxxxx |
0000 00A0-0000 00BF | 101xxxxx |
0000 00C0-0000 00FF | 11xxxxxx |
0000 0100-0000 07FF | 1000xxxX 1xxxxxxx |
0000 0800-0000 FFFF | 100100Xx 1xxxxxxX 1xxxxxxx |
0001 0000-007F FFFF | 100101xx 1xxxxxXx 1xxxxxxX 1xxxxxxx |
0080 0000-7FFF FFFF | 10011xxx 1xxxxXxx 1xxxxxXx 1xxxxxxX 1xxxxxxx |
x -> bit X -> MSB in UCS-4 octets
[1] RFC 4042 UTF-9 とは異なります。