About the URLs to access objects, it's really a matter for each DSpace UI webapp to implement, isn't it? I think it's important to include a pathname component to introduce the encoded(*) object-URI, however, just to protect against namespace collisions -- e.g. what if the UI design had one of its own URLs starting with "doi"?
How about the word "resource" to introduce the URI, since it is, after all, a reference to a resource -- the "R" in URI. It'd be: <prefix>/resource/<encoded-URI> e.g. http://dspace.me.ac.uk/resource/hdl/1234/56 This follows the proposal to encode the URI by tearing off the scheme and putting it in a separate pathname element to avoid issues over quoting the ":". Note that I propose using the actual scheme label in the URL rather than a user-friendly label, e.g. "hdl" rather than "handle". Re special characters and quoting: I agree with James' original point that the HTTP URL spec has quoting rules for just this reason, but from a practical point of view, the client and server implementations have a lot of bugs in this area. That's what I discovered implementing WebDAV for the LNI: it wasn't worth trying to encode a slash (/) in a URL, e.g. within a Handle, because it would just get stomped on differently by the different clients. Better to let it get used literally as a path element separator and make the servlet clever enough to figure it out. Also, construct the servlet's URL so the whole path after a certain point is part of the object URI, e.g. the Handle. Also note that the transformation from object URI to the actionable URL is reversible -- we can pull the URI's scheme and path right out of the URL and put it back together unambiguously. I think it's essential to have one unambiguous transformation for all URIs. > > 3) Including special characters in the URL string doesn't seem like a > > good idea. While they are valid characters, it does take extra > > processing to encode/decode them from layer to layer. Why not just > > leave the URL alone or change /handle to something like /uri, /id, or > > /pid? Why encode the PI system into the URI? > > As I mention on the wiki, my current idea is to have URLs of the form: > > http://dspace.me.ac.uk/uri/hdl:1234/56 > > which will resolve to the object with Handle 1234/56, etc. If the > object also has a DOI with value 7890/12 then the following URL would > point to the object as well: > > http://dspace.me.ac.uk/uri/doi:7890/12 > > It is necessary to include the "hdl:" and "doi:" parts so we can > distinguish between different persistent identifier mechanisms. The > values allowed for the persistent identifier are dependent on the > mechanism we are dealing with, and as far as possible this will be kept > simple. -- Larry ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ DSpace-tech mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/dspace-tech

