From rochkind at jhu.edu Wed Apr 1 11:32:23 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Wed, 01 Apr 2009 11:32:23 -0400 Subject: [Umlaut-general] ISI and Scopus service adapters Message-ID: <49D38907.5090000@jhu.edu> An ISI and a Scopus plug-in are committed to Umlaut. I haven't added them to the 'default' services.yml and institutions.yml yet though. I think I wouldn't do that until we actually go live with them here, we're still testing at present. But should I do that at all, since they require registration with ISI and Scopus to work? Any opinion? I've also updated the online API documentation (generated automatically with rdoc) at: http://umlaut.rubyforge.org/api/ I have a rake task to do that, but need to run it periodically to update it to current code. Which I just did. See more complete documentation of standard response keys at: http://umlaut.rubyforge.org/api/classes/ServiceResponse.html Although the formatting is still a bit weird,apparently the markup I used didn't do what I thought it would. Jonathan From rochkind at jhu.edu Wed Apr 1 18:17:43 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Wed, 01 Apr 2009 18:17:43 -0400 Subject: [Umlaut-general] debug info on resolve menu Message-ID: <49D3E807.4070007@jhu.edu> So, we've got links from several different sources showing up on the Umlaut menu. Principally SFX and our local ILS. Sometimes someone notices that one of them is wrong or broken in some way. It's useful to then know where it came from, which depending on the link can be more or less subtle. Just committed to umlaut , now including some 'debugging' information on the resolve menu. It appears in a hidden div (style="display:none") with class="debug_info". All of those hidden divs can be switched visible with javascript. You can include a link to toggle them all visible by simply including <%= link_to_toggle_debug_info %> in your footer. The default layout now does this. Debug info displayed includes the ID of the service that generated the link, and any additional info stored with key :debug_info by the service adapter. The SFX service adapter stores SFX kb IDs here. If you use MarcHelper#add_856_links to generate responses for MARC 856 tags, then the MARC 001 field, if present, will also be included here labelled "Bib ID". I am hoping that at my local institution, this will take me 'out of the loop' of some troubleshooting of the service. Other librarians can find out for themselves what before they had to ask me to do. When I do have to do it, it'll be a lot quicker now. :) Jonathan From rochkind at jhu.edu Wed Apr 1 19:56:03 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Wed, 1 Apr 2009 19:56:03 -0400 Subject: [Umlaut-general] ISI and Scopus service adapters In-Reply-To: <49D38907.5090000@jhu.edu> References: <49D38907.5090000@jhu.edu> Message-ID: <90FF863A96E1EC42B8B240D04C88FB1D73406AD3@JHEMTEXVS2.win.ad.jhu.edu> Oh, I forgot to say that ALSO includes a service adapter plugin for putting a link to Thomson Journal Citation Reports "Impact Factor" for a journal title on the Umlaut page. That will work even for title-level displays (like from an OPAC), unlike the ISI/Scopus stuff that is for article-level citations. My librarians are excited about that one, and seem to think that some faculty will be. In general, I like the idea of increasing usage of these things that we license, but that nobody knows about and which are a pain to use, by introducing verified-to-result-in-something links to them on the link resolver page, integrating into existing workflow. Jonathan ________________________________________ From: umlaut-general-bounces at rubyforge.org [umlaut-general-bounces at rubyforge.org] On Behalf Of Jonathan Rochkind [rochkind at jhu.edu] Sent: Wednesday, April 01, 2009 11:32 AM To: umlaut-general at rubyforge.org Subject: [Umlaut-general] ISI and Scopus service adapters An ISI and a Scopus plug-in are committed to Umlaut. I haven't added them to the 'default' services.yml and institutions.yml yet though. I think I wouldn't do that until we actually go live with them here, we're still testing at present. But should I do that at all, since they require registration with ISI and Scopus to work? Any opinion? I've also updated the online API documentation (generated automatically with rdoc) at: http://umlaut.rubyforge.org/api/ I have a rake task to do that, but need to run it periodically to update it to current code. Which I just did. See more complete documentation of standard response keys at: http://umlaut.rubyforge.org/api/classes/ServiceResponse.html Although the formatting is still a bit weird,apparently the markup I used didn't do what I thought it would. Jonathan _______________________________________________ Umlaut-general mailing list Umlaut-general at rubyforge.org http://rubyforge.org/mailman/listinfo/umlaut-general From rochkind at jhu.edu Tue Apr 14 18:17:31 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Tue, 14 Apr 2009 18:17:31 -0400 Subject: [Umlaut-general] rexml -> bad Message-ID: <49E50B7B.6000307@jhu.edu> So REXML is indeed incredibly bad. Yeah, I know, rsinger, you told me. I am fixing my OPAC scraping routines to use Hpricot instead of REXML, and there is _significant_ speed increase. Like, orders of magnitude, literally. Scot, if you're reading, I'm afraid that the HIP scraping classes you used as a model for some of your stuff were about the FIRST thing I ever wrote in Ruby, and are not a very good model. REXML is just the beginning of their problems. But, hey, they're working for me. But yeah, if anyone finds any rexml hiding out anywhere, it should definitely be rewritten to use Hpricot. Two Hpricot notes that you don't find in the standard Hpricot intros, because they were added later: 1) Use Hpricot.XML( string ) to create an Hpricot object of something that is NOT html, but other XML. 2) Use element.inner_text, NOT element.inner_html, if you want to get the actual un-escaped contents. inner_html will escape the content for HTML, which is usually what I want. (I'll escape it again myself on output, thank you very much). Jonathan From rochkind at jhu.edu Tue Apr 14 18:39:52 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Tue, 14 Apr 2009 18:39:52 -0400 Subject: [Umlaut-general] rexml -> bad In-Reply-To: <49E50B7B.6000307@jhu.edu> References: <49E50B7B.6000307@jhu.edu> Message-ID: <49E510B8.2030101@jhu.edu> Jonathan Rochkind wrote: > 2) Use element.inner_text, NOT element.inner_html, if you want to get > the actual un-escaped contents. inner_html will escape the content for > HTML, which is usually what I want. (I'll escape it again myself on > output, thank you very much). > > Which is usually NOT what I want, strings with escaping in them, I want the actual strings to operate on, and then re-escape them for output later. From std5 at nyu.edu Tue Apr 14 18:42:01 2009 From: std5 at nyu.edu (Scot Dalton) Date: Tue, 14 Apr 2009 18:42:01 -0400 Subject: [Umlaut-general] rexml -> bad In-Reply-To: <49E50B7B.6000307@jhu.edu> References: <49E50B7B.6000307@jhu.edu> Message-ID: Thanks for the tip, Jonathan. I'll make sure to update my code accordingly. Scot Dalton Phone: (212) 998-2674 Web Development Division of Libraries New York University On Apr 14, 2009, at Apr 14, 6:17 PM, Jonathan Rochkind wrote: > So REXML is indeed incredibly bad. Yeah, I know, rsinger, you told me. > > I am fixing my OPAC scraping routines to use Hpricot instead of > REXML, and there is _significant_ speed increase. Like, orders of > magnitude, literally. > > Scot, if you're reading, I'm afraid that the HIP scraping classes > you used as a model for some of your stuff were about the FIRST > thing I ever wrote in Ruby, and are not a very good model. REXML is > just the beginning of their problems. But, hey, they're working for > me. > > But yeah, if anyone finds any rexml hiding out anywhere, it should > definitely be rewritten to use Hpricot. > > Two Hpricot notes that you don't find in the standard Hpricot > intros, because they were added later: > > 1) Use Hpricot.XML( string ) to create an Hpricot object of > something that is NOT html, but other XML. > > 2) Use element.inner_text, NOT element.inner_html, if you want to > get the actual un-escaped contents. inner_html will escape the > content for HTML, which is usually what I want. (I'll escape it > again myself on output, thank you very much). > > Jonathan > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general From rochkind at jhu.edu Wed Apr 15 17:12:36 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Wed, 15 Apr 2009 17:12:36 -0400 Subject: [Umlaut-general] ISI and Scopus Message-ID: <49E64DC4.6050201@jhu.edu> I forgot if I mentioned here, but I've gone live at JHU with new services for ISI, Scopus, and JCR. Providing 'cited by', 'similar articles', and journal "impact factor". More information here: http://bibwild.wordpress.com/2009/04/13/cited-by-from-isi-and-scopus-in-the-link-resolver/ Scot, if NYU subscribes to ISI, JCR, and Scopus (as I bet they do), I'd encourage you to register for API access with those parties, and turn these services on. They're pretty neat. I've updated the services.yml and institutions.yml initial template files to include samples of these services, and also in general to be a better skeleton for what is my recommended default setup. They were a bit out of date. You could re-generate these files with the generator, merging your changes -- or just check consult the templates manually: http://umlaut.rubyforge.org/svn/trunk/lib/generators/umlaut_local/templates/services.yml-dist http://umlaut.rubyforge.org/svn/trunk/lib/generators/umlaut_local/templates/institutions.yml-dist From rochkind at jhu.edu Thu Apr 23 16:23:26 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Thu, 23 Apr 2009 16:23:26 -0400 Subject: [Umlaut-general] two new services: journal sample covers Message-ID: <49F0CE3E.6050907@jhu.edu> Two new services to provide journal sample covers. Included in the distribution sample services.yml and institutions.yml. Scot, you may want to enable these locally. ElsevierCover: Elsevier nicely provides freely available journal sample covers for most of it's published journals. Check for and use if available. UlrichsCover: Ulrichs provides covers available through a non-authenticated interface. I have no idea if they intended to. If you aren't an Ulrichs subscriber, it might not be a good idea to use this (although it will work), but since my institution is, and I'm already providing links to Ulrichs on the Umlaut menu page, I feel no guilt using it. Neither one requires any registration or api keys. Both require an ISSN in the incoming citation to try and find a match. Jonathan From rossfsinger at gmail.com Fri Apr 24 22:37:22 2009 From: rossfsinger at gmail.com (Ross Singer) Date: Fri, 24 Apr 2009 22:37:22 -0400 Subject: [Umlaut-general] two new services: journal sample covers In-Reply-To: <49F0CE3E.6050907@jhu.edu> References: <49F0CE3E.6050907@jhu.edu> Message-ID: <23b83f160904241937g22de2eb0k92e8dccce8350603@mail.gmail.com> Another good source for these might be the IngentaConnect API. Take a look at: http://api.ingentaconnect.com/content/imp/jcs/2004/00000011/00000001?format=rss most notably: The downside is that I don't know how you get from ISSN to journal short title (although SFX implementations should get this back in the API perlvars element -- or whatever it's called). -Ross. On Thu, Apr 23, 2009 at 4:23 PM, Jonathan Rochkind wrote: > Two new services to provide journal sample covers. Included in the > distribution sample services.yml and institutions.yml. Scot, you may want to > enable these locally. > > ElsevierCover: Elsevier nicely provides freely available journal sample > covers for most of it's published journals. Check for and use if available. > > UlrichsCover: Ulrichs provides covers available through a non-authenticated > interface. I have no idea if they intended to. If you aren't an Ulrichs > subscriber, it might not be a good idea to use this (although it will work), > but since my institution is, and I'm already providing links to Ulrichs on > the Umlaut menu page, ?I feel no guilt using it. > > > Neither one requires any registration or api keys. Both require an ISSN in > the incoming citation to try and find a match. > > Jonathan > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general > From rochkind at jhu.edu Mon Apr 27 11:16:23 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Mon, 27 Apr 2009 11:16:23 -0400 Subject: [Umlaut-general] two new services: journal sample covers In-Reply-To: <23b83f160904241937g22de2eb0k92e8dccce8350603@mail.gmail.com> References: <49F0CE3E.6050907@jhu.edu> <23b83f160904241937g22de2eb0k92e8dccce8350603@mail.gmail.com> Message-ID: <49F5CC47.1050005@jhu.edu> Huh, I hadn't been aware that those 'short titles' were at all standardized or registered anywhere. I thought that they were just arbitrary, and likely different in different dbs. But am I wrong, is there any reason to think that the 'short title' that SFX returns (from it's internal KB, I believe), is going to be reliably the same as the 'shrot title' that Ingenta uses? Mostly, I'd like to stick to ISSN, since I know what that means. I think I found a way to get titles from JStor though. Except it's weird. The ordinary JStor interface doesn't store titles in a predictable way, and doesn't allow unauthenticated access to them anyway. But there's this weird JStor "sandbox", I guess previewing a new interface? At fsearch-sandbox.jstor.org. And it has titles at predictable URLs if you know the ISSN, and doesn't require authentication to see them. Weird. But I think maybe I'll use that. Jonathan Ross Singer wrote: > Another good source for these might be the IngentaConnect API. > > Take a look at: > http://api.ingentaconnect.com/content/imp/jcs/2004/00000011/00000001?format=rss > > most notably: > > > The downside is that I don't know how you get from ISSN to journal > short title (although SFX implementations should get this back in the > API perlvars element -- or whatever it's called). > > -Ross. > > On Thu, Apr 23, 2009 at 4:23 PM, Jonathan Rochkind wrote: > >> Two new services to provide journal sample covers. Included in the >> distribution sample services.yml and institutions.yml. Scot, you may want to >> enable these locally. >> >> ElsevierCover: Elsevier nicely provides freely available journal sample >> covers for most of it's published journals. Check for and use if available. >> >> UlrichsCover: Ulrichs provides covers available through a non-authenticated >> interface. I have no idea if they intended to. If you aren't an Ulrichs >> subscriber, it might not be a good idea to use this (although it will work), >> but since my institution is, and I'm already providing links to Ulrichs on >> the Umlaut menu page, I feel no guilt using it. >> >> >> Neither one requires any registration or api keys. Both require an ISSN in >> the incoming citation to try and find a match. >> >> Jonathan >> _______________________________________________ >> Umlaut-general mailing list >> Umlaut-general at rubyforge.org >> http://rubyforge.org/mailman/listinfo/umlaut-general >> >> > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general > From rossfsinger at gmail.com Mon Apr 27 11:35:59 2009 From: rossfsinger at gmail.com (Ross Singer) Date: Mon, 27 Apr 2009 11:35:59 -0400 Subject: [Umlaut-general] two new services: journal sample covers In-Reply-To: <49F5CC47.1050005@jhu.edu> References: <49F0CE3E.6050907@jhu.edu> <23b83f160904241937g22de2eb0k92e8dccce8350603@mail.gmail.com> <49F5CC47.1050005@jhu.edu> Message-ID: <23b83f160904270835h6247583drff0ed9d0d62bfd6d@mail.gmail.com> Short titles are unique, yes, since they're what is used in citations. I have no idea how they're assigned, though. -Ross. On Mon, Apr 27, 2009 at 11:16 AM, Jonathan Rochkind wrote: > Huh, I hadn't been aware that those 'short titles' were at all standardized > or registered anywhere. I thought that they were just arbitrary, and likely > different in different dbs. ?But am I wrong, is there any reason to think > that the 'short title' that SFX returns (from it's internal KB, I believe), > is going to be reliably the same as the 'shrot title' that Ingenta uses? > > Mostly, I'd like to stick to ISSN, since I know what that means. > > I think I found a way to get titles from JStor though. Except it's weird. > The ordinary JStor interface doesn't store titles in a predictable way, and > doesn't allow unauthenticated access to them anyway. But there's this weird > JStor "sandbox", I guess previewing a new interface? ?At > fsearch-sandbox.jstor.org. ?And it has titles at predictable URLs if you > know the ISSN, and doesn't require authentication to see them. Weird. But I > think maybe I'll use that. > > Jonathan > > Ross Singer wrote: >> >> Another good source for these might be the IngentaConnect API. >> >> Take a look at: >> >> http://api.ingentaconnect.com/content/imp/jcs/2004/00000011/00000001?format=rss >> >> most notably: >> > rdf:resource="http://www.ingentaconnect.com/journal-logos/imp/jcs.gif"/> >> >> The downside is that I don't know how you get from ISSN to journal >> short title (although SFX implementations should get this back in the >> API perlvars element -- or whatever it's called). >> >> -Ross. >> >> On Thu, Apr 23, 2009 at 4:23 PM, Jonathan Rochkind >> wrote: >> >>> >>> Two new services to provide journal sample covers. Included in the >>> distribution sample services.yml and institutions.yml. Scot, you may want >>> to >>> enable these locally. >>> >>> ElsevierCover: Elsevier nicely provides freely available journal sample >>> covers for most of it's published journals. Check for and use if >>> available. >>> >>> UlrichsCover: Ulrichs provides covers available through a >>> non-authenticated >>> interface. I have no idea if they intended to. If you aren't an Ulrichs >>> subscriber, it might not be a good idea to use this (although it will >>> work), >>> but since my institution is, and I'm already providing links to Ulrichs >>> on >>> the Umlaut menu page, ?I feel no guilt using it. >>> >>> >>> Neither one requires any registration or api keys. Both require an ISSN >>> in >>> the incoming citation to try and find a match. >>> >>> Jonathan >>> _______________________________________________ >>> Umlaut-general mailing list >>> Umlaut-general at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/umlaut-general >>> >>> >> >> _______________________________________________ >> Umlaut-general mailing list >> Umlaut-general at rubyforge.org >> http://rubyforge.org/mailman/listinfo/umlaut-general >> > > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general > From rochkind at jhu.edu Mon Apr 27 11:51:12 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Mon, 27 Apr 2009 11:51:12 -0400 Subject: [Umlaut-general] two new services: journal sample covers In-Reply-To: <23b83f160904270835h6247583drff0ed9d0d62bfd6d@mail.gmail.com> References: <49F0CE3E.6050907@jhu.edu> <23b83f160904241937g22de2eb0k92e8dccce8350603@mail.gmail.com> <49F5CC47.1050005@jhu.edu> <23b83f160904270835h6247583drff0ed9d0d62bfd6d@mail.gmail.com> Message-ID: <49F5D46F.7050400@jhu.edu> Googling around, I found a research project to try and _discover_ short titles for a given journal by searching the JStor corpus. This research project seemed to find that there could sometimes be several short titles used for the same journal. This suggests to me that short titles aren't actually assigned in any central place (or perhaps they're assigned in several 'central' places?), that there isn't any easy way to discover them (unless the SFX kb is complete enough to be such a place; otherwise, why the research project?), and that there isn't a 1 to 1 mapping between short titles and journal titles. Here's the research project: http://www.lib.uwaterloo.ca/society/editorial_20061005.html http://www.scholarly-societies.org/history/abbrevproblems.html But maybe I'm wrong, I guess that research paper is mostly about 18th century journal abbreviations? Maybe it's gotten simpler since then. Anyway, if anyone else wants to figure out a reliable way to deal with journal abbreviations for that Ingenta API, feel free to have at it, of course. I'm still focusing on lower hanging fruit. Jonathan Ross Singer wrote: > Short titles are unique, yes, since they're what is used in citations. > I have no idea how they're assigned, though. > > -Ross. > > On Mon, Apr 27, 2009 at 11:16 AM, Jonathan Rochkind wrote: > >> Huh, I hadn't been aware that those 'short titles' were at all standardized >> or registered anywhere. I thought that they were just arbitrary, and likely >> different in different dbs. But am I wrong, is there any reason to think >> that the 'short title' that SFX returns (from it's internal KB, I believe), >> is going to be reliably the same as the 'shrot title' that Ingenta uses? >> >> Mostly, I'd like to stick to ISSN, since I know what that means. >> >> I think I found a way to get titles from JStor though. Except it's weird. >> The ordinary JStor interface doesn't store titles in a predictable way, and >> doesn't allow unauthenticated access to them anyway. But there's this weird >> JStor "sandbox", I guess previewing a new interface? At >> fsearch-sandbox.jstor.org. And it has titles at predictable URLs if you >> know the ISSN, and doesn't require authentication to see them. Weird. But I >> think maybe I'll use that. >> >> Jonathan >> >> Ross Singer wrote: >> >>> Another good source for these might be the IngentaConnect API. >>> >>> Take a look at: >>> >>> http://api.ingentaconnect.com/content/imp/jcs/2004/00000011/00000001?format=rss >>> >>> most notably: >>> >> rdf:resource="http://www.ingentaconnect.com/journal-logos/imp/jcs.gif"/> >>> >>> The downside is that I don't know how you get from ISSN to journal >>> short title (although SFX implementations should get this back in the >>> API perlvars element -- or whatever it's called). >>> >>> -Ross. >>> >>> On Thu, Apr 23, 2009 at 4:23 PM, Jonathan Rochkind >>> wrote: >>> >>> >>>> Two new services to provide journal sample covers. Included in the >>>> distribution sample services.yml and institutions.yml. Scot, you may want >>>> to >>>> enable these locally. >>>> >>>> ElsevierCover: Elsevier nicely provides freely available journal sample >>>> covers for most of it's published journals. Check for and use if >>>> available. >>>> >>>> UlrichsCover: Ulrichs provides covers available through a >>>> non-authenticated >>>> interface. I have no idea if they intended to. If you aren't an Ulrichs >>>> subscriber, it might not be a good idea to use this (although it will >>>> work), >>>> but since my institution is, and I'm already providing links to Ulrichs >>>> on >>>> the Umlaut menu page, I feel no guilt using it. >>>> >>>> >>>> Neither one requires any registration or api keys. Both require an ISSN >>>> in >>>> the incoming citation to try and find a match. >>>> >>>> Jonathan >>>> _______________________________________________ >>>> Umlaut-general mailing list >>>> Umlaut-general at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/umlaut-general >>>> >>>> >>>> >>> _______________________________________________ >>> Umlaut-general mailing list >>> Umlaut-general at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/umlaut-general >>> >>> >> _______________________________________________ >> Umlaut-general mailing list >> Umlaut-general at rubyforge.org >> http://rubyforge.org/mailman/listinfo/umlaut-general >> >> > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general > From rochkind at jhu.edu Mon Apr 27 11:54:22 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Mon, 27 Apr 2009 11:54:22 -0400 Subject: [Umlaut-general] two new services: journal sample covers In-Reply-To: <23b83f160904270835h6247583drff0ed9d0d62bfd6d@mail.gmail.com> References: <49F0CE3E.6050907@jhu.edu> <23b83f160904241937g22de2eb0k92e8dccce8350603@mail.gmail.com> <49F5CC47.1050005@jhu.edu> <23b83f160904270835h6247583drff0ed9d0d62bfd6d@mail.gmail.com> Message-ID: <49F5D52E.3020002@jhu.edu> Actually, it looks like the ISSN folks maintain at least one list of journal title abbreviations. I'm not sure if Ingenta service reliably uses abbreviations from this list? http://www.issn.org/2-22661-LTWA-online.php But anyway, yeah, not my priority for now personally. Ross Singer wrote: > Short titles are unique, yes, since they're what is used in citations. > I have no idea how they're assigned, though. > > -Ross. > > On Mon, Apr 27, 2009 at 11:16 AM, Jonathan Rochkind wrote: > >> Huh, I hadn't been aware that those 'short titles' were at all standardized >> or registered anywhere. I thought that they were just arbitrary, and likely >> different in different dbs. But am I wrong, is there any reason to think >> that the 'short title' that SFX returns (from it's internal KB, I believe), >> is going to be reliably the same as the 'shrot title' that Ingenta uses? >> >> Mostly, I'd like to stick to ISSN, since I know what that means. >> >> I think I found a way to get titles from JStor though. Except it's weird. >> The ordinary JStor interface doesn't store titles in a predictable way, and >> doesn't allow unauthenticated access to them anyway. But there's this weird >> JStor "sandbox", I guess previewing a new interface? At >> fsearch-sandbox.jstor.org. And it has titles at predictable URLs if you >> know the ISSN, and doesn't require authentication to see them. Weird. But I >> think maybe I'll use that. >> >> Jonathan >> >> Ross Singer wrote: >> >>> Another good source for these might be the IngentaConnect API. >>> >>> Take a look at: >>> >>> http://api.ingentaconnect.com/content/imp/jcs/2004/00000011/00000001?format=rss >>> >>> most notably: >>> >> rdf:resource="http://www.ingentaconnect.com/journal-logos/imp/jcs.gif"/> >>> >>> The downside is that I don't know how you get from ISSN to journal >>> short title (although SFX implementations should get this back in the >>> API perlvars element -- or whatever it's called). >>> >>> -Ross. >>> >>> On Thu, Apr 23, 2009 at 4:23 PM, Jonathan Rochkind >>> wrote: >>> >>> >>>> Two new services to provide journal sample covers. Included in the >>>> distribution sample services.yml and institutions.yml. Scot, you may want >>>> to >>>> enable these locally. >>>> >>>> ElsevierCover: Elsevier nicely provides freely available journal sample >>>> covers for most of it's published journals. Check for and use if >>>> available. >>>> >>>> UlrichsCover: Ulrichs provides covers available through a >>>> non-authenticated >>>> interface. I have no idea if they intended to. If you aren't an Ulrichs >>>> subscriber, it might not be a good idea to use this (although it will >>>> work), >>>> but since my institution is, and I'm already providing links to Ulrichs >>>> on >>>> the Umlaut menu page, I feel no guilt using it. >>>> >>>> >>>> Neither one requires any registration or api keys. Both require an ISSN >>>> in >>>> the incoming citation to try and find a match. >>>> >>>> Jonathan >>>> _______________________________________________ >>>> Umlaut-general mailing list >>>> Umlaut-general at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/umlaut-general >>>> >>>> >>>> >>> _______________________________________________ >>> Umlaut-general mailing list >>> Umlaut-general at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/umlaut-general >>> >>> >> _______________________________________________ >> Umlaut-general mailing list >> Umlaut-general at rubyforge.org >> http://rubyforge.org/mailman/listinfo/umlaut-general >> >> > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general > From rossfsinger at gmail.com Thu Apr 30 09:56:17 2009 From: rossfsinger at gmail.com (Ross Singer) Date: Thu, 30 Apr 2009 09:56:17 -0400 Subject: [Umlaut-general] Perhaps another alternative for background processing Message-ID: <23b83f160904300656q4602dee2rbc3e403f2b10c46a@mail.gmail.com> http://github.com/tobi/delayed_job/tree/master I mean, maybe not -- but I figure we should be open to all possibilities. -Ross. From rochkind at jhu.edu Thu Apr 30 10:42:00 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Thu, 30 Apr 2009 10:42:00 -0400 Subject: [Umlaut-general] Perhaps another alternative for background processing In-Reply-To: <23b83f160904300656q4602dee2rbc3e403f2b10c46a@mail.gmail.com> References: <23b83f160904300656q4602dee2rbc3e403f2b10c46a@mail.gmail.com> Message-ID: <49F9B8B8.3080307@jhu.edu> Yep. At the moment, I'm actually feeling pretty good about the current solution -- although either Ruby 1.9 or Jruby would make me feel _absolutely_ confident in it. Even with crappy Ruby 1.8 green threads, we seem to have it working reasonably, I think, after my tweaks of last month (which mainly involved explicitly setting the thread priority for 'background' threads to -1, less than the default 0 value). Some of the benefits of using threads as opposed to any of the various separate-process solutions is: Easier debugging, including use of ruby-debug; easier log integration (it just works); easier (in my opinion) deployment management . Ross Singer wrote: > http://github.com/tobi/delayed_job/tree/master > > I mean, maybe not -- but I figure we should be open to all possibilities. > > -Ross. > _______________________________________________ > Umlaut-general mailing list > Umlaut-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/umlaut-general > From rochkind at jhu.edu Thu Apr 30 12:39:12 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Thu, 30 Apr 2009 12:39:12 -0400 Subject: [Umlaut-general] NYU Local Implementation Changes WAS: Re: ELUNA Presentation In-Reply-To: <38C0123E-A53C-4F12-B66F-11FC5CD099B9@nyu.edu> References: <1F21A849-D3A6-4D62-8FB4-D97063BCF749@nyu.edu> <49F9B97E.9030504@jhu.edu> <38C0123E-A53C-4F12-B66F-11FC5CD099B9@nyu.edu> Message-ID: <49F9D430.5020902@jhu.edu> (Sending to Umlaut public list too so folks can see what we're talking about). Okay, to figure out how to do this best, I'd like to see your code. Can you give me a login to your server so I can just use svn diff on your working copy? Or else we can figure out a way to make an svn branch that let's me easily diff to see your changes -- not sure how best to do that, but we can figure it out. But here are my comments, aimed at trying to make sure Scot's changes don't "fork" Umlaut for him, leading to difficulty in us sharing enhancements in the future. > 1. lib/service_adaptors/sfx.rb > - added local service type 'export_citation' to document_delivery > and help "help" already existed as ServiceTypeValue in the distro. You should use that one. Becuase SFX doesn't give a seperate type of it's own to 'help' links, you need to map particular target names to 'help' in your services.yml, like so: extra_targets_of_interest: LOCAL_FEEDBACK_MSE: help LOCAL_FEEDBACK_SAIS: help LOCAL_FEEDBACK_WELCH: help LOCAL_FEEDBACK_AFL: help LOCAL_FEEDBACK_APL: help [ Yes, we have FIVE help targets in our SFX. Bah. ] You should add 'export_citation' to the list of distro values in db/orig_fixed_data/service_type_values.yml, we want that to be part of the distro. Once those values exist, you shouldn't need to actually sfx.rb to get your implementation using them -- you can just supply a "services_of_interest:" or "extra_services_of_interest" param in your services.yml. Although, actually, we should just edit the default "services_of_interest" to map SFX export targets to the Umlaut "export" type too, if that can be done using an internal SFX type. If SFX doesn't have an internal type for 'export', we'll need to use a similar installation-specific configuration, using extra_targets_of_interest exactly as I am for 'help'. But you also needed to edit resolve/index.rhtml to actually display the "export" stuff, right? I want the standard index.rhtml to display these if available too -- you should have a partial view for displaying "export" stuff committed to distro, and we should make sure it's included in standard index.rhtml. > as umlaut service types to only display once in the case of > multiple context objs. > I don't understand what you mean by only display once in the case of multiple context objs. This shouldn't have been a problem before? > - put a threshold of 5 on multiple context objs. If more than 5, > SFX probably doesn't know what this is (possibly because the OpenURL > metadata isn't good enough) so just skip it. (needs usability testing) > If your experience leads you to think this is better, just commit it to standard sfx.rb. I don't think it will cause any problems with me. > 2. app/controllers/search_controllers.rb > - hardcoded condition "AZ_TITLE_VER3.AZ_PROFILE='SFX'" into the SFX > db call in order to deal with our duplicate record issue. This is a > temporary fix that needs to be dealt with in the SFX db. > I don't completely understand this. Will committing this to distro Umlaut cause any problems for me? I don't think it will, I think this is probably a bug-fix that should be committed to distro. I think it's probably a bug in my code that didn't effect me cause of how we're using SFX, but did effect you cause of how you're using it. > 3. app/helpers/search_helper.rb > - added breadcrumbs function to mirror Xerxes functionality and > unify NYU look and feel in the future. Breadcrumbs function > implemented in local NYU layout. > Is your helper function NYU-specific? If it's of general use, just commit it. If it's NYU-specific, let's find a place for you to put it in a _local_ file, so you don't need to edit the distro file. > 4. app/views/resolve/index.rhtml > - changed order and wording; added export section (separate local > partial) > Changing the wording could likely have been done just through configuration -- also, I may be fine with your wording (if it's not locally specific), and maybe we should change Umlaut distro. Changing the order isn't currently possible through local config. I'd like to make it so, maybe. But if I don't do that, and you really do need to edit index.rhtml, you should create your own new local nyu-index.rhtml, not edit index.rhtml. You can tell Umlaut to use your local one in umlaut_config/initializers/umlaut/resolve_views.rb => AppConfig::Base.resolve_view . Looks like I forgot to include that in the sample resolve_views.rb, I'll add it. And like I said, I want that export partial included in Umlaut distro, and the distro index.rhtml too, so I can use it too! > 5. app/views/search/journal_search.rhtml & app/views/search/ > journals.rhtml > - changed wording > Can you share your wording with me, or point me to a page to see it? I suspect we can just include these wording changes in Umlaut distro if they are general. If they are NYU specific, we need to make it configurable, not require you to modify the views. > > In addition to these changes, I've implemented "Send to Phone" and > "Email" functionality with a separate service_adaptor, controller, > views, and emailer model that I'll send an explanation for separately > (may not be until after ELUNA). Not sure what to do about putting > this in SVN. For now, you can get see the implementation at http://web-apache.library.nyu.edu:8000/go/128?umlaut.skip_resolve_menu=false > I definitely want that included in Umlaut distro so I can use it too! I may have some suggestions for how to structure the code -- or may just re-structure and commit some changes myself, that will still work for you. (We really should have some unit tests, but testing a service is kind of a pain and I'm still working out how to do it conveniently). > Finally, I've got a service called PrimoEnhancer that I'm running > before the page displays to enhance the OpenURL metadata based on > Primo data. This also takes care of the diacritics issues we were > seeing. Eventually I want to move it into the PrimoService and split > the priority like you've done with the amazon service. Once I do > that, I'll commit it to SVN. > This is great, and should definitely be committed to distro. I'm not sure if what I've done with Amazon was actually the best way to do it -- it ends up being kind of confusing. I think having a seperate service is probably better, but making sure to "Don't Repeat Yourself" (often abbreviated DRY in ruby community) by extracting any common functionality out of the services into your Primo lib code. In general, this stuff sounds great, thanks for your work Scot! I just want to make sure we work together to: a) Get all your cool new stuff into umlaut distro so I (and others) can use it, and b) make sure you are making changes locally in such a way that won't inhibit you from getting future enhancements and bugfixes from me (and, optimtically, others). Jonathan From std5 at nyu.edu Thu Apr 30 17:28:43 2009 From: std5 at nyu.edu (Scot Dalton) Date: Thu, 30 Apr 2009 17:28:43 -0400 Subject: [Umlaut-general] NYU Local Implementation Changes WAS: Re: ELUNA Presentation In-Reply-To: <49F9D430.5020902@jhu.edu> References: <1F21A849-D3A6-4D62-8FB4-D97063BCF749@nyu.edu> <49F9B97E.9030504@jhu.edu> <38C0123E-A53C-4F12-B66F-11FC5CD099B9@nyu.edu> <49F9D430.5020902@jhu.edu> Message-ID: Hi Jonathan, See my comments inline. FYI, I'm going to be out of town until after ELUNA and may not get to all the clean up and svn commits until afterwards. On Apr 30, 2009, at Apr 30, 12:39 PM, Jonathan Rochkind wrote: > Okay, to figure out how to do this best, I'd like to see your code. > Can you give me a login to your server so I can just use svn diff on > your working copy? Or else we can figure out a way to make an svn > branch that let's me easily diff to see your changes -- not sure how > best to do that, but we can figure it out. Not sure what the best way to do this is either. I don't think our system admins would give you a login to our server, but I'll ask. Failing that a different svn branch may be our best option. >> 1. lib/service_adaptors/sfx.rb >> - added local service type 'export_citation' to >> document_delivery and help > "help" already existed as ServiceTypeValue in the distro. You should > use that one. Becuase SFX doesn't give a seperate type of it's own > to 'help' links, you need to map particular target names to 'help' > in your services.yml, like so: > > extra_targets_of_interest: > LOCAL_FEEDBACK_MSE: help > LOCAL_FEEDBACK_SAIS: help > LOCAL_FEEDBACK_WELCH: help > LOCAL_FEEDBACK_AFL: help > LOCAL_FEEDBACK_APL: help > > [ Yes, we have FIVE help targets in our SFX. Bah. ] > > You should add 'export_citation' to the list of distro values in db/ > orig_fixed_data/service_type_values.yml, we want that to be part of > the distro. > Once those values exist, you shouldn't need to actually sfx.rb to > get your implementation using them -- you can just supply a > "services_of_interest:" or "extra_services_of_interest" param in > your services.yml. Although, actually, we should just edit the > default "services_of_interest" to map SFX export targets to the > Umlaut "export" type too, if that can be done using an internal SFX > type. If SFX doesn't have an internal type for 'export', we'll need > to use a similar installation-specific configuration, using > extra_targets_of_interest exactly as I am for 'help'. > > But you also needed to edit resolve/index.rhtml to actually display > the "export" stuff, right? I want the standard index.rhtml to > display these if available too -- you should have a partial view for > displaying "export" stuff committed to distro, and we should make > sure it's included in standard index.rhtml. > >> as umlaut service types to only display once in the case of >> multiple context objs. >> > I don't understand what you mean by only display once in the case of > multiple context objs. This shouldn't have been a problem before? I've added the following extra_targets_of_interest to our SFX config in service.yml extra_targets_of_interest: ISI_RESEARCHSOFT_EXPORT_TOOL: export_citation REFWORKS_EXPORT_TOOL: export_citation The issue is that when you have multiple context objs returned from SFX you get multiple export_citation links for these services. We only want it showing up once so I had to include export_citation in the following code (~line 232): # If we have multiple context objs, skip the ill and ask-a- librarian # links for all but the first, to avoid dups. This is a bit messy, # but this whole multiple hits thing is messy. if ( sfx_obj_index > 0 && ( umlaut_service == 'document_delivery' || umlaut_service == 'export_citation' || umlaut_service == 'help')) next end >> 2. app/controllers/search_controllers.rb >> - hardcoded condition "AZ_TITLE_VER3.AZ_PROFILE='SFX'" into the >> SFX db call in order to deal with our duplicate record issue. >> This is a temporary fix that needs to be dealt with in the SFX db. >> > I don't completely understand this. Will committing this to distro > Umlaut cause any problems for me? I don't think it will, I think > this is probably a bug-fix that should be committed to distro. I > think it's probably a bug in my code that didn't effect me cause of > how we're using SFX, but did effect you cause of how you're using it. Not sure if this will cause problems for you. The code is as follows (~line 140): # Need a special condition for 0-9 if ( params[:id] == '0-9') conditions = ["AZ_TITLE_VER3.AZ_PROFILE='SFX' AND lg.AZ_LETTER_GROUP_VER3_NAME IN ('0','1','2','3','4','5','6','7','8','9')"] else conditions = ["AZ_TITLE_VER3.AZ_PROFILE='SFX' AND lg.AZ_LETTER_GROUP_VER3_NAME = ?", params[:id].upcase] end >> 3. app/helpers/search_helper.rb >> - added breadcrumbs function to mirror Xerxes functionality and >> unify NYU look and feel in the future. Breadcrumbs function >> implemented in local NYU layout. >> > Is your helper function NYU-specific? If it's of general use, just > commit it. If it's NYU-specific, let's find a place for you to put > it in a _local_ file, so you don't need to edit the distro file. The function is NYU specific, but I could make it configurable. Take a look at our dev instance to see if it may be of use to others. http://web-apache.library.nyu.edu:8000/ (currently down for maintenance) If I were to put it in a local file, should I just put the ruby code in the NYU local layout? >> 4. app/views/resolve/index.rhtml >> - changed order and wording; added export section (separate >> local partial) >> > Changing the wording could likely have been done just through > configuration -- also, I may be fine with your wording (if it's not > locally specific), and maybe we should change Umlaut distro. > > Changing the order isn't currently possible through local config. > I'd like to make it so, maybe. But if I don't do that, and you > really do need to edit index.rhtml, you should create your own new > local nyu-index.rhtml, not edit index.rhtml. You can tell Umlaut to > use your local one in umlaut_config/initializers/umlaut/ > resolve_views.rb => AppConfig::Base.resolve_view . Looks like I > forgot to include that in the sample resolve_views.rb, I'll add it. > > And like I said, I want that export partial included in Umlaut > distro, and the distro index.rhtml too, so I can use it too! Configured locally with AppConfig::Base.resolve_view. Added partial and index.rhtml with partial to svn. >> 5. app/views/search/journal_search.rhtml & app/views/search/ >> journals.rhtml >> - changed wording >> > Can you share your wording with me, or point me to a page to see > it? I suspect we can just include these wording changes in Umlaut > distro if they are general. If they are NYU specific, we need to > make it configurable, not require you to modify the views. Our dev server is currently down but once it's back up, you can see it at: http://web-apache.library.nyu.edu:8000/ http://web-apache.library.nyu.edu:8000/journal_list >> In addition to these changes, I've implemented "Send to Phone" and >> "Email" functionality with a separate service_adaptor, controller, >> views, and emailer model that I'll send an explanation for >> separately (may not be until after ELUNA). Not sure what to do >> about putting this in SVN. For now, you can get see the >> implementation at http://web-apache.library.nyu.edu:8000/go/128?umlaut.skip_resolve_menu=false >> > I definitely want that included in Umlaut distro so I can use it > too! I may have some suggestions for how to structure the code -- > or may just re-structure and commit some changes myself, that will > still work for you. (We really should have some unit tests, but > testing a service is kind of a pain and I'm still working out how to > do it conveniently). Will clean up and add to svn. >> Finally, I've got a service called PrimoEnhancer that I'm running >> before the page displays to enhance the OpenURL metadata based on >> Primo data. This also takes care of the diacritics issues we were >> seeing. Eventually I want to move it into the PrimoService and >> split the priority like you've done with the amazon service. >> Once I do that, I'll commit it to SVN. >> > > This is great, and should definitely be committed to distro. I'm > not sure if what I've done with Amazon was actually the best way to > do it -- it ends up being kind of confusing. I think having a > seperate service is probably better, but making sure to "Don't > Repeat Yourself" (often abbreviated DRY in ruby community) by > extracting any common functionality out of the services into your > Primo lib code. Will clean up and add to svn. Thanks, Scot Dalton Phone: (212) 998-2674 Web Development Division of Libraries New York University From rochkind at jhu.edu Thu Apr 30 17:37:46 2009 From: rochkind at jhu.edu (Jonathan Rochkind) Date: Thu, 30 Apr 2009 17:37:46 -0400 Subject: [Umlaut-general] NYU Local Implementation Changes WAS: Re: ELUNA Presentation In-Reply-To: References: <1F21A849-D3A6-4D62-8FB4-D97063BCF749@nyu.edu> <49F9B97E.9030504@jhu.edu> <38C0123E-A53C-4F12-B66F-11FC5CD099B9@nyu.edu> <49F9D430.5020902@jhu.edu> Message-ID: <49FA1A2A.4050307@jhu.edu> Scot Dalton wrote: > > Not sure what the best way to do this is either. I don't think our > system admins would give you a login to our server, but I'll ask. > Failing that a different svn branch may be our best option. > Yeah, worth a try, but I'll plan on figuring out how to do this in svn. > I've added the following extra_targets_of_interest to our SFX config > in service.yml > extra_targets_of_interest: > ISI_RESEARCHSOFT_EXPORT_TOOL: export_citation > REFWORKS_EXPORT_TOOL: export_citation > Perfect! Nice. > The issue is that when you have multiple context objs returned from > SFX you get multiple export_citation links for these services. > We only want it showing up once so I had to include export_citation in > the following code (~line 232): > # If we have multiple context objs, skip the ill and ask-a- > librarian > # links for all but the first, to avoid dups. This is a bit > messy, > # but this whole multiple hits thing is messy. > if ( sfx_obj_index > 0 && > ( umlaut_service == 'document_delivery' || > umlaut_service == 'export_citation' || > umlaut_service == 'help')) > next > end > Ah, I see, yeah. Yeah, go ahead and commit that to Umlaut trunk. > Not sure if this will cause problems for you. > The code is as follows (~line 140): > # Need a special condition for 0-9 > if ( params[:id] == '0-9') > conditions = ["AZ_TITLE_VER3.AZ_PROFILE='SFX' AND > lg.AZ_LETTER_GROUP_VER3_NAME IN > ('0','1','2','3','4','5','6','7','8','9')"] > else > conditions = ["AZ_TITLE_VER3.AZ_PROFILE='SFX' AND > lg.AZ_LETTER_GROUP_VER3_NAME = ?", params[:id].upcase] > end > Can you send me an svn patch/diff file? I'll test it against my server to be sure, but I suspect we'll want to commit this to trunk too. > > The [helper] function is NYU specific, but I could make it configurable. Take > a look at our dev instance to see if it may be of use to others. > http://web-apache.library.nyu.edu:8000/ (currently down for maintenance) > > If I were to put it in a local file, should I just put the ruby code > in the NYU local layout? > Nah, I have to figure out where the right place for you to put this in a local file is. It's not the layout. I'd like to take a look at the code first. > > Configured locally with AppConfig::Base.resolve_view. Excellent. I still haven't given up on making the changes you need completely configurable in the default index.rhtml. Would like to see them and think about it. With your own index.rhtml, you'll need to manually merge in changes -- for instance, I just added a spot on the page for ISI/Scopus "cited by" services, which you'd need to add to your own local index.rhtml too. Better to be able to configure the main one. > Added partial > and index.rhtml with partial to svn. > You mean you added the "export_citation" partial, and added it to the distro index.rhtml? Sweet, thanks! >> Can you share your wording with me, or point me to a page to see >> it? I suspect we can just include these wording changes in Umlaut >> distro if they are general. If they are NYU specific, we need to >> make it configurable, not require you to modify the views. >> > > Our dev server is currently down but once it's back up, you can see it > at: > http://web-apache.library.nyu.edu:8000/ > http://web-apache.library.nyu.edu:8000/journal_list > Excellent, will take a look. Hope to be able to keep you from having to make your own views here too. In general though, when you need your own views after all, we need a way for you to specify the views in config -- I don't ever want you to have to actually edit files from the umlaut distro -- that's bad juju. Thanks for your work on this, very excited to see it! I'm _definitely_ going to use the export-to-sms-message stuff here too. Jonathan