Manpages

名 前

uri, url, urn − uniform resource identifier (URI), URL と URN も 含 む .

書 式

URI = [ absoluteURI | relativeURI ] [ "#" fragment ]

absoluteURI = scheme ":" ( hierarchical_part | opaque_part )

relativeURI = ( net_path | absolute_path | relative_path ) [ "?" query ]

scheme = "http" | "ftp" | "gopher" | "mailto" | "news" | "telnet" |

"file" | "man" | "info" | "whatis" | "ldap" | "wais" | ...

hierarchical_part = ( net_path | absolute_path ) [ "?" query ]

net_path = "//" authority [ absolute_path ]

absolute_path = "/" path_segments

relative_path = relative_segment [ absolute_path ]

説 明

Uniform Resource Identifier (URI) は 抽 象 的 ・ 物 理 的 な リ ソ ー ス (web ペ ー ジ な ど ) を 識 別 す る た め の 短 い 文 字 列 で あ る 。 Uniform Resource Locator (URL) は URI の 一 種 で 、 リ ソ ー ス の 名 前 な ど の 属 性 で で は な く 、 そ の リ ソ ー ス に 対 応 す る ア ク セ ス メ カ ニ ズ ム を 通 し て リ ソ ー ス を 指 定 す る (つ ま り ネ ッ ト ワ ー ク 上 の 「 場 所 (location)」 を 指 定 す る )。 Uniform Resource Name (URN) は URI の 一 種 で 、 こ れ は 対 象 の リ ソ ー ス が 廃 棄 さ れ た り 利 用 で き な く な っ た 場 合 に も 、 グ ロ ー バ ル に 他 と 重 な る こ と な く 永 続 し な け れ ば な ら な い 。

URI は 、 web ブ ラ ウ ザ な ど の ツ ー ル で ハ イ パ ー テ キ ス ト リ ン ク の リ ン ク 先 を 指 定 す る 時 の 標 準 的 な 方 法 で あ る 。 文 字 列 "http://www.kernelnotes.org"; は URL で あ る (従 っ て URI で も あ る )。 多 く の 人 々 は 、 URL と い う 言 葉 を ほ ぼ URI の 同 義 語 と し て 使 っ て い る (し か し 技 術 的 に は URL は URI の サ ブ セ ッ ト で あ る )。

URI は 絶 対 的 に も 相 対 的 に も 指 定 で き る 。 絶 対 的 な 指 定 は 、 リ ソ ー ス を コ ン テ ク ス ト に 依 存 し な い か た ち で 参 照 す る 。 相 対 的 な 指 定 は 、 リ ソ ー ス を 現 在 の コ ン テ ク ス ト か ら の 差 異 に よ っ て 記 述 す る 。 相 対 パ ス 参 照 で は 、 "." お よ び ".." だ け の パ ス 部 分 (path segment) は 特 別 な 意 味 を 持 ち 、 そ れ ぞ れ 「 現 在 の 階 層 レ ベ ル 」 お よ び 「 現 在 の 階 層 の 一 つ 上 の レ ベ ル 」 と し て 扱 わ れ る (Unix-like な シ ス テ ム と 同 様 )。 コ ロ ン 文 字 を 含 む パ ス 部 分 は 相 対 URI パ ス の 先 頭 に 用 い る こ と は で き な い (つ ま り "this:that" は ダ メ )。 ス キ ー ム 名 と 区 別 で き な い か ら で あ る 。 こ の よ う な 場 合 に は ./ を 前 置 す る こ と (つ ま り "./this:that" と す る )。 MS-DOS の 子 孫 (Microsoft Windows な ど ) は 、 デ バ イ ス 名 の コ ロ ン を URI で は 垂 直 バ ー ("|") に 置 き 換 え る 。 し た が っ て "C:" は "C|" と な る 。 フ ラ グ メ ン ト 指 定 子 (fragment identifier) は 、 (も し 含 ま れ て い れ ば ) リ ソ ー ス 中 の 名 前 付 け さ れ た 特 定 の 部 分 (フ ラ グ メ ン ト ) を 参 照 す る 。 '#' 指 定 子 以 降 の 文 字 列 が フ ラ グ メ ン ト を 指 定 す る 。 '#' で 始 ま る URI は 現 在 の リ ソ ー ス 中 の フ ラ グ メ ン ト を 参 照 す る 。 URI の ス キ ー ム に は 色 々 な 種 類 が あ り 、 そ れ ぞ れ 固 有 の ル ー ル や 意 味 が 追 加 さ れ て い る 。 し か し で き る だ け 統 一 し た も の に し よ う と い う 努 力 も な さ れ て い る 。 例 え ば 、 多 く の URL ス キ ー ム は 「 機 関 (authority)」 に 対 し て 以 下 の 書 式 (こ こ で は ip_server と 呼 ぶ こ と に す る ) を 許 し て い る (角 括 弧 内 部 は 省 略 可 能 )。

ip_server = [user [ : password ] @ ] host [ : port] こ の フ ォ ー マ ッ ト に は 、 ユ ー ザ 名 、 ユ ー ザ 名 +パ ス ワ ー ド を 指 定 で き る 。 ポ ー ト 番 号 を 追 加 す る こ と も 可 能 で あ る 。 host

は ホ ス ト コ ン ピ ュ ー タ の 名 前 で 、 DNS で 定 義 さ れ る 名 前 か IP ア ド レ ス (ピ リ オ ド で 区 切 ら れ た 数 字 ) で 指 定 す る 。 し た が っ て URI <http://fred:fredpassword [AT] xyz.com:8080/> は 、 ホ ス ト xyz.com に fred と し て (パ ス ワ ー ド を 使 っ て ) ポ ー ト 8080 を 使 っ て ロ グ イ ン す る 。 パ ス ワ ー ド は 可 能 な ら URI に は 含 め な い ほ う が 良 い だ ろ う 。 パ ス ワ ー ド を 直 書 き す る と 様 々 な セ キ ュ リ テ ィ 上 の リ ス ク が 生 じ る か ら で あ る 。 URL に ユ ー ザ 名 だ け を 与 え 、 パ ス ワ ー ド を 与 え な い 場 合 は 、 リ モ ー ト サ ー バ は パ ス ワ ー ド を 要 求 し て く る 。 URL を 解 釈 し た プ ロ グ ラ ム が 、 ユ ー ザ に こ の 入 力 を 促 す こ と に な ろ う 。 以 下 に 、 Unix-like な シ ス テ ム で 非 常 に 良 く 用 い ら れ て お り 、 多 く の ツ ー ル が 理 解 す る ス キ ー ム を 示 す 。 URI を 使 う ツ ー ル の 多 く で は 、 内 部 ス キ ー ム や 特 殊 な ス キ ー ム も 使 え る こ と が 多 い 。 そ の よ う な ス キ ー ム に 関 し て は ツ ー ル の ド キ ュ メ ン ト を 見 る こ と 。

http − Web (HTTP) サ ー バ

http://ip_server/path
http://ip_server/path?query こ れ は web (HTTP) サ ー バ に ア ク セ ス す る た め の URL で あ る 。 デ フ ォ ル ト の ポ ー ト は 80。 パ ス が デ ィ レ ク ト リ を 参 照 し て い る と き は 、 返 さ れ る 情 報 は web サ ー バ が 選 択 す る 。 通 常 は 、 "index.html" や "index.htm" の よ う な フ ァ イ ル が あ れ ば 、 そ の 内 容 が 返 さ れ る 。 な け れ ば 、 カ レ ン ト デ ィ レ ク ト リ の リ ス ト が (適 切 な リ ン ク と と も に ) 生 成 さ れ て 返 さ れ る 。 例 と し て は <http://lwn.net>; な ど 。 問 い 合 わ せ (query) を 、 古 い "isindex" フ ォ ー マ ッ ト に よ っ て 送 る こ と も で き る 。 こ の フ ォ ー マ ッ ト は 単 語 ま た は フ レ ー ズ か ら な り 、 等 号 (=) は 含 ま な い 。 よ り 長 い "GET" フ ォ ー マ ッ ト で も 問 い 合 わ せ は 行 え る 。 こ の フ ォ ー マ ッ ト に は 、 一 つ 以 上 の 問 い 合 わ せ エ ン ト リ が key=value と い う 形 式 で 含 ま れ る 。 そ れ ぞ れ の エ ン ト リ は ア ン パ サ ン ド (&) で 区 切 ら れ る 。 key は 複 数 個 指 定 す る こ と も で き る 。 し か し そ れ に 意 味 が あ る か ど う か は web サ ー バ と ア プ リ ケ ー シ ョ ン プ ロ グ ラ ム が 決 め る 。 HTML/XML/SGML と GET 問 い 合 わ せ 形 式 の 間 に は 、 不 幸 な 関 係 が あ る 。 一 つ 以 上 の キ ー の 含 ま れ る URI が SGML/XML 文 書 (HTML も そ う ) に 埋 め こ ま れ る 際 に は 、 ア ン パ サ ン ド (&) は &amp; と 書 か な け れ ば な ら な い 。 全 て の 問 い 合 わ せ が こ の 形 式 を 使 う わ け で は な い 。 フ ォ ー ム が 長 く な る と URI に 入 れ る に は 長 す ぎ る か ら 、 別 の 通 信 メ カ ニ ズ ム (POST と 呼 ば れ る ) が 用 い ら れ る 。 POST で は URI に は デ ー タ は 含 ま れ な い 。 よ り 詳 し い 情 報 は 、 <http://www.w3.org/CGI>; に あ る Common Gateway Interface の 仕 様 書 を 見 よ 。

ftp − フ ァ イ ル 転 送 プ ロ ト コ ル (FTP)

ftp://ip_server/path こ れ は フ ァ イ ル 転 送 プ ロ ト コ ル (FTP) を 通 し て フ ァ イ ル に ア ク セ ス す る た め の URL で あ る 。 デ フ ォ ル ト の (制 御 用 ) ポ ー ト は 21 で あ る 。 ユ ー ザ 名 が な い 場 合 に は 、 ユ ー ザ 名 anonymous が 与 え ら れ る 。 そ し て そ の 場 合 に は 、 ク ラ イ ア ン ト の 多 く は 要 求 し た 人 の イ ン タ ー ネ ッ ト メ ー ル ア ド レ ス を パ ス ワ ー ド と し て 与 え る 。 例 と し て は <ftp://ftp.is.co.za/rfc/rfc1808.txt>; な ど 。

gofer − Gofer サ ー バ

gopher://ip_server/gophertype selector
gopher://ip_server/gophertype selector%09search
gopher://ip_server/gophertype selector%09search%09gopher+_string デ フ ォ ル ト の gopher ポ ー ト は 70 で あ る 。 gophertype は 1 文 字 か ら な る フ ィ ー ル ド で 、 URL が 参 照 し て い る Gopher の リ ソ ー ス タ イ プ を 示 す 。 パ ス 全 体 が 空 で あ っ て も よ く 、 そ の 場 合 は 区 切 り の "/" も 省 略 で き る 。 こ の と き gophertype の デ フ ォ ル ト は "1" に な る 。

selector は Gopher セ レ ク タ 文 字 列 で あ る 。 Gopher プ ロ ト コ ル で は 、 Gopher セ レ ク タ 文 字 列 は オ ク テ ッ ト 文 字 か ら な り 、 16進 数 の 09 (US-ASCII の HT ま た は tab)、 0A (US-ASCII の LF 文 字 )、 0D (US-ASCII の CR 文 字 ) 以 外 な ら ど ん な オ ク テ ッ ト も 指 定 で き る 。

mailto − 電 子 メ ー ル ア ド レ ス

mailto:email-address こ れ は 電 子 メ ー ル ア ド レ ス で 、 通 常 name@hostname と い う 形 式 を と る 。 電 子 メ ー ル ア ド レ ス の 正 し い フ ォ ー マ ッ ト に 関 す る よ り 詳 し い 情 報 は mailaddr(7) を 見 よ 。 % 文 字 は す べ て %25 と 書 き 直 さ な け れ ば な ら な い こ と に 注 意 。 例 と し て は <mailto:dwheeler [AT] dwheeler.com> な ど 。

news − ニ ュ ー ス グ ル ー プ ・ ニ ュ ー ス メ ッ セ ー ジ

news:newsgroup-name
news:message-id

newsgroup-name は ピ リ オ ド で 区 切 ら れ た 階 層 的 な 名 前 で あ る 。 例 え ば "comp.infosystems.www.misc" な ど 。 <newsgroup-name> が "*" (つ ま り <news:*>) の 場 合 に は 、 「 参 照 で き る 全 て の ニ ュ ー ス グ ル ー プ 」 の 意 味 に な る 。 例 と し て は <news:comp.lang.ada> な ど 。

message-idhttp://www.ietf.org/rfc/rfc1036.txt">IETF RFC 1036 の Message-ID か ら 、 囲 み の "<" と ">" を 取 っ た も の に 対 応 す る 。 Message-ID は unique@full_domain_name と い う 形 式 を と る 。 メ ッ セ ー ジ の 指 定 に は "@" 文 字 が 含 ま れ る の で 、 ニ ュ ー ス グ ル ー プ の 名 前 と 区 別 で き る だ ろ う 。

telnet − telnet ロ グ イ ン

telnet://ip_server/

Telnet URL ス キ ー ム は 対 話 的 な テ キ ス ト サ ー ビ ス に Telnet プ ロ ト コ ル を 通 し て ア ク セ ス す る た め に 用 い ら れ る 。 最 後 の "/" 文 字 は 省 略 し て よ い 。 例 と し て は <telnet://melvyl.ucop.edu/>; な ど 。

file − 通 常 の フ ァ イ ル

file://ip_server/path_segments
file:path_segments こ れ は ロ ー カ ル に 直 接 ア ク セ ス で き る フ ァ イ ル を 示 す 。 特 殊 な ケ ー ス と し て 、 host に は "localhost" と い う 文 字 列 を 用 い た り 、 空 文 字 に し て も よ い 。 こ れ は 「 URI が 解 釈 さ れ た マ シ ン 」 と み な さ れ る 。 path が デ ィ レ ク ト リ の 場 合 は 、 ビ ュ ー ア は デ ィ レ ク ト リ の 内 容 を リ ン ク を 張 っ た か た ち で 表 示 す る と よ い だ ろ う 。 し か し 現 在 は 、 ま だ 全 て の ビ ュ ー ア が こ の 動 作 を す る わ け で は な い 。 KDE は 生 成 フ ァ イ ル (generated file) を URL <file:/cgi-bin> の 形 式 で サ ポ ー ト し て い る 。 与 え ら れ た フ ァ イ ル が 見 付 か ら な か っ た 場 合 は 、 フ ァ イ ル 名 を グ ロ ブ に よ っ て 展 開 す る と 良 い か も し れ な い (glob(7) お よ び glob(3) を 見 よ )。 二 つ め の 書 式 (例 え ば <file:/etc/passwd>) も ロ ー カ ル フ ァ イ ル を 参 照 す る 正 し い フ ォ ー マ ッ ト で あ る 。 し か し 古 い 標 準 で は こ の 書 式 を 許 し て い な か っ た の で 、 こ れ を URI と し て 認 識 し な い プ ロ グ ラ ム も 存 在 す る 。 よ り 汎 用 的 な 文 法 は 、 サ ー バ 名 に 空 文 字 を 用 い る も の 、 つ ま り <file:///etc/passwd>; の よ う な も の で あ る 。 こ の 形 式 も 指 す 内 容 は 同 じ で あ り 、 パ タ ー ン マ ッ チ や よ り 古 い プ ロ グ ラ ム で も URI と し て 認 識 さ れ や す い 。 も し 意 図 す る と こ ろ が 「 現 在 の 場 所 か ら ス タ ー ト 」 な ら 、 ス キ ー ム は 一 切 用 い る べ き で は な い 。 <../test.txt> の よ う な 、 ス キ ー ム に 依 存 し な い 相 対 リ ン ク を 用 い る こ と 。 こ の ス キ ー ム の 例 と し て は <file:///etc/passwd>; な ど 。

man − man ペ ー ジ 文 書

man:command-name
man:command-name(section) こ れ は ロ ー カ ル の オ ン ラ イ ン マ ニ ュ ア ル (man) リ フ ァ レ ス ペ ー ジ を 参 照 す る 。 command-name に は 括 弧 と セ ク シ ョ ン 番 号 を 追 加 し て も よ い 。 セ ク シ ョ ン 番 号 の 意 味 に つ い て 詳 し く 知 り た い 場 合 は man(7) を み よ 。 こ の URI ス キ ー ム は Unix-like な シ ス テ ム (Linux な ど ) に 特 有 の も の で あ り 、 現 在 は ま だ IETF に よ る 登 録 は さ れ て い な い 。 例 と し て は <man:ls(1)> な ど 。

info − info ペ ー ジ 文 書

info:virtual-filename
info:virtual-filename#nodename
info:(virtual-filename)
info:(virtual-filename)nodename こ の ス キ ー ム は 、 オ ン ラ イ ン の info リ フ ァ レ ン ス ペ ー ジ (texinfo フ ァ イ ル か ら 生 成 さ れ る ) を 参 照 す る 。 info ペ ー ジ は GNU ツ ー ル な ど の プ ロ グ ラ ム で 用 い ら れ て い る 文 書 フ ォ ー マ ッ ト で あ る 。 こ の URI ス キ ー ム は Unix-like な シ ス テ ム (Linux な ど ) に 特 有 の も の で あ り 、 現 在 は ま だ IETF に よ る 登 録 は さ れ て い な い 。 こ の 文 書 の 執 筆 時 に お い て 、 GNOME と KDE は そ れ ぞ れ 異 な る 文 法 の URI を 用 い て お り 、 お 互 い 相 手 の 文 法 を 受 け 入 れ な い 。 最 初 の 2 つ の 書 式 は GNOME の 書 式 で あ る 。 ノ ー ド 名 (nodename) の ス ペ ー ス は す べ て ア ン ダ ー ス コ ア に 変 換 さ れ る 。 3 つ め と 4 つ め は KDE の 書 式 で あ る 。 ノ ー ド 名 の ス ペ ー ス は そ の ま ま ス ペ ー ス で 書 か れ る (URI の 標 準 で は 禁 止 さ れ て い る の だ が )。 将 来 は 多 く の ツ ー ル が こ れ ら の 書 式 す べ て を 理 解 す る よ う に な り 、 ノ ー ド 名 の ア ン ダ ー ス コ ア 、 ス ペ ー ス を 両 方 と も 理 解 で き る よ う に な る こ と を 期 待 し た い 。 GNOME で も KDE で も 、 ノ ー ド 名 が 省 略 さ れ た 場 合 は 、 ノ ー ド 名 と し て "Top" が 用 い ら れ る 。 GNOME 書 式 の 例 と し て は <info:gcc> や <info:gcc#G++_and_GCC> な ど 、 KDE 書 式 の 例 と し て は <info:(gcc)> や <info:(gcc)G++ and GCC> な ど 。

whatis − 文 書 検 索

whatis:string こ の ス キ ー ム は 、 コ マ ン ド に 関 す る 短 い (1 行 の ) 説 明 を 集 め た デ ー タ ベ ー ス を 検 索 し 、 string を 含 む 文 字 列 を リ ス ト し て 返 す 。 単 語 が 完 全 に マ ッ チ し た 結 果 だ け が 返 さ れ る 。 whatis(1) を 見 よ 。 こ の URI ス キ ー ム は Unix-like な シ ス テ ム (Linux な ど ) に 特 有 の も の で あ り 、 現 在 は ま だ IETF に よ る 登 録 は さ れ て い な い 。

ghelp − GNOME ヘ ル プ 文 書

ghelp:name-of-application 与 え ら れ た application に 対 応 す る GNOME help を ロ ー ド す る 。 こ の 書 式 を 用 い た 文 書 は ま だ あ ま り 多 く な い 。

ldap − 軽 量 デ ィ レ ク ト リ ア ク セ ス プ ロ ト コ ル

ldap://hostport
ldap://hostport/
ldap://hostport/dn
ldap://hostport/dn?attributes
ldap://hostport/dn?attributes?scope
ldap://hostport/dn?attributes?scope?filter
ldap://hostport/dn?attributes?scope?filter?extensions こ の ス キ ー ム は Lightweight Directory Access Protocol (LDAP) へ の ク エ リ ー を サ ポ ー ト す る 。 LDAP は 複 数 の サ ー バ に 分 散 し た 、 階 層 化 さ れ た 情 報 (人 々 や 計 算 資 源 な ど ) に 問 い 合 わ せ る た め の プ ロ ト コ ル で あ る 。 LDAP の URL ス キ ー ム に 関 す る よ り 詳 し い 情 報 は http://www.ietf.org/rfc/rfc2255.txt">RFC 2255 で 見 る こ と が で き る 。 こ の URL の 各 部 は 以 下 の 通 り :

hostport ク エ リ ー を 行 う

LDAP サ ー バ 。 ホ ス ト 名 を 書 く 。 続 け て コ ロ ン と

ポ ー ト 番 号 を 追 加 す る こ と も で き る 。 LDAP の デ フ ォ ル ト の ポ ー ト は TCP ポ ー ト 389 で あ る 。 省 略 さ れ る と 、 ど の LDAP サ ー バ を 用 い る か は ク ラ イ ア ン ト が 決 定 す る 。

dn

LDAP の Distintuished Name (識 別 名 )。 LDAP 検 索 の base オ ブ ジ ェ ク ト を 指 定 す る も の で あ る ( http://www.ietf.org/rfc/rfc2253.txt">RFC 2253 の section 3 を 見 よ )。

attributes

コ ン マ 区 切 り の 、 返 さ れ る 属 性 (attribute) の リ ス ト 。 RFC 2251 の section 4.1.5 を 見 よ 。 省 略 さ れ る と 全 て の 属 性 が 返 さ れ る 。

scope

検 索 の ス コ ー プ を 指 定 す る 。 "base" (base オ ブ ジ ェ ク ト 検 索 ), "one" (1 レ ベ ル 検 索 ), "sub" (サ ブ ツ リ ー 検 索 ) の い ず れ か を 指 定 す る 。 省 略 す る と "base" が 仮 定 さ れ る 。

filter

検 索 フ ィ ル タ (返 さ れ る エ ン ト リ の サ ブ セ ッ ト ) を 指 定 す る 。 省 略 さ れ る と 、 全 て の エ ン ト リ が 返 さ れ る 。 http://www.ietf.org/rfc/rfc2254.txt">RFC 2254 の section 4 を 見 よ 。

extensions

コ ン マ で 区 切 ら れ た type=value ペ ア の リ ス ト 。 こ こ で =value の 部 分 は 、 そ れ を 要 求 し な い オ プ シ ョ ン に 対 し て は 省 略 で き る 。 '!' が 前 置 さ れ た extension は critical (サ ポ ー ト し て い な け れ ば な ら な い ) で あ り 、 そ う で な け れ ば critical で は な い (省 略 で き る )。

LDAP の ク エ リ ー は 、 例 と と も に 説 明 す る の が 最 も 簡 単 で あ る 。 次 の 例 は 、 ldap.itd.umich.edu に 、 U.S. に あ る University of Michigan の 情 報 を 尋 ね る 例 で あ る 。

ldap://ldap.itd.umich.edu/o=University%20of%20Michigan,c=US 郵 便 用 の 住 所 属 性 だ け を 取 得 す る 場 合 は 、 次 の よ う に リ ク エ ス ト す る :

ldap://ldap.itd.umich.edu/o=University%20of%20Michigan,c=US?postalAddress

host.com の ポ ー ト 6666 に 、 University of Michigan に い る common name (cn) が "Babs Jenson" の 人 の 情 報 を 尋 ね る 場 合 は 、 次 の よ う に リ ク エ ス ト す る :

ldap://host.com:6666/o=University%20of%20Michigan,c=US??sub?(cn=Babs%20Jensen)

wais − 広 域 情 報 サ ー ビ ス

wais://hostport/database
wais://hostport/database?search
wais://hostport/database/wtype/wpath こ の ス キ ー ム は WAIS の デ ー タ ベ ー ス 、 検 索 、 文 書 を 指 定 す る (WAIS に 関 す る 詳 し い 情 報 は http://www.ietf.org/rfc/rfc1625.txt">IETF RFC 1625 を 見 よ )。 hostport は 、 ホ ス ト 名 に コ ロ ン と ポ ー ト 番 号 を 付 加 し た も の で あ る (コ ロ ン + ポ ー ト 番 号 は 省 略 可 。 デ フ ォ ル ト の ポ ー ト 番 号 は 210 で あ る )。 最 初 の 書 式 は WAIS の デ ー タ ベ ー ス に 対 す る 検 索 の 指 定 で あ る 。 二 つ め の 書 式 は 特 定 の WAIS デ ー タ ベ ー ス database に 対 す る 検 索 の 指 定 で あ る 。 三 つ め の 書 式 は WAIS デ ー タ ベ ー ス に あ る 特 定 の 文 書 を 取 出 す 指 定 で あ る 。 wtype は WAIS の オ ブ ジ ェ ク ト 形 式 指 定 で あ り 、 wpath は WAIS document-id で あ る 。 そ の 他 の ス キ ー ム 他 に も 多 く の URI ス キ ー ム が 存 在 す る 。 URI を 受 付 け る ほ と ん ど の ツ ー ル は 、 内 部 URI の セ ッ ト を サ ポ ー ト す る (例 え ば Mozilla は 内 部 情 報 用 の about: と い う ス キ ー ム を 受 付 け る し 、 GNOME ヘ ル プ ブ ラ ウ ザ は い ろ い ろ な 出 発 点 用 に toc: と い う ス キ ー ム を 持 っ て い る )。 定 義 さ れ た ス キ ー ム は た く さ ん あ る が 、 現 時 点 で 広 く 用 い ら れ て は い な い (例 え ば prospero と か )。 nntp: ス キ ー ム は news: ス キ ー ム が 好 ん で 用 い ら れ る よ う に な っ た の で 使 わ な い ほ う が 良 い 。 URN は urn: ス キ ー ム に よ っ て 、 階 層 的 な 名 前 空 間 (例 え ば urn:ietf:... は IETF 文 書 を 示 す ) と し て サ ポ ー ト さ れ る べ き で あ る が 、 現 時 点 で は URN は あ ま り 用 い ら れ て い な い 。 全 て の ツ ー ル が 全 て の ス キ ー ム を サ ポ ー ト し て い る わ け で は な い 。 文 字 エ ン コ ー ド
URI で は 、 色 々 な 状 況 下 で 入 力 で き る よ う に 、 文 字 の 種 類 を 制 限 し て い る 。 以 下 の 文 字 は 予 約 さ れ て い る 。 す な わ ち 、 こ れ ら の 文 字 は URI に 登 場 す る こ と が あ る が 、 そ れ ら の 利 用 法 (解 釈 の さ れ 方 ) は 予 約 さ れ た 目 的 に 制 限 さ れ て い る (衝 突 す る デ ー タ は URI に す る 前 に エ ス ケ ー プ し な け れ ば な ら な い )。 ; / ? : @ & = + $ , 未 予 約 文 字 (unreserved character) は URI に 使 っ て よ い 。 こ れ に は 英 字 の 大 文 字 と 小 文 字 、 10 進 の 数 字 、 お よ び 以 下 の 句 読 文 字 ・ 記 号 が 含 ま れ る

− _ . ! ~ * ’ ( ) 他 の 文 字 は す べ て エ ス ケ ー プ し な け れ ば な ら な い 。 エ ス ケ ー プ さ れ た オ ク テ ッ ト は 3 文 字 か ら な る : 先 頭 に パ ー セ ン ト 文 字 "%"、 そ れ に 続 け て オ ク テ ッ ト コ ー ド を 表 す 2 文 字 の 16 進 数 字 で あ る (16 進 数 の 英 字 は 大 文 字 小 文 字 ど ち ら で も 良 い )。 例 え ば 空 白 文 字 は "%20" の よ う に エ ス ケ ー プ し な け れ ば な ら ず 、 タ ブ 文 字 は "%09"、 "&" は "%26" と な る 。 パ ー セ ン ト 文 字 "%" は 常 に エ ス ケ ー プ を 示 す 予 約 さ れ た 目 的 に 用 い ら れ る の で 、 "%" 自 身 を 表 す に は "%25" と エ ス ケ ー プ し な け れ ば な ら な い 。 ク エ リ ー の テ キ ス ト で は 、 ス ペ ー ス 文 字 を プ ラ ス 記 号 (+) で エ ス ケ ー プ す る こ と も 一 般 に 良 く 行 わ れ る 。 こ の 慣 例 は 関 連 RFC で 実 際 に 定 義 さ れ て い る わ け で は な い (代 わ り に %20 を 推 奨 し て い る ) が 、 ク エ リ ー テ キ ス ト を 受 付 け る ツ ー ル は 、 こ の 書 式 へ の 対 応 を 用 意 し て お く べ き で あ ろ う 。 URI は 、 常 に 「 エ ス ケ ー プ さ れ た 」 か た ち で 表 示 さ れ る 。 未 予 約 文 字 も エ ス ケ ー プ す る こ と が で き 、 こ れ に よ っ て URI の 意 味 す る と こ ろ が 変 わ る わ け で は な い 。 し か し URI に そ の 非 エ ス ケ ー プ 文 字 が 現 れ る こ と が 許 さ れ な い よ う な 特 殊 な 場 合 を 除 い て 、 こ れ は 避 け る べ き で あ る 。 例 え ば 、 HTTP URL の path に お い て "%7e" が "~" の 代 わ り に 用 い ら れ る こ と が あ る が 、 こ の 二 つ は HTTP URL と し て は 等 価 で あ る 。

US ASCII キ ャ ラ ク タ セ ッ ト 以 外 の 文 字 を URI と し て 扱 う 場 合 、 HTML 4.1 規 格 (section B.2) 及 び IETF RFC 2718 (section 2.2.5) は 以 下 の 手 法 を 用 い る よ う 推 奨 し て い る 。

1. キ ャ ラ ク タ 列 を

UTF-8 (IETF RFC 2279, utf-8(7) 参 照 ) に 変 換 し 、

2.

URI エ ス ケ ー プ 機 構 を 用 い る 。 つ ま り 、 安 全 で な い オ ク テ ッ ト を %HH で エ ン コ ー ド す る 。

URI を 書 く に は
URI を 書 く 時 に は 、 ダ ブ ル ク ォ ー ト の 内 部 に 書 く (例 : "http://www.kernelnotes.org";) か 、 angle ブ ラ ケ ッ ト で 囲 む (例 : <http://lwn.net>;) か 、 一 行 に URI だ け を 書 く か す る 。 ダ ブ ル ク ォ ー ト を 使 う 人 に 警 告 : 絶 対 に 句 読 点 (文 末 の ピ リ オ ド や リ ス ト 区 切 り の コ ン マ ) を URI の 内 部 に 移 動 し て は な ら な い 。 代 わ り に angle ブ ラ ケ ッ ト を 使 う か 、 外 に あ る 文 字 を ク ォ ー テ ー シ ョ ン マ ー ク の 内 部 に 決 し て 含 め な い よ う な 引 用 方 式 に 切 替 え る こ と 。 後 者 の 方 式 は "Hart’s Rules" や "Oxford Dictionary for Writers and Editors" に よ れ ば 「 新 し い (new) 引 用 方 式 」 あ る い は 「 論 理 的 (logical) な 引 用 方 式 」 と 呼 ば れ て お り 、 イ ギ リ ス 人 や 世 界 中 の ハ ッ カ ー 達 は こ ち ら の 慣 習 を 好 ん で い る (よ り 詳 し い 情 報 は Hacker Writing Style の Jargon File の セ ク シ ョ ン http://www.fwi.uva.nl/~mes/jargon/h/HackerWritingStyle.html を 見 よ )。 古 い 文 書 で は 、 "URL:" と い う 文 字 列 を URI の 直 前 に 挿 入 す る こ と を 勧 め て い る も の も あ る が 、 し か し こ の 形 式 は ま っ た く 流 行 し な か っ た 。

URI の 書 式 は 曖 昧 さ を 排 除 す る よ う に 設 計 さ れ て い る 。 し か し URI が 広 ま る に つ れ 、 昔 な が ら の メ デ ィ ア (TV、 ラ ジ オ 、 新 聞 、 看 板 な ど な ど ) は URI 参 照 を 省 略 し た か た ち 、 す な わ ち 機 関 部 と パ ス 部 だ け で リ ソ ー ス を 指 定 す る こ と が 多 く な っ て い る (例 : <www.w3.org/Addressing>)。 こ の よ う な 参 照 は マ シ ン と い う よ り は 人 間 向 け の も の で 、 コ ン テ キ ス ト ベ ー ス の 推 測 に よ っ て URI の 補 完 が 可 能 で あ る こ と を あ て に し て い る の で あ る (例 え ば "www" で は じ ま る ホ ス ト 名 な ら "http://"; が つ く だ ろ う し 、 "ftp" で は じ ま る ホ ス ト 名 な ら "ftp://"; が つ く だ ろ う )。 多 く の ク ラ イ ア ン ト の 実 装 で は 、 こ の 種 の 参 照 を 推 測 に よ っ て 解 決 す る 。 こ の よ う な 推 測 は 時 代 と と も に 変 わ り う る 。 特 に 新 し い ス キ ー ム が 導 入 さ れ る と そ う で あ る 。 URI の 省 略 形 で は 相 対 URL パ ス の 区 別 が 付 け ら れ な い の で 、 省 略 形 URI 参 照 は 相 対 URI の 利 用 で き る と こ ろ で は 使 え な い 。 つ ま り 定 義 済 み の ベ ー ス (ダ イ ア ロ グ ボ ッ ク ス な ど ) が な い 場 合 に 限 っ て 利 用 で き る 。 文 書 内 部 で の ハ イ パ ー テ キ ス ト リ ン ク に は 省 略 形 URI を 使 っ て は な ら な い 。 上 述 の 標 準 フ ォ ー マ ッ ト を 使 う こ と 。

準 拠

http://www.ietf.org/rfc/rfc2396.txt (IETF RFC 2396),
http://www.ietf.org/rfc/rfc1625.txt">IETF RFC 1625 http://www.w3.org/TR/REC-html40 (HTML 4.0).

注 意

Linux シ ス テ ム で URI を 受 付 け る ツ ー ル (例 え ば web ブ ラ ウ ザ な ど ) は 、 上 に あ げ た 全 て の ス キ ー ム を (直 接 ま た は 間 接 に ) 扱 え る べ き で あ る 。 man: や info: も 含 め て 、 で あ る 。 ス キ ー ム の 処 理 に 他 の プ ロ グ ラ ム を 実 行 す る の は 良 い こ と だ し 、 実 は す す ん で そ う す べ き で あ る 。 技 術 的 に は 、 フ ラ グ メ ン ト は URI の 一 部 で は な い 。

URI (URL も 含 む ) を デ ー タ フ ォ ー マ ッ ト に 埋 め こ む 方 法 に 関 す る 情 報 は 、 そ の フ ォ ー マ ッ ト の ド キ ュ メ ン ト を 見 よ 。 HTML は <A HREF="uri">text</A> を 用 い る 。 texinfo は @uref{uri} と い う 書 式 を 用 い る 。 man と mdoc は 、 最 近 追 加 さ れ た UR マ ク ロ を 使 う 。 あ る い は URI を そ の ま ま テ キ ス ト に 埋 め こ む (ビ ュ ー ア が :// を URI の 一 部 と 解 釈 で き な け れ ば な ら な い )。 デ ス ク ト ッ プ 環 境 で あ る GNOME と KDE は 、 そ れ ぞ れ 受 付 け る URI が (特 に そ れ ぞ れ の ヘ ル プ ブ ラ ウ ザ に お い て ) 異 な っ て い る 。 man ペ ー ジ を リ ス ト す る に は 、 GNOME で は <toc:man> を 用 い 、 KDE で は <man:(index)> を 用 い る 。 ま た info ペ ー ジ を リ ス ト す る に は 、 GNOME で は <toc:info> を 用 い 、 KDE で は <info:(dir)> を 用 い る (本 man ペ ー ジ の 著 者 は KDE の ア プ ロ ー チ の ほ う が 好 み で あ る 。 し か し よ り 標 準 的 な 書 式 の 方 が 更 に 良 い が )。 一 般 に KDE は 生 成 フ ァ イ ル (generated file) の プ レ フ ィ ッ ク ス と し て <file:/cgi-bin/> を 用 い る 。 KDE は HTML の 文 書 を <file:/cgi-bin/helpindex> 経 由 で ア ク セ ス す る の が 好 み な よ う で あ る 。 GNOME は 文 書 の 保 管 ・ 検 索 に ghelp ス キ ー ム を 用 い る 方 法 を 取 っ て い る よ う だ 。 ど ち ら の ブ ラ ウ ザ も 、 現 時 点 で は file: に よ る デ ィ レ ク ト リ 参 照 を 扱 え な い 。 し た が っ て デ ィ レ ク ト リ 全 体 を ブ ラ ウ ズ 可 能 な URI で 参 照 す る こ と が 難 し い 。 先 に 述 べ た よ う に 、 こ れ ら 二 つ の 環 境 で は info: ス キ ー ム の 扱 い が 異 な っ て い る (お そ ら く 最 も 重 要 な 差 異 で あ ろ う )。 GNOME と KDE が 共 通 URI フ ォ ー マ ッ ト に 収 斂 す る こ と が 望 ま し い 。 こ の man ペ ー ジ が 、 将 来 は そ の 収 斂 し た 結 果 を 記 述 で き る こ と を 望 む 。 こ の 作 業 へ の 助 力 を 喚 起 し た い 。 セ キ ュ リ テ ィ
URI そ の も の は セ キ ュ リ テ ィ の 脅 威 を 引 き 起 こ す も の で は な い 。 あ る 時 点 で は リ ソ ー ス の 場 所 を 与 え て い た URL が 、 ず っ と そ う で あ り つ づ け る と い う 保 証 は 一 般 に は な い 。 ま た あ る URL が 、 将 来 に は 別 の リ ソ ー ス を 示 さ な い と も 限 ら な い 。 こ の よ う な 保 証 は 、 そ の 名 前 空 間 と リ ソ ー ス と を 管 理 し て い る 個 人 に 帰 す る も の に 過 ぎ な い 。 無 害 に 見 え る 操 作 (リ ソ ー ス に 関 連 づ け ら れ た エ ン テ ィ テ ィ の 取 得 な ど ) に よ っ て 、 実 際 に は リ モ ー ト に ダ メ ー ジ を 与 え る 動 作 を 引 き 起 こ す よ う な URL を 記 述 す る こ と も 場 合 に よ っ て は 可 能 で あ る 。 危 険 な URL の 典 型 的 な も の は 、 そ の ネ ッ ト ワ ー ク プ ロ ト コ ル に 予 約 さ れ て い る ポ ー ト 番 号 と は 異 な る ポ ー ト を 指 定 し て い る も の で あ る 。 URL の 内 容 に は 命 令 が 含 ま れ て い て 、 そ の プ ロ ト コ ル に し た が っ て 解 釈 さ れ た と き 、 予 期 さ れ な い 動 作 を 引 起 こ す の で あ る 。 例 を あ げ る と 、 gopher の URL に よ っ て 、 意 図 し な い メ ッ セ ー ジ や な り す ま し メ ッ セ ー ジ な ど が SMTP サ ー バ 経 由 で 送 信 さ れ る よ う な こ と が あ っ た 。 そ の プ ロ ト コ ル の デ フ ォ ル ト 以 外 の ポ ー ト 番 号 を 指 定 し て い る URL を 用 い る と き に は 注 意 す べ き で あ る 。 特 に そ の 番 号 が 予 約 空 間 の 内 部 に あ る 場 合 に は 。

URI に 、 そ の プ ロ ト コ ル に 対 す る デ リ ミ タ が エ ス ケ ー プ さ れ た か た ち で 入 っ て い る 場 合 も 注 意 が 必 要 で あ る (例 え ば telnet プ ロ ト コ ル に 対 す る CR 文 字 や LF 文 字 な ど )。 な ぜ な ら こ れ ら は 転 送 前 に エ ス ケ ー プ が 外 さ れ な い か ら で あ る 。 こ れ は プ ロ ト コ ル に 反 し て お り 、 予 期 し な い 、 お そ ら く は 害 に な る よ う な リ モ ー ト 動 作 を 引 起 こ す 結 果 と な り か ね な い 。 秘 密 に し て お く べ き パ ス ワ ー ド を 含 ん だ URI を 使 う の が 賢 く な い の は 明 ら か で あ る 。 特 に 、 パ ス ワ ー ド を URI の "userinfo" の 部 分 に 使 う の は 絶 対 に 避 け る べ き で あ る 。 た だ し そ の "password" の パ ラ メ ー タ を 意 図 的 に 公 開 し た い 場 合 は 別 で あ る が 。

バ グ

文 書 は 様 々 な 場 所 に 置 か れ う る 。 し た が っ て 現 時 点 で は 、 任 意 の フ ォ ー マ ッ ト で 書 か れ た 一 般 の オ ン ラ イ ン 文 書 に 対 す る 良 い URI ス キ ー ム が 存 在 し な い 。 <file:///usr/doc/ZZZ>; 形 式 の 参 照 は 使 え な い 。 な ぜ な ら デ ィ ス ト リ ビ ュ ー シ ョ ン や ロ ー カ ル へ の イ ン ス ト ー ル の 際 の 条 件 に よ っ て 、 フ ァ イ ル は 異 な る デ ィ レ ク ト リ に 置 か れ る こ と が あ る か ら で あ る (/usr/doc か /usr/local/doc か /usr/share か そ の 他 の 場 所 か 、 な ど な ど )。 ま た 、 デ ィ レ ク ト リ ZZZ は 通 常 バ ー ジ ョ ン が 変 わ る と 異 な っ た も の に な る (フ ァ イ ル 名 の グ ロ ブ に よ っ て あ る 程 度 克 服 で き る だ ろ う が )。 最 後 に も う 一 つ 、 文 書 を イ ン タ ー ネ ッ ト か ら (ロ ー カ ル の フ ァ イ ル シ ス テ ム に フ ァ イ ル を ロ ー ド す る の で は な く ) 動 的 に ロ ー ド す る 人 々 は 、 な か な か file: ス キ ー ム を 使 っ て く れ な い 。 将 来 に は 新 た な URI ス キ ー ム (例 え ば "userdoc:" の よ う な ) が 追 加 さ れ 、 よ り 詳 し い 文 書 へ の ク ロ ス リ フ ァ レ ン ス が 、 そ の 文 書 の 正 確 な 場 所 を プ ロ グ ラ ム が 知 ら な く て も 可 能 に な る か も し れ な い 。 あ る い は 、 フ ァ イ ル シ ス テ ム 規 格 の 将 来 の 版 で フ ァ イ ル の 場 所 の 指 定 を よ り 厳 密 に し て 、 file: ス キ ー ム に よ る 文 書 の 位 置 指 定 が 可 能 に な る か も し れ な い 。 プ ロ グ ラ ム や フ ァ イ ル フ ォ ー マ ッ ト の 多 く で は 、 URI を 使 っ た リ ン ク を 取 り 込 ん だ り 実 装 し た り す る 方 法 が な い 。 プ ロ グ ラ ム の 多 く は 、 こ れ ら の URI フ ォ ー マ ッ ト を す べ て は 扱 え な い 。 ユ ー ザ の 環 境 (テ キ ス ト か グ ラ フ ィ ッ ク か 、 デ ス ク ト ッ プ 環 境 、 ロ ー カ ル ユ ー ザ の 好 み 、 現 在 実 行 さ れ て い る ツ ー ル ) な ど を 自 動 的 に 検 知 し て 、 任 意 の URI を ロ ー ド し 、 そ の URI に 適 し た ツ ー ル を 起 動 す る よ う な 標 準 的 な 仕 組 み が あ る と い い の だ ろ う が 。

関 連 項 目

lynx(1), man2html(1), mailaddr(7), utf-8(7), http://www.ietf.org/rfc/rfc2255.txt">IETF RFC 2255