hen you think about the success of the Internet, your mind probably goes to the vast libraries of digital content: explosive social networks linking gamers, grannies, geeks, and gamblers; torrents of email, both wanted and unwanted; the ability to find out who "that guy" was in "that show" within a matter of seconds. When you think about the future, you may think about bots and spiders, agents, logical inferences, ontologies, improved search, and all the promised trappings of the semantic web.
As big and powerful and wonderful and complex as all of this content is, one of the fundamental technologies of the web is a simple, flexible, and comprehensive naming scheme: the Uniform Resource Identifier (URI). The URI specification (RFC3986 in the latest form) is a fairly light document, but it has allowed for the naming of billions of documents, objects, concepts, and other resources. It supports a variety of access schemes and was designed from the beginning to grow with the web.
This discussion will introduce you to the URI specification as well as highlight some pitfalls you might encounter if you don't use care in selecting how you identify information resources. Anyone who has ever had to change their name legally will understand the hassle of impermanent naming schemes.
A naming specification doesn't seem very exciting, and yet names make all the difference. Without names, we would be subject to unending vaudeville in our daily lives:
Me: "Hey, you!"|
You #1: "Me?"
Me: "No, you!"
You #2: "Me?"
Me: "No, the other you!"
Other You: "Hey, what's up?"
Me: "No, the other, other you!"
Even in conceptualizing this silly little conversation, it was necessary to name the speakers to disambiguate who is saying what. Fundamentally, that is what the URI schemes provide: identity and thus disambiguation in a very large information space. You can imagine the tragic impact URIs and disambiguation would have on Abbott and Costello's famous baseball sketch! (that is, http://www.stlwolves.com/team#Who, http://www.stlwolves.com/team#What, http://www.stlwolves.com/team#IdontKnow)