You may find it useful to look at the 'raw' version of the handle that
Sean is using in his examples, to see what is going on there.
If you address the hdl.handle.net proxy with no arguments at all, i.e.,
http://hdl.handle.net/
you'll see a query page in which you can type or paste a handle and
check a box that says
Don't Redirect to URLs
This will show you a formatted version of the handle record. For
Sean's examples, just use the handle without the parameters -- 200/0
The parameters, e.g., type=urn, are for the proxy, and aren't part of
the handle record. Having the proxy select handle values of a certain
type is just one possible use of types -- other client applications
could, and have been, built that also key off the various types.
The most common use of non-URL types is probably internal to the
handle system - the core handle client will begin any resolution by
either examining a cache or contacting the global root to find where
to go to resolve any handle. It gets this by resolving the prefix. All
handle prefixes, e.g., the 200 in 200/0 are held in the global root as
handles of the form 0.NA/someprefix, e.g., 0.NA/200. If you follow
that handle using the technique described above you'll find a type
called HS_SERV. This is the type for the handle service responsible
for all handles starting with 200. The value of that type is generally
another handle and if you resolve that handle you'll find one or more
type/value pairs for HS_SITE, which is a binary data structure
containing the specifics of IPs, ports, hashing schemes, etc., that
the client uses to get the end resolution of the handle. 200 may be a
confusing prefix to use, since its homed in the root service, but you
should be able to follow that pattern for any handle.
Larry
On Mar 29, 2007, at 4:25 AM, Sean Reilly wrote:
On Mar 28, 2007, at 2:42 PM, Konstantin Rekk wrote:
Is there any working demonstration for a use case including general
type/value pairs? May be using the proxy (or extending it) by providing
get-attributes within request
A theoretical example: providing urn and not url, something like
http://hdl.handle.net?type=urn -> gives a urn-redirect (if browser
supports it) -
one thinkable application (don't know if that makes sense) of this
could
be to store handles for resources which are provided by external
repositories and which
are using urns;
instead of urn one could also use ppn (production numbers) for the
library catalog entry, so handle system would provide a two directional
link between digital object and catalog entry ...
Hi Konstantin,
Some of the parameters that can be passed to the proxy are described
here:
http://www.handle.net/proxy.html
There are also additional parameters that the proxy understands, some
of which are supported and some are not (meaning they could go away
or how they work could change).
One parameter that I think is supported is "type," as in your
example. So you can tell the proxy to resolve handle values that
have a type that is provided in the URL. For example, if you want to
resolve the handle 200/0 and redirect to the value with the type of
"URL.A" then you can do:
http://hdl.handle.net/200/0?type=URL.A
You can also give it the type URN:
http://hdl.handle.net/200/0?type=URN
but the proxy currently doesn't understand that URN is a
redirect-able type so it just displays the value instead of sending
an HTTP redirect. The proxy will currently send an HTTP redirect for
values with type URL or that start with "URL."
I think this list is a good place to post and discuss additional
features that you'd like to see, in case the feature described above
don't cover your needs.
Thanks,
Sean
_______________________________________________
Handle-Info mailing list
Handle-Info@cnri.reston.va.us
http://www.handle.net/mailman/listinfo/handle-info