/[suikacvs]/webroot/www/2004/id/draft-ietf-uri-urn-req-00.txt
Suika

Contents of /webroot/www/2004/id/draft-ietf-uri-urn-req-00.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (show annotations) (download)
Tue Jun 15 08:04:06 2004 UTC (19 years, 11 months ago) by wakaba
Branch: MAIN
CVS Tags: HEAD
File MIME type: text/plain
New

1
2 INTERNET DRAFT K. Sollins
3 Requirements for Uniform Resource Names MIT/LCS
4 draft-ietf-uri-urn-req-00.txt L. Masinter
5 Replaces draft-sollins-urn-02.txt Xerox Corporation
6 Expires March 10, 1995 September 10, 1994
7
8
9 Requirements for Uniform Resource Names
10
11 Status of this Memo
12
13 This memo provides information for the Internet community. This memo
14 does not specify an Internet standard of any kind. Distribution of
15 this memo is unlimited.
16
17 1. Introduction
18
19 This document sets out the requirements for Uniform Resource Names
20 (URNs) within a larger Internet information architecture, which in
21 turn is composed of, additionally, Uniform Resource Characteristics
22 (URCs), and Uniform Resource Locators (URLs). URNs are used for
23 identification, URCs for including meta-information, and URLs for
24 locating or finding resources. It is provided as a basis for
25 evaluating standards for URNs. The discussions of this work have
26 occurred on the mailing list uri@bunyip.com and at the URI Working
27 Group sessions of the IETF.
28
29 The requirements for uniform resource names (URNs) fit within the
30 overall architecture of Uniform Resource Identification. In order to
31 build applications in the most general case, the user must be able to
32 discover and identify the information, objects, or what we will call
33 in this architecture resources, on which the application is to
34 operate. Beyond this statement, the URI architecture does not
35 define "resource." As the network and interconnectivity grow, the
36 ability to make use of remote, perhaps independently managed,
37 resources will become more and more important. This activity of
38 discovering and utilizing resources can be broken down into those
39 activities where one of the primary constraints is human utility and
40 facility and those in which human involvement is small or nonexistent.
41 Human naming must have such characteristics as being both mnemonic and
42 short. Humans, in contrast with computers, are good at heuristic
43 disambiguation and wide variability in structure. In order for
44 computer and network based systems to support global naming and
45 access to resources that have perhaps an indeterminate lifetime, the
46 flexibility and attendant unreliability of human-friendly names
47 should be translated into a naming infrastructure more appropriate
48 for the underlying support system. It is this underlying support
49 system that the Internet Information Infrastructure Architecture
50 (IIIA) is addressing.
51
52 Within the IIIA, several sorts of information about resources are
53 specified and divided among different sorts of structures, along
54 functional lines. In order to access information, one must be able
55 to discover or identify the particular information desired,
56 determined both how and where it might be used or accessed. The
57
58
59 Sollins & Masinter [Page 1]
60
61 INTERNET-DRAFT Requirements for Uniform Resource Names Sept. 10,1994
62
63
64 partitioning of the functionality in this architecture is into
65 uniform resource names (URN), uniform resource characteristics (URC),
66 and uniform resource locators (URL). A URN identifies a resource or
67 unit of information. It may identify, for example, intellectual
68 content, a particular presentation of intellectual content, or
69 whatever a name assignment authority determines is a distinctly namable
70 entity. A URL identifies the location or a container for an instance
71 of a resource identified by a URN. The resource identified by a URN
72 may reside in one or more locations at any given time, may move, or
73 may not be available at all. Of course, not all resources will move
74 during their lifetimes, and not all resources, although identifiable
75 and identified by a URN will be instantiated at any given time. As
76 such a URL is identifying a place where a resource may reside, or a
77 container, as distinct from the resource itself identified by the
78 URN. A URC is a set of meta-level information about a resource.
79 Some examples of such meta-information are: owner, encoding, access
80 restrictions (perhaps for particular instances), cost.
81
82 With this in mind, we can make the following statement:
83
84 o The purpose or function of a URN is to provide a globally unique,
85 persistent identifier used for recognition, for access to
86 characteristics of the resource or for access to the resource
87 itself.
88
89 More specifically, there are two kinds of requirements on URNs:
90 requirements on the functional capabilities of URNs, and requirements
91 on the way URNs are encoded in data streams and written
92 communications.
93
94 2. Requirements for functional capabilities
95
96 These are the requirements for URNs' functional capabilities:
97
98 o Global scope: A URN is a name with global scope which does not
99 imply a location. It has the same meaning everywhere.
100
101 o Global uniqueness: The same URN will never be assigned to two
102 different resources.
103
104 o Persistence: It is intended that the lifetime of a URN be
105 permanent. That is, the URN will be globally unique forever, and
106 may well be used as a reference to a resource well beyond the
107 lifetime of the resource it identifies or of any naming authority
108 involved in the assignment of its name.
109
110 o Scalability: URNs can be assigned to any resource that might
111 conceivably be available on the network, for hundreds of years.
112
113
114
115
116
117
118 Sollins & Masinter [Page 2]
119
120 INTERNET-DRAFT Requirements for Uniform Resource Names Sept. 10, 1994
121
122
123 o Legacy support: The scheme must permit the support of existing
124 legacy naming systems. For example, ISBN numbers, ISO public
125 identifiers, UPC product codes and the like are naming schemes
126 which should be allowed to be embedded within the URN system.
127
128 o Extensibility: Any scheme for URNs must permit future extensions to
129 the scheme.
130
131 o Independence: It is solely the responsibility of a name issuing
132 authority to determine the conditions under which it will issue a
133 name.
134
135 o Resolution: A URN will not impede resolution (translation into a
136 URL, q.v.). To be more specific, for URNs that have corresponding
137 URLs, there must be some feasible mechanism to translate a URN to a
138 URL.
139
140 3. Requirements for URN encoding
141
142 In addition to requirements on the functional elements of the URNs,
143 there are requirements for how they are encoded in a string:
144
145 o Single encoding: The encoding for presentation for people in clear
146 text, electronic mail and the like is the same as the encoding in
147 other transmissions.
148
149 o Simple comparison: A comparison algorithm for URNs is simple,
150 local, and deterministic. That is, there is a single algorithm for
151 comparing two URNs that does not require contacting any external
152 server, is well specified and simple.
153
154 o Human transcribability: For URNs to be easily transcribable by
155 humans without error, they should be short, use a minimum of
156 special characters, and be case insensitive. (There is no strong
157 requirement that it be easy for a human to generate or interpret a
158 URN; explicit human-accessible semantics of the names is not a
159 requirement.) For this reason, URN comparison is insensitive to
160 case, and probably white space and some punctuation marks.
161
162 o Transport friendliness: A URN can be transported unmodified in the
163 common Internet protocols, such as TCP, SMTP, FTP, Telnet, etc., as
164 well as printed paper.
165
166 o Machine consumption: A URN can be parsed by a computer.
167
168 o Text recognition: The encoding of a URN should enhance the
169 ability to find and parse URNs in free text.
170
171
172
173
174
175 Sollins & Masinter [Page 3]
176
177 INTERNET-DRAFT Requirements for Uniform Resource Names Sept. 10, 1994
178
179
180 4. Implications
181
182 For a URN specification to be acceptible, it must meet the previous
183 requirements. We draw a set of conclusions, listed below, from
184 those requirements; a specification that satisfies the requirments
185 without meetings these conclusions is deemed acceptable, although
186 unlikely to occur.
187
188 o To satisfy the requirements of uniqueness and scalability, name
189 assignment is delegated to naming authorities, who may then assign
190 names directly or delegate that authority to sub-authorities.
191 Uniqueness is guaranteed by requiring each naming authority to
192 guarantee uniqueness. The names of the naming authorities
193 themselves are persistent and globally unique and top level
194 authorities will be centrally registered.
195
196 o Naming authorities that support scalable naming are encouraged, but
197 not required. Scalability implies that a scheme for devising names
198 may be scalable both at its terminators as well as within the
199 structure; e.g., in a hierarchical naming scheme, a naming
200 authority might have an extensible mechanism for adding new
201 sub-registries.
202
203 o It is strongly recommended that there be a mapping between the
204 names generated by each naming authority and URLs. At any specific
205 time there will be zero or more URLs into which a particular URN
206 can be mapped. The naming authority itself need not provide the
207 mapping from URN to URL.
208
209 o For URNs to be transcribable and transported in mail, it is
210 necessary to limit the character set usable in URNs, although there
211 is not yet consensus on what the limit might be.
212
213 In assigning names, a name assignment authority must abide by the
214 preceding constraints, as well as defining its own criteria for
215 determining the necessity or indication of a new name assignment.
216
217 5. Other considerations
218
219 There are three issues about which this document has intentionally not
220 taken a position, because it is believed that these are issues to be
221 decided by local determination or other services within an information
222 infrastructure. These issues are equality of resources, reflection of
223 visible semantics in a URN, and name resolution.
224
225 One of the ways in which naming authorities, the assigners of names,
226 may choose to make themselves distinctive is by the algorithms by
227 which they distinguish or do not distinguish resources from each
228 other. For example, a publisher may choose to distinguish among
229 multiple printings of a book, in which minor spelling and
230 typographical mistakes have been made, but a library may prefer not to
231 make that distinction. Furthermore, no one algorithm for testing
232 for equality is likely to applicable to all sorts of information.
233 For example, an algorithm based on testing the equality of two
234
235
236 Sollins & Masinter [Page 4]
237
238 INTERNET-DRAFT Requirements for Uniform Resource Names Sept. 10, 1994
239
240
241 books is unlikely to be useful when testing the equality of two
242 spreadsheets. Thus, although this document requires that any
243 particular naming authority use one algorithm for determining
244 whether two resources it is comparing are the same or different,
245 each naming authority can use a different such algorithm and a
246 naming authority may restrict the set of resources it chooses to
247 identify in any way at all.
248
249 A naming authority will also have some algorithm for actually choosing
250 a name within its namespace. It may have an algorithm that actually
251 embeds in some way some knowledge about the resource. In turn, that
252 embedding may or may not be made public, and may or may not be visible
253 to potential clients. For example, an unreflective URN, simply
254 provides monotonically increasing serial numbers for resources. This
255 conveys nothing other than the identity determined by the equality
256 testing algorithm and an ordering of name assignment by this server.
257 It carries no information about the resource itself. An MD5 of the
258 resource at some point, in and of itself may be reflective of its
259 contents, and, in fact, the naming authority may be perfectly willing
260 to publish the fact that it is using MD5, but if the resource is
261 mutable, it still will be the case that any potential client cannot do
262 much with the URN other than check for equality. If, in contrast, a
263 URN scheme has much in common with the assignment ISBN numbers, the
264 algorithm for assigning them is public and by knowing it, given a
265 particular ISBN number, one can learn something more about the
266 resource in question. This full range of possibilities is allowed
267 according to this requirements document, although it is intended that
268 naming authorities be discouraged from making accessible to clients
269 semantic information about the resource, on the assumption that that
270 may change with time and therefore it is unwise to encourage people in
271 any way to depend on that semantics being valid.
272
273 Last, this document intentionally does not address the problem of name
274 resolution, other than to recommend that for each naming authority a
275 name translation mechanism exist. Naming authorities assign names,
276 while resolvers or location services of some sort assist or provide
277 URN to URL mapping. There may be one or many such services for the
278 resources named by a particular naming authority. It may also be the
279 case that there are generic ones providing service for many resources of
280 differing naming authorities. Some may be authoritative and others
281 not. Some may be highly reliable or highly available or highly
282 responsive to updates or highly focussed by other criteria such as
283 subject matter. Of course, it is also possible that some naming
284 authorities will also act as resolvers for the resources they have
285 named. This document supports and encourages third party and
286 distributed services in this area, and therefore intentionally makes
287 no statements about requirements of URNs or naming authorities on
288 resolvers.
289
290
291
292
293
294
295
296
297 Sollins & Masinter [Page 5]
298
299 INTERNET-DRAFT Requirements for Uniform Resource Names Sept. 10, 1994
300
301
302 References
303
304 Security Considerations
305
306 Applications that require translation from names to locations, and
307 the resources themselves may require the resources to be
308 authenticated. It seems generally that the information about the
309 authentication of either the name or the resource to which it refers
310 should be carried by separate information passed along with the URN
311 rather than in the URN itself.
312
313 Author's Address
314
315 Larry Masinter Karen Sollins
316 Xerox Palo Alto Research Center MIT Laboratory for Computer Science
317 3333 Coyote Hill Road 545 Technology Square
318 Palo Alto, CA 94304 Cambridge, MA 02139
319 masinter@parc.xerox.com sollins@lcs.mit.edu
320 Voice: (415) 812-4365 Voice: (617) 253-6006
321 Fax: (415) 812-4333 Tel: (617) 253-2673
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358 Sollins & Masinter [Page 6]
359

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24