/[pub]/suikawiki/sw4data/ids/2/1.txt
Suika

Contents of /suikawiki/sw4data/ids/2/1.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (hide annotations) (download)
Sat Sep 12 09:58:23 2009 UTC (15 years, 2 months ago) by wakaba
Branch: MAIN
CVS Tags: before-graph-20090923, suika-20100509
Changes since 1.1: +113 -113 lines
File MIME type: text/plain
updated by (anon)

1 wakaba 1.2
2     - [1] ''Another HTML-lint : Explanation'' <http://openlab.ring.gr.jp/k16/htmllint/explain.html#illegal-format-url>
3     正しくない [[URI]] の例が幾つかあります。
4     [[#comment]]
5    
6    
7     * RFC 2068 の定義
8    
9     [2] [[RFC 2068]] 3.2 で規定されています。
10     ただし、 [[HTTP]] で使うための
11     [[URI]] の定義であって、一般の場面の
12     URI としての定義ではないことに注意が必要です。
13    
14     具体的には、本来 URI
15     では使えないはずの [[national]]
16     の文字が認められていたりします。
17    
18     - http_URL = "http:" "//" host [ ":" port ] [ abs_path ]
19     - host = <A legal Internet host domain name or IP address (in dotted-decimal form), as defined by Section 2.1 of RFC 1123>
20     -- = uri.[[host]] ;; = hostname / [[IPv4address]]
21     - port = *DIGIT
22    
23     - relativeURI = net_path | abs_path | rel_path
24     - net_path = "//" net_loc [ abs_path ]
25     - abs_path = "/" rel_path
26     - rel_path = [ path ] [ ";" params ] [ "?" query ]
27     - path = fsegment *( "/" segment )
28     - fsegment = 1*pchar
29     -- = 1*((OCTET - unsafe) / escaped)
30     - segment = *pchar
31     -- = *((OCTET - unsafe) / escaped)
32     - params = param *( ";" param )
33     - param = *( pchar | "/" )
34     -- = *((OCTET - unsafe) / escaped)
35     - scheme = 1*( ALPHA | DIGIT | "+" | "-" | "." )
36     - net_loc = *( pchar | ";" | "?" )
37     -- = *((OCTET - unsafe) / escaped)
38     - query = *( uchar | reserved )
39     -- = *(([[OCTET]] - [[unsafe]]) / [[escaped]])
40     - fragment = *( uchar | reserved )
41     -- = *((OCTET - unsafe) / escaped)
42    
43     なんかこの構文破綻してる気がしますが。。。
44     例えば [CODE(ABNF)[segment = 2068.segment - "/"]]
45     と定義しておかないと[[欲張り]]過ぎるんじゃ?
46    
47     - [3] 仕様の詳細は [CODE(WikiPage)[[[HTTP//URI]]]] を参照されたし。
48    
49     [[#comment]]
50    
51    
52     * メモ
53    
54     [4]
55    
56     > RFC 2616 には HTTPプロトコルに関することが書かれており,3.2.2 http URL に書かれている http URL も,HTTPプロトコルの中での話になります.一般に,HTML のリンクに使用されるものは,純粋に HTTPプロトコルの中で使用される http URL ではなく, scheme が http であるURI References です.
57    
58     出典: [CITE[Perlメモ]] <http://www.din.or.jp/%7Eohzaki/perl.htm#httpURL>
59     (2005年3月現在)
60    
61     このような解釈は正しく'''ありません'''。 [[IANA]]
62     の [[URI scheme]] 登録簿に拠れば [CODE(URI)[[[http]]:]]
63     URI scheme の出典は [[RFC 2616]] であり、 [[IETF]]
64     的に有効な [CODE(URI)[[[http]]:]] [[URI]] の規定は
65     ([[HTTP]] であれ [[HTML]] であれ、その他の文脈であれ)
66     [[RFC 2616]] だけです。
67    
68     更に
69    
70     > たとえば http://user:passwd@www.din.or.jp/~ohzaki/perl.htm#URI は URI References ですが,user:passwd@ の部分,すなわち,userinfo や,#URI の部分,すなわち, Fragment Identifier は HTTPプロトコルの中で使用される http URL としては不正なものとなります.しかし,HTML のリンクとしては問題ありません.なぜなら,クライアント(ブラウザ)が HTTPプロトコルで通信する際にはそれらを削除しているからです.
71    
72     と説明がありますが、このような議論は実装がそうであるというだけで、
73     仕様がそうであるとの根拠はありません。
74     ([[RFC 2396]] の時代に [[URI参照]]の一部分ではあっても [[URI]]
75     の一部分ではなかった[[素片識別子]]は別として、)
76     単に仕様と実世界が整合していないというだけであって、
77     [[HTTP]] で使うか [[HTML]] で使うかは関係ありません。
78    
79     個々の [[URI scheme]] の規定は [[RFC 2396]] (や新しい [[RFC 3986]])
80     の一般の規定に優先するので、 [[RFC 2396]] で許されるように見えても
81     [[RFC 2616]] で許されないものは、すべて認められません。
82    
83     ([CODE(URI)[[[ftp]]:]] [[URI]] に関する部分にも同様の指摘ができます。
84     ただし [CODE(URI)[[[ftp]]:]] [[URI scheme]] の仕様は未だにいにしえの
85     [[RFC 1738]] のままで、実装とまったく整合していません。)
86    
87     [5]
88     [CITE[What do HTTP URIs Identify? - Design Issues]] <http://www.w3.org/DesignIssues/HTTP-URI>
89     ([[名無しさん]])
90    
91     [6]
92     [CITE[What do HTTP URIs Identify? - Design Issues]] <http://www.w3.org/DesignIssues/HTTP-URI2.html>
93     ([[名無しさん]])
94    
95     [7]
96     [CITE[TAG Issues List]] <http://www.w3.org/2001/tag/issues.html?type=1#httpRange-14>
97     ([[名無しさん]])
98    
99     [8]
100     [CITE@EN[URNs, Namespaces and Registries]] ([CODE[2006-09-01 17:51:46 +09:00]] 版) <http://www.w3.org/2001/tag/doc/URNsAndRegistries-50-2006-08-17.html>
101     ([[名無しさん]])
102    
103     [9]
104     [CITE[freshmeat.net: Project details for mod_xml_meta]] ([CODE[2008-03-22 12:38:33 +09:00]] 版) <http://freshmeat.net/p/mod_xml_meta>
105    
106     > HTTP headers that are embedded as processing instructions (<?http header="..." ?>) in XML files are extracted by this Apache2 module and sent with the response body. mod_xml_meta is an easier and more transparent replacement for mod_cern_meta, but obviously does not work with all files.
107    
108     ([[名無しさん]])
109    
110     [10]
111 wakaba 1.1 >>9 の [CODE(file)[[[README]]]] より:
112    
113     <?http header="Content-Type: application/x-your-format+xml" ?>
114     <?http header="X-Server: fopen()/2.4.19" ?>
115     <?http header="X-Your-Header: true" ?>
116    
117 wakaba 1.2 * フォーム提出
118    
119     [11] [CITE@en-GB-x-Hixie[Web Forms 2.0]] ([TIME[2009-01-05 20:07:15 +09:00]] 版) <http://www.whatwg.org/specs/web-forms/current-work/#for-http>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24