On 21/10/2011 12:52, Leigh Dodds wrote:
Hi,
On 21 October 2011 08:47, Dave Reynolds<[email protected]> wrote:
...
On 20 October 2011 10:34, Dave Reynolds<[email protected]> wrote:
...
If you have two resources and later on it turns out you only needed one,
no big deal just declare their equivalence. If you have one resource
where later on it turns out you needed two then you are stuffed.
Ed referred to "refactoring". So I'm curious about refactoring from a
single URI to two. Are developers necessarily stuffed, if they start
with one and later need two?
For example, what if I later changed the way I'm serving data to add a
Content-Location header (something that Ian has raised in the past,
and Michael has mentioned again recently) which points to the source
of the data being returned.
Within the returned data I can include statements about the document
at that URI referred to in the Content-Location header.
Doesn't that kind of refactoring help?
Helps yes, but I don't think it solves everything.
Suppose you have been using http://example.com/lovelypictureofm31 to denote
M31. Some data consumers use your URI to link their data on M31 to it. Some
other consumers started linking to it in HTML as an IR (because they like
the picture and the accompanying information, even though they don't care
about the RDF). Now you have two groups of users treating the URI in
different ways. This probably doesn't matter right now but if you decide
later on you need to separate them then you can't introduce a new URI
(whether via 303 or content-location header) without breaking one or other
use. Not the end of the world but it's not a refactoring if the test cases
break :)
Does that make sense?
No, I'm still not clear.
If I retain the original URI as the identifier for the galaxy and add
either a redirect or a Content-Location, then I don't see how I break
those linking their data to it as their statements are still made
about the original URI.
But I don't see how I'm breaking people linking to it as if it were an
IR. That group of people are using my resource ambiguously in the
first place. Their links will also still resolve to the same content.
Ah OK. So you introduce a new, different IR, but preserve the conneg so
that old HTML pages links to the picture still resolve. Yes you are
right, I think that does work.
Dave