[1] news: と nntp:
は、USENET ネットニュースを表す URL scheme です。
元々は news: がプロトコル非依存の記事、
nntp: が NNTP を表していたようですが、
次第に区別が曖昧となり、実装によっては同義として扱っているようです。
[33] また snews: は、
NNTP over SSL/TLS を表していましたが、歴史的 >>5
とされています。
[4] ネットニュースの衰退により、現在ではほとんど使われなくなっています。
[37] RFC 5538 は実際に使われている URL の一部のみしかカバーしていないようですが、 その範囲がどのように選ばれたのかは明確ではありません。複数の実装があっても RFC に含まれていない構文もあれば、実装されていないことがあっても RFC には含まれている構文もあるようです。
[17] news: とメッセージIDを指定することで、
(特定の鯖に限定されない) 記事を表します >>5。
[18] news: とニュースグループの名前を指定することで、
(特定の鯖に限定されない) ニュースグループ群を表します >>5。
[19] news:// と鯖と /
とメッセージIDを指定することで、
特定の鯖の記事を表します >>5。
[20] news:// と鯖と /
とニュースグループの名前を指定することで、
特定の鯖のニュースグループ群を表します >>5。
[7] nntp:// と authority と / とニュースグループの名前を指定することで、
特定の鯖のニュースグループを表すことができます >>5。
[7] nntp:// と authority と / とニュースグループの名前と
/ と記事番号を指定することで、
特定の鯖のニュースグループに含まれる記事を表すことができます >>5。
[10] nntp: URL で指定するニュースグループは、
1つ以上の文字かパーセント符号化により表現します。
ここで文字は、ASCIIラテン文字、ASCII数字、
-、+、_、.
のいずれかです。 >>5
[14] RFC 5536 (USEFOR) で認められているニュースグループ名は、 パーセント符号化なしで表現できます。 RFC 3977 (NNTP) では更にそれ以外の記号や非ASCII文字も使えますが、 それを表すにはパーセント符号化が必要です。 >>5
[26] news: URL で指定するニュースグループ群は、
RFC 3977 wildmat-pattern です。すなわち、
ニュースグループの名前に加えてワイルドカードである
* と ? を使うことができます。 >>5
[27] ただし ? はパーセント符号化が必要です >>5。
[29] ワイルドカードがなければ、特定のニュースグループを表しており、 利用者エージェントは普通は記事一覧を表示します >>5。
[16] 記事番号は、1-16桁のASCII数字で、 RFC 3977 (NNTP) によるものです >>5。
[23] メッセージIDは、記事の Message-ID: ヘッダーのうち、
< と > を除いたもの (RFC 5536) です >>5。
[24] ただし、 gen-delims と %
はパーセント符号化しなければなりません >>5。
[25] 解釈するエージェントは、すべてのパーセント符号化を復号する必要があります >>5。
[32] なお、ニュースグループとメッセージIDは、
@ の有無によって区別します >>5。メッセージID
には歴史的に @ が含まれることとなっています。
RFC 3977 (NNTP) によれば @ が含まれることは要求されていませんが、
RFC 2822 と USEFOR によれば記事の構文上は @ が要求されています。
RFC 1738 にはありませんが、lynx 等と同じ様な以下の URL を
解釈する様にしました。
news: は、nntp: の <host>:<port> が、オプション nntpserver
(環境変数 NNTPSERVER) の値になる以外は nntp: と同じになります。
# lynx 等では、news://<host>:<port>/ とか <host>:<port> なしの
# nntp: も使える(news: と nttp: が完全に同じ)様だけど見送り。
[記事の取得]
nntp://<host>:<port>/<newsgroup-name>/<article-number> (RFC 1738)
nntp://<host>:<port>/<newsgroup-name>/<message-id>
nntp://<host>:<port>/<message-id>
news:<newsgroup-name>/<article-number>
news:<newsgroup-name>/<message-id>
news:<message-id> (RFC 1738)
[Newgroup の記事のリスト]
nntp://<host>:<port>/<newsgroup-name>
nntp://<host>:<port>/<newsgroup-name>/<start-number>-<end-number>
news:<newsgroup-name> (RFC 1738)
news:<newsgroup-name>/<start-number>-<end-number>
推奨はしませんし、内部でも使わないようにしていますが、
news:<newsgroup-name>/<start-number>-<end-number> は使わざる
をえないので使っています。
# news:<newsgroup-name>#<start-number> にしていたのですが
# lynx 等に合わせました。[6] RFC 1738 によって標準化された後、実装との乖離が大きくなり、 また RFC 2396 その他により RFC 1738 が廃止されながらも改訂されず有効な仕様書が存在しない状態で長年放置されていましたが、 2010年にようやく RFC 5538 が出版されました。
[35] RFC 5538 は、 NNTP over TLS は非推奨であるとして、
snews: を状態「歴史的」でIANA登録簿に登録しています。
構文は news: と同じと述べています。 >>5
[2] news:*はすべてのニュース・グループを表します。
[564] news/nntp/snews - URL Programmer's Manual ( ( 版)) <http://www.gnu.org/software/emacs/manual/html_node/url/news_002fnntp_002fsnews.html>
[565] 226890 – Thunderbird doesn't handle news: and nntp: URLs properly (RFC 5538) ( ( 版)) <https://bugzilla.mozilla.org/show_bug.cgi?id=226890>
[566] URL Schemes Supported in Lynx ( ( 版)) <http://lynx.isc.org/current/breakout/lynx_help/lynx_url_support.html#news_url>
[567] Web Applications 1.0 r8872 Add openpgp4fpr: scheme to whitelist for registration ( ( 版)) <https://html5.org/r/8872>
[568] Web Applications 1.0 r8878 Put back nntp to the scheme whitelist, since it was removed completely accidentally. ( ( 版)) <https://html5.org/r/8878>