-
Notifications
You must be signed in to change notification settings - Fork 4
/
927.txt
85 lines (56 loc) · 3.33 KB
/
927.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
[15] [[基底URI]] からの相対的な位置関係によってあらわされる [[URI]]。 Relative URI。
[16] 太古の昔には部分 (partial) URI とも呼ばれました。
[17] 現在では相対 URI は [[scheme]] によらない一般構文が定められていますから、基底 URI と相対 URI が与えられれば機械的に[[絶対URI]] に変換できます。
[18]
類似の用語:
- [CODE(math)[[DFN[[[相対URL]]]] := 相対 URI ∧ [[URL]]]]
- [CODE(ABNF)[[DFN[[[相対URI参照]]]] := [相対 URI] ["#" [ [[素片識別子]] ] ] ]]
[19] [[BNF]] では [CODE(ABNF)[[[relativeURI]]]] などと表されることが多いです。
* 特別な相対 URL の解決
[5] 本来の [[URL]] の仕様上は[[相対URL]]の[[解決]]は [[URL scheme]]
に依存しない演算のはずですが、実際には [[URL scheme]] ごとに独自の[[解決]]の方法が規定されていることがあります。
[3] [CODE(URI)@en[[[jar:]]]] は [CODE(URI)[[[!]]]] の扱いを特別に定めています。
[4] [CODE(URI)@en[[[smb:]]]] は[[作業グループ]]と[[鯖]]に関する [CODE(URI)[[[..]]]]
の扱いを特別に定めています。
* その他 URL scheme ごとの事情
[14] [CODE(URI)@en[[[gopher:]]]] でも[[相対URL]]を使うことができ、
特別扱いもされてはいませんが、 [CODE(URI)@en[[[gopher:]]]] [[URL]]
の定義上、 [CODE(URI)[[[/]]]] は [CODE(URI)@en[[[http:]]]]
のような階層的な意味を持たないので、[[相対URL]]はあまり有用ではありません。
;; [CODE(URI)@en[[[gopher:]]]] 参照。
* 歴史
** RFC 1808
[11] [DFN[[[RFC 1808]]]] は[[相対URL]]を規定していた [[RFC]] です。
[12] [[RFC 2396]] により[[更新]] (事実上[[廃止]]) され、 [[RFC 3986]]
により[[廃止]]されました。
;; [13] [[RFC 2396]] との関係については、 [[RFC 2396]] の項を参照。
* 関連
[6] [[相対URL]]のうち、[[素片識別子]]のないものを[[部分URL]]といいます。
[8] [[Atom]] は[[リンク関係型]]として[[相対URL]]のごく一部を使うことを認めていました。
これは [[IANA]] の [[URL]] の省略形を意味していました。
[7] [[CURIE]] や[[簡潔IRI]]は[[相対URL]]と見かけは似ていますが、全く異なるものです。
[9] [[WebDAV]] では[[単純参照]]として限定的な[[相対URL]]が用いられています。
;; [10] [[単純参照]]では [CODE[.]] と [CODE[..]] が禁止されています。
* メモ
[1]
[SAMP(URI)@en[http://foo.example/a/..]]
と
[SAMP(URI)@en[http://foo.example/a/../]]
は[[基底URI]] としても[[等価]]では''ありません''。
[[相対参照]] [SAMP(URI)@en[b]] を[[解決]]すると、それぞれ
[SAMP(URI)@en[http://foo.example/a/b]]
と
[SAMP(URI)@en[http://foo.example/b]]
になります。
参考:
[CITE@en[URL resolution sanity check]]
<mid:42DCF11E.2060503@metalab.unc.edu>
(uri@w3 のスレ)
([[名無しさん]] [sage])
[2]
[CITE[ITmedia News:ニフティ、動画にコメント付けられる「ニフニフ動画」]] ([CODE[2007-06-11 22:16:55 +09:00]] 版) <http://www.itmedia.co.jp/news/articles/0706/11/news039.html>
[PRE(HTML example code)[
<noscript>
<img src="//secure-jp.imrworldwide.com/cgi-bin/m?ci=itmedia&cg=0" alt="">
</noscript>
]PRE]