.comment-link {margin-left:.6em;}
Dilettante's Ball

About Me

Quædam cuiusdam
Lorcan Dempsey's Weblog
The Shifted Librarian
planet code4lib

Powered by Blogger

Rails Resolver Router: on Rails!
Since my foray into python a couple of months ago, I've been enjoying branching out into new languages.

I had pitched the concept of a link resolver router for the state universal catalog to a committee I sit on (this group talks about SFX links in the 856 tag and whatnot). The problem with making links for a publicly available resource point to your institutional resolver is just that. It's pointing your your institutional resolver, despite the fact that your audience could be coming from anywhere. This plays out even greater in a venue such as a universal catalog, since there's not really a "home institution" to point a resolver link, anyway. OCLC and UKOLN both have resolver routers, and OCLC's certainly is an option, but I don't feel comfortable with the possibility that all of our member institutions might have to pay for the service (in the future). My other problem with OCLC's service is that you can only belong to one institution and I have never liked that (especially as more and more institutions have link resolvers).

So, in this committee I mentioned that it would be pretty simple to make a router, and since I was having trouble getting people to understand what exactly I was talking about, I decided to make a proof-of-concept. And, since I was making a proof-of-concept, I thought it'd be fun to try it in Ruby on Rails.

Now, a resolver router is about the simplest concept possible. It doesn't really do anything but take requests and pass them off to the appropriate resolver. It's a resolver abstraction layer, if you will. I thought this was a nice, small project to try to cut my Ruby teeth on. There's a little bit a database, a little bit of AJAX. It's also useful, unlike making a cookbook from a tutorial or something.

It took about three days to make this. After you pick your resolver (Choose a couple! Add your own!), you'll be taken to a page to choose between your various communities for appropriate copy.

I chose this particular citation because it shows the very huge limitation of link resolvers (if you choose Georgia Tech's resolver and Emory's resolver, for instance); despite the fact that this is freely available, it does not appear in my resolver. That's not really the use case I envision, though. I am thinking more of a case like my co-worker, Heather, who should have access to Georgia Tech's collection, Florida State's resources (she's in grad school there), Richland County Public Library (she lives in Columbia, SC), and the University of South Carolina (where her husband is a librarian). The resolver router alleviates the need to search for a given citation in the various communities (indeed to even have to think of or know where to look within those communities).

Sometime later this winter, I'll have an even better use case. I'll keep that under wraps for now.

Now, my impression of Ruby on Rails... For a project like this, it is absolutely amazing. I cannot believe I was able to learn the language from scratch and implement something that works (with this amount of functionality) in such a short amount of time. By bypassing the need to create the "framework" for the application, you can just dive into implementation.

In fact, I think my time to implementation would have been even faster if the number of resources/tutorials out there didn't suck out loud. Most references point to these tutorials to get you started, but they really aren't terribly helpful. They explain nothing about why they are doing what they are doing in them. I found this blog posting to be infinitely more useful. Her blog in general is going in my aggregator, I think.

When it comes to learning Ruby, this is a masterful work of art... but... not terribly useful if you just want to look things up. I recommend this for that.

Anyway, I am so impressed with Ruby on Rails that I am planning on using it (currently) for "alternative opac project", which is now being code named "Communicat". More on this shortly (although I did actually develop the database schema today).


At 8:53 AM, December 22, 2005, Blogger ph0rman said...

How difficult do you think it would be to integrate it in with the OCLC resolver registry?
Perhaps be able to default to what OCLC thinks the person wants & you're nice lightweight top bar to be able to change?

At 9:03 AM, December 22, 2005, Blogger Ross said...

What I would like is, as somebody is typing in their institution name, it's also querying OCLC and UKOLN and whoever for the name. If they appear in one of those registries (since I'm not really trying compete, per se) then their resolver will be stored as the oclc or ukoln router.

That's the idea. It would require all of these services to have a web service that supports this, of course.

The other option (which I would prefer, but have not quite figured out how realistic it is) is to grab the institutions/resolvers out of the OCKHAM service registry.

At 10:32 AM, December 27, 2005, Anonymous Scott Shultz said...

Nice job, Ross! Since you already mention
OCLC's OpenURL Resolver Registry
I thought I'd take advantage of the free publicity and pile on a bit ;^)

My name is Scott Shultz, and I am the newbie product manager for registry services here at OCLC (which includes the resolver registry). Just to clarify, it is possible to associate an IP address with more than one resolver in our registry. My IP is currently associated with resolvers from five different institutions, and there is no limit to the number of resolvers a particular IP address can be associated with. Perhaps our GUI needs to be improved a bit in our upcoming Beta to clarify this? If my IP is associated with more than one resolver and I click on an OpenURL link through our Gateway I am prompted to select which institution's resolver I want to be directed to.

Also, I want to emphasize that we have no plans to charge institutions for the Gateway and I don't see that changing going forward. UKOLN set what I believe is the correct precedent when they built their router - that the registration and basic routing service should be free for institutional use. We feel the same way. In order for the resolver registry to be useful we have to build a critical mass of instituional participants, and to do that we have to keep the basic routing service free for library institutions.

Not that any of this should take away from your project - we are planning to offer web service interfaces to the registry going forward, and I'd look forward to discussing possible integration points with you. I just wanted to be sure that OCLC's position was clarified...

Thanks for the platform!
- Scott Shultz

At 10:39 AM, December 27, 2005, Anonymous Scott Shultz said...

Oops! Looks like I messed up the link to the information page about our
OpenURL Gateway service
in my earlier post...

At 10:18 AM, December 28, 2005, Blogger Ross said...

Scott, thanks for clarifying on this. It's nice to know that OCLC isn't planning on charging for this service.

Of course, there are still aspects that are less than ideal (which, I assume OCLC might be trying to address) like basing association on IP. How do you have 5 associations set up for yourself if it's IP based?

One of the reasons I set this up, actually, is because I can never get the OCLC router to work for me (even when I'm at work).

It flatters me to no end (and did so at the NISO OpenURL Workshop back in September, as well) to see GT's link resolver used as the screenshots/example, though :)

At 4:39 PM, December 04, 2009, Anonymous Blogspot Admin said...

Blogspot Related Links :

Buy Cialis


At 6:49 PM, January 08, 2010, Blogger venn99 said...

make money online
internet tips
work from home
Video Tips
Shopping Tips
Car Tips
Computer Tips
Travel Tips
Finance Tips

At 4:11 PM, March 12, 2010, Anonymous viagra online said...

amazing post about Rails Resolver Router: on Rails! thanks for sharing!!

At 2:26 AM, June 06, 2010, Anonymous Anonymous said...

Generic Viagra is used in the treatment of Erectile Dysfunction (impotence), but it is not a cure. Impotence can be caused by a number of factors, either physical or psychological. Viagra can help maintain an erection but it will not stimulate arousal.Generic Viagra is a prescription drug, commonly used to help treat men having erectile dysfunction (ED) problems, also known as impotence. Generic Propecia comes in tablet form and should be taken only by men without liver problems. It should be taken regularly and needs to be taken with water - food is optional. Viagra contains Sildenafil and it is a prescription drug used to treat erectile dysfunction. Erectile dysfunction is the inability of the penis to become rigid, or stay firm long enough to complete the sexual act.Generic Cialis is the buzzword prescribed for all patients suffering from impotence. Generic Levitra is an FDA-approved oral medication to treat erectile dysfunction (ED) in men.

At 11:42 PM, July 05, 2010, Anonymous Nuhman said...

Rails Resolver Router: on Rails! I think this is an hard work from you
keep it up

At 1:16 PM, July 30, 2010, Blogger Cris said...

This information is very interesting, I really enjoyed, I would like get more information about this, because is very beautiful, thanks for sharing! costa rica investment opportunities

At 2:05 PM, October 19, 2010, Anonymous Green Parks said...

Hello.. Firstly I would like to send greetings to all readers. After this, I recognize the content so interesting about this article. For me personally I liked all the information. I would like to know of cases like this more often. In my personal experience I might mention a book called Green Parks Costa Rica in this book that I mentioned have very interesting topics, and also you have much to do with the main theme of this article.


Post a Comment

Links to this post:

Create a Link

<< Home