Providing answers to questions is a basic service of public libraries; currently this service may be delivered in-library, using print and electronic resources, or remotely, generally using electronic resources. Because of the importance of electronic resources, one of OPLIN's main functions has always been to provide access to high-quality electronic information databases.
Since 2003, OPLIN has been a partner in Libraries Connect Ohio, which supports a core collection of database resources for the statewide Ohio Web Library collection. These resources are provided to all Ohio citizens, regardless of where they go to school or live, so they will have a core set of the information resources necessary to compete in the global economy and improve their quality of life.
Ohio Web Library
Federated search tool for all of the research databases available to Ohioans. A list of all the different searchable databases is available here as an Excel spreadsheet.
The term "Ohio Web Library" refers to two related things.
Initially, Ohio Web Library was the name of the collection of databases purchased by Libraries Connect Ohio for statewide access. While these databases are valuable in their own right, the Ohio Web Library was also intended to demonstrate the potential for building an even more robust collection of authoritative information if more funds were available.
Lately, the term has also been used to refer to the web page that searches the Ohio Web Library collection and a few other selected online resources (http://ohioweblibrary.org).
It needs to be able to run JavaScript. The Ohio Web Library page uses a lot of it in order to display search results.
Libraries Connect Ohio is a strategic partnership of OPLIN, OhioLINK, INFOhio, and the State Library of Ohio. While the three library networks provide many different services to different types of libraries, all three provide access to electronic databases. The Libraries Connect Ohio partnership allows the three networks to combine their resources, adding them to Library Services and Technology Act (LSTA) funding distributed by the State Library, in order to get the best possible terms from database vendors.
Can't connect to one of the Ohio Web Library research databases? Something isn't working properly? Please contact the OPLIN Support Center for assistance.
| Attachment | Size |
|---|---|
| Complete Database List (xls) | 35 KB |
Some vendors provide very detailed spreadsheets of library activity in any given month. See the table at the end of this page to download those Excel spreadsheets.
Some other vendors provide direct access to statistics from their websites:
For some vendors, accumulated monthly statistics are available as spreadsheets:
You can see how many people have accessed the Ohio Web Library databases from the zip codes which your library serves by clicking here.
This page lets you view how many times databases were accessed from within particular zip codes during a selected month. The OPLIN authentication mechanism stores the domain name of the resource (e.g. ebscohost.com, heritagequestonline.com), the month and year, whether access is in-library or remote, and the zip code of the user. We began collecting these statistics in August 2006.
Sometimes multiple resources have the same domain. For example, all of the separate EBSCOhost resources, including NoveList, are recorded as "ebscohost.com." The vendors have web-based tools that you can use for more detailed statistics.
Most OPLIN databases are licensed for all of Ohio, so we have tried to remove barriers and make it easier for remote users to get to subscription content. Using geographic data on IP addresses, we are able to tell when users are in Ohio, and we wish to let them into the databases as quickly and easily as possible. Usage in these sessions is not credited to particular libraries, but to a generic statewide account; therefore we ask those users for their zip codes so that we can get some picture of the distribution of usage locally.
If the session is from within a library, the zip code we store is that of the main library. This is true even of branch libraries; the recorded zip code is the main library zip code. For remote sessions, we either ask the user to enter her zip code or her library card number. We record the zip code as entered, or we record the zip code of the main library in that system for library card validation.
Except for in-library usage, you can't. We know that library service areas overlap, and that libraries can have patrons registered all over the state. It doesn't matter if several libraries track stats in the same zip codes. These numbers are not reported to the State Library, and they are not used to determine funding levels between library systems.
If you have a special statistics request, please contact http://support.oplin.org, and we will do our best to get what you need.
OPLIN provides a number of simple, short, easy-to-remember URLs you can share with patrons who want to access specific Ohio Web Library resources from home. Here is a list of the most popular shortcut URLs:
You can also download a PDF image (below) of this information which you can print and post in your library.
| Attachment | Size |
|---|---|
| Ohio Web Library shortcuts handout (PDF) | 31.17 KB |
Libraries can download and print the materials below for informing their patrons about the Ohio Web Library resources.
| Attachment | Size |
|---|---|
| Mango logo (color) | 12.19 KB |
| Mango logo (b&w) | 3.46 KB |
| Mango M logo (color) | 3.66 KB |
| Mango M logo (b&w) | 1.8 KB |
| Mango iPhone poster with QR code (pdf) | 1.39 MB |
| World Book EWOL logo | 10.8 KB |
A variety of useful information about the databases, from both Ohio librarians and from vendors.
OPLIN's Community Toolbox is a place to share handouts, screencasts, tutorials, videos, podcasts or any other kind of web-related guide with other libraries and librarians. Guides should relate to either the Ohio Web Library or any of the Ohio Web Library databases. To have your content added, please contact editor@oplin.org.
TEN MINUTE TUTORS
Ten Minute Tutors are just that...ten minute, self-paced tutorials that can be accessed any time and provide short, basic instruction on using a number of the on-line library resources available from home, work or the library. They are available through the State Library of Ohio's website.
SCREENCASTS
Link to American and English Literature Collections: http://www.oplin.org/literature
Quick Start Guides & Tip Sheets
Online Help
Tutorials and Presentations
Link to Oxford Reference Online: http://www.oplin.org/oxford
Quick Start Guides & Tip Sheets
Online Help
Tutorials and Presentations
Sometimes you want to provide databases to your patrons directly from your library website, rather than sending them to http://ohioweblibrary.org or http://oplin.org/databases. The links below provide some helpful information; if you need further assistance, please contact OPLIN Support.
Just add the following to the code of your web site, where you want the information to appear:
<script language="JavaScript" src="http://oplin.org/dbase_widget.js"></script>
BASIC RESOURCES
| OPLIN website | http://www.oplin.org |
| ExploreOhio (formerly Discover Ohio) | http://www.exploreohio.org |
| Find an Ohio Public Library tool | http://www.oplin.org/fal |
| Research Databases (list) | http://www.oplin.org/databases |
| Ohio Web Library | http://www.ohioweblibrary.org |
| Database Usage Reporting Tool (for librarians) | http://www.oplin.org/odurt |
| What Tree Is It? | http://www.oplin.org/tree |
| What's That Snake? | http://www.oplin.org/snake |
| What's the Point? | http://www.oplin.org/point |
RESEARCH DATABASES
A * sign marks those databases that are optional subscriptions. Check whether your library subscribes before putting these links on your own website.
LINKS TO MOBILE VERSIONS (if available):
Biography Reference Bank http://www.oplin.org/go/mobilebio
EBSCO http://www.oplin.org/go/EBSCOmobile
World Book http://www.oplin.org/go/wbmobile
ABOUT BOOKS (http://aboutbooks.info)
One simple search box for finding information about author, title, subject… anything about books!
To make a search box that will search the OPLIN "about:books" web page, you need to make a web form that:
An example of this is below.
<form action="http://aboutbooks.info" method="get"> <input type="text" name="query" /> <input type="submit" value="Search" /> </form>
...which makes a search box like this:
Questions? Problems? Something missing? Contact the OPLIN Support Center.
The Ohio Web Library page (http://ohioweblibrary.org) contains a link to "Resources" in the navigation bar. This link takes the user to a page that lists the statewide research databases, which can be viewed by subject category or alphabetically. The user will also see "buttons" beside the database names which provide more information about the resource.
Across the top of the database list are three tabs. The middle tab points to "locally purchased databases." If you provide OPLIN with a list of the databases your library purchases (http://support.oplin.org), these will be visible by clicking on this tab. Users at home will be asked to identify their library and provide a library card number before they see these locally purchased resources. (Users in your library will not be asked for a library card.)
OPLIN has created an Ohio Web Library search widget that you can add to any web page. Simply put this line in your page where you want the widget to appear:
<script language="JavaScript" src="http://oplin.org/common/owl_widget/owl_search.js"></script>
...and now you have the Ohio Web Library search box!
If you prefer to build you own web form, use the GET method with an action of http://ohioweblibrary.org and a text box named q.
Ohio Web Library accepts all the variables listed below through the GET method. All variables can be used alone, or in any combination with others.
To make a search box that will search the OPLIN "about:books" web page, you need to make a web form that:
An example of this is below.
<form action="http://aboutbooks.info" method="get"> <input type="text" name="query" /> <input type="submit" value="Search" /> </form>
...which makes a search box like this:
Copy and paste this code in the header section of your html page:
Copy and paste this code into the body section of your html page: <script type="text/javascript" language="javascript" src="http://www.fofweb.com/Subscription/Search_Widgets/jslib/widgets.js" > </script><div class="Outer_Widget7"> <div class="Inner_Widget7"> <input id="ks_WE40" name="ks_WE40" type="text" class=" Widget_TextBox" onkeypress="return handleKeyPress_WE40(19148, event,this.form)" /> <input id="Button16" type="button" value="Search" class="Widget_Button" onclick="javascript:FOFSearch_WE40(10835);" /> </div> </div> |
MARC Records
|
These are individual MARC records for the titles available in subscription databases. Before loading them into their catalogs, libraries should keep the following in mind: The links below are to files with a ".mrc" extension. They vary in size; some can be several megabytes in size. It might be best to right-click on the links, save the files locally, and open them with your preferred MARC editing program What do these do?
|
| EBSCOhost MARC Records | |
|
They generally won't link to specific articles, but to a page that will let users search the content or browse issues by date.
|
|
| Science Online MARC Record. One MARC record that points to the Science Online website. | |
|
Updated June 2009. See this MARC record |
|
| Mango Languages MARC Record. One MARC record that points to the Mango Languages website. | |
|
Updated June 2012. See this MARC record |
|
| LearningExpress Library MARC Records | |
|
705 records. Updated March 2010. See a preview of these MARC records |
|
| LearningExpress Library--Computer Skills MARC Records | |
| 66 records. Updated January 2011. | |
| Oxford Reference MARC Records | |
|
Records for Oxford Reference Online--an online collection of reference books. The MARC records link to books, not articles. (November 2012) Libraries which have already loaded the base package of MARC records from November 2012 may want to load these additional packages:
|
|
| Ohio History Central MARC Records | |
|
Records for Ohio History Central--an evolving, dynamic online encyclopedia that includes information about Ohio's natural history, prehistory, and history. 2768 records in two parts. (Last updated June 2011) See a preview of these MARC records (Part I) See a preview of these MARC records (Part II) Download Part I (2315 records) Download Part II (453 records)
|
|
Please see the attached chart for a full explanation of how database authentication at OPLIN works.
First, the vendor has to be able to do authentication based on IP address only. This usually isn't a big issue; we've only run into one small vendor out of the hundreds that libraries subscribe to that couldn't handle it in some way.
Second, we need a generic link to the resource, that is, it doesn't have any information in the URL that is specific to any one library. We keep a database of generic links here at the office, which lets us add database links to your locally purchased databases tab (at http://oplin.org/databases) pretty quickly, since the same link will work for any library.
Lastly, you just need to give the vendor your OPLIN proxy IP address. All the authentication in the world won't save us if the proxy IP address doesn't have access. OPLIN proxy IPs always start with 66.213.41 and have a 4th octet of whatever their FSCS is. For example, Ada (OH0001) is 66.213.41.1. We will try to set up authentication for anything that you request.
Technically, you don't, unless the database vendor does not allow access from outside a library building, because patrons at the branch can just authenticate to the Ohio Web Library databases as if they were at-home ("remote") users. If you want your patrons to have seamless, in-library access, however, and to have their usage of the databases automatically added to your library statistics, we have to give the vendor an unchanging, static IP address they can associate with your library.
If you have further questions, please contact OPLIN Support.
| Attachment | Size |
|---|---|
| Flowchart of OPLIN database authentication | 21.38 KB |
[The following text, written by OPLIN staff Stephen Hedges, Karl Jendretzky, and Laura Solomon in October 2008, is also available as Chapter 20 in the book Library Mashups: Exploring New Ways to Deliver Library Data, edited by Nicole C. Engard and published by Information Today, Inc., ISBN 978-1-57387-372-7.]
Libraries spend a considerable amount of money each year on subscriptions to proprietary databases of online information, such as newspaper and magazine articles, authoritative encyclopedias, and reference resources. The current Gale Directory of Databases lists over 20,000 information databases and related products which libraries can purchase, including, of course, the Gale Directory of Databases. These databases are so strongly associated with the libraries that purchase them that they are often simply called "library databases"; they allow libraries to gather information that is not normally available on the World Wide Web.
While the vendors that sell this information devote a great deal of time and effort to making their searching interfaces smooth and efficient, many libraries that serve the general public try to offer a single "federated" search interface that pulls information from a variety of library databases simultaneously, rather than going to each individual database's interface and repeating the search. A handful of commercial vendors offer federated search tools, and the market for such tools has been growing over the last five years.1 Ideally, such an interface provides the library's users with a simple but effective "Google-like" search for accessing the library's entire collection of online resources. As Roy Tennant has written, at their best these tools are "...the correct solution for unifying access to a variety of information resources."2
If a federated searching tool is desirable for a single public library, consider how much more important it would be for a network of more than 250 public library systems. Such is the case for the Ohio Public Library Information Network (OPLIN).
Since 1996, OPLIN has been providing a basic collection of online databases to Ohio public libraries. Currently purchased in cooperation with the Ohio academic library information network (OhioLINK) and the school library network (INFOhio), with additional funds from an Institute of Museum and Library Services LSTA grant awarded by the State Library of Ohio, the total cost of this extensive collection tops $4 million annually. In 2004, the network partners began referring to this communal collection of databases as the "Ohio Web Library."
While a federated search of these valuable resources may not be as critical in an education environment, where students are often instructed to use a particular database, for public libraries the lack of a good federated search interface results in low use of the databases and therefore a high cost per search. Public library users are uncomfortable with being forced to select which database to search, often with no idea of what type of information the database provides, and to repeat their search in each individual database search interface. Confronted with this task, they simply turn to Google or some other web search engine to find online information and never get access to the information libraries purchase and provide.
OPLIN began offering a federated search interface to the Ohio Web Library in 2004, when a WebFeat Search Prism was installed. This search tool was based primarily on the search functions included in the Z39.50 information retrieval protocol (ISO 23950), which is the protocol most commonly used by federated search tools. The Library of Congress is the Maintenance Agency and Registration Authority for the Z39.50 standard, which specifies a client/server-based protocol for searching and retrieving information from remote databases. Z39.50 is a large standard, with lots of functionality, but usually an implementation does not support the complete standard. Instead, a subset of functions, called a "profile," is commonly used to meet specific requirements. A profile provides a specification for vendors to use when setting up their servers, so that search applications can interoperate. For example, the ATS profile defines a basic subset of services for Z39.50 support of public access library catalogs. The ATS profile is quite simple, requiring support for only three search attributes — author, title, and subject ("ATS") — and mandates support for MARC record data transfer. Other profiles are more complex, to fit more complex needs.3
While the WebFeat Search Prism provided a federated search using Z39.50, the return of search results from a database collection the size of the Ohio Web Library was slow, and results were presented in groupings by source, rather than in order of relevance. Nevertheless, it was judged by OPLIN to be the best federated search tool available at the time. By 2007, however, Ohio public librarians were voicing dissatisfaction with these limitations. In focus groups they repeatedly expressed a desire for a search that was "more like Google." OPLIN, for its part, had not made any significant changes to the federated search interface since it had been installed. Clearly it was time for a change.
In late 2007, OPLIN began the search for a new search. We first contacted WebFeat, the existing vendor, to explore newer versions of their product. They demonstrated WebFeat Express, their newest offering, which had significant improvements over the WebFeat product in use by OPLIN, including control over search results ranking. Ultimately, however, OPLIN rejected this possibility because it still did not allow us enough control over the product to be able to make rapid, incremental changes in response to user feedback, which we felt would be an important feature of any new search interface.
Next we investigated Google Custom Search Engine (CSE); after all, librarians had told us they wanted something "more like Google." Custom Search allows you to create your own Google search against a list of websites you specify. Once you have defined your search targets, Google gives you a simple piece of code for a search box to place on your site. Any search done through this search box starts a Google search, but the search is limited to the sites you have specified. At the time we looked at CSE, there was no way to tailor the ranking of search results; the results that ranked highest in Google's standard algorithm always came to the top. Google staff told us they were planning to release CSE with the capability for the host site to tailor rankings to reflect the host's preferences or area of expertise, and indeed, this capability was added a few months later.
The biggest shortfall of the Google CSE technology was the fact that the only sources that it could hit were the ones that were already indexed by Google. While this worked well for open content like Wikipedia, proprietary sources like EBSCO, which require user authentication to access, had no presence. We went through several iterations trying to devise a way to integrate proprietary content. These ranged from possibly using MARC records from EBSCO to build our own open website with the article descriptions and links in it for the Google bot to crawl, to having talks with Google themselves to see if there was any way of making the data available. In the end we found that the Google Custom Search just was not well suited for accessing the type of data we needed, and we moved on.
About this time, Index Data announced a demonstration of their MasterKey federated search. OPLIN staff were impressed by the speed and ease of this product. It had the additional advantage of being built around the Z39.50 protocol, which we knew would work with most of the databases we purchased. Initial discussions with Index Data indicated, however, that the MasterKey hosted search solution was not the best fit for our needs. Rather, they suggested we build a search around their open source "pazpar2" metasearching middleware, which is the engine within MasterKey.
The pazpar2 software is a web-oriented Z39.50 client that can search a lot of targets in parallel and provides on-the-fly integration of the results. It works particularly well with AJAX (Asynchronous Javascript and XML) for building a dynamic page displaying search results. It provides record merging, relevance ranking, record sorting, and faceted results. This was the option that seemed to offer the functionality we needed, the features we wanted, and the critical ability to make rapid changes. We identified some features of the MasterKey hosted service which we felt could be improved, looked closely at the pazpar2 code, and came to an agreement with Index Data to install a slightly customized version of pazpar2 on one of our servers to be the engine for our federated search.
Although we knew that neither Google CSE nor a hosted MasterKey web service would be our eventual federated search tool, we decided to use these two searches for some early user testing to guide our future decisions.
We built a Google Custom Search and targeted some open websites that had good content, such as www.NetWellness.org, Wikipedia, www.HowStuffWorks.com, and www.Gutenberg.org. We took that and the MasterKey demo to the ScanPath Usability Lab at the Kent State University School of Library and Information Science in November 2007 to observe how users reacted to the two searches. ScanPath uses high-tech software to measure and record a user's eye movements while using a web site, tracking how often the eye travels to certain areas of a page, how long it lingers, etc. ScanPath staff also interview the user while he/she is using a page to get them to verbalize their experience.
Our observations stunned us. Until that time, we had not appreciated how thoroughly Google has defined the online searching behavior of most people. Users expected results lists that looked like Google, down to the colors of the components of a search result. They were adept at judging the reliability of search results based on the URL; for example, URLs ending in .org were judged to be generally trustworthy, while URLs containing the word "blog" might contain interesting, but not necessarily reliable, information. They expected the links in search results to take them to another web site, not directly to an article. Clearly librarians were right; to meet user expectations libraries needed a federated search that was "more like Google."
With this user feedback in hand, we now started putting the pieces of the new search together. First, we contracted with Index Data to do the custom install of their pazpar2 and Javascript software on our server. OPLIN owned the www.ohioweblibrary.org domain name from a previous promotional campaign, and with the agreement of the other library organizations that contribute funds to purchasing the Ohio Web Library database collection, we decided to re-purpose this domain as the site of our new federated search. On the server for this site, Index Data installed pazpar2 configuration files for our list of database Z39.50 targets, as well as a custom version of the Javascript that writes the search results to the page.
This custom Javascript wrote page content to three divisions: one containing the results; one containing a list of sources; and one containing a list of subjects. We also asked that the search results be modified, so they showed the title of the article (which was also a link to the article), the name of the database containing the article, the date of the article if available, and a brief description of the article.
While Index Data was working on their installation, OPLIN contracted with a local Ohio web design company, 361 Studios, to re-design the www.ohioweblibrary.org site. We specified a very simple, clean layout dominated by one search box. As much as possible, the design was to rely on a cascading style sheet (CSS) for the page look, and the entire design had to be compliant with accessibility standards. We also specified that the initial page load had to be less than 100 KB. Other than that, 361 Studios had a free hand in designing the graphics and navigation for the page.
Once we had the pazpar2 configuration files, the custom javascript, and the cascading style sheet, we started working on fitting the pieces together. The pazpar2 software uses one configuration file for each Z39.50 target to be searched. We set up a basic Z39.50 client to test the pazpar2 configuration files against our targets and see the raw data the target Z39.50 server was returning in response to our queries. This was not something we had to do, but we wanted to understand as much as possible about the processes going on in the background during a search. Since we wanted to be able to make fast changes to the search interface, it was important to know how each part of the configuration files affected the search results.
We also looked a little at the Javascript, again wanting to be able to understand how we might make changes. In this case, however, the complexity of the script lead us to decide to try not to make changes. If at some point in the future we decided something in the Javascript needed to be changed, we decided our best option was to contact Index Data and make arrangements for them to make the changes. After our initial investigation, however, it seemed likely that most changes we wanted could be accomplished by changing the pazpar2 configuration files and the cascading style sheet.
It did not take very long for us to get a basic federated search against a few targets up and running for testing. Now we began to work on turning the basic search into something good enough for production. We set a production launch date of July 1, 2008.
One weakness of using Z39.50 as the protocol for retrieving information from commercial databases is the fact that not all database vendors operate Z39.50 servers. In 2000, Sebastian Hammer, co-founder of Index Data, wrote that, "Most major library-systems vendors now support Z39.50 to some extent."4 It is the words "most" and "to some extent" that would cause problems for OPLIN.
Several of the vendors supplying databases to the Ohio Web Library collection do not support Z39.50, including a couple of well-known vendors like World Book and Facts on File. How could we get their databases included in our federated search? The answer came indirectly from our previous federated search vendor, WebFeat. WebFeat received a patent in late 2004 on a method for managing the authentication and communication necessary to perform a search against a licensed database and convert the results into Z39.50, XML, or HTTP format. In other words, they created a tool that could access unstructured data and deliver it in a structured format. They called this access tool a "translator" and built thousands of translators for databases that do not support structured data. These translators are prominently used in the WebFeat federated search products.
OPLIN now needed to find a way to get translators from the very vendor whose search product we were abandoning. Fortunately, someone else had anticipated this problem. CARE Affiliates had developed a partnership with both WebFeat and Index Data to market "OpenTranslators," WebFeat translators that are hosted on Index Data servers for a fee to allow a federated search tool to get to unstructured databases, including open sites on the World Wide Web. OPLIN provided CARE Affiliates with a list of database and open web targets for which we wanted translators and they took care of having the translators built, hosted, and made available as targets for pazpar2 configuration files. Once these were all in place, we were able to do a federated search across all the Ohio Web Library databases as well as some open sites, such as Wikipedia, NetWellness, and OAIster.
Now we went back to the results of our early usability testing, included some feedback from test users of our new prototype, and started adding some amenities based on what our users might expect.
For one thing, we knew that users would try to do advanced "Google" searches, meaning using quotes around phrases, plus-signs to make some words manadatory, etc. Most users seemed to assume that if Google search uses these conventions, every search uses them. While Z39.50 can handle some complex searching behavior, it does not use the Google notation conventions. Moreover, while many library information vendors may support Z39.50 "to some extent," quite a few do not support complex Z39.50 queries. We learned that including quotes and other Google notations in the search term often caused our search software to crash, so one of the first things we did was set up a parsing routine to strip these problem characters from users' search terms before passing the terms to pazpar2. We hope someday to find a work-around that will allow pseudo-phrase searching when terms are enclosed in quotes, but for now the quotes are ignored.
Another amenity was actually specified in our instructions to Index Data for customizing the Javascript. The default pazpar2 Javascript behavior was to search against either all targets or one target; we asked that this be modified so we could pass a string of specific targets to pazpar2. This allowed us to group several related databases into one "category" search, such as Health, Careers, or Business. We built a drop-down box on the search page containing these groupings of sources, so the user could limit a search to targets with a specific kind of information.
We also added a "Searching..." progress bar to the page. This is not needed to show the user that the search has started, because the Javascript starts writing results to the page as soon as the user launches the search. Rather, it is needed to let the user know when the search is finished, since the results list is continuously re-written by the Javascript until the search is complete. Without the progress bar, the user sees the page "jumping" as results appear and disappear, and this could be disconcerting. The progress bar distracts from this effect and provides the user with a little more information about what is happening to the page.
The heavy use of Javascript on the page also places the browser in a very insignificant role. Unlike a standard web page that is sent from the server, and loaded a single time on the user's browser, the search's use of AJAX makes the page act much more like a running application. The browser and the server are constantly communicating back and forth, updating the current view of the page, and reacting to new events created by the user. While this has the advantage of making the search work in any browser that has Javascript enabled, it can confuse users who are not used to sites that make such heavy use of Javascript and try to navigate to a previous search by using the browser's navigation buttons. To try to avoid this confusion, we added a small "do not use back button" note in the upper left corner of the screen. We hope to be able to remove this as users become more accustomed to AJAX pages.
We also added a spell checker, to suggest spellings for search terms that seemed to be misspelled. The problem with trying to implement search suggestion functionality is that for it to actually make good suggestions, it needs a large bank of data to draw from. We looked into just using dictionary files, but that type of setup would not automatically change with trends and we would have to manually update the dictionary. Next we took a look at the API made available by Google. Though this is something that they used to offer, they had changed what the API exposed, and search suggestions were not available at that time. The same path that led us to Google brought us to Yahoo! next. Yahoo! also offers an API, and using a simple JSON call we were able to retrieve search suggestions from them. These suggestions tend to be more accurate than anything we could construct in-house, since they have a large database of search queries information to pull from.
The display of the search results received a lot of attention as we developed the interface. The pazpar2 middleware does a good job of ranking results by relevancy, so that was not a problem. It also includes an option to rank results by date, although the effectiveness of this ranking is limited somewhat by the fact that not all vendors have their Z39.50 servers configured to return date information. But other than the ranking, there was the question of what information to display in the search results. We decided to display four items of information for each individual search result: the title, the source(s), the date, and a brief description. Not all Z39.50 servers returned all of this information, but at a minimum the search result displays title and source. In all cases, the title is a link to the article.
In most cases, the search results link to full-text articles, but some of the EBSCO databases included in the Ohio Web Library also contain just citations to articles, not the full text of the articles. In these cases, we found that in the Z39.50 data EBSCO makes available, no URL to the article is returned if only a citation exists. By parsing the returned data before it was displayed on the search results page, we were able to test for the presence of a URL. If the search result failed this test, we appended "(Citation only)" to the title of the article to warn the user.
Once a user finds an article of interest and clicks on the title, then the process of authenticating them begins. If the link points to an "open" article from the Open Archives Initiative, Wikipedia, NetWellness, etc., then no authentication is necessary, but if the source of the article is a proprietary database, then we have to check to make sure the user is covered by our license agreement with the vendor. OPLIN has used EZProxy for several years to handle this task, and still uses that system to handle Ohio Web Library user authentication. We acquired EZProxy before it was purchased by OCLC. Like pazpar2, EZProxy is middleware; it authenticates users against our local authentication system and provides remote access to our licensed content based on the user's authorization. In OPLIN's case, we use the IP addresses assigned to libraries as the basic test to authenticate a session. Traffic coming from within a library passes through the authentication with no interruption. Users accessing the system from outside a library can give their public library card number (or a username and password if they are associated with a K-12 school) to authenticate their session. Once they have been authenticated, they can access as many articles as they want without any further interruptions; the system remembers them until they close their browser.
Finally, we included a "Live Help" link to the Ohio KnowItNow 24/7 reference service. If a user finds the whole searching process to be too difficult or unproductive, they have instant recourse to a live reference librarian to assist them. KnowItNow is a live online information service provided free of charge for the citizens of Ohio by the State Library of Ohio and local public libraries. Professional librarians are available 24 hours a day, seven days a week to answer reference questions and assist Ohioans in finding information.
Not all of these changes were implemented on July 1, 2008, when the www.ohioweblibrary.org page was launched. Nor do we ever expect to have all of our changes implemented. Whenever we introduce the site to a librarian, we emphasize that the open source code that runs the site allows us to incorporate their suggestions to make the site better. Several of the changes mentioned above came about because of suggestions from librarians using the site. In most cases, we were able to make the changes within hours.
As mentioned earlier, our goal is to be continually making small, incremental changes to the search interface based on user feedback. Because so much of the code that runs the site is open source, we have exceptional ability to do just that. The www.ohioweblibrary.org search interface will never be "finished" until the day we take the site down. We intend to just keep mashing cool things into it as we find them.
To recap, these are the components of our mashup (so far):
We're proud of what we've built, and we invite you to check it out at www.ohioweblibrary.org.
1. Alexis Linoski and Tine Walczyk, "Federated Search 101," Library Journal Net Connect 133 (Summer 2008): 2.
2. Roy Tennant, "The Right Solution: Federated Search Tools," Library Journal 128:11 (June 15, 2003): 28.
3. For a good general discussion of Z39.50 and profiles, see Mark Hinnebusch and Charles B.Lowry, "Z39.50 at ten years: How stands the standard?," Journal of Academic Librarianship 23:3 (May 1997): 217.
4. Sebastian Hammer, "Dr. Metadata, or: How I Learned to Stop Worrying and Love Z39.50," American Libraries 31:9 (Oct. 2000): 54.