On Wed, Apr 15, 2009 at 00:20, Jonathan Rochkind <[log in to unmask]> wrote: > Can you show me where this definition of a "URL" vs. a "URI" is made in any RFC or standard-like document? From http://www.faqs.org/rfcs/rfc3986.html ; 1.1.3. URI, URL, and URN A URI can be further classified as a locator, a name, or both. The term "Uniform Resource Locator" (URL) refers to the subset of URIs that, in addition to identifying a resource, provide a means of locating the resource by describing its primary access mechanism (e.g., its network "location"). The term "Uniform Resource Name" (URN) has been used historically to refer to both URIs under the "urn" scheme [RFC2141], which are required to remain globally unique and persistent even when the resource ceases to exist or becomes unavailable, and to any other URI with the properties of a name. An individual scheme does not have to be classified as being just one of "name" or "locator". Instances of URIs from any given scheme may have the characteristics of names or locators or both, often depending on the persistence and care in the assignment of identifiers by the naming authority, rather than on any quality of the scheme. Future specifications and related documentation should use the general term "URI" rather than the more restrictive terms "URL" and "URN" [RFC3305]. As you can see, an URI is an identifier, and a URL is a locator (mechanism for retrieval), and since a URL is a subset of an URI, you _can_ resolve URIs as well. > Sure, we have a _sense_ of how the connotation is different, but > I don't think that sense is actually formalized anywhere. It is, and the same stuff is documented in WikiPedia as well ; http://en.wikipedia.org/wiki/Uniform_Resource_Identifier http://en.wikipedia.org/wiki/Uniform_Resource_Locator > I think the sem web crowd actually embraces this confusingness, No, I think they take it at face value; they(the URIs) are identifiers for things, and can be used for just that purpose, but they are also URLs which mean they resolve to something. What I think you're coming at is that "something" thing it resolves too, as *that* has no definition. But then, if you go from RDF to Topic Maps PSIs (PSIs are URIs with an extended meaning), *that* thing it resolves to indeed has a definition; it's the prose explaining what the identifier identifies, and this is the most important difference between RDF and Topic Maps (and a very subtle but important difference, too). > they want to have it both ways: Oh, a URI doesn't need to resolve, > it's just an opaque identifier; but you really should use http URIs > for all URIs; why? because it's important that they resolve. I smell straw-man. :) But yes, they do want both, as both is in fact a friggin' smart thing to have. We all deal with identifiers all the time, in internal as external applications, so why not use an indetifier scheme that has the added bonus of adding a resolver mechanism? If you want to be stupid and lock yourself in your limited world, then using them as just identifiers is fine but perhaps a bit, well, stupid. But if you want to be smart about it, realizing that without ontological work there will *never* be proper interop, you use those identifiers and let them resolve to something. And if you're really smart, you let them resolve to either more RDF statements, or, if you're seriously Einsteinly smart, use PSIs (as in Topic Maps) :). > In general, combining two functions in one mechanism is a > dangerous and confusing thing to do in data design, in my opinion. Because ... ? > By analogy, it's what gets a lot of MARC/AACR2 into trouble. Hmm, and I thought it was crap design that did that, coupled with poor metadata constraints and validation channels, untyped fields, poor tooling, the lack of machine understandability, and the general library idiom of "not invented here". But correct me if I'm wrong. :) > Over in: http://www.w3.org/2001/tag/doc/URNsAndRegistries-50-2006-08-17.html Umm, I'd be wary to take as canon a draft with editorial notes going back 4 to 5 years that still aren't resolved. In other words, this document isn't relevant to the real world. Yet. > They suggest: "URI opacity 'Agents making use of URIs SHOULD NOT attempt to infer properties of the referenced resource.'" Well, as a RESTafarian I understand this argument quite well. It's about not assuming too much from the internal structure of the URI. Again, it's an identifier, not a scheme such as an URL where structure is defined. Again, for URIs, don't assume structure because at this point it isn't an URL. > If I get a URI representing (eg) a Sudoc (or an ISSN, or an LCCN), I need to > be able to tell from the URI alone that it IS a Sudoc, AND I need to be able > to extract the actual SuDoc identifier from it. That completely violates their > Opacity requirement I think you are quite mistaken on this, but before we leap into wheter the web is suitable for SuDoc I'd rather point out that SuDoc isn't web friendly in itself, and *that* more than anything stands in the way of using them with the web. Also, having a unified resolver for SuDoc isn't hard, can be at a fixed URL, and use a parameter for identifiers. You don't need to snoop the non-parameterized section of an URI to get the ID's ; http://somewhere.com/sudoc?id=Y%203.C%2076/3:2%20K%2054 It's up to the server-side to deal with that URI and pick out the parameters as it sees fit, not the creator of the URI (ie. the client). > but it's entirely infeasible to require me to make an individual HTTP request > for every URI I find, to figure out what it IS. No it's not; if you design your system RESTfully (which, indeed, HTTP is) then the discovery part can be fast, cached, and using URI templates embedded in HTTP responses, fully flexible and fit for your purposes. > But I just want a darn SuDoc in a URI -- and there are advantages to > putting a SuDoc in a URI _precisely_ so it can be used in URI-using > infrastructures like RDF, and these advantages hold _even if_ it's not > resolvable and we ignore the 'opacity' reccommendation. http://somewhere.com/sudoc?id=Y%203.C%2076/3:2%20K%2054 The trick isn't to do it; the trick is to have people agree on how to do it. The mechanisms are there, ripe for the taking, but you still need people to agree on how it's done. Off you go, start that conversation with others that have an interest in SuDoc. Kind regards, Alex -- --------------------------------------------------------------------------- Project Wrangler, SOA, Information Alchemist, UX, RESTafarian, Topic Maps ------------------------------------------ http://shelter.nu/blog/ --------