一般にURLは(スキーム名):(スキームごとに定められた何かの表現形式)
という形をしている。スキーム名としてはプロトコル名が用いられていることが多いがそれに限らない。.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation.cs-ja1 q,.mw-parser-output .citation.cs-ja2 q{quotes:"「""」""『""』"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:#d33}.mw-parser-output .cs1-visible-error{color:#d33}.mw-parser-output .cs1-maint{display:none;color:#3a3;margin-left:0.3em}.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}RFC 1738
には次のスキーム名が定義されている。IANAに登録されたスキーム[4]が公式に認められたスキームであると見なされており、RFC 7595で登録手続きなどについて規定されている。この他にもjavascriptスキーム(この後ろに書かれた内容がJavaScript言語によって書かれたスクリプトであることを示す)のように広く普及している非公式なスキームもある[5]。
URLの、スキーム名以降の部分はスキームごとに定められた規則に従う。例えば、電子メールの宛先を表すmailtoスキームのURLの場合、mailto:example@example.com
のようになっており、先に挙げたhttpsスキームの例とは大きく異なっている。
httpsやftpのような特定のホストにIP接続する類のスキームでは次のような共通の形式が使われている。この表記では、接続するプロトコルは、呼び出している機能のプロトコルと同じものが使用される。//<user>:<password>@<host>:<port>/<url-path>?<query-string> WHATWGがURL Living Standard
<user> - ホストに接続するときに使うユーザー名。必要がなければ省略可。
<password> - ユーザー名に対応するパスワード。必要がなければ省略可。
<host> - ホスト名、FQDNまたはIPアドレス
https://192.168.10.2/ ← IPv4の場合https://[fe80::a1b3:125d:c1f8:4781]/ ← IPv6の場合
<port> - 接続先ポート番号。ホストのどのポートに接続するかを表す。スキームがデフォルトのポート番号を規定している場合は省略してもよい。
<url-path> - ホストに要求するパス。ホストのファイルシステムにおけるパスと対応する場合が多いが、そうでない場合もある。必要がなければ省略可。
<query-string> - 接続先が利用するパラメータ。?に続いて任意の形式でデータを記述する[6]。省略可。正式名は「URL-query string」。
標準
なお、cURL作者のDaniel SteinbergはURL Standardについても不十分という意見を発している[7]。
RFC - Uniform Resource Locators(URL)
RFC 1808 - Relative Uniform Resource Locators
RFC 2396 - Uniform Resource Identifiers(URI):Generic Syntax(旧)
⇒TS X 0097:2004 - 統一資源識別子(URI) 共通構文 標準仕様書(TS)