Sat 23 Feb 2008
Resource, Resource! Wherefore art thou Resource?
Posted by Roy T. Fielding under web architecture
[5] Comments
Noah Mendelsohn posted a pre-draft about some thoughts on resources, information resources and representations, in which he tries to make sense of the never-ending debate on httpRange-14 httpRedirections-57.
I’ve been vaguely following this discussion on the W3C TAG mailing list for some time and, against my better judgement, I feel a need to comment on the suggestions. Actually, that’s not quite right, since I really don’t have any polite comments to make on the suggestions, and I wouldn’t want to offend my friends on the TAG.
Instead, I’ll just ask a few questions about this one sentence:
A key requirement of the Semantic Web is that URIs be used
to identify resources unambiguously.
Why?
- What makes that a key requirement of the Semantic Web?
- What makes the TAG think it is feasible to satisfy that requirement?
- How will the TAG know when the requirement is (or isn’t) satisfied?
- If someone can show that this requirement is inherently unsatisfiable, doesn’t that imply the Semantic Web will never happen?
Or, is it not a requirement, and all these proposals are just an excuse to avoid designing a Semantic Web that would actually work within the same problem space of the current Web?
I don’t want the Web to constrain what people do: the Web
is not there to constrain society. It’s there to model society
in its completeness, in its entirety. [Tim Berners-Lee, 1994]
Have we forgotten why?
On the Web, millions of people mint URIs, and millions more use them in references. Millions of human beings, conversing over time, with an occasional URI thrown in to refer to a subject under discussion.
When was the last time you had an unambiguous discussion?
I think it’s a key requirement that the owner of the URI has the means to state what it identifies unambiguously.
However, that doesn’t mean that other people can’t say things that make it ambiguous. Like you imply, that’s just life.
[…] When was the last time you had an unambiguous discussion? […]
I think a lot of people have an opinion on what the key requirements should be, but there doesn’t seem to be much (if any) agreement, nor has there been adequate investigation of why these things should even be called requirements when, for the most part, they are only wishful thinking at best.
If anything, the folks doing the most talking these days have talked themselves into the same corner where the AI systems failed — the closed-world assumption. These requirements are the antithesis of what Tim included in his Design Notes:
I agree. Ambiguity occurs; design for it, not against it.
I think that the requirement is unnecessarily strong. Unambiguous identification is very difficult, impossible in some cases. All those subjects could not be talked about with such a strong requirement in place. In my opinion it would be sufficient to be able to state whether two resources identify the same subject. Such information could be provided by services. How the service learns whether two resources represent the same subject, is up to the service provider, but human control is unavoidable, although it might be supported by machines, e.g automatic reasoning for uncovering contradictions. Different service providers may provide different responses.