;

params (URL)

[5] かつて URL の構文要素として paramsparam が定義されていました。

[6] 現在はパスの一部として扱われ、特別な意味は持っていません。

構文

[3] RFC 2396 では segment := *pchar *( ";" param ), param := *pchar です。 RFC 1808 では一節を裂いていたのに 2396 では tone down して path_segment のおまけ扱いです。

もっとも、 1808 までは URI の一番最後の query 直前だけが引数 (パラメーター) だったのが、 2396 では path 内のどの segment にもつけれるようになったという意味では進化しています。

文脈

[4] 次の場面で使われています。

歴史

[9] RFC 1808 (相対 URL) 2.4.5. Parsing the Parameters

If the parse string contains a semicolon ";" character, then the substring after the first (left-most) semicolon ";" and up to the end of the parse string is the parameters (<params>). If the semicolon is the last character, or no semicolon is present, then <params> is empty. The matched substring, including the semicolon character, is removed from the parse string before continuing.

解析文字列がセミコロン ; 文字を含んでいるなら、最初の (最左の) セミコロン ; の後から解析文字列の最後までは引数 (<params>) です。 セミコロンが最後の文字であるか、セミコロンが現れないなら、 <params> は空です。 一致した部分文字列は、セミコロンも含めて、続行する前に解析文字列から削除します。

[10] RFC 2396 (URI) 3.3 抜粋

Each path segment may include a sequence of parameters, indicated by the semicolon ";" character. The parameters are not significant to the parsing of relative references.

各経路 segment は引数の列を含めることができまして、 これはセミコロン ; 文字で示します。 引数は相対 URI の解析には意味を持ちません。

[8] 84409 – URL: relative URLs break if if base URL has ";" character ( ()) https://bugzilla.mozilla.org/show_bug.cgi?id=84409

[7] 448141 – Unable to open file with special characters in file:// ftp:// listing (";", semicolon, in file name) ( ()) https://bugzilla.mozilla.org/show_bug.cgi?id=448141

[11] 都税 クレジットカードお支払サイト () https://zei.tokyo/about-this-site.action;jsessionid=503ec08b6e8a7a3637f9583497d7

[12] Yocto Project Reference Manual () http://www.yoctoproject.org/docs/2.4/ref-manual/ref-manual.html#var-SRC_URI

[13] BitBake User Manual () http://www.yoctoproject.org/docs/2.4/bitbake-user-manual/bitbake-user-manual.html#http-ftp-fetcher

Because URL parameters are delimited by semi-colons, this can introduce ambiguity when parsing URLs that also contain semi-colons, for example:

SRC_URI = "http://abc123.org/git/?p=gcc/gcc.git;a=snapshot;h=a5dd47"

Such URLs should should be modified by replacing semi-colons with '&' characters:

SRC_URI = "http://abc123.org/git/?p=gcc/gcc.git&a=snapshot&h=a5dd47"

In most cases this should work. Treating semi-colons and '&' in queries identically is recommended by the World Wide Web Consortium (W3C). Note that due to the nature of the URL, you may have to specify the name of the downloaded file as well:

SRC_URI = "http://abc123.org/git/?p=gcc/gcc.git&a=snapshot&h=a5dd47;downloadfilename=myfile.bz2"

[14] Yocto Project Development Tasks Manual () http://www.yoctoproject.org/docs/current/dev-manual/dev-manual.html#new-recipe-makefile-based-package

LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \

file://include/common.h;beginline=1;endline=17;md5=ba05b07912a44ea2bf81ce409380049c"

[15] TipsAndTricks/NPM - Yocto Project () https://wiki.yoctoproject.org/wiki/TipsAndTricks/NPM

SRC_URI = "npm://registry.npmjs.org;name=cute-files;version=${PV}"

[16] Matrix URIs - Ideas about Web Architecture, , https://www.w3.org/DesignIssues/MatrixURIs.html