GridLab
Grid Application Toolkit

A simple API for Grid Applications
GAT

Menu



next up previous contents
Next: Absolute URI's Up: Basic Web Concepts Previous: Wonderful World Wide Web   Contents


URI's Relative and Absolute

A Uniform Resource Identifier (URI), to quote the Vulgate RFC 2396, is a ``compact string of characters for identifying an abstract or physical resource.'' (This is one of the few, very few, times in which the standard actually has a description an actual human can parse.) The only ``double talk'' in this definition are the terms ``abstract or physical resource.'' What exactly does this mean? Well it actually means exactly what is says, who'd of ``thunk'' it? Let's illustrate through an example. A URI may identify various things on the ``net.'' For example it may identify a computer and how to contact it. A computer, by even the most Luddite[*] of rekoning, is a physical resource. (Even a Luddite would have to acknowledge that a computer is at least good for one cathartic ``Hulk smash.'') Another example; a URI may identify a file on a computer disk. Some would argue that a computer file is indeed a physical resource, but others would argue that it's a non-physical resource. However, even Ned Ludd[*] himself would acknowledge that a computer file is at least an abstract resource. So, a URI, just as the standard says, identifies an ``abstract or physical resource.''

A URI comes in two ``flavors'' absolute and relative. Absolute URI's identify an abstract or physical resource, where as relative URI's identify an abstract or physical resource only relative to another URI. For exmaple, if we are thinking in a Luddite mode about resources, we might want to identify all the computers in a given region as resources for a ``Hulk smash.'' We could identify all such computers with their longitude and latitude, so we could later find them with our military grade hacked GPS system (We're Luddites but not stupid, ya' know.). We could equivalently identify one of these computers, HAL 9000 say, with its longitude and latitude then identify all the other ones by giving their displacements relative to HAL 9000 (DeepBlue is 23.2m north and 16.2m east of HAL 9000.) The first way of identifying all the computers is absolute, given the longitude and latitude of an computer you can find it, no problem. The second way of identifying is relative, given the longitude and latitude of HAL 9000 you can find DeepBlue by going 23.2m north and 16.2m east of HAL 9000. The case for URI's is exactly analogous to this. An absolute URI is all you need to identify a given abstract or physical resource. A relative URI identifies a abstract or physical resource only relative to another abstract or physical resource. The process of finding an abstract or physical resource using a relative URI is called resolving the URI. So, in our example above, if Gary Kasparov was on one of his famous drinking binges and wanted to lay a good ``Hulk smash'' on DeepBlue (As he couldn't lay one on DeepBlue with one thing b-thing, he decided to lay it on with another, his brawn), he'd have to resolve the location of DeepBlue relative to HAL 9000 by going 23.2m north and 16.2m east of HAL 9000. While he was at it he might as well give HAL 9000 a good one over too. ``That one's a present from Dave!''



Subsections
next up previous contents
Next: Absolute URI's Up: Basic Web Concepts Previous: Wonderful World Wide Web   Contents
Andre Merzky 2004-05-13