# Decoding a URI
There was a little discussion the other day about how to decode a URI. Here is my opinion on decoding a URI.
Here is an example URI:
http://www.w3.org/People/Berners-Lee/card#i
The question as asked, what do you call the bit before the hash and the bit after the hash.
Tim Berners-Lees answer was: “After the hash, I like localname or localid”
Which does indeed make sense, but we might be able to come up with something better.
Another answer on the IRC was: “branch/leaf”, descriptive and also a good naming solution, but the tree synonym is used so much in the computing industry.
My decoding:
This bit (before the hash #):
http://www.w3.org/People/Berners-Lee/card
I call the “space”
and this bit (after the hash #):
i
I call the “identity”
I feel that space and identity actually fit it perfectly. You have a particular space where you define your object, it is within your data/domain space. You then have an identity, literally being the object that we are talking about.
Any thoughts? Maybe you have a good suggestion?
Thank you,
Daniel
Technorati Tags: uri, rdf, identity, dataspace
[UPDATE date=”6th December 2007″]
I forgot to actually explain the reason I feel that “space” and “identity” actually fit perfectly.
Within the Data Web, an objects/resources identity is separate from the location it is in… this is the difference between URI and URL. The URI is a resources identity, whereas a URL is simply a location.
You can now see that before that hash in the URI, it is the space for meaningful data to reside and after the hash it is the true identity of a particular resource.
Kingsley Idehen has tried to explain this before:
- Fourth Platform: Data Spaces in The Cloud
- Semantic Web Data Spaces
- Data Spaces and Web of Databases
- and many more
The W3C have more information about URIs and URLs if you want to know more.
[/UPDATE]


December 6th, 2007 at 12:39 pm
hmm…but to identify something you need both what you’re calling the space and identity.
When talking about this stuff in the past I think I’ve usually referred to the bit before the # as the base and the bit after as the local name. But I’m beginning to think that simply using namespace/local name is better (without any necessary tie to XML namespaces).