[1] [DFN@en[Network Unicode]] ([DFN@en[Net-Unicode]]) は、 [[RFC 5198]]
で定義される [[Unicode]] ベースの「[[テキスト]]」の書式です。
[[Net-Unicode]] は旧来の [[NVT ASCII]] に代わるものとして定義されました。

* 仕様書

- [2] [CITE@en[RFC 5198 - Unicode Format for Network Interchange]] ([TIME[2011-05-01 10:22:43 +09:00]] 版) <http://tools.ietf.org/html/rfc5198>

* 符号化文字集合

[3]
- [[RFC 3629]] [[UTF-8]] でなければ[['''なりません''']]。
- 使用する[[プロトコル]]に「[[行]]」の概念がある場合、[[行末]]は
[[CRLF]] でなければ[['''なりません''']]。それ以外で [CODE(charname)@en[[[CR]]]]
を使う[['''べきではありません''']]。ただし
[CODE(charname)@en[[[CR]]]] [CODE(charname)@en[[[NUL]]]] は認められますが、
使うべきでは[['''ありません''']]。これ以外で [CODE(charname)[[[CR]]]] は使っては[['''なりません''']]。
- [CODE(char)[[[U+0000]]]]~[CODE(char)[[[U+001F]]]],
[CODE(char)[[[U+007F]]]] は、 [CODE(charname)@en[[[CR]]]]、
[CODE(charname)@en[[[LF]]]]、[CODE(charname)@en[[[FF]]]]
を除き、避ける[['''べきです''']]。
ただし [CODE(charname)@en[[[FF]]]] は標準的な解釈がないため、注意する必要があります。
[CODE(char)[[[U+0080]]]]~[CODE(char)[[[U+009F]]]]
は使っては[['''なりません''']]。
- 転送の前に [[NFC]] に[[正規化]]する[['''べきです''']]。
- [[BOM]] を使っては[['''なりません''']]。
- 適合するシステムは、その実装する [[Unicode]] の版で未定義の[[符号位置]]を転送しては[['''なりません''']]。
システムが実装する [[Unicode]] の版と [[NFC]] の版は一貫していなければ[['''なりません''']]。
- [[NVT]] の規定する任意選択の機能である[[バックスペース]]や
[CODE(char)[[[CR]]]] [CODE(char)[[[NUL]]]] を使った[[重ね打ち]]は使用する[['''べきではありません''']]。
- [[インターネット]]の[[情報交換]]では[[私用]]の[[符号位置]]を避ける[['''べきです''']]。

[5] 単独の ([[CRLF]] ではない) [[LF]] については、 questionable としながらも禁止はされていないみたいです。

[4] [[Unicode]] 5.0 またはそれ以降の版で、 [[UTF-8]] の定義や [[NFC]]
の安定性が保たれなくなった改訂の直前までが [[Net-Unicode]] 
が適用可能な [[Unicode]] の版とされています。

;; [[Unicode]] には非互換な変更を行わないという方針が昔からあり、
[[RFC]] でもそれに言及しているのですが、それでも敢えてこのような規定がなされているのは、
[[Unicode]] が何度も非互換な変更を繰り返してきて全く信用できないからでしょうwwww

* 応用

[FIG(quote)[
[FIGCAPTION[
[6] [[IPP]] ([TIME[2011-03-15 05:29:39 +09:00]] 版)
<http://ftp.pwg.org/pub/pwg/candidates/cs-ipp20-20110214-5100.12.pdf>
]FIGCAPTION]

> (b) SHOULD support Network Unicode as defined in [RFC5198], which requires transmission of well-formed UTF-8 strings and recommends transmission of normalized UTF-8 strings in Normalization Form C (NFC) [UAX15].

]FIG]


[FIG(quote)[
[FIGCAPTION[
[7] [CITE@en[RFC 6762 - Multicast DNS]]
([TIME[2015-03-24 01:44:49 +09:00]] 版)
<https://tools.ietf.org/html/rfc6762#section-16>
]FIGCAPTION]

> all names in Multicast
>    DNS MUST be encoded as precomposed UTF-8 '''['''RFC3629''']''' "Net-Unicode"
>    '''['''RFC5198''']''' text.

]FIG]


[FIG(quote)[
[FIGCAPTION[
[8] [CITE@en[RFC 6763 - DNS-Based Service Discovery]]
([TIME[2015-03-24 02:00:44 +09:00]] 版)
<https://tools.ietf.org/html/rfc6763>
]FIGCAPTION]

> The <Instance> portion of the Service Instance Name is a user-
>    friendly name consisting of arbitrary Net-Unicode text '''['''RFC5198''']'''.

]FIG]

[9] [CITE@en[RFC 7612 - Lightweight Directory Access Protocol (LDAP): Schema for Printer Services]]
([TIME[2015-07-01 10:20:12 +09:00]] 版)
<https://tools.ietf.org/html/rfc7612#section-4>
