/[suikacvs]/webroot/www/2004/id/draft-uri-url-03.ps
Suika

Contents of /webroot/www/2004/id/draft-uri-url-03.ps

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download) (as text)
Tue Jun 15 08:04:06 2004 UTC (20 years, 10 months ago) by wakaba
Branch: MAIN
CVS Tags: HEAD
File MIME type: application/postscript
New

1 wakaba 1.1 %!PS-Adobe-2.0
2     %%Creator: dvips 5.515 Copyright 1986, 1993 Radical Eye Software
3     %%Title: url-spec.dvi
4     %%CreationDate: Mon Mar 28 16:01:03 1994
5     %%Pages: 18
6     %%PageOrder: Ascend
7     %%BoundingBox: 0 0 596 842
8     %%DocumentFonts: Times-Roman Helvetica-Bold Times-Bold Courier
9     %%EndComments
10     %DVIPSCommandLine: dvips -o url-spec.ps url-spec.dvi
11     %DVIPSSource: TeX output 1994.03.28:1559
12     %%BeginProcSet: tex.pro
13     /TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
14     /X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
15     mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
16     ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
17     isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
18     hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
19     TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get
20     round 5 exch put setmatrix}N /@landscape{/isls true N}B /@manualfeed{
21     statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0
22     0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn
23     begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X
24     array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo
25     setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{/sf 1 N /fntrx
26     FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /E{
27     pop nn dup definefont setfont}B /ch-width{ch-data dup length 5 sub get}
28     B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128 ch-data dup
29     length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub get 127 sub}B
30     /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type
31     /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp
32     0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2
33     index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff
34     ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice
35     ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{
36     ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn
37     /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1
38     sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{cc 1 add D
39     }B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin 0 0
40     moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul add
41     .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage
42     userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
43     known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
44     /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
45     65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
46     0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
47     {}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
48     getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
49     ifelse}{false}ifelse end{{gsave TR -.1 -.1 TR 1 1 scale rulex ruley
50     false RMat{BDot}imagemask grestore}}{{gsave TR -.1 -.1 TR rulex ruley
51     scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave
52     transform round exch round exch itransform moveto rulex 0 rlineto 0
53     ruley neg rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta
54     0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}
55     B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{
56     3 M}B /k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p
57     -1 w}B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{
58     3 2 roll p a}B /bos{/SS save N}B /eos{SS restore}B end
59     %%EndProcSet
60     %%BeginProcSet: texps.pro
61     TeXDict begin /rf{findfont dup length 1 add dict begin{1 index /FID ne 2
62     index /UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
63     exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics
64     exch def dict begin Encoding{exch dup type /integertype ne{pop pop 1 sub
65     dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def}
66     ifelse}forall Metrics /Metrics currentdict end def[2 index currentdict
67     end definefont 3 -1 roll makefont /setfont load]cvx def}def
68     /ObliqueSlant{dup sin S cos div neg}B /SlantFont{4 index mul add}def
69     /ExtendFont{3 -1 roll mul exch}def /ReEncodeFont{/Encoding exch def}def
70     end
71     %%EndProcSet
72     TeXDict begin 39158280 55380996 1000 300 300
73     (/Net/www0/W3/hypertext/WWW/Addressing/URL/url-spec.dvi)
74     @start /Fa 4 107 df<07E01FF83FFC7FFE7FFEFFFFFFFFFFFFFFFFFFFFFFFF7FFE7FFE
75     3FFC1FF807E010107E9115>15 D<001F00FF01F003E003C003C003C003C003C003C003C0
76     03C003C003C003C003C003C007800F00FE00F800FE000F00078003C003C003C003C003C0
77     03C003C003C003C003C003C003C003C003E001F000FF001F10297E9E15>102
78     D<F800FF000F8007C003C003C003C003C003C003C003C003C003C003C003C003C003C001
79     E000F0007F001F007F00F001E003C003C003C003C003C003C003C003C003C003C003C003
80     C003C007C00F80FF00F80010297E9E15>I<C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0
81     C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C002297B9E0C>106
82     D E /Fb 81[25 52[23 23 1[23 25 14 23 16 1[25 25 25 37
83     12 2[12 25 25 14 23 25 23 1[23 11[30 25 28 30 1[28 32
84     30 1[25 2[12 1[32 1[28 10[14 14[24 43[{}34 41.666668
85     /Helvetica-Bold rf /Fc 133[25 25 25 25 25 25 25 25 25
86     1[25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 1[25
87     1[25 1[25 1[25 1[25 1[25 25 25 25 2[25 25 25 25 1[25
88     25 1[25 25 25 25 25 25 25 25 25 25 1[25 1[25 25 1[25
89     25 25 25 25 25 25 25 25 25 25 25 25 1[25 25 2[25 25 2[25
90     33[{}71 41.666668 /Courier rf /Fd 138[33 20 23 27 1[33
91     30 33 50 3[17 33 1[20 27 33 27 33 30 14[43 12[40 3[43
92     12[30 30 30 30 2[15 6[20 39[{}25 59.999973 /Times-Bold
93     rf /Fe 3 63 df<70F8F8F87005057D840C>58 D<0000038000000F0000003C000000F0
94     000003C000000F0000003C000000F0000003C000000F0000003C000000F0000000F00000
95     003C0000000F00000003C0000000F00000003C0000000F00000003C0000000F00000003C
96     0000000F000000038019187D9520>60 D<E0000000780000001E0000000780000001E000
97     0000780000001E0000000780000001E0000000780000001E00000007800000078000001E
98     00000078000001E00000078000001E00000078000001E00000078000001E000000780000
99     00E000000019187D9520>62 D E /Ff 81[23 51[18 21 21 30
100     21 23 14 16 18 23 23 21 23 35 12 23 1[12 23 21 14 18
101     23 18 23 21 7[30 1[42 1[30 28 23 30 1[25 32 30 39 28
102     32 21 16 32 1[25 28 30 30 28 30 3[24 1[14 14 21 21 21
103     21 21 21 21 21 21 21 1[10 14 10 2[14 14 14 39[{}66 41.666668
104     /Times-Bold rf /Fg 134[25 25 3[14 1[17 1[25 25 25 39
105     4[25 1[17 22 25 22 1[22 19[44 4[36 36 13[25 25 3[25 1[25
106     25 4[12 44[{}23 50.000000 /Times-Roman rf /Fh 138[36
107     20 28 24 2[36 36 56 3[20 2[24 32 1[32 1[32 11[52 2[48
108     5[44 76[{}15 72.000000 /Times-Roman rf /Fi 81[30 52[28
109     28 39 1[30 17 28 19 1[30 30 30 44 14 28 14 14 30 30 17
110     28 30 28 30 28 9[47 1[36 30 33 36 1[33 1[36 41 30 2[14
111     36 39 30 33 1[36 36 36 7[28 28 28 28 28 28 28 28 28 28
112     1[14 1[14 44[{}53 50.000000 /Helvetica-Bold rf /Fj 138[37
113     20 33 23 2[37 37 53 3[17 2[20 33 1[33 1[33 11[43 2[43
114     5[37 76[{}15 59.999973 /Helvetica-Bold rf /Fk 59[14 14
115     20[23 51[18 21 21 30 21 21 12 16 14 21 21 21 21 32 12
116     21 12 12 21 21 14 18 21 18 21 18 3[14 12 14 25 30 30
117     39 30 30 25 23 28 30 23 30 30 37 25 30 16 14 30 30 23
118     25 30 28 28 30 38 18 1[23 1[12 12 21 21 21 21 21 21 21
119     21 21 21 12 10 14 10 23 21 14 14 14 32 35 21 21 17 14
120     33[{}88 41.666668 /Times-Roman rf end
121     %%EndProlog
122     %%BeginSetup
123     %%Feature: *Resolution 300dpi
124     TeXDict begin
125     %%PaperSize: a4
126    
127     %%EndSetup
128     %%Page: 1 1
129     1 0 bop -5 315 a Fk(Uniform)10 b(Resource)g(Locators)1144
130     b(T)o(im)10 b(Berners-Lee)-5 373 y(draft-ietf-uri-url-0)o(3.txt)o(,ps)
131     1352 b(CERN)-5 431 y(Expires)10 b(1)h(July)e(1994)1378
132     b(1)10 b(Jan)h(1994)548 605 y Fj(Unif)o(orm)16 b(Resour)o(ce)h(Locator)
133     o(s)7 781 y Fi(A)d(unifying)g(syntax)f(f)o(or)h(the)g(e)o(xpression)g
134     (of)g(names)g(and)g(addresses)f(of)h(objects)f(on)i(the)845
135     839 y(netw)o(ork)930 2968 y Fk(1)p eop
136     %%Page: 0 2
137     0 1 bop 540 1251 a Fh(Uniform)17 b(Resource)g(Locators)641
138     1444 y Fg(Generated)12 b(from)f(the)i(Hyperte)o(xt)782
139     1576 y(March)f(28,)h(1994)p eop
140     %%Page: 1 3
141     1 2 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
142     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
143     2 v -5 313 a Fi(T)l(able)k(of)g(Contents)-5 453 y Ff(1)42
144     b(About)10 b(this)g(document)1435 b(1)153 513 y Fk(1.0.1)50
145     b(Status)10 b(of)g(this)f(memo)35 b Fe(:)21 b(:)f(:)g(:)h(:)f(:)g(:)g
146     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
147     h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71 b Fk(1)58
148     574 y(1.1)43 b(Recommendations)28 b Fe(:)20 b(:)h(:)f(:)g(:)g(:)h(:)f
149     (:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)
150     g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71
151     b Fk(1)153 634 y(1.1.1)50 b(URL)10 b(syntax)34 b Fe(:)21
152     b(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g
153     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
154     h(:)f(:)g(:)g(:)71 b Fk(1)153 695 y(1.1.2)50 b(Encoding)9
155     b(prohibited)f(characters)42 b Fe(:)20 b(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)
156     h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h
157     (:)f(:)g(:)g(:)71 b Fk(2)58 756 y(1.2)43 b(Speci\256c)11
158     b(Schemes)47 b Fe(:)20 b(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)
159     h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h
160     (:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71 b Fk(2)153
161     816 y(1.2.1)50 b(FTP)36 b Fe(:)20 b(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f
162     (:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)
163     g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71
164     b Fk(3)153 877 y(1.2.2)50 b(HTTP)36 b Fe(:)21 b(:)f(:)g(:)h(:)f(:)g(:)g
165     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
166     h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g
167     (:)71 b Fk(4)153 937 y(1.2.3)50 b(Gopher)14 b Fe(:)21
168     b(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h
169     (:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)
170     h(:)f(:)g(:)h(:)f(:)g(:)g(:)71 b Fk(4)153 998 y(1.2.4)50
171     b(Mailto)27 b Fe(:)21 b(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g
172     (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)
173     g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71 b
174     Fk(7)153 1059 y(1.2.5)50 b(Ne)o(ws)14 b Fe(:)20 b(:)h(:)f(:)g(:)h(:)f
175     (:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)
176     f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f
177     (:)g(:)g(:)71 b Fk(7)153 1119 y(1.2.6)50 b(Prospero)24
178     b Fe(:)c(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
179     h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g
180     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71 b Fk(8)153 1180 y(1.2.7)50
181     b(T)m(elnet,)11 b(rlogin,)e(tn3270)37 b Fe(:)20 b(:)g(:)h(:)f(:)g(:)g
182     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
183     h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71 b Fk(8)153
184     1241 y(1.2.8)50 b(W)-5 b(AIS)38 b Fe(:)21 b(:)f(:)g(:)h(:)f(:)g(:)g(:)h
185     (:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)
186     f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71
187     b Fk(8)153 1301 y(1.2.9)50 b(Re)o(gistration)9 b(of)h(naming)f(schemes)
188     28 b Fe(:)20 b(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g
189     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)71
190     b Fk(8)58 1362 y(1.3)43 b(BNF)10 b(for)g(speci\256c)h(URL)g(schemes)43
191     b Fe(:)20 b(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h
192     (:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)
193     71 b Fk(9)58 1422 y(1.4)43 b(Security)10 b(considerations)44
194     b Fe(:)20 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g
195     (:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)
196     h(:)f(:)g(:)g(:)51 b Fk(10)58 1483 y(1.5)43 b(Ackno)o(wledgements)d
197     Fe(:)21 b(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f
198     (:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)
199     f(:)g(:)h(:)f(:)g(:)g(:)51 b Fk(11)-5 1585 y Ff(2)42
200     b(A)o(ppendices)1583 b(12)58 1646 y Fk(2.1)43 b(Wrappers)11
201     b(for)f(URIs)g(in)f(plain)h(te)o(xt)36 b Fe(:)20 b(:)h(:)f(:)g(:)g(:)h
202     (:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)h(:)
203     f(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)51 b Fk(12)-5
204     1748 y Ff(3)42 b(Refer)o(ences)1596 b(13)-5 1850 y(4)42
205     b(Editor')n(s)10 b(addr)o(ess)1498 b(14)-5 2968 y Fk(Berners-Lee)1674
206     b(i)p eop
207     %%Page: 2 4
208     2 3 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
209     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
210     v -5 2968 a(ii)1715 b(URI)10 b(WG)p eop
211     %%Page: 1 5
212     1 4 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
213     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
214     2 v -5 313 a Fd(1.)15 b(About)g(this)g(document)-5 415
215     y Fk(This)c(document)f(speci\256es)i(a)f(Uniform)f(Resource)h(Locator)g
216     (\(URL\),)g(the)f(syntax)g(and)h(semantics)g(of)f(formalized)h
217     (information)-5 465 y(for)f(location)f(and)i(access)h(of)e(resources)h
218     (on)f(the)g(Internet.)-5 526 y(This)j(document)g(was)h(written)d(by)i
219     (the)g(URI)g(working)e(group)h(of)h(the)g(Internet)f(Engineering)g(T)m
220     (ask)i(F)o(orce.)24 b(Comments)14 b(may)-5 576 y(be)j(addressed)g(to)e
221     (the)i(editor)n(,)g(T)o(im)f(Berners-Lee)i Fe(<)p Fk
222     (timbl@info.cern.ch)p Fe(>)p Fk(,)g(or)d(to)h(the)g(URI-WG)g
223     Fe(<)p Fk(uri@b)o(un)o(yip.com)p Fe(>)p Fk(.)-5 625 y(Discussions)10
224     b(of)g(the)g(group)f(are)i(archi)o(v)o(ed)g(at)45 709
225     y Fc(<http://www.acl.lanl.gov/URI/archive/ur)o(i-archive.i)o
226     (ndex.html>)-5 852 y Fk(This)f(document)h(is)f(bound)f(by)h(the)g
227     (Requirements)g(Speci\256cation)g(in)g(preparation.)-5
228     913 y(The)k(work)e(is)h(deri)o(v)o(ed)g(from)f(concepts)i(introduced)d
229     (by)i(the)g(W)m(orld-W)n(ide)e(W)m(eb)j(global)d(information)h
230     (initiati)o(v)o(e,)g(whose)h(use)-5 963 y(of)h(such)g(objects)g(dates)h
231     (from)f(1990)f(and)h(is)g(described)g(in)g("Uni)o(v)o(ersal)g(Resource)
232     g(identifeirs)f(for)h(the)g(W)m(orld-W)n(ide)f(W)m(eb",)-5
233     1013 y(RFCXXX)d(.)-5 1073 y(This)g(document)h(is)f(a)o(v)o(ailable)g
234     (in)g(hyperte)o(xt)f(form,)h(with)g(links)f(to)g(background)h
235     (information,)f(as:)45 1156 y Fc
236     (<http://info.cern.ch/hypertext/WWW/Addr)o(essing/URL/)o(Overview.h)o
237     (tml>)-5 1300 y Fk(.)-5 1407 y Fi(1.0.1)49 b(Status)13
238     b(of)h(this)f(memo)-5 1495 y Fk(This)d(document)g(is)g(an)h(Internet)e
239     (Draft.)15 b(Internet)9 b(Drafts)h(are)h(working)d(documents)i(of)g
240     (the)g(Internet)f(Engineering)h(T)m(ask)g(F)o(orce)-5
241     1545 y(\(IETF\),)16 b(its)e(Areas,)j(and)e(its)f(W)m(orking)f(Groups.)
242     29 b(Note)14 b(that)h(other)f(groups)g(may)h(also)g(distrib)o(ute)e
243     (working)g(documents)h(as)-5 1595 y(Internet)c(Drafts.)-5
244     1656 y(Internet)15 b(Drafts)h(are)h(working)c(documents)j(v)o(alid)f
245     (for)g(a)i(maximum)f(of)g(six)f(months.)31 b(Internet)15
246     b(Drafts)h(may)g(be)g(updated,)-5 1706 y(replaced,)g(or)d(obsoleted)g
247     (by)g(other)h(documents)f(at)h(an)o(y)g(time.)25 b(It)14
248     b(is)f(not)g(appropriate)g(to)g(use)h(Internet)f(Drafts)g(as)i
249     (reference)-5 1755 y(material)c(or)f(to)f(cite)i(them)f(other)g(than)g
250     (as)h(a)f("working)f(draft")g(or)h("work)f(in)h(progress".)-5
251     1816 y(Distrib)o(ution)d(of)j(this)g(document)g(is)g(unlimited.)-5
252     1923 y Fi(1.1)49 b(Recommendations)-5 2021 y Fk(This)9
253     b(section)g(describes)g(the)g(syntax)g(for)f("Uniform)g(Resource)i
254     (Locators")f(\(URLs\):)14 b(that)8 b(is,)h(basically)g(physical)f
255     (addresses)i(of)-5 2070 y(objects)e(which)g(are)g(retrie)o(v)o(able)g
256     (using)f(protocols)g(already)h(deployed)f(on)h(the)f(net.)15
257     b(The)8 b(generic)h(syntax)e(pro)o(vides)h(a)g(frame)o(work)-5
258     2120 y(for)i(ne)o(w)h(schemes)h(for)d(names)j(to)d(be)i(resolv)o(ed)f
259     (using)g(as)h(yet)f(unde\256ned)g(protocols.)-5 2181
260     y(The)j(syntax)f(is)f(described)i(in)e(two)g(parts.)21
261     b(Firstly)m(,)11 b(we)i(gi)o(v)o(e)f(the)g(syntax)g(rules)f(of)h(a)h
262     (completely)e(speci\256ed)i(name;)h(secondly)m(,)-5 2231
263     y(we)d(gi)o(v)o(e)f(the)g(rules)g(under)g(which)g(parts)g(of)g(the)g
264     (name)i(may)e(be)h(omitted)e(in)h(a)h(well-de\256ned)f(conte)o(xt.)-5
265     2337 y Fi(1.1.1)49 b(URL)14 b(syntax)-5 2426 y Fk(A)g(complete)g(URL)g
266     (consists)f(of)h(a)g(naming)f(scheme)j(speci\256er)e(follo)o(wed)e(by)i
267     (a)g(string)f(whose)g(format)h(is)f(a)i(function)d(of)h(the)-5
268     2476 y(naming)h(scheme.)29 b(F)o(or)14 b(locators)g(of)g(information)e
269     (on)i(the)g(internet,)g(a)h(common)f(syntax)g(is)g(used)g(for)g(the)g
270     (IP)g(address)h(part.)-5 2526 y(A)e(BNF)g(description)e(of)i(the)f(URL)
271     h(syntax)g(is)f(gi)o(v)o(en)h(in)f(an)h(a)g(later)g(section.)22
272     b(The)14 b(components)e(are)i(as)f(follo)o(ws.)22 b(Fragment)-5
273     2575 y(identi\256ers)10 b(and)g(partial)f(URLs)i(are)g(not)e(in)n(v)o
274     (olv)o(ed)h(in)g(the)g(basic)h(URL)f(de\256nition.)-5
275     2674 y Fb(PrePre\256x)-5 2762 y Fk(T)m(o)f(be)h(a)f(Uniform)f(Resource)
276     i(Locator)f(as)h(currently)e(de\256ned)h(by)g(the)g(URI)g(working)e
277     (group,)h(the)h(whole)g(string)f(must)h(start)f(with)-5
278     2812 y(a)j(constant)e(pre\256x)g("URL:".)15 b(Note)10
279     b(that)f(to)g(sa)o(v)o(e)i(space)g(in)e(this)g(document,)h(some)h(URLs)
280     f(may)g(ha)o(v)o(e)h(been)f(quoted)f(throughout)-5 2862
281     y(without)g(this)g(prepre\256x.)-5 2968 y(Berners-Lee)1665
282     b(1)p eop
283     %%Page: 2 6
284     2 5 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
285     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
286     v -5 313 a Fb(Scheme)-5 403 y Fk(W)n(ithin)f(the)g(URL)h(of)f(a)h
287     (object,)g(the)g(\256rst)f(element)h(is)g(the)f(name)i(of)e(the)h
288     (scheme,)h(separated)g(from)e(the)h(rest)f(of)h(the)f(object)g(by)h(a)
289     -5 452 y(colon.)k(The)c(rest)f(of)g(the)g(URL)h(follo)o(ws)d(the)j
290     (colon)e(in)h(a)h(format)f(depending)f(on)h(the)g(scheme.)-5
291     552 y Fb(Internet)i(pr)o(otocol)h(par)q(ts)-5 641 y Fk(Those)h(schemes)
292     i(which)d(refer)h(to)f(internet)f(protocols)g(mostly)h(ha)o(v)o(e)i(a)f
293     (common)g(syntax)f(for)g(the)g(rest)h(of)f(the)h(object)f(name.)-5
294     691 y(This)e(starts)f(with)f(a)i(double)e(slash)i("//")e(to)h(indicate)
295     g(its)f(presence,)k(and)d(continues)g(until)e(the)i(follo)o(wing)e
296     (slash)j("/".)k(W)n(ithin)9 b(that)-5 741 y(section)h(are)-5
297     812 y Ff(An)h(optional)d(user)k(name,)j Fk(if)c(required)g(\(as)i(it)e
298     (is)h(with)e(a)j(fe)o(w)f(FTP)h(serv)o(ers\).)21 b(The)12
299     b(password,)g(is)g(present,)h(follo)o(ws)d(the)i(user)423
300     862 y(name,)i(separated)g(from)e(it)g(by)g(a)h(colon;)f(the)h(user)f
301     (name)i(and)f(optional)d(password)i(are)i(follo)o(wed)423
302     912 y(by)c(a)i(commercial)g(at)e(sign)h("@".)17 b(The)11
303     b(user)h(of)e(user)h(name)h(and)f(passwords)g(which)f(are)i(public)d
304     (is)423 962 y(discouraged.)-5 1016 y Ff(The)i(inter)o(net)g(domain)e
305     (name)i Fk(of)g(the)g(host)f(in)h(RFC1037)e(format)i(\(or)n(,)h
306     (optionally)d(and)i(less)g(advisably)m(,)h(the)f(IP)g(address)h(as)g(a)
307     423 1065 y(set)e(of)g(four)g(decimal)g(digits\))-5 1119
308     y Ff(The)h(port)f(number)l(,)116 b Fk(if)9 b(it)h(is)g(not)f(the)h
309     (default)g(number)g(for)g(the)g(protocol,)f(is)h(gi)o(v)o(en)g(in)g
310     (decimal)g(notation)f(after)h(a)h(colon.)-5 1173 y Ff(Path)345
311     b Fk(The)14 b(rest)f(of)g(the)h(locator)f(is)g(kno)o(wn)f(as)j(the)e
312     ("path".)24 b(It)13 b(may)h(de\256ne)g(details)f(of)g(ho)o(w)g(the)h
313     (client)423 1223 y(should)8 b(communicate)j(with)e(the)h(serv)o(er)n(,)
314     h(including)d(information)g(to)h(be)h(passed)h(transparently)e(to)423
315     1273 y(the)h(serv)o(er)h(without)d(an)o(y)j(processing)f(by)g(the)g
316     (client.)-5 1344 y(The)i(path)e(is)h(interpreted)f(in)g(a)i(manner)f
317     (dependent)g(on)f(the)h(scheme)i(being)d(used.)17 b(Generally)m(,)12
318     b(the)e(slash)h("/")g(\(ASCII)f(2F)h(he)o(x\))-5 1394
319     y(denotes)f(a)h(le)o(v)o(el)g(in)e(a)i(hierarchical)f(structure,)g(the)
320     h(higher)e(le)o(v)o(el)h(part)g(to)g(the)g(left)g(of)g(the)g(slash.)-5
321     1502 y Fi(1.1.2)49 b(Encoding)16 b(pr)o(ohibited)f(character)o(s)-5
322     1591 y Fk(When)9 b(a)h(system)f(uses)g(a)h(local)e(addressing)h
323     (scheme,)i(it)d(is)g(useful)h(to)f(pro)o(vide)g(a)h(mapping)f(from)h
324     (local)g(addresses)h(into)d(URLs)i(so)-5 1641 y(that)g(references)j(to)
325     d(objects)g(within)f(the)i(addressing)f(scheme)j(may)e(be)g(referred)g
326     (to)f(globally)m(,)g(and)h(possibly)e(accessed)k(through)-5
327     1691 y(gate)o(way)e(serv)o(ers.)-5 1752 y(An)o(y)18 b(mapping)f(scheme)
328     j(may)e(be)g(de\256ned)h(pro)o(vided)d(it)h(is)h(unambiguous,)h(re)o(v)
329     o(ersible,)h(and)e(pro)o(vides)f(v)o(alid)g(URLs.)39
330     b(It)-5 1802 y(is)17 b(recommended)i(that)e(where)g(hierarchical)h
331     (aspects)g(to)f(the)g(local)g(naming)g(scheme)i(e)o(xist,)g(the)o(y)f
332     (be)f(mapped)h(onto)e(the)-5 1852 y(hierarchical)11 b(URL)f(path)g
333     (syntax)g(in)f(order)h(to)g(allo)o(w)f(the)i(partial)e(form)h(to)g(be)g
334     (used.)-5 1913 y(The)f(follo)o(wing)d(encoding)i(method)g(shall)g(be)h
335     (used)g(for)f(mapping)g(W)-5 b(AIS,)9 b(FTP)-5 b(,)10
336     b(Prospero)e(and)g(Gopher)g(addresses)i(onto)d(URLs.)-5
337     1963 y(Where)14 b(the)e(local)g(naming)g(scheme)j(uses)e(characters)g
338     (which)g(are)g(not)f(allo)o(wed)g(in)g(the)g(URL,)h(these)g(may)g(be)g
339     (represented)g(in)-5 2012 y(the)d(URL)f(by)h(a)g(percent)g(sign)f
340     ("\045")g(follo)o(wed)f(by)h(two)g(he)o(xadecimal)i(digits)d(\(0-9,)h
341     (A-F\))h(gi)o(ving)e(the)h(ISO)h(Latin)f(1)h(code)g(for)f(that)-5
342     2062 y(character)n(.)16 b(Character)11 b(codes)g(other)f(than)g(those)g
343     (allo)o(wed)f(by)h(the)g(syntax)g(shall)g(not)f(be)i(used)f(unencoded)h
344     (in)e(a)i(URL.)-5 2123 y(The)k(same)g(encoding)f(method)f(may)i(be)f
345     (used)h(for)e(encoding)h(characters)h(whose)f(use,)i(although)c
346     (technically)i(allo)o(wed)f(in)h(a)-5 2173 y(URL,)e(would)f(be)h
347     (unwise)f(due)h(to)f(problems)g(of)h(corruption)d(by)j(imperfect)f
348     (gate)o(ways)h(or)f(misrepresentation)g(due)h(to)f(the)h(use)-5
349     2223 y(of)h(v)o(ariant)f(character)h(sets,)h(or)f(which)f(would)f
350     (simply)h(be)g(a)o(wkward)h(in)f(a)h(gi)o(v)o(en)g(en)n(vironment.)21
351     b(Because)14 b(a)f(\045)g(sign)f(always)-5 2273 y(indicates)g(an)g
352     (encoded)g(character)n(,)i(a)e(URL)f(may)i(be)f(made)g(safer)h(simply)d
353     (by)i(encoding)f(an)o(y)h(characters)h(considered)e(unsafe,)-5
354     2323 y(while)k(lea)o(ving)g(already)g(encoded)h(characters)g(still)e
355     (encoded.)31 b(Similarly)m(,)16 b(in)e(cases)j(where)f(a)g(lar)o(ger)f
356     (set)h(of)f(characters)h(is)-5 2372 y(acceptable,)c(\045)e(signs)g(can)
357     h(be)f(selecti)o(v)o(ely)h(and)f(re)o(v)o(ersibly)g(e)o(xpanded.)-5
358     2480 y Fi(1.2)49 b(Speci\256c)14 b(Schemes)-5 2579 y
359     Fk(The)i(mapping)e(for)g(some)h(e)o(xisting)f(standard)g(and)h(e)o
360     (xperimental)g(protocols)e(is)i(outlined)d(in)j(the)f(BNF)h(syntax)f
361     (de\256nition)f(.)-5 2629 y(Notes)d(on)g(particular)g(protocols)f
362     (follo)o(w)m(.)14 b(The)d(schemes)h(co)o(v)o(ered)f(are)-5
363     2700 y Ff(http)354 b Fk(Hyperte)o(xt)9 b(T)o(ransfer)i(Protocol)-5
364     2754 y Ff(ftp)377 b Fk(File)10 b(T)o(ransfer)g(protocol)-5
365     2808 y Ff(gopher)304 b Fk(The)11 b(Gopher)e(protocol)-5
366     2862 y Ff(mailto)313 b Fk(Electronic)10 b(mail)g(address)-5
367     2968 y(2)1718 b(URI)10 b(WG)p eop
368     %%Page: 3 7
369     3 6 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
370     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
371     2 v -5 313 a Ff(mid)358 b Fk(Message)11 b(identi\256ers)f(for)f
372     (electronic)i(mail)-5 367 y Ff(cid)375 b Fk(Content)9
373     b(identi\256ers)g(for)h(MIME)g(body)f(part)-5 421 y Ff(news)341
374     b Fk(Usenet)10 b(ne)o(ws)-5 475 y Ff(nntp)345 b Fk(Usenet)10
375     b(ne)o(ws)h(for)f(local)g(NNTP)h(access)h(only)-5 529
376     y Ff(pr)o(osper)o(o)272 b Fk(Access)12 b(using)d(the)h(prospero)g
377     (protocols)-5 583 y Ff(telnet)h(,)g(rlogin)e(and)h(tn3270)g
378     Fk(Reference)h(to)f(interacti)o(v)o(e)g(sessions)-5 637
379     y Ff(wais)349 b Fk(W)n(ide)10 b(Area)h(Information)e(Serv)o(ers)-5
380     708 y(Other)h(schemes)i(may)f(be)g(speci\256ed)g(by)e(future)h
381     (speci\256cations)-5 769 y(Ne)o(w)h(schemes)h(may)f(be)f(re)o(gistered)
382     h(at)f(a)h(later)f(time.)-5 877 y Fi(1.2.1)49 b(FTP)-5
383     966 y Fk(The)12 b(ftp:)k(pre\256x)11 b(indicates)g(that)g(the)g(FTP)h
384     (protocol)d(is)i(used,)h(as)g(de\256ned)g(in)f(RFC957)f(or)h(an)o(y)g
385     (successor)n(.)19 b(The)12 b(port)f(number)n(,)-5 1016
386     y(if)f(present,)h(gi)o(v)o(es)f(the)g(port)f(of)h(the)g(FTP)h(serv)o
387     (er)g(if)f(not)g(the)g(FTP)h(default.)-5 1116 y Ff(User)k(name)e(and)g
388     (password)42 b Fk(The)14 b(syntax)f(allo)o(ws)g(for)f(the)i(inclusion)d
389     (of)i(a)h(user)g(name)g(and)g(e)o(v)o(en)g(a)g(password)f(for)f(those)
390     -5 1165 y(systems)d(which)f(do)g(not)f(use)i(the)f(anon)o(ymous)g(FTP)h
391     (con)n(v)o(ention.)14 b(The)9 b(default,)f(ho)o(we)o(v)o(er)n(,)h(if)f
392     (no)g(user)g(or)g(password)g(is)g(supplied,)-5 1215 y(will)j(be)h(to)f
393     (use)h(that)f(con)n(v)o(ention,)h(viz.)20 b(that)11 b(the)h(user)g
394     (name)h(is)e("anon)o(ymous")h(and)f(the)h(password)f(the)h(user')n(s)g
395     (Internet-style)-5 1265 y(mail)e(address)h(.)-5 1326
396     y(Where)j(possible,)e(this)g(mail)g(address)h(should)f(correspond)g(to)
397     g(a)h(usable)f(mail)h(address)g(for)f(the)g(user)n(,)i(and)f
398     (preferably)f(gi)o(v)o(e)h(a)-5 1376 y(DNS)f(host)f(name)i(which)e
399     (resolv)o(es)h(to)f(the)h(IP)f(address)i(of)e(the)g(client.)19
400     b(Note)12 b(that)f(serv)o(ers)h(currently)f(v)o(ary)g(in)g(their)g
401     (treatment)-5 1426 y(of)f(the)g(anon)o(ymous)g(password.)-5
402     1525 y Ff(Path)41 b Fk(The)17 b(FTP)f(protocol)f(allo)o(ws)g(for)g(a)h
403     (sequence)h(of)f(CWD)g(commands)g(\(change)h(working)d(directory\))g
404     (and)i(a)g(TYPE)-5 1575 y(command)11 b(prior)e(to)h(service)h(commands)
405     g(such)g(as)g(RETR)f(\(retrie)o(v)o(e\))g(or)g(NLIST)h(\(etc\))g(which)
406     f(actually)f(access)k(a)e(\256le.)-5 1636 y(The)h(ar)o(guments)f(of)f
407     (an)o(y)h(CWD)g(commands)h(are)f(successi)o(v)o(e)i(se)o(gment)e(parts)
408     g(of)f(the)h(URL)g(delimited)e(by)i(slash,)g(and)g(the)f(\256nal)-5
409     1686 y(se)o(gment)16 b(is)e(suitable)g(as)h(the)g(\256lename)g(ar)o
410     (gument)g(to)f(the)g(RETR)h(command)h(for)e(retrie)o(v)o(al)g(or)g(the)
411     g(directory)g(ar)o(gument)h(to)-5 1736 y(NLIST)m(.)-5
412     1797 y(F)o(or)10 b(some)g(\256le)g(systems)g(\(Unix)e(in)h
413     (particular\),)g(the)g("/")g(used)h(to)f(denote)g(the)g(hierarchical)h
414     (structure)e(of)i(the)f(URL)g(corresponds)-5 1847 y(to)h(the)g
415     (delimiter)f(used)h(to)f(construct)h(a)g(\256le)g(name)h(hierarchy)m(,)
416     g(and)f(thus,)g(the)f(\256lename)j(will)c(look)h(the)h(same)h(as)g(the)
417     f(URL)g(path.)-5 1896 y(This)g(does)h(NO)n(T)g(mean)g(that)f(the)g(URL)
418     g(is)g(a)h(Unix)f(\256lename.)-5 1996 y Ff(Note:)19 b(Retrie)o(ving)12
419     b(subsequent)i(URLs)e(fr)o(om)h(the)f(same)g(host)42
420     b Fk(There)13 b(is)f(no)g(common)g(hierarchical)h(model)f(to)f(the)i
421     (FTP)-5 2046 y(protocol,)f(so)h(if)e(a)i(directory)f(change)h(command)g
422     (has)g(been)g(gi)o(v)o(en,)g(it)f(is)g(impossible)f(in)h(general)h(to)f
423     (deduce)h(what)f(sequence)-5 2096 y(should)e(be)h(gi)o(v)o(en)f(to)h
424     (na)o(vigate)f(to)g(another)h(directory)e(for)i(a)g(second)g(retrie)o
425     (v)o(al,)g(if)f(the)h(paths)f(are)i(dif)o(ferent.)j(The)d(only)e
426     (reliable)-5 2145 y(algorithm)f(is)h(to)g(disconnect)g(and)g
427     (reestablish)g(the)g(control)f(connection.)-5 2245 y
428     Ff(Data)g(type)42 b Fk(The)10 b(data)g(content)f(type)h(of)f(a)h
429     (\256le)g(can)h(only)m(,)e(in)g(the)h(general)g(FTP)g(case,)i(be)e
430     (deduced)g(from)f(the)h(name,)h(normally)-5 2295 y(the)i(suf)o(\256x)f
431     (of)h(the)f(name.)24 b(This)12 b(is)h(not)f(standardized.)22
432     b(An)13 b(alternati)o(v)o(e)f(is)g(for)h(it)f(to)g(be)h(transferred)f
433     (in)g(information)f(outside)-5 2344 y(the)g(URL.)g(A)g(suitable)f(FTP)i
434     (transfer)e(type)h(\(for)f(e)o(xample)i(binary)e("I")g(or)h(te)o(xt)f
435     ("A"\))h(must)f(in)h(turn)e(be)i(deduced)h(from)e(the)h(data)-5
436     2394 y(content)e(type.)15 b(It)9 b(is)g(recommended)i(that)e(con)n(v)o
437     (entions)g(for)g(suf)o(\256x)o(es)h(of)f(public)f(archi)o(v)o(es)j(be)e
438     (established,)h(b)o(ut)f(it)f(is)i(outside)e(the)-5 2444
439     y(scope)j(of)f(this)f(standard.)-5 2505 y(An)i(FTP)h(URL)f(may)g
440     (optionally)e(specify)i(the)f(FTP)i(data)f(transfer)g(type)g(by)f
441     (which)h(an)g(object)g(is)f(to)h(be)g(retrie)o(v)o(ed.)17
442     b(T)m(wo)11 b(of)f(the)-5 2555 y(methods)i(correspond)g(to)f(the)h(FTP)
443     h("Data)f(T)m(ypes")h(ASCII)e(and)h(IMA)n(GE)h(for)f(the)g(retrie)o(v)o
444     (al)f(of)h(a)g(document,)h(as)g(speci\256ed)g(in)-5 2605
445     y(FTP)e(by)f(the)g(TYPE)h(command)g(.)16 b(One)10 b(method)g(indicates)
446     g(directory)f(access.)-5 2666 y(The)i(data)g(type)f(is)g(speci\256ed)h
447     (by)f(a)g(suf)o(\256x)g(to)g(the)g(URL.)h(Possible)f(suf)o(\256x)o(es)g
448     (are:)-5 2737 y Ff(;type)h(=)f Fe(<)p Ff(type-code)p
449     Fe(>)59 b Fk(Use)11 b(FTP)g(type)e(as)i(gi)o(v)o(en)f(to)g(perform)g
450     (data)h(transfer)n(.)-5 2791 y Ff(;type=d)291 b Fk(Use)11
451     b(FTP)g(directory)e(list)g(commands)i(to)f(read)h(directory)e(])-5
452     2862 y(The)i(type)f(code)h(is)f(in)g(the)g(format)g(de\256ned)g(in)g
453     (RFC959.)-5 2968 y(Berners-Lee)1665 b(3)p eop
454     %%Page: 4 8
455     4 7 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
456     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
457     v -5 313 a Ff(T)m(ransfer)g(Mode)42 b Fk(Stream)11 b(Mode)g(is)f
458     (always)f(used.)-5 431 y Fi(1.2.2)49 b(HTTP)-5 525 y
459     Fk(The)8 b(HTTP)h(protocol)c(speci\256es)k(that)e(the)g(path)g(is)g
460     (handled)g(transparently)f(by)h(those)g(who)g(handle)g(URLs,)i(e)o
461     (xcept)f(for)f(the)g(serv)o(ers)-5 575 y(which)14 b(de-reference)i
462     (them.)27 b(The)15 b(path)f(is)g(passed)h(by)f(the)g(client)g(to)g(the)
463     g(serv)o(er)h(with)e(an)o(y)i(request,)h(b)o(ut)d(is)h(not)g(otherwise)
464     -5 625 y(understood)f(by)g(the)h(client.)25 b(The)15
465     b(fragmentid)e(part)g(is)h(not)f(sent)h(with)f(the)g(request.)26
466     b(The)15 b(search)g(part,)g(if)e(present,)i(is)f(sent.)-5
467     674 y(Spaces)e(and)e(control)f(characters)j(in)e(URLs)g(must)g(be)h
468     (escaped)h(for)d(transmission)h(in)f(HTTP)-5 b(.)-5 792
469     y Fi(1.2.3)49 b(Gopher)-5 886 y Fk(Gopher)11 b(selector)g(strings)f
470     (are,)j(in)d(general,)i(interpreted)e(as)i(a)g(sequence)g(of)f(8-bit)f
471     (bytes)g(which)h(may)h(contain)e(an)o(y)i(characters)-5
472     936 y(other)f(than)f(tab,)h(return,)g(or)f(linefeed.)17
473     b(It)11 b(is)f(necessary)j(to)d(encode)h(an)o(y)h(characters)g(disallo)
474     o(wed)e(in)g(a)i(URL,)f(including)e(spaces)-5 986 y(and)h(other)f
475     (binary)g(data)h(not)f(in)h(the)f(allo)o(wed)g(character)i(set,)g
476     (using)e(the)g(standard)h(con)n(v)o(ention)f(of)h(the)f("\045")h
477     (character)h(follo)o(wed)-5 1035 y(by)f(two)f(he)o(xadecimal)j(digits.)
478     -5 1100 y(Note)e(that)g(slash)g("/")g(in)g(gopher)g(selector)g(strings)
479     f(may)i(not)e(correspond)h(to)g(a)h(le)o(v)o(el)f(in)g(a)h
480     (hierarchical)f(structure.)-5 1164 y(The)h(format)f(of)g(a)h(gopher)f
481     (URL)g(is:)58 1265 y Fa(\017)20 b Fk(1.)15 b(A)c(single-character)f
482     (\256eld)g(to)g(denote)g(the)g(Gopher)g(type)g(of)g(the)g(resource)h
483     (to)e(which)h(the)g(URL)h(refers.)58 1355 y Fa(\017)20
484     b Fk(2.)e(The)12 b(gopher)f(selector)h(string.)17 b(Note)11
485     b(that)f(some)i(gopher)f(selector)h(strings)e(be)o(gin)h(with)f(a)i
486     (copy)f(of)g(the)g(gopher)g(type)99 1405 y(character)n(,)16
487     b(in)d(which)h(case)h(that)e(character)h(will)f(occur)h(twice)f
488     (consecuti)o(v)o(ely)m(.)25 b(Also)13 b(note)h(that)f(the)g(gopher)g
489     (selector)99 1455 y(string)e(may)j(be)f(an)g(empty)f(string)g(since)h
490     (this)f(is)g(ho)o(w)h(gopher)f(clients)g(refer)h(to)f(the)h(top-le)o(v)
491     o(el)e(directory)h(on)g(a)i(gopher)99 1504 y(serv)o(er)n(.)-5
492     1605 y(If)d(the)f(URL)h(does)g(not)f(refer)h(to)g(a)g(Gopher+)g(item)f
493     (and)h(if)g(there)f(is)h(no)f(gopher)h(search)g(string)f(then)g(parts)h
494     (3,)g(4,)g(5,)g(and)g(6)g(of)f(the)-5 1655 y(URL)h(are)g(optional)58
495     1756 y Fa(\017)20 b Fk(3.)15 b(An)9 b(encoded)h(tab)f(character)i
496     (\(\04509\))d(to)h(seperate)h(the)f(gopher)g(selector)h(string)e(from)h
497     (the)g(optional)f(search)i(string)e(\(see)99 1806 y(4)i(belo)o(w\).)58
498     1896 y Fa(\017)20 b Fk(4.)i(The)13 b(gopher)f(search)i(string.)21
499     b(If)12 b(the)g(URL)h(refers)g(to)f(a)h(search)h(to)e(be)h(submitted)e
500     (to)h(a)h(gopher)f(search)i(engine,)f(the)99 1946 y(search)e(string)e
501     (is)h(required.)15 b(Otherwise)10 b(this)f(is)i(an)f(empty)g(string.)58
502     2036 y Fa(\017)20 b Fk(5.)k(An)13 b(encoded)h(tab)f(character)h
503     (\(\04509\))e(to)h(seperate)h(the)f(gopher)g(search)h(string)e(from)h
504     (the)g(optional)e(gopher+)i(string)99 2086 y(\(see)e(6)e(belo)o(w\).)15
505     b([suggestion:)d(Note)e(that)f(if)g(the)g(URL)h(refers)g(to)f(a)i
506     (gopher+)e(item)h(and)f(does)h(not)f(ha)o(v)o(e)i(a)f(gopher)f(search)
507     99 2136 y(string,)g(there)i(will)e(be)h(two)f(encoded)i(tab)f
508     (characters)i(in)e(a)g(ro)o(w)m(.])58 2226 y Fa(\017)20
509     b Fk(6.)30 b(The)16 b(Gopher+)g(string.)29 b(Gopher+)15
510     b(strings)f(consist)h(of)g(a)h(one)f(or)g(more)h(characters)g(and)g
511     (are)g(used)f(to)g(represent)99 2276 y(information)10
512     b(required)h(for)g(retrie)o(v)o(al)g(of)g(the)h(Gopher+)f(item.)19
513     b(Gopher+)12 b(items)f(may)i(ha)o(v)o(e)f(alternate)g(vie)o(ws,)g
514     (arbitrary)99 2326 y(sets)f(of)e(attrib)o(utes,)h(and)g(may)g(ha)o(v)o
515     (e)h(electronic)f(forms)g(associated)h(with)e(them.)15
516     b(T)m(o)10 b(accomodate)i(the)e(v)o(arious)f(Gopher+)99
517     2375 y(objects,)14 b(the)f(Gopher+)h(string)e(in)h(the)g(URL)g(must)g
518     (accomodate)i(a)f(mapping)f(of)g(the)g(information)f(a)h(Gopher+)h
519     (client)99 2425 y(sends)d(to)g(the)f(serv)o(er)n(.)18
520     b(This)11 b(makes)h(this)e(section)h(a)g(bit)f(long)g(since)h(we)h
521     (basically)e(co)o(v)o(er)i(the)f(entire)g(Gopher+)g(protocol)99
522     2475 y(here.)-5 2576 y(When)g(a)g(Gopher)f(serv)o(er)i(returns)e(a)h
523     (directory)f(listing)e(to)i(a)h(client,)g(Gopher+)g(items)f(are)i
524     (tagged)e(with)g(either)g(a)h("+")g(\(denoting)-5 2626
525     y(gopher+)f(items\))g(or)f(a)h("?")h(\(denoting)d(items)i(which)f(ha)o
526     (v)o(e)i(a)f(+ASK)g(form)g(associated)h(with)d(them\).)15
527     b(A)10 b(Gopher+)g(string)f(which)-5 2676 y(is)14 b(only)e(a)j("+")f
528     (refers)g(to)f(the)h(default)e(vie)o(w)i(\(data)g(representation\))f
529     (of)g(the)h(item.)25 b(T)m(o)14 b(retrie)o(v)o(e)g(this)e(item)i(a)g
530     (gopher+)g(client)-5 2726 y(should)9 b(send)170 2812
531     y Fc(a_gopher_selector<tab>+<cr><lf>)-5 2968 y Fk(4)1718
532     b(URI)10 b(WG)p eop
533     %%Page: 5 9
534     5 8 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
535     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
536     2 v -5 313 a(to)g(the)g(gopher+)g(serv)o(er)n(.)-5 373
537     y(Note)g(that)f(items)g(which)g(ha)o(v)o(e)i(a)f(+ASK)g(asssociated)g
538     (with)f(them)h(\(ie.)k(Gopher+)c(items)g(tagged)f(with)f(a)i("?"\))g
539     (require)f(the)h(client)-5 423 y(to)i(fetch)g(the)f(item')n(s)h(+ASK)g
540     (attrib)o(ute)f(to)g(get)h(the)g(form)g(de\256nition,)f(and)h(then)f
541     (ask)i(the)e(user)i(to)e(\256ll)g(out)g(the)h(form)g(and)g(return)-5
542     473 y(the)g(user')n(s)g(responces)h(along)f(with)f(the)h(selector)g
543     (string)f(to)h(retrie)o(v)o(e)g(the)g(item.)21 b(Gopher+)12
544     b(clients)g(kno)o(w)f(ho)o(w)h(to)g(do)g(this)f(b)o(ut)-5
545     523 y(depend)i(on)f(the)h("?")g(tag)g(in)f(the)h(gopher+)f(item)h
546     (description)e(to)h(kno)o(w)g(when)h(to)f(handle)h(this)f(case.)24
547     b(The)13 b("?")h(is)e(used)h(in)f(the)-5 573 y(Gopher+)f(string)d(to)i
548     (be)h(consistent)e(with)g(Gopher+)i(protocol')n(s)d(use)j(of)f(this)f
549     (symbol.)-5 633 y(T)m(o)h(refer)h(to)e(the)h(Gopher+)g(attrib)o(utes)f
550     (of)g(an)i(item,)f(the)g(Gopher+)g(string)f(might)g(consist)g(of)h("!")
551     g(or)f("$".)15 b("!")10 b(refers)h(to)e(the)h(all)f(of)-5
552     682 y(a)j(gopher+)g(item')n(s)f(attrib)o(utes.)17 b("$")12
553     b(refers)g(to)f(all)g(the)g(item)h(attrib)o(utes)e(for)h(all)g(items)g
554     (in)g(a)h(Gopher)g(directory)m(.)18 b(T)m(o)11 b(retrie)o(v)o(e)h(an)-5
555     732 y(item)e(or)g(directory')n(s)f(attrib)o(utes,)h(a)h(gopher)e
556     (client)h(will)f(send:)170 814 y Fc(a_gopher_selector<tab>!<cr><lf>)-5
557     956 y Fk(for)h(items)g(or)170 1038 y Fc
558     (a_gopher_selector<tab>$<cr><lf>)-5 1180 y Fk(for)g(directories)g(to)f
559     (the)h(gopher+)g(serv)o(er)n(.)-5 1240 y(T)m(o)h(refer)h(to)e
560     (speci\256c)i(attrib)o(utes,)f(the)g(Gopher+)g(string)e(is)i("!attrib)o
561     (ute)p 1033 1240 13 2 v 14 w(name")h(or)e("$attrib)o(ute)p
562     1387 1240 V 14 w(name".)18 b(F)o(or)11 b(e)o(xample,)i(to)e(refer)-5
563     1290 y(to)k(the)f(attrib)o(ute)g(containing)f(the)i(abstract)g(of)g(an)
564     g(item,)h(the)f(Gopher+)g(string)e(would)h(be)h("!+ABSTRA)n(CT".)30
565     b(T)m(o)14 b(refer)i(to)-5 1340 y(se)o(v)o(eral)c(attrib)o(utes,)f
566     (clients)g(send)g(the)g(serv)o(er)h(the)f(attrib)o(ute)f(names)i
567     (seperated)g(by)f(spaces)h(so)f(it)g(is)g(neccesary)i(to)d(seperate)i
568     (the)-5 1390 y(attrib)o(ute)g(names)i(with)e(coded)i(spaces.)25
569     b(T)m(o)13 b(retrie)o(v)o(e)g(a)h(collection)e(of)g(item)h(attrib)o
570     (utes)f(speci\256ed)i(with)e(a)i(gopher+)f(string)e(of)-5
571     1440 y("!+ABSTRA)n(CT\04520+SMELL")g(a)g(gopher)f(client)g(would)e
572     (send)170 1522 y Fc(a_gopher_selector<tab>!+ABSTRACT)22
573     b(+SMELL<cr><lf>)-5 1664 y Fk(to)10 b(the)g(gopher)g(serv)o(er)n(.)-5
574     1724 y(Gopher+)h(allo)o(ws)f(for)g(optional)e(alternate)j(data)g
575     (representations)f(\(alternate)g(vie)o(ws\))g(of)h(items.)16
576     b(T)m(o)10 b(retrie)o(v)o(e)h(a)g(Gopher+)f(alter)o(-)-5
577     1774 y(nate)16 b(vie)o(w)m(,)i(the)d(gopher+)h(client)f(sends)g(the)h
578     (appropriate)f(vie)o(w)g(and)h(language)f(identi\256er)g(\(found)g(in)g
579     (the)g(item')n(s)g(+VIEW)-5 1823 y(attrib)o(ute\).)40
580     b(T)m(o)18 b(refer)h(to)g(a)g(speci\256c)h(Gopher+)e(alternate)h(vie)o
581     (w)m(,)j(the)c(URL)l(')n(s)h(Gopher+)g(string)e(would)g(be)j(in)e(the)g
582     (form)-5 1873 y("+vie)o(w)p 117 1873 V 15 w(name\04520language)p
583     448 1873 V 15 w(name".)e(F)o(or)9 b(e)o(xample,)i(a)f(gopher+)g(string)
584     e(of)h("+application/postscript)o(\04520)o(Es)p 1663
585     1873 V 13 w(ES")h(refers)g(to)-5 1923 y(the)i(spanish)f(language)h
586     (postscript)e(alternate)i(vie)o(w)f(of)h(a)g(gopher+)f(item.)20
587     b(T)m(o)11 b(retrie)o(v)o(e)h(this)f(alternate)h(vie)o(w)f(the)h
588     (client)f(would)-5 1973 y(send)170 2055 y Fc
589     (a_gopher_selector<tab>+application)o(/postscript)21
590     b(Es_ES<cr><lf>)-5 2197 y Fk(to)10 b(the)g(gopher)g(serv)o(er)n(.)-5
591     2257 y(The)j(gopher+)e(string)g(for)g(a)h(URL)g(that)f(refers)h(to)g
592     (an)g(item)f(referenced)i(by)f(an)g(ASK)g(form)f(\256lled)g(out)g(with)
593     g(speci\256c)h(v)o(alues)g(is)-5 2307 y(essentially)e(a)h(coded)f(v)o
594     (ersion)g(of)g(what)g(the)g(client)g(sends)h(to)e(the)h(serv)o(er)n(.)
595     16 b(The)11 b(gopher+)f(string)f(will)g(be)i(of)f(the)g(form)45
596     2389 y Fc(+\045091\0450D\0450A+-1\0450D\0450Aask_item1_value\0450D\045)
597     o(0Aask_item2)o(_value\0450D\045)o(0A.\0450D\0450A)-5
598     2531 y Fk(T)m(o)g(retrie)o(v)o(e)h(this)e(item,)i(the)f(gopher)g
599     (client)f(sends:)170 2613 y Fc(a_gopher_selector<tab>+<tab>1<cr><)o
600     (lf>)170 2663 y(+-1<cr><lf>)170 2713 y(ask_item1_value<cr><lf>)170
601     2762 y(ask_item2_value<cr><lf>)170 2812 y(.<cr><lf>)-5
602     2968 y Fk(Berners-Lee)1665 b(5)p eop
603     %%Page: 6 10
604     6 9 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
605     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
606     v -5 313 a(to)f(the)g(gopher)g(serv)o(er)n(.)-5 374 y(F)o(or)h(a)h
607     (really)e(comple)o(x)h(e)o(xample,)i(consider)d(a)i(URL)f(that)f
608     (refers)h(to)f(an)h(alternate)g(vie)o(w)g(of)f(an)h(item)g(that)f(is)h
609     (referenced)h(with)e(a)-5 424 y(\256lled-out)f(Gopher)h(+ASK)h(form.)k
610     (The)c(gopher+)f(string)f(will)g(be)h(of)g(the)g(form:)95
611     508 y Fc(+view_name\04520language_name\045091\0450D\0450A+)o
612     (-1\0450D\0450Aask)o(_item1_val)o(ue\0450D\0450A)95 558
613     y(ask_item2_value\0450D\0450A.\0450D\0450A)-5 703 y Fk(T)m(o)g(retrie)o
614     (v)o(e)h(this)e(item,)i(the)f(gopher)g(client)f(sends:)170
615     786 y Fc(a_gopher_selector<tab>+view_name)22 b
616     (language_name<tab>1<cr><lf>)170 836 y(+-1<cr><lf>)170
617     886 y(ask_item1_value<cr><lf>)170 936 y(ask_item2_value<cr><lf>)170
618     986 y(.<cr><lf>)-5 1131 y Fk(to)10 b(the)g(gopher)g(serv)o(er)n(.)-5
619     1231 y Fb(Summary:)17 b(gopher+)c(string)f(par)q(t)g(of)g(Gopher)h(URL)
620     -5 1321 y Fk(T)m(o)e(refer)h(to)e(an)i(item)f(which)f(has)i(an)f(ASK)h
621     (form)f(associated)g(with)f(it)h(where)g(the)g(intent)f(is)h(to)g(allo)
622     o(w)f(the)h(user)g(to)g(enter)g(v)o(alues)-5 1370 y(into)e(the)h(form)g
623     (as)h(part)f(of)g(the)g(retrie)o(v)o(al)g(process:)70
624     1454 y Fc(\0453F)25 b([was:)f(?])-5 1649 y Fk(T)m(o)10
625     b(refer)h(to)f(all)g(or)g(speci\256c)h(attrib)o(utes)e(of)h(a)h(gopher)
626     e(item:)70 1733 y Fc(![attribute_name][\04520attribute_name][\045)o
627     (20attribute)o(_name]...)-5 1927 y Fk(T)m(o)h(refer)h(to)f(all)g(or)g
628     (speci\256c)h(attrib)o(utes)e(of)h(a)h(gopher)e(directory:)70
629     2011 y Fc($[attribute_name][\04520attribute_name][\045)o(20attribute)o
630     (_name]...)-5 2206 y Fk(T)m(o)g(refer)g(to)f(the)h(content)f(of)g(a)h
631     (gopher+)g(item)g(\(including)d(an)j(item)g(referred)g(to)f(by)g
632     (speci\256c)i(v)o(alues)f(in)f(a)h(\256lled-out)e(ASK)i(form\):)70
633     2290 y Fc(+[view_name[\04520language_name]])95 2339 y
634     ([\045091\0450D\0450A+-1\0450D\0450Aask_item1_value\0450)o
635     (D\0450Aask_ite)o(m2_value..)o(.\0450D\0450A.\0450D)o(\0450A])-5
636     2589 y Fb(Overall)j(summary)g(and)g(e)o(xamples)-5 2679
637     y Fk(The)f(general)g(format)f(of)g(a)h(Gopher)e(URL)i(path)f(refering)f
638     (to)h(a)h(gopher)f(type)f("T")i(item)f(is:)45 2762 y
639     Fc(gopher://host)24 b([port]/T[gopher_selector]\04509[search_)o
640     (string]\04509)o([gopher+_st)o(ring])-5 2968 y Fk(6)1718
641     b(URI)10 b(WG)p eop
642     %%Page: 7 11
643     7 10 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
644     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
645     2 v -5 313 a Ff(Examples:)41 b Fk(An)10 b(e)o(xample)h(of)f(a)h(URL)f
646     (pointing)e(to)i(a)h(gopher)e(type)h(0)g(item)g(\(a)h(document\))f(is:)
647     45 389 y Fc(gopher://host)24 b([port]/0a_gopher_selector)-5
648     571 y Fk(An)10 b(e)o(xample)g(of)f(a)i(URL)e(pointing)e(to)i(a)h
649     (gopher)f(type)g(7)h(item)f(\(a)h(search)h(engine\))e(where)h(the)f
650     (string)f(foobar)h(is)h(to)e(be)i(submitted)-5 621 y(to)g(the)g(search)
651     h(engine)f(is:)45 696 y Fc(gopher://host)24 b
652     ([port]/7a_gopher_selector\04509foobar)-5 878 y Fk(An)10
653     b(e)o(xample)i(of)e(a)h(URL)f(pointing)e(to)h(a)i(Gopher+)f(type)g(0)g
654     (item)h(\(a)f(document\))g(is:)45 954 y Fc(gopher://host)24
655     b([port]/0a_gopher_selector\04509\04509some_)o(gplus_stuf)o(f)-5
656     1136 y Fk(An)10 b(e)o(xample)i(of)e(a)h(URL)f(pointing)e(to)h(a)i
657     (Gopher+)f(type)g(0)g(\(document\))g(item')n(s)g(attrib)o(ute)f
658     (information)f(is:)45 1211 y Fc(gopher://host)24 b
659     ([port]/0a_gopher_selector\04509\04509!)-5 1393 y Fk(An)10
660     b(e)o(xample)i(of)e(a)h(URL)f(pointing)e(to)h(a)i(Gopher+)f(document')n
661     (s)g(spanish)g(postscript)f(representation)h(is:)45 1469
662     y Fc(gopher://host)24 b([port]/0a_gopher_selector\04509\04509+appl)o
663     (ication/po)o(stscript\04520)o(Es_ES)-5 1601 y Fk(.)-5
664     1702 y Fi(1.2.4)49 b(Mailto)-5 1787 y Fk(This)14 b(allo)o(ws)f(a)h(URL)
665     f(to)g(specify)g(an)h(RFC822)e(addr)o(-spec)j(mail)e(address.)25
666     b(Note)14 b(that)e(use)i(of)g(\045)f(,)h(for)f(e)o(xample)i(as)f(used)g
667     (in)-5 1837 y(forming)9 b(a)i(gate)o(wayed)f(mail)h(address,)g
668     (requires)f(con)n(v)o(ersion)g(to)g(\04525)f(in)h(a)h(URL.)-5
669     1937 y Fi(1.2.5)49 b(Ne)o(ws)-5 2022 y Fk(The)11 b(ne)o(ws)g(locators)e
670     (refer)i(to)f(either)g(ne)o(ws)g(group)f(names)j(or)e(article)g
671     (message)i(identi\256ers)d(which)h(must)g(conform)g(to)f(the)h(rules)-5
672     2072 y(for)f(a)i(Message-Idof)f(RFC)f(1036)g(\(Horton)f(1987\).)14
673     b(A)c(message)h(identi\256er)e(may)h(be)g(distinguished)e(from)h(a)h
674     (ne)o(ws)g(group)f(name)-5 2122 y(by)h(the)f(presence)i(of)f(the)f
675     (commercial)i(at)f("@")g(character)n(.)16 b(These)11
676     b(rules)f(imply)e(that)i(within)e(an)i(article,)g(a)g(reference)h(to)e
677     (a)i(ne)o(ws)-5 2172 y(group)e(or)h(to)g(another)g(article)g(will)f(be)
678     i(a)f(v)o(alid)g(URL)g(\(in)g(the)g(partial)f(form\).)-5
679     2229 y(A)i(ne)o(ws)h(URL)f(may)g(be)g(dereferenced)i(using)d(NNTP)h
680     (\(RFC977,)f(Kantor)h(86\))f(\(The)h(AR)n(TICLE)g(by)g(message-id)g
681     (command)h(\))-5 2278 y(or)f(using)g(an)o(y)h(other)f(protocol)f(for)h
682     (the)g(con)n(v)o(e)o(yance)j(of)d(usenet)g(ne)o(ws)h(articles,)g(or)g
683     (by)f(reference)i(to)e(a)h(body)e(of)h(ne)o(ws)h(articles)-5
684     2328 y(already)f(recei)o(v)o(ed.)-5 2421 y Ff(Note1:)55
685     b Fk(Among)7 b(URLs)h(the)f("ne)o(ws")h(URLs)f(are)h(anomalous)g(in)f
686     (that)f(the)o(y)i(are)g(location-independent.)k(The)o(y)c(are)g
687     (unsuitable)-5 2471 y(as)j(URN)f(candidates)g(because)i(the)e(NNTP)h
688     (architecture)f(relies)g(on)g(the)g(e)o(xpiry)f(of)h(articles)g(and)g
689     (therefore)h(a)f(small)g(number)g(of)-5 2520 y(articles)h(being)f(a)o
690     (v)o(ailable)h(at)f(an)o(y)i(time.)k(When)11 b(a)g(ne)o(ws:)16
691     b(URL)11 b(is)f(quoted,)g(the)h(assumption)f(is)g(that)g(the)h(reader)g
692     (will)f(fetch)g(the)-5 2570 y(article)g(or)g(group)g(from)g(his)f(or)h
693     (her)h(local)f(ne)o(ws)h(host.)j(Ne)o(ws)d(host)f(names)h(are)g(NO)n(T)
694     g(part)f(of)g(ne)o(ws)h(URLs.)-5 2663 y Ff(Note)h(2:)41
695     b Fk(An)11 b(outstanding)e(problem)i(is)g(that)g(the)g(message)i
696     (identi\256er)e(is)g(insuf)o(\256cient)f(to)h(allo)o(w)g(the)g(retrie)o
697     (v)o(al)f(of)i(an)f(e)o(xpired)-5 2713 y(article,)h(as)g(no)e
698     (algorithm)g(e)o(xists)h(for)g(deri)o(ving)f(an)h(archi)o(v)o(e)h(site)
699     f(and)g(\256le)g(name.)19 b(The)12 b(addition)d(of)i(the)g(date)g(and)h
700     (ne)o(ws)f(group)-5 2762 y(set)f(to)f(the)g(article')n(s)g(URL)h(would)
701     e(allo)o(w)g(this)h(if)g(a)h(directory)e(e)o(xisted)i(of)f(archi)o(v)o
702     (e)h(sites)f(by)g(ne)o(ws)h(group.)k(Suggested)9 b(subject)g(of)-5
703     2812 y(study)g(in)f(conjunction)g(with)g(NNTP)i(working)d(group.)14
704     b(Further)9 b(e)o(xtension)g(possible)f(may)i(be)g(to)f(allo)o(w)f(the)
705     h(naming)g(of)g(subject)-5 2862 y(threads)i(as)f(addressable)i
706     (objects.)-5 2968 y(Berners-Lee)1665 b(7)p eop
707     %%Page: 8 12
708     8 11 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
709     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
710     v -5 313 a Fb(NNTP)-5 404 y Fk(This)d(is)g(an)g(alternati)o(v)o(e)g
711     (form)f(of)h(reference)h(for)f(ne)o(ws)g(articles,)h(speci\256cally)f
712     (to)f(be)i(used)f(with)e(NNTP)j(serv)o(ers,)h(and)e(particularly)-5
713     453 y(those)j(incomplete)f(serv)o(er)h(implementations)f(which)g(do)g
714     (not)g(allo)o(w)g(retrie)o(v)o(al)g(by)g(message)i(identi\256er)n(.)j
715     (In)c(all)f(other)g(cases)i(the)-5 503 y("ne)o(ws")f(scheme)h(should)d
716     (be)h(used.)-5 565 y(The)j(ne)o(ws)f(serv)o(er)g(name,)i(ne)o(wsgroup)d
717     (name,)i(and)f(inde)o(x)f(number)h(of)g(an)g(article)f(within)f(the)i
718     (ne)o(wsgroup)f(on)g(that)g(particular)-5 615 y(serv)o(er)g(are)h(gi)o
719     (v)o(en.)i(The)d(NNTP)g(protocol)e(must)h(be)h(used.)-5
720     717 y Ff(Note1.)42 b Fk(This)11 b(form)f(of)h(URL)g(is)f(not)g(of)h
721     (global)e(accessability)m(,)j(as)g(typically)d(NNTP)i(serv)o(ers)h
722     (only)e(allo)o(w)g(access)j(from)d(local)-5 766 y(clients.)15
723     b(Note)10 b(that)g(the)g(article)g(numbers)g(within)f(groups)g(v)o(ary)
724     h(from)g(serv)o(er)i(to)d(serv)o(er)n(.)-5 828 y(This)h(form)f(or)g
725     (URL)g(should)f(not)h(be)h(quoted)e(outside)g(this)h(local)g(area.)16
726     b(It)9 b(should)f(not)h(be)g(used)h(within)e(ne)o(ws)h(articles)h(for)f
727     (wider)-5 878 y(circulation)j(than)h(the)f(one)h(serv)o(er)n(.)25
728     b(This)13 b(is)f(a)i(local)f(identi\256er)f(for)g(a)i(resource)g(which)
729     e(is)h(often)f(a)o(v)o(ailable)i(globally)m(,)e(and)h(so)-5
730     928 y(is)f(not)g(recommended)h(e)o(xcept)g(in)f(the)g(case)i(in)e
731     (which)f(incomplete)h(NNTP)h(implementations)e(on)h(the)g(local)g(serv)
732     o(er)h(force)g(its)-5 978 y(adoption.)-5 1088 y Fi(1.2.6)49
733     b(Pr)o(osper)o(o)-5 1178 y Fk(The)9 b(Prospero)f(\(Neuman,)i(1991\))d
734     (directory)h(service)h(is)f(used)h(to)e(resolv)o(e)i(the)f(URL)h
735     (yielding)d(an)j(access)h(method)e(for)g(the)h(object)-5
736     1228 y(\(which)f(can)h(then)f(itself)f(be)i(represented)g(as)g(a)g(URL)
737     f(if)g(translated\).)14 b(The)9 b(host)e(part)h(contains)g(a)h(host)f
738     (name)h(or)f(internet)f(address.)-5 1278 y(The)k(port)e(part)h(is)g
739     (optional.)-5 1340 y(The)h(path)g(part)f(contains)g(a)h(host)f
740     (speci\256c)h(object)f(name)i(and)e(an)h(optional)e(v)o(ersion)h
741     (number)n(.)15 b(If)c(present,)g(the)f(v)o(ersion)g(number)-5
742     1390 y(is)h(separated)g(from)f(the)g(host)g(speci\256c)i(object)e(name)
743     h(by)f(the)g(characters)i("\04500")e(\(percent)g(zero)h(zero\),)h(this)
744     d(being)h(an)h(escaped)-5 1439 y(string)e(terminator)g(\(null\).)14
745     b(External)c(Prospero)g(links)e(are)j(represented)g(as)g(URLs)f(of)g
746     (the)g(underlying)e(access)k(method)e(and)g(are)-5 1489
747     y(not)g(represented)g(as)h(Prospero)f(URLs.)-5 1599 y
748     Fi(1.2.7)49 b(T)m(elnet,)13 b(rlogin,)i(tn3270)-5 1690
749     y Fk(The)e(use)f(of)f(URLs)h(to)f(represent)h(interacti)o(v)o(e)g
750     (sessions)g(is)f(a)h(con)n(v)o(enient)g(e)o(xtension)f(to)g(their)g
751     (uses)i(for)e(objects.)19 b(This)12 b(allo)o(ws)-5 1739
752     y(access)f(to)d(information)e(systems)j(which)f(only)f(pro)o(vide)h(an)
753     g(interacti)o(v)o(e)h(service,)g(and)g(no)f(information)e(serv)o(er)n
754     (.)15 b(As)9 b(information)-5 1789 y(within)h(the)h(service)h(cannot)f
755     (be)h(addressed)g(indi)o(viduall)o(y)d(or)n(,)j(in)e(general,)j
756     (automatically)d(retrie)o(v)o(ed,)i(this)e(is)h(a)h(less)g(desirable,)
757     -5 1839 y(though)d(currently)g(common,)i(solution.)-5
758     1949 y Fi(1.2.8)49 b(W)m(AIS)-5 2040 y Fk(The)9 b(current)f(W)-5
759     b(AIS)8 b(implementation)f(public)g(domain)h(requires)g(that)g(a)h
760     (client)e(kno)o(w)h(the)g("type")f(of)h(a)h(object)f(prior)f(to)g
761     (retrie)o(v)o(al.)-5 2089 y(This)k(v)o(alue)f(is)h(returned)f(along)g
762     (with)f(the)i(internal)e(object)h(identi\256er)g(in)g(the)g(search)i
763     (response.)17 b(It)10 b(has)h(been)g(encoded)g(into)e(the)-5
764     2139 y(path)i(part)h(of)f(the)g(URL)h(in)f(order)g(to)g(make)h(the)g
765     (URL)f(suf)o(\256cient)g(for)g(the)h(retrie)o(v)o(al)f(of)g(the)g
766     (object.)19 b(W)n(ithin)10 b(the)i(W)-5 b(AIS)11 b(world,)-5
767     2189 y(names)h(do)e(not)f(of)h(course)h(need)f(to)g(be)h(pre\256x)o(ed)
768     f(by)g("wais:")g(\(by)g(the)g(partial)f(form)h(rules\).)-5
769     2251 y(The)k(wpath)f(of)h(a)g(W)-5 b(AIS)13 b(URL)h(consists)f(of)g
770     (encoded)h(\256elds)g(of)f(the)g(W)-5 b(AIS)14 b(identi\256er)n(,)g(in)
771     f(the)g(same)i(order)e(as)h(inthe)f(W)-5 b(AIS)-5 2301
772     y(identi\256er)n(.)27 b(F)o(or)14 b(each)i(\256eld,)g(the)e
773     (identi\256er)g(\256eld)g(number)g(is)h(the)f(digits)f(before)h(the)h
774     (equals)f(sign,)h(and)g(the)f(\256eld)h(contents)-5 2351
775     y(follo)o(w)m(,)10 b(encoded)g(in)g(the)g(con)n(v)o(entional)g
776     (encoding,)g(terminated)g(by)f(";".)-5 2461 y Fi(1.2.9)49
777     b(Registration)13 b(of)h(naming)h(schemes)-5 2551 y Fk(A)f(ne)o(w)g
778     (naming)f(scheme)j(may)e(be)g(introduced)e(by)h(de\256ning)g(a)h
779     (mapping)g(onto)e(a)i(conforming)f(URL)h(syntax,)g(using)f(a)h(ne)o(w)
780     -5 2601 y(pre\256x.)h(Experimental)8 b(pre\256x)o(es)i(may)f(be)g(used)
781     g(by)g(mutual)f(agreement)i(between)f(parties,)g(and)g(must)f(start)h
782     (with)e(the)i(characters)-5 2651 y("x-".)15 b(The)c(scheme)h(name)f
783     ("urn:")e(is)h(reserv)o(ed)i(for)e(the)g(work)f(in)h(progress)g(on)f(a)
784     i(scheme)h(for)e(more)h(persistent)e(names.)-5 2713 y(It)j(is)g
785     (proposed)f(that)h(the)g(Internet)f(Assigned)h(Numbers)g(Authority)e
786     (\(IAN)o(A\))h(perform)h(the)g(function)f(of)g(re)o(gistration)g(of)h
787     (ne)o(w)-5 2762 y(schemes.)20 b(An)o(y)11 b(submission)f(of)h(a)g(ne)o
788     (w)h(URI)e(scheme)j(must)e(include)f(a)i(de\256nition)d(of)i(an)g
789     (algorithm)f(for)h(the)g(retrie)o(v)o(al)f(of)h(an)o(y)-5
790     2812 y(object)f(within)e(that)h(scheme.)17 b(The)11 b(algorithm)d(must)
791     i(take)g(the)f(URI)h(and)g(produce)g(either)f(a)i(set)f(of)g(URL\(s\))f
792     (which)h(will)f(lead)h(to)-5 2862 y(the)g(desired)h(object,)f(or)g(the)
793     g(object)g(itself,)g(in)f(a)i(well-de\256ned)f(or)g(determinable)g
794     (format.)-5 2968 y(8)1718 b(URI)10 b(WG)p eop
795     %%Page: 9 13
796     9 12 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
797     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
798     2 v -5 313 a(It)i(is)g(recommended)i(that)d(those)h(proposing)f(a)h(ne)
799     o(w)h(scheme)h(demonstrate)e(its)g(utility)d(and)k(operability)d(by)i
800     (the)g(pro)o(vision)e(of)-5 363 y(a)k(gate)o(way)e(which)g(will)g(pro)o
801     (vide)g(images)h(of)g(objects)f(in)g(the)h(ne)o(w)g(scheme)h(for)e
802     (clients)g(using)g(an)h(e)o(xisting)f(protocol.)21 b(If)12
803     b(the)-5 413 y(ne)o(w)f(scheme)h(is)e(not)g(a)h(locator)f(scheme,)i
804     (then)e(the)h(properties)e(of)h(names)i(in)e(the)g(ne)o(w)h(space)h
805     (should)d(be)i(clearly)f(de\256ned.)16 b(It)10 b(is)-5
806     463 y(like)o(wise)g(recommended)j(that,)e(where)g(a)h(protocol)d(allo)o
807     (ws)i(for)g(retrie)o(v)o(al)f(by)h(URL,)g(that)g(the)g(client)f
808     (software)h(ha)o(v)o(e)h(pro)o(vision)-5 512 y(for)e(being)g
809     (con\256gured)g(to)f(use)i(speci\256c)g(gate)o(way)f(locators)g(for)g
810     (indirect)f(access)j(through)d(ne)o(w)h(naming)g(schemes.)-5
811     628 y Fi(1.3)49 b(BNF)15 b(f)o(or)f(speci\256c)f(URL)h(schemes)-5
812     730 y Fk(This)d(is)h(a)f(BNF-like)f(description)g(of)h(the)g(Uniform)g
813     (Resource)g(Locator)h(syntax.)18 b(A)11 b(v)o(ertical)g(line)g(")p
814     Fa(j)p Fk(")g(indicates)g(alternati)o(v)o(es,)-5 780
815     y(and)h([brackets]indicate)f(optional)f(parts.)19 b(Spaces)14
816     b(are)e(represented)g(by)g(the)f(word)g("space",)j(and)d(the)h(v)o
817     (ertical)g(line)f(character)-5 830 y(by)h("vline".)21
818     b(Single)12 b(letters)g(stand)h(for)f(single)f(letters.)22
819     b(All)12 b(words)f(of)h(more)h(than)g(one)f(letter)g(belo)o(w)g(are)h
820     (entities)f(described)-5 880 y(some)o(where)g(in)d(this)h(description.)
821     -5 943 y(The)h(current)f(IETF)h(URI)f(working)e(group)i(preference)h
822     (is)f(for)g(the)g(pre\256x)o(edurl)g(production.)j(\(No)o(v)d(1993.)15
823     b(July)9 b(93:)14 b(url\).)-5 1006 y(The)h("national")e(and)h
824     ("punctuation")f(characters)i(do)f(not)f(appear)i(in)f(an)o(y)h
825     (productions)d(and)i(therefore)h(may)f(not)g(appear)h(in)-5
826     1056 y(URLs.)-5 1120 y(The)c("afsaddress")g(is)f(left)g(in)g(as)h
827     (historical)e(note,)h(b)o(ut)f(is)i(not)e(a)i(url)e(production)-5
828     1193 y Ff(pr)o(e\256xedurl)232 b Fk(u)10 b(r)g(l)g(:)k(url)-5
829     1247 y Ff(ur)d(l)364 b Fk(httpaddress)11 b Fa(j)i Fk(ftpaddress)f
830     Fa(j)g Fk(ne)o(wsaddress)i Fa(j)e Fk(nntpaddress)g Fa(j)g
831     Fk(prosperoaddress)h Fa(j)f Fk(telnetaddress)h Fa(j)423
832     1297 y Fk(gopheraddress)d Fa(j)g Fk(waisaddress)g Fa(j)g
833     Fk(mailtoaddress)g Fa(j)g Fk(midaddress)h Fa(j)e Fk(cidaddress)-5
834     1351 y Ff(scheme)300 b Fk(ialpha)-5 1405 y Ff(httpaddr)o(ess)220
835     b Fk(h)10 b(t)g(t)g(p)g(:)k(/)c(/)g(hostport)f([/)g(path)h(][?)15
836     b(search)d(])-5 1459 y Ff(ftpaddr)o(ess)243 b Fk(f)10
837     b(t)g(p)g(:)k(/)c(/)g(login)f(/)h(path)g([!)k(ftptype)9
838     b(])-5 1513 y Ff(afsaddr)o(ess)243 b Fk(a)10 b(f)h(s)f(:)15
839     b(/)10 b(/)g(cellname)h(/)f(path)-5 1567 y Ff(newsaddr)o(ess)207
840     b Fk(n)10 b(e)h(w)f(s)g(:)15 b(groupart)-5 1621 y Ff(nntpaddr)o(ess)211
841     b Fk(n)10 b(n)g(t)g(p)g(:)15 b(group)9 b(/)h(digits)-5
842     1675 y Ff(midaddr)o(ess)224 b Fk(m)10 b(i)g(d)g(:)15
843     b(addr)o(-spec)-5 1729 y Ff(cidaddr)o(ess)241 b Fk(c)10
844     b(i)g(d)h(:)j(content-identi\256er)-5 1783 y Ff(mailtoaddr)o(ess)179
845     b Fk(m)10 b(a)h(i)f(l)g(t)g(o)g(:)15 b(:)f(xalphas)c(@)h(hostname)-5
846     1837 y Ff(waisaddr)o(ess)215 b Fk(waisinde)o(x)9 b Fa(j)h
847     Fk(waisdoc)-5 1891 y Ff(waisindex)252 b Fk(w)10 b(a)h(i)f(s)g(:)15
848     b(/)10 b(/)g(hostport)e(/)i(database)h([?)16 b(search)11
849     b(])-5 1945 y Ff(waisdoc)287 b Fk(w)10 b(a)h(i)f(s)g(:)15
850     b(/)10 b(/)g(hostport)e(/)i(database)h(/)f(wtype)g(/)g(wpath)-5
851     1999 y Ff(wpath)317 b Fk(digits)8 b(=)j(path)f(;)g([wpath)g(])-5
852     2052 y Ff(gr)o(oupart)270 b Fk(*)10 b Fa(j)g Fk(group)f
853     Fa(j)h Fk(article)-5 2106 y Ff(gr)o(oup)323 b Fk(ialpha)10
854     b([.)15 b(group)9 b(])-5 2160 y Ff(article)315 b Fk(xalphas)10
855     b(@)g(host)-5 2214 y Ff(database)271 b Fk(xalphas)-5
856     2268 y Ff(wtype)322 b Fk(xalphas)-5 2322 y Ff(pr)o(osper)o(oaddr)o(ess)
857     138 b Fk(prosperolink)-5 2376 y Ff(pr)o(osper)o(olink)202
858     b Fk(p)10 b(r)g(o)g(s)h(p)f(e)h(r)f(o)g(:)k(/)c(/)g(hostport)f(/)h
859     (hsoname)h([\045)e(0)i(0)f(v)o(ersion)g([attrib)o(utes)f(]])-5
860     2430 y Ff(hsoname)271 b Fk(path)-5 2484 y Ff(version)299
861     b Fk(digits)-5 2538 y Ff(attrib)o(utes)256 b Fk(attrib)o(ute)9
862     b([attrib)o(utes)f(])-5 2592 y Ff(attrib)o(ute)272 b
863     Fk(alphanums)-5 2646 y Ff(telnetaddr)o(ess)195 b Fk(t)10
864     b(e)g(l)g(n)g(e)h(t)f(:)15 b(/)10 b(/)g(login)-5 2700
865     y Ff(gopheraddr)o(ess)170 b Fk(g)10 b(o)g(p)g(h)g(e)h(r)f(:)15
866     b(/)10 b(/)g(hostport)e([/)i(gtype)f([selector)i(]][?)k(search)c(])-5
867     2754 y Ff(login)339 b Fk([user)10 b([:)k(password)c(]@)h(]hostport)-5
868     2808 y Ff(hostport)278 b Fk(host)9 b([:)15 b(port)9 b(])-5
869     2862 y Ff(host)354 b Fk(hostname)10 b Fa(j)g Fk(hostnumber)-5
870     2968 y(Berners-Lee)1665 b(9)p eop
871     %%Page: 10 14
872     10 13 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
873     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
874     v -5 313 a Ff(ftptype)301 b Fk(A)10 b Fa(j)g Fk(I)g Fa(j)g
875     Fk(D)-5 367 y Ff(cellname)271 b Fk(hostname)-5 421 y
876     Ff(hostname)257 b Fk(ialpha)10 b([.)15 b(hostname)10
877     b(])-5 475 y Ff(hostnumber)214 b Fk(digits)8 b(.)16 b(digits)8
878     b(.)16 b(digits)8 b(.)16 b(digits)-5 529 y Ff(port)352
879     b Fk(digits)-5 583 y Ff(selector)293 b Fk(path)-5 637
880     y Ff(path)347 b Fk(v)o(oid)9 b Fa(j)h Fk(se)o(gment)h([/)f(path)g(])-5
881     691 y Ff(segment)283 b Fk(xpalphas)-5 745 y Ff(sear)o(ch)315
882     b Fk(xalphas)10 b([+)g(search)i(])-5 799 y Ff(user)353
883     b Fk(xalphas)-5 853 y Ff(password)260 b Fk(xalphas)-5
884     907 y Ff(fragmentid)229 b Fk(xalphas)-5 961 y Ff(gtype)331
885     b Fk(xalpha)-5 1015 y Ff(xalpha)307 b Fk(alpha)10 b Fa(j)g
886     Fk(digit)e Fa(j)i Fk(safe)i Fa(j)d Fk(e)o(xtra)i Fa(j)f
887     Fk(escape)-5 1069 y Ff(xalphas)291 b Fk(xalpha)10 b([xalphas)g(])-5
888     1123 y Ff(xpalpha)284 b Fk(xalpha)10 b Fa(j)g Fk(+)-5
889     1177 y Ff(xpalphas)268 b Fk(xpalpha)9 b([xpalpha)h(])-5
890     1231 y Ff(ialpha)316 b Fk(alpha)10 b([xalphas)g(])-5
891     1285 y Ff(alpha)328 b Fk(a)10 b Fa(j)g Fk(b)f Fa(j)h
892     Fk(c)g Fa(j)g Fk(d)f Fa(j)h Fk(e)g Fa(j)g Fk(f)g Fa(j)f
893     Fk(g)h Fa(j)f Fk(h)h Fa(j)g Fk(i)f Fa(j)h Fk(j)f Fa(j)h
894     Fk(k)f Fa(j)h Fk(l)f Fa(j)h Fk(m)g Fa(j)g Fk(n)f Fa(j)h
895     Fk(o)g Fa(j)f Fk(p)h Fa(j)f Fk(q)h Fa(j)g Fk(r)f Fa(j)h
896     Fk(s)g Fa(j)f Fk(t)h Fa(j)f Fk(u)h Fa(j)g Fk(v)f Fa(j)h
897     Fk(w)g Fa(j)f Fk(x)h Fa(j)g Fk(y)f Fa(j)h Fk(z)g Fa(j)g
898     Fk(A)g Fa(j)f Fk(B)h Fa(j)f Fk(C)423 1334 y Fa(j)h Fk(D)g
899     Fa(j)g Fk(E)h Fa(j)e Fk(F)i Fa(j)f Fk(G)g Fa(j)g Fk(H)g
900     Fa(j)g Fk(I)h Fa(j)e Fk(J)i Fa(j)f Fk(K)g Fa(j)g Fk(L)h
901     Fa(j)f Fk(M)g Fa(j)g Fk(N)g Fa(j)g Fk(O)h Fa(j)f Fk(P)g
902     Fa(j)g Fk(Q)g Fa(j)g Fk(R)g Fa(j)g Fk(S)h Fa(j)e Fk(T)i
903     Fa(j)f Fk(U)g Fa(j)g Fk(V)h Fa(j)f Fk(W)g Fa(j)g Fk(X)g
904     Fa(j)g Fk(Y)h Fa(j)f Fk(Z)-5 1388 y Ff(digit)346 b Fk(0)10
905     b Fa(j)p Fk(1)f Fa(j)h Fk(2)h Fa(j)e Fk(3)i Fa(j)e Fk(4)i
906     Fa(j)f Fk(5)g Fa(j)g Fk(6)g Fa(j)g Fk(7)g Fa(j)g Fk(8)g
907     Fa(j)g Fk(9)-5 1442 y Ff(safe)359 b Fk($)10 b Fa(j)g
908     Fk(-)g Fa(j)p 524 1442 13 2 v 35 w(j)g Fk(@)h Fa(j)f
909     Fk(.)15 b Fa(j)10 b Fk(&)h Fa(j)e Fk(+)i Fa(j)f Fk(-)-5
910     1496 y Ff(extra)336 b Fk(")10 b Fa(j)g Fk(')g Fa(j)g
911     Fk(\()g Fa(j)g Fk(\))g Fa(j)g Fk(,)h Fa(j)f Fk(space)-5
912     1550 y Ff(r)o(eserved)279 b Fk(=)10 b Fa(j)g Fk(;)g Fa(j)g
913     Fk(/)g Fa(j)g Fk(#)g Fa(j)g Fk(?)15 b Fa(j)10 b Fk(:)-5
914     1604 y Ff(escape)314 b Fk(\045)10 b(he)o(x)g(he)o(x)-5
915     1658 y Ff(hex)366 b Fk(digit)8 b Fa(j)i Fk(a)h Fa(j)f
916     Fk(b)g Fa(j)g Fk(c)h Fa(j)f Fk(d)g Fa(j)g Fk(e)g Fa(j)g
917     Fk(f)h Fa(j)e Fk(A)i Fa(j)f Fk(B)g Fa(j)g Fk(C)g Fa(j)g
918     Fk(D)g Fa(j)g Fk(E)h Fa(j)f Fk(F)-5 1712 y Ff(national)281
919     b Fa(f)10 b(j)g(g)g(j)g Fk(vline)f Fa(j)h Fk([)p Fa(j)g
920     Fk(])p Fa(j)g Fk(\\)p Fa(j)f Fk(\303)h Fa(j)g Fk(\304)423
921     1766 y([punctuation)e(])i Fe(<)h Fa(j)f Fe(>)-5 1820
922     y Ff(digits)330 b Fk(digit)8 b([digits)h(])-5 1874 y
923     Ff(alphanum)247 b Fk(alpha)10 b Fa(j)g Fk(digit)-5 1928
924     y Ff(alphanums)231 b Fk(alphanum)10 b([alphanums)g(])-5
925     1982 y Ff(void)-5 2050 y Fk(\(end)g(of)g(URL)h(BNF\))-5
926     2152 y Fi(1.4)49 b(Security)14 b(considerations)-5 2248
927     y Fk(The)e(URL)f(scheme)i(does)f(not)e(in)g(itself)h(pose)g(a)h
928     (security)f(threat.)17 b(Users)12 b(should)e(be)o(ware)i(that)e(there)h
929     (is)g(no)g(general)h(guarantee)-5 2298 y(that)d(a)g(URL)g(which)g(at)g
930     (one)g(time)g(points)f(to)g(a)i(gi)o(v)o(en)f(object)f(continues)h(to)f
931     (do)h(so,)g(and)h(does)f(not)f(e)o(v)o(en)i(at)f(some)h(later)f(time)g
932     (point)-5 2347 y(to)h(a)h(dif)o(ferent)e(object)h(due)g(to)g(the)g(mo)o
933     (v)o(ement)h(of)f(objects)g(on)g(serv)o(ers.)-5 2405
934     y(A)i(URL-related)f(security)g(threat)f(is)h(that)g(it)f(is)i
935     (sometimes)f(possible)g(to)g(construct)f(a)i(URL)f(such)h(that)e(an)i
936     (attempt)f(to)f(perform)-5 2455 y(a)i(harmless)h(idempotent)d
937     (operation)g(such)i(as)g(the)g(retrie)o(v)o(al)e(of)i(the)f(object)g
938     (will)f(in)h(fact)h(cause)g(a)g(possibly)e(damaging)i(remote)-5
939     2505 y(operation)e(to)h(occur)n(.)17 b(The)12 b(unsafe)f(URL)g(is)g
940     (typically)e(constructed)i(by)f(specifying)g(a)i(port)e(number)h(other)
941     f(than)h(that)f(reserv)o(ed)-5 2555 y(for)h(the)h(network)e(protocol)g
942     (in)h(question.)18 b(The)12 b(client)f(unwittingly)d(contacts)k(a)g
943     (serv)o(er)g(which)f(is)h(in)f(fact)g(running)f(a)i(dif)o(ferent)-5
944     2605 y(protocol.)22 b(The)13 b(content)f(of)h(the)f(URL)h(contains)f
945     (instructions)f(which)h(when)h(interpreted)f(according)g(to)h(this)e
946     (other)i(protocol)-5 2654 y(cause)f(an)e(une)o(xpected)g(ooperation.)k
947     (An)c(e)o(xample)h(has)g(been)f(the)g(use)g(of)g(gopher)f(URLs)i(to)e
948     (cause)i(a)g(rude)f(message)h(to)f(be)g(sent)-5 2704
949     y(via)j(a)h(SMTP)f(serv)o(er)n(.)24 b(Caution)12 b(should)g(be)h(used)g
950     (when)g(using)f(an)o(y)i(URL)f(which)g(speci\256es)h(a)f(port)f(number)
951     h(other)g(than)f(the)-5 2754 y(default)e(for)f(the)h(protocol,)g
952     (especially)g(when)g(it)g(is)g(a)h(number)f(within)e(the)i(reserv)o(ed)
953     i(space.)-5 2812 y(Care)i(should)f(be)h(taken)f(when)h(URLs)g(contain)f
954     (embedded)i(encoded)f(delimiters)e(for)i(a)g(gi)o(v)o(en)f(protocol)g
955     (\(for)g(e)o(xample,)j(CR)-5 2862 y(and)d(LF)f(characters)i(for)e
956     (telnet)f(protocols\))g(that)g(these)i(are)g(not)f(unencoded)g(before)g
957     (transmission.)20 b(This)12 b(would)f(violate)g(the)-5
958     2968 y(10)1697 b(URI)10 b(WG)p eop
959     %%Page: 11 15
960     11 14 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
961     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
962     2 v -5 313 a(protocol)g(b)o(ut)g(could)h(be)g(used)g(to)g(simulate)g
963     (an)g(e)o(xtra)h(operation)e(or)h(parameter)n(,)i(again)e(causing)g(an)
964     g(une)o(xpected)h(and)f(possible)-5 363 y(harmful)f(remote)h(operation)
965     e(to)h(be)g(performed.)-5 424 y(The)h(use)g(of)f(URLs)g(containing)f
966     (passwords)h(is)g(clearly)g(unwise.)-5 530 y Fi(1.5)49
967     b(Ac)o(kno)o(wledgements)-5 628 y Fk(This)9 b(paper)g(b)o(uilds)f(on)h
968     (the)f(basic)i(W3)f(design)f(and)h(much)g(discussion)f(of)h(these)g
969     (issues)h(by)e(man)o(y)i(people)f(on)f(the)h(network.)k(The)-5
970     678 y(discussion)e(was)g(particularly)f(stimulated)g(by)h(articles)h
971     (by)f(Clif)o(ford)e(L)n(ynch)i(\(1991\),)g(Bre)o(wster)g(Kahle)h
972     (\(1991\))e(and)h(W)m(engyik)-5 727 y(Y)l(eong)i(\(1991b\).)22
973     b(Contrib)o(utions)10 b(from)j(John)g(Curran)f(\(NEARnet\),)i(Clif)o
974     (ford)d(Neuman)i(\(ISI\))g(Ed)g(V)n(ielmetti)f(\(MSEN\))h(and)-5
975     777 y(later)d(the)h(IETF)g(URL)f(BOF)g(and)g(URI)g(working)f(group)g
976     (ha)o(v)o(e)i(been)g(incorporated)e(into)g(this)g(issue)i(of)f(this)f
977     (paper)n(.)-5 838 y(The)k(draft)e(url4)g(\(Internet)f(Draft)i(00\))f
978     (was)h(generated)g(from)g(url3)f(follo)o(wing)e(discussion)i(and)h(o)o
979     (v)o(erall)g(appro)o(v)o(al)f(of)g(the)h(URL)-5 888 y(working)6
980     b(group)h(on)g(29)h(March)g(1993.)13 b(The)c(paper)f(url3)e(had)i(been)
981     g(generated)h(from)e(udi2)g(in)g(the)h(light)e(of)h(discussion)g(at)h
982     (the)f(UDI)-5 937 y(BOF)k(meeting)g(at)g(the)f(Boston)g(IETF)i(in)e
983     (July)g(1992.)16 b(Draft)11 b(url4)f(was)h(Internet)f(Draft)g(00.)17
984     b(Draft)11 b(url5)f(incorporated)f(changes)-5 987 y(suggested)i(by)g
985     (Clif)o(ford)d(Neuman,)k(and)f(draft)g(url6)f(\(ID)g(01\))h
986     (incorporated)f(character)i(group)e(changes)h(and)g(a)h(fe)o(w)f(other)
987     f(\256x)o(es)-5 1037 y(de\256ned)15 b(by)f(the)g(IETF)h(URI)f(WG)h(in)e
988     (submitting)g(it)g(as)i(a)g(proposed)f(standard.)27 b(URL7)14
989     b(\(Internet)f(Draft)h(02\))g(incorporated)-5 1087 y(changes)d
990     (introduced)e(at)i(the)f(Amsterdam)h(IETF)g(and)f(re\256ned)h(in)e(net)
991     i(discussion.)-5 1148 y(The)g(draft)f(03)g(includes)g(changes)h(made)g
992     (at)f(Houston)f(in)h(No)o(v)g(93,)h(and)f(on)g(the)g(net)g(before)g
993     (Seattle)h(March)f(1994.)-5 2968 y(Berners-Lee)1645 b(11)p
994     eop
995     %%Page: 12 16
996     12 15 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
997     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
998     v -5 313 a Fd(2.)k(A)o(ppendices)-5 415 y Fk(The)c(follo)o(wing)d(are)j
999     (not)e(formally)h(part)g(of)g(this)f(document.)-5 522
1000     y Fi(2.1)49 b(Wrapper)o(s)15 b(f)o(or)f(URIs)g(in)g(plain)g(te)o(xt)-5
1001     620 y Fk(This)c(section)g(does)h(not)e(formally)h(form)g(part)g(of)g
1002     (the)g(URL)g(speci\256cation)g(.)-5 680 y(URIs,)15 b(including)c(URLs,)
1003     k(will)d(ideally)g(be)i(transmitted)e(though)g(protocols)g(which)h
1004     (accept)i(them)e(and)h(data)f(formats)h(which)-5 730
1005     y(de\256ne)f(a)g(conte)o(xt)f(for)f(them.)22 b(Ho)o(we)o(v)o(er)n(,)14
1006     b(in)d(practice)i(no)o(wadays)f(there)g(are)h(man)o(y)g(occasions)g
1007     (when)f(URLs)g(are)h(included)f(in)-5 780 y(plain)e(ASCII)f
1008     (non-marked-up)g(te)o(xt)h(such)h(as)g(electronic)f(mail)g(and)g
1009     (usenet)h(ne)o(ws)f(messages.)-5 840 y(In)g(this)f(case,)j(it)d(is)h
1010     (con)n(v)o(enient)g(to)f(ha)o(v)o(e)i(a)g(separate)g(wrapper)f(syntax)g
1011     (to)f(de\256ne)i(delimiters)e(which)g(will)g(enable)i(the)e(human)h(or)
1012     -5 890 y(automated)h(reader)g(to)e(recognize)i(that)f(the)g(URI)g(is)g
1013     (a)h(URI.)-5 951 y(The)h(recommendation)f(is)g(that)f(the)h(angle)g
1014     (brackets)g(\(less)g(than)f(and)h(greater)h(than)e(signs\))g(of)h(the)g
1015     (ASCII)f(set)h(be)g(used)h(for)e(this)-5 1001 y(purpose.)-5
1016     1061 y(These)g(wrappers)f(do)f(not)g(form)g(part)g(of)h(the)f(URL,)h
1017     (are)g(not)f(mandatory)m(,)h(and)g(should)e(not)h(be)h(used)g(in)f
1018     (conte)o(xts)g(\(such)g(as)i(SGML)-5 1111 y(parameters,)i(HTTP)f
1019     (requests,)g(etc\))g(in)e(which)h(delimiters)g(are)h(already)f
1020     (speci\256ed.)-5 1209 y Fb(Example)-5 1375 y Fc(Yes,)25
1021     b(Jim,)f(I)h(found)g(it)f(under)h(<ftp://info.cern.ch/pub/www/doc>)d
1022     (but)95 1425 y(you)j(can)f(probably)g(pick)h(it)g(up)f(from)h
1023     (<ftp://ds.internic.net/rfc>.)-5 2968 y Fk(12)1697 b(URI)10
1024     b(WG)p eop
1025     %%Page: 13 17
1026     13 16 bop -5 162 a Fk(21)10 b(March)h(1994)458 b(Uniform)10
1027     b(Resource)h(Locators)504 b(RFC)10 b(XXXX)p -5 179 1890
1028     2 v -5 313 a Fd(3.)15 b(Refer)o(ences)-5 404 y Ff(Alberti,)c(R.,)g
1029     (et.al.)k(\(1991\))9 b Fk("Notes)18 b(on)g(the)g(Internet)g(Gopher)f
1030     (Protocol")g(Uni)o(v)o(ersity)g(of)h(Minnesota,)i(December)g(1991,)423
1031     454 y Fe(<)p Fk(ftp://boombox.micro.umn.edu/pu)o(b/g)o(opher/)o(goph)o
1032     (er)p 1286 454 13 2 v 13 w(protocol)p Fe(>)6 b Fk(.)12
1033     b(See)6 b(also)g Fe(<)p Fk(gopher://gopher)n
1034     (.micro.umn.edu/00/Information)423 504 y(About)j(Gopher/About)f(Gopher)
1035     p Fe(>)-5 558 y Ff(Ber)o(ners-Lee,)13 b(T)d(.,)i(\(1991\))d
1036     Fk("Hyperte)o(xt)i(T)o(ransfer)h(Protocol)f(\(HTTP\)")i(,)f(CERN,)h
1037     (December)g(1991,)f(as)h(updated)e(from)h(time)423 608
1038     y(to)d(time,)i Fe(<)p Fk(ftp://info.cern.ch/pub/ww)o(w/doc/)o(htt)o
1039     (p-spec.txt)p Fe(>)-5 662 y Ff(Cr)o(ocker)283 b Fk("Standard)10
1040     b(for)f(ARP)l(A)i(Internet)e(T)m(e)o(xt)i(Messages")h(.)j(Da)o(vid)10
1041     b(H.)h(Crocker)n(,)f(RFC822,)-5 716 y Ff(Da)o(vis,)g(F)l(,)h(et)g(al.,)
1042     g(\(1990\))48 b Fk("W)-5 b(AIS)8 b(Interface)h(Protocol:)j(Prototype)7
1043     b(Functional)g(Speci\256cation",)h(Thinking)f(Machines)i(Cor)o(-)423
1044     766 y(poration,)g(April)g(23,)h(1990)f Fe(<)p Fk
1045     (ftp://quake.think.com/pub/)o(wais/)o(doc/pr)o(otspec.txt)p
1046     Fe(>)-5 820 y Ff(Inter)o(national)h(Standards)h(Organization,)e
1047     (\(1991\))h Fk(Information)h(and)i(Documentation)e(-)i(Search)h(and)f
1048     (Retrie)o(v)o(e)g(Applica-)423 869 y(tion)c(Protocol)g(Speci\256cation)
1049     h(for)g(open)g(Systems)g(Interconnection,)g(ISO-10163)-5
1050     923 y Ff(Horton)h(\(1987\))176 b Fk(M.)12 b(Horton,)f(R.)g(Adams,)i
1051     ("Standard)e(for)g(interchange)h(of)f(USENET)i(messages",)h(Internet)d
1052     (RFC)423 973 y(1036)e(,)i(12/01/1987.)-5 1027 y Ff(Huitema,)g(C.,)g
1053     (\(1991\))79 b Fk("Naming:)14 b(strate)o(gies)c(and)g(techniques",)g
1054     (Computer)f(Networks)g(and)h(ISDN)f(Systems)i(23)e(\(1991\))423
1055     1077 y(107-110.)-5 1131 y Ff(Kahle,)i(Br)o(ewster)l(,)i(\(1991\))e
1056     Fk("Document)e(Identi\256ers,)g(or)f(International)g(Standard)g(Book)g
1057     (Numbers)i(for)e(the)h(Electronic)g(Age",)423 1181 y
1058     Fe(<)p Fk(ftp://quake.thin)o(k.com/pub/)o(wais/d)o(oc/doc-i)o(ds.txt)o
1059     Fe(>)-5 1235 y Ff(Kantor)l(,)i(B.,)g(and)f(Lapsley)n(,)g(P)-5
1060     b(.,)12 b(\(1986\))d Fk("A)14 b(proposed)e(standard)h(for)g(the)g
1061     (stream-based)i(transmission)d(of)h(ne)o(ws")g(,)i(Internet)423
1062     1285 y(RFC-977,)9 b(February)h(1986.)15 b Fe(<)p Fk(ftp://ds.interni)o
1063     (c.net/rfc/rfc977)o(.txt)p Fe(>)-5 1338 y Ff(K)o(unze,)e(1994)208
1064     b Fk(J.)11 b(K)o(unze,)g(Requirements)f(for)g(URLs,)h(to)e(be)i
1065     (published.)-5 1392 y Ff(L)n(ynch,)g(C.,)g(Coallition)d(f)o(or)i
1066     (Networked)g(Inf)o(ormation:)k(\(1991\))9 b Fk("W)m(orkshop)i(on)h(ID)g
1067     (and)h(Reference)h(Structures)d(for)h(Net-)423 1442 y(worked)g
1068     (Information",)h(No)o(v)o(ember)h(1991.)24 b(See)14 b
1069     Fe(<)p Fk(wais://quake.think.com/wais-discussio)o(n-)423
1070     1492 y(archi)o(v)o(es?lynch)p Fe(>)-5 1546 y Ff(Mockapetris,)e(P)-5
1071     b(.,)12 b(\(1987\))19 b Fk("Domain)6 b(names)g(+)g(concepts)g(and)g
1072     (facilities",)i(RFC-1034,)e(USC-ISI,)g(No)o(v)o(ember)g(1987,)h
1073     Fe(<)p Fk(ftp://ds.internic.net/rfc/rf)o(c1034.txt)o
1074     Fe(>)-5 1600 y Ff(Neuman,)k(B.)f(Cliff)o(ord,)g(\(1992\))f
1075     Fk("Prospero:)31 b(A)18 b(T)m(ool)g(for)g(Or)o(ganizing)g(Internet)g
1076     (Resources",)j(Electronic)e(Networking:)423 1650 y(Research,)e
1077     (Applications)c(and)i(Polic)o(y)m(,)h(V)-5 b(ol)13 b(1)i(No)f(2,)i
1078     (Meckler)f(W)m(estport)f(CT)g(USA.)i(See)f(also)423 1700
1079     y Fe(<)p Fk(ftp://prospero.isi.edu/)o(pub/)o(prosp)o(ero/oi)o(r)n(.ps)p
1080     Fe(>)-5 1754 y Ff(P)o(ostel,)c(J)o(.)g(and)f(Reynolds,)h(J)o(.)f
1081     (\(1985\))f Fk("File)d(T)o(ransfer)g(Protocol)g(\(FTP\)",)h(Internet)f
1082     (RFC-959,)f(October)h(1985.)13 b Fe(<)p Fk
1083     (ftp://ds.internic.net/rfc/rf)o(c959.txt)o Fe(>)-5 1808
1084     y Ff(Sollins)c(1994)216 b Fk(K.)10 b(Sollins)f(and)h(L.)i(Masinter)n(,)
1085     e(Requiremnets)g(for)g(URNs,)h(to)e(be)i(published.)-5
1086     1862 y Ff(Y)-5 b(eong,)11 b(W)l(.,)g(\(1991a\))97 b Fk("T)m(o)o(wards)
1087     11 b(Networked)g(Information)g(Retrie)o(v)o(al",)h(T)m(echnical)h
1088     (report)e(91-06-25-01,)f(June)j(1991,)423 1911 y(Performance)e(Systems)
1089     g(International,)e(Inc.)15 b Fe(<)p Fk(ftp://uu.psi.com/wp/ni)o(r)n
1090     (.txt)o Fe(>)-5 1965 y Ff(Y)-5 b(eong,)11 b(W)l(.,)g(\(1991b\),)85
1091     b Fk("Representing)12 b(Public)h(Archi)o(v)o(es)h(in)e(the)i
1092     (Directory",)f(Internet)g(Draft,)h(No)o(v)o(ember)h(1991,)f(no)o(w)423
1093     2015 y(e)o(xpired.)-5 2094 y(.)-5 2968 y(Berners-Lee)1645
1094     b(13)p eop
1095     %%Page: 14 18
1096     14 17 bop -5 162 a Fk(RFC)10 b(XXX)534 b(Uniform)10 b(Resource)h
1097     (Locators)459 b(21)10 b(March)h(1994)p -5 179 1890 2
1098     v -5 313 a Fd(4.)k(Editor')n(s)f(addr)o(ess)70 404 y
1099     Fc(Tim)25 b(Berners-Lee)-5 454 y(Address:)74 b(World-Wide)24
1100     b(Web)h(project)70 504 y(CERN,)70 554 y(1211)g(Geneva)f(23,)269
1101     604 y(Switzerland)120 703 y(Telephone:)g(+41)g(\(22\)767)h(3755)-5
1102     753 y(Fax:)174 b(+41)25 b(\(22\)767)f(7155)-5 803 y(Email:)124
1103     b(timbl@info.cern.ch)-5 2968 y Fk(14)1697 b(URI)10 b(WG)p
1104     eop
1105     %%Trailer
1106     end
1107     userdict /end-hook known{end-hook}if
1108     %%EOF

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24