At Thu, 2 Apr 2009 13:47:50 +0100,
Mike Taylor wrote:
>
> Erik Hetzner writes:
> > Without external knowledge that info:doi/10.1111/xxx is a URI, I can
> > only guess.
>
> Yes, that is true. The point is that by specifying that the rft_id
> has to be a URI, you can then use other kinds of URI without needing
> to broaden the specification. So:
> info:doi/10.1111/j.1475-4983.2007.00728.x
> urn:isbn:1234567890
> ftp://ftp.indexdata.com/pub/yaz
>
> [Yes, I am throwing in an ftp: URL as an identifier just because I can
> -- please let's not get sidetracked by this very bad idea :-) ]
>
> This is not just hypothetical: the flexibility is useful and the
> ecapsulation of the choice within a URI is helpful. I maintain an
> OpenURL resolver that handles rft_id's by invoking a plugin
> depending on what the URI scheme is; for some URI schemes, such as
> info:, that then invokes another, lower-level plugin based on the
> type (e.g. "doi" in the example above). Such code is straightforward
> to write, simple to understand, easy to maintain, and nice to extend
> since all you have to do is provide one more encapsulated plugin.
Thanks for the clarification. Honestly I was also responding to Rob
Sanderson’s message (bad practice, surely) where he described URIs as
‘self-describing’, which seemed to me unclear. URIs are only
self-describing insofar as they describe what type of URI they are.
I think that all of us in this discussion like URIs. I can’t speak
for, say, Andrew, but, tentatively, I think that I prefer
<info:doi/10.1111/xxx> to plain 10.111/xxx. I would just prefer
<http://dx.doi.org/10.1111/xxx>
> > (Caveat: I have no idea what rft_id, etc, means, so maybe that
> > changes the meaning of what you are saying from how I read it.)
>
> No, it's doesn't :-) rft_id is the name of the parameter used in
> OpenURL 1.0 to denote a referent ID, which is the same thing I've been
> calling a Thing Identifier elsewhere in this thread. The point with
> this part of OpenURL is precisely that you can just shove any
> identifier at the resolver and leave it to do the best job it can.
> Your only responsibility is to ensure that the identifier you give it
> is in the form of a URI, so the resolver can use simple rules to pick
> it apart and decide what to do.
Thanks.
best,
Erik Hetzner
|