Thursday, November 17, 2005

Would a:rose by any other URN smell as sweet?

Here I continue with the questions raised in the previous post. My answer to this question is basically summed up in this xml-dev post Reading between the lines, the answer to the subject line is “maybe”. If it’s a different URN it’s a different rose; they may not smell the same at all.

Naming things distinctly is crucial to the REST camps vision of the world. If you can’t name something you can’t identify it and retrieve it. However, this means we need a lot of URN’s. Not only do we need a lot of URN’s we need to have some way of understanding the URN’s. An identifier might be opaque (what does id=1234567687 mean?), but once you start naming things you really want to know the semantics of the names. If you don’t know the semantics you need some way of discovering them. If I’m looking for roses I need to know that Rosa and Rose may mean the same thing.

Alternatively, you don’t name everything. You serve up bigger blobs that people can do discovery inside of. When looking for roses you’ve got to know to look for florists first. Either way, discovery is part of the future of the semantic web. That seems to mean that pure REST isn’t possible in the broadest sense, but I wonder if anyone ever thought it would solve all the worlds problems?

More thoughts on discovery and naming from xml-dev.

Wednesday, April 20, 2005

Separated at birth

 
So what do you think, is this just coincidence? The implications of it being one and the same person are "interesting". Maybe there's truth to the idea that Microsoft is "evil"? Even worse, is there perhaps an "evil" penguin trying to penetrate the Linux world?

For the most part humans aren't going to have trouble deciding these are really two different people. However, computers don't have it so easy. Part of the solution may lie in ontologies. Ontologies tell us how everything is related to each other. Once you know something is related to something you have a clue if two things are the same thing: are they related to the same things? If not, they can't be the same thing. If they are related to the same things, well we still may not know for sure. Conversely, we can't build ontologies if we don't agree on identities. Ontologies are work, people have to build them and agree to them. Identifying things for ontologies seems even harder.

Don't look for WWW URIs for help on this issue. In particular, don't ever assume that you really even know what lies at the end of a URI. It's a resource, but there really isn't a concrete definition of a "resource". That's mostly by design, the WWW doesn't think URIs in themselves hand out guarantees. I can buy into this, but if we can't know that two resources are the same then building ontologies becomes even more complex.

So is there a solution on the horizon? Not that I can see (pun intended...)