Linking to the Appropriate Copy: Report of a DOI-Based Prototype - Appendix A: Illinois Local Link Server |
The University of Illinois at Urbana-Champaign (UIUC) Library makes available to its users a Testbed of over 60,000 locally mounted full-text journal articles-dating from 1995 to the present-taken from 47 physics, computer science, and engineering journals published by five professional societies. This full-text Testbed, developed and maintained in the UIUC Grainger Engineering Library, has been constructed under the aegis of a DLI (Digital Library Initiative) Phase I grant (1994-1998) and a follow-on CNRI D-Lib Test Suite grant (1998-2001). The Testbed has been used to investigate a wealth of information technologies, including SGML to XML conversion, document and metadata representation standards, linking technologies, the rendering of mathematics in a Web environment, and the application of transformative and style sheet mechanisms. The Illinois Testbed offers a natural laboratory to investigate techniques that address the problems connected with localization in reference linking. For the purposes of this study, Illinois Project staff elected to utilize the full-text Testbed articles from the American Institute of Physics (AIP) and the American Physical Society (APS), both members of CrossRef, as targets for local linking.
OverviewThe Illinois Local Link Server is designed to accept and process a DOI passed to it in an OpenURL format. The Link Server was implemented as a three-stage project, with each stage building on the features of the previous implementation. A diagram of the overarching project implementation with the three complementary design features is shown in Figure A1.
The initial Local Link Server implementation utilized a one-step lookup in a local database of stored Testbed DOIs to determine if a locally held copy of the article was to be displayed or if the DOI was to be sent back through the CNRI Handle System server with a parameter (�nosfx=y�) that indicates that the DOI should not be routed back to the Local Link Server. (This bypass parameter prevents an �endless loop� problem.) This version required DOIs to be determined and stored for each Testbed article, both for back-volumes and newly added articles.
The second version of the Link Server utilized the passed DOI for a �reverse lookup� in the CrossRef metadata database to extract additional metadata elements of the article. This metadata could then be searched in the Testbed metadata database to determine if a local copy of the article was available. Following on this, the more extensive full Local Link Server utilized the metadata elements extracted from the CrossRef metadata database to present users with a list of menu options that provide value-added and expanded retrieval services.
The full Local Link Server will be described here, but it should be made clear that the Illinois project developed solutions that range from a straightforward pass-through/local presentation decision system to a more fully developed OpenURL-based Local Link Server with value-added services.
Figure A1: Illinois Local Link Server Design
Implementation
The top level menu used at the Grainger Library public PC terminals was modified to allow for a DOI cookie to be pushed to selected public terminal machines. This DOI cookie was 'pushed' onto a terminal client via a one-pixel, transparent GIF image loaded via:
Initially, this "image" was only added to the Grainger Library's top-level public terminal Web menu if the user's IP address was within the Grainger Library address range. Later, the IP address checking was modified to allow the cookie to be pushed to addresses in the University range. We wanted to avoid disseminating the cookie to users outside of the University. We assumed that most users accessing Grainger Library digital resources would be coming through this web page.
The Local Link Server uses Microsoft�s Active Server Page (ASP) technology running under Microsoft Internet Information Server (IIS) version 4.0. The server-side scripts are in VBScript and utilize the Active Data Objects (ADO) over Microsoft SQL Server and Access databases. The Local Link Server conforms to the OpenURL specification, but at this time accepts only DOI Global Identifiers. To apply the Link Server to other uses, we plan to enhance it in the future to accept other parameters from the OpenURL OBJECT-METADATA-ZONE.
In terms of sequential processing flow, the Local Link Server does the following:
Figure A2: Example page from Illinois Local Link Server constructed from passed DOI
Implementation Notes
In the implementation of the Illinois Local Link Server, the XSLT 'document(�)' function is used to merge external XML files with the CrossRef metadata (which is returned as XML). For example, one external XML file is generated by an ASP script, which takes an ISSN (derived from the CrossRef reverse lookup) and returns the local location and call number for that journal. In this case, the URL 'http://xxxx.yyyy.uiuc.edu/lr/LocalPaperCopy.asp?issn=0003-6951' will return the XML:
Much of this information is contained in the local OPAC, but is actually retrieved from another database. This XML, along with the CrossRef XML, is transformed into the location information in the HTML output, such as:
Location: Grainger Engineering Library, Call Number: Q.530.5APPH
This XSLT technique could be used to merge in any number of other external XML documents, which would be used to add data to the HTML output. For example, this technique could be used to look up the URLs for local copies of the full-text (instead of using the method described above). The use of these techniques will be expanded in the future, possibly in conjunction with other local OpenURL services, which return XML.
Value-added links to A & I service databases are displayed in the Local Link Server. These include links to citations with abstracts and a search mechanism to retrieve other articles by the same author. These links are all derived from the metadata returned by the CrossRef reverse lookup, but in the future may be dependent on passed in parameters or other external XML files which are returned by the 'document(�)' function, described above. Numerous possibilities for value-added data are possible, such as display of the complete table of contents for the journal issue in which the current article resides, links to possibly related articles which share keywords taken from the current article's title, links to monographs by the same author found the local OPAC, and others.
In addition to generating the HTML output, the ASP script also generates a log entry for each Local Link Server resolution request.