1 / 94

Implementing WebBridge as an OpenURL Resolver

2. Game Plan. WebBridge explainedImplementation decisionsWho, What, When, Where, Why...How to make it workConfiguring WebBridgeResources, field selectors, data tests, etc.Coverage dataTesting

drea
Download Presentation

Implementing WebBridge as an OpenURL Resolver

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Implementing WebBridge as an OpenURL Resolver Bob Duncan Lafayette College

    2. 2 Game Plan WebBridge explained Implementation decisions Who, What, When, Where, Why... How to make it work Configuring WebBridge Resources, field selectors, data tests, etc. Coverage data Testing & Troubleshooting Customizing WebBridge display

    3. Concepts…

    4. 4 What is WebBridge? Resource linking component of MAP Context-sensitive linking to appropriate resources Where you go is appropriate to where you are Get from A to Z without going through B…Y OpenURL resolver Remote (non-III) origins OpenURL resolver-like behavior WebOPAC Millennium modules

    5. 5 WebBridge as an OpenURL Resolver Origin generates OpenURL OpenURL ? metadata from citation formatted as URL User clicks WebBridge link WebBridge “resolves” the OpenURL URL of the WebBridge window = The OpenURL Resources offered based on: Contents of OpenURL WebBridge configurations

    6. 6 The OpenURL Framework The OpenURL framework is… A syntax for creating web-transportable packages of metadata about an information object A syntax for enabling context-sensitive linking to appropriate resources A NISO standard 0.1 versus 1.0 OpenURL 1.0 support in Release 2006LE The OpenURL framework is NOT… A search mechanism A mechanism for finding full text A persistent linking syntax

    7. 7 Record in origin (Expanded Academic)

    8. 8 Metadata from record in origin, converted to OpenURL key/value pairs

    9. 9 OpenURL – What happens

    10. 10 Window content is the result of resolver’s analysis of metadata in the OpenURL

    11. 11 WebBridge concepts Origins Where you link from Any OpenURL-enabled database Resources Where you link to (aka, the “Target”) JSTOR, Google, your OPAC, ILL form Categories Types of Resources Full-text, library catalogs, ILL, A&I

    12. 12 WebBridge concepts (cont.) Data tests Under what condition(s) the resource is offered MatchISSN, MatchDATE, HasVOLUME Field selectors Objects for data tests / Placeholders for link URLs ISSN, ISSN-HYPHEN, AULAST, ATITLE Filters Block the resource OriginIsABCCLIO, OriginIsExpAcad

    13. 13 WebBridge concepts (cont.) Coverage data Journal-level details for full-text publications ISSN, title, dates, URL Custom info Associated with a resource definition Data matching Data retrieval Secondary lookups Loaded via Mill Serials, Admin, or ERM Obtained from vendor, third party, etc.

    14. Implementation…

    15. 15 Implementation Decisions Who…will set up, maintain, etc.? What…kinds of resources will you offer? When…will you offer resources? Where… …from where will you offer links? …to where in a resource will you link? Why…will you offer resources? How…will you figure it all out?

    16. 16 Why offer resources? Save the time of the user Save the time of the user Save the time of the user Save the time of the user Save the time of the user

    17. 17 What can you link to? Anything with a URL Anything with a URL Anything with a URL Anything with a URL Anything with a URL

    18. 18 What should you link to? Context-sensitive appropriate resources Appropriate for your users/staff Appropriate for your library type Appropriate to the context Something useful Appropriate to the context Results Links should describe what user will get

    19. 19 When will you offer resources? When appropriate to “Why” and “What” Under what conditions? All the time Situational Depending on possible result Just in case OpenURL vagaries

    20. 20 From Where will you offer resources? Wherever it’s possible “OpenURL compliant” The database can generate OpenURLs Nothing to do with linking TO a database Where it makes sense Should you link from full-text resources? Works cited Better copy

    21. 21 To Where in the resource will you link? Possibilities For full text Article Search result, TOC, Journal home, Database For library catalogs (yours and/or others) Search screen, search results, record For document delivery Filled out ILL form, “how-to” page For anything Whatever makes sense…

    22. 22 To Where in the resource will you link? Depends on… Data in the OpenURL Is what you need to create a link available? Is what you need to create a link correct? The resource What does it allow/support? What you’re trying to accomplish Get the user to the article? Get the user to the journal? Instruction vs information?

    23. How to make it work… Getting Started

    24. 24 Best path Think about: The kinds of resources you want to offer From where you want to offer them Configure (in this order): Categories Origins Filters Field Selectors Data Tests Resources Load coverage data for full-text resources

    25. 25 Reality path Think about: The kinds of resources you want to offer Set up an origin Configure a resource Get all confused Contact Innovative Ask the WebBridge list Contact Bob WebBridge idiot in a former life

    26. 26 Recommended Path Think about: The kinds of resources you want to offer From where you want to offer them Configure: One category One full-text resource Load its coverage data One “fake” origin An origin is determined by the value of its SID Test with “fake” OpenURLs for real articles

    27. 27 WebBridge Management interface aka “WebBridge Edit” Initials / password controlled Function “WebBridge Edit Database” Function “WebBridge View Database” Access: http://<yourserver>/webbridge/edit Button in Millennium Administration One editor at a time Inactivity timeout TIMEOUT_WEBBRIDGE_EDIT wwwoption Release 2006LE +

    28. 28 WebBridge Management menu

    29. How to make it work… Nuts & Bolts

    30. 30 Categories What TYPES of resources you link to Categories assigned to origins Links grouped by category in WebBridge panel Full Text, Library Catalogs, ILL “Edit Categories” Name it Whatever you want – it’s just a name Appears as header for group of resource links Assign a sort order Assign origins

    31. 31 Categories

    32. 32 Category – Create New…

    33. 33 Category – “Full Text Available (Direct Link)”

    34. 34 Origins Where you link FROM Must set up on vendor’s side SID-dependent “Edit Origin Definitions” External Origin Name (and description) sid or sid/rfr_id (Release 2006LE+) Do external lookup Assign category(ies) At least one required Can edit later Deselect “Active” if not ready to be live

    35. 35 Origin Definition – Create New…

    36. 36 Origin Definition – “Historical Abstracts”

    37. 37 SIDs – Service IDentifiers WebBridge needs one Change in Standard OpenURL 0.1: &sid=ISI:WoK:WOS Origin def value: ISI:WoK:WOS OpenURL 1.0: &rfr_id=info:sid/www.isinet.com:WoK:WOS Origin def value: www.isinet.com:WoK:WOS Values determined by vendor No standard / No registry

    38. 38 Origin Definition – “BobTest”

    39. 39 Filters Block the resource from being offered Evaluated prior to data tests For III origins, lots of possibilities For OpenURL resolver, based on the origin Limited usefulness Hybrid origins Suppress the origin’s full text links to itself Misbehaving origins Suppress a resource if data tests can’t be met Bad OpenURL implementations

    40. 40 Filter Definition – Create New…

    41. 41 Filter Definition – “OriginIsEAI”

    42. 42 Field Selectors Objects of data tests Field selector name ? VOLUME Defined as value for the volume key in the OpenURL Data test name ? HasVolume Asks “does the OpenURL have a value for volume?” Placeholders in link URL variables #@FieldSelectorName# replaced with value from OpenURL #@VOLUME# or #@volume# http://muse.jhu.edu/cgi-bin/resolve_openurl.cgi?genre=article&issn=#@ISSN-HYPHEN#&title=#@TITLE#&volume=#@VOLUME#&issue=#@ISSUE#&aulast=#@AULAST#&spage=#@SPAGE# Name is just a name

    43. 43 Field Selector Definition – Create New…

    44. 44 Field Selector Definition – “ISSN”

    45. 45 Field Selectors – definition Where to look in the OpenURL OpenURL version 0.1 issn, volume, title OpenURL version 1.0 rft.issn, rft.volume, rft.title or rft.jtitle or rft.btitle Release 2006LE + Pipe-delimited list: title|rft.title|rft.jtitle|rft.btitle Key in OpenURL not part of a standard? Just define it

    46. 46 Field Selectors – regular expressions Regular Expressions: Manipulate the data Optional Format / MatchThis / ReplaceWithThis / Examples: /-// look for a hyphen and replace with nothing /,$// look for comma at the end of a string and remove it

    47. 47 Field Selectors with regex applied ISSN field selector def: issn regex: /-// 1234-5678 ? 12345678 ISSN-HYPHEN field selector def: issn regex: /(^.{4})(.{4}$)/\1-\2/ 1234-5678 ? 1234-5678 12345678 ? 1234-5678 Find the value for the issn key in the OpenURL; take the first four characters from the beginning of the string and the last four characters from the end of the string and stick a hyphen in between them.

    48. 48 OpenURL: issn=1234-5678 Resource definition link syntax: http://muse.jhu.edu/cgi-bin/resolve_openurl.cgi?genre=article &issn=#@ISSN-HYPHEN#&title=#@TITLE# &volume=#@VOLUME#&issue=#@ISSUE# &aulast=#@AULAST#&spage=#@SPAGE# &issn=1234-5678 Field selector as placeholder

    49. 49 Data Tests Under what condition(s) a resource is offered Data test = true ? resource is offered Data test = false ? resource is NOT offered However…III Manual says: “Data tests are used to suppress links to target resources” Translation: a resource without data tests applied will always be offered; if you apply a data test, the resource link will be suppressed from displaying always and will only display when the data test(s) is(are) true. No Data test(s) applied ? resource is offered

    50. 50 Data Tests – WHY? Offer link when content should be there: MatchDATE & MatchISSN Check for elements required by link syntax: HasVOLUME HasSPAGE HasTITLE Check to see what something is: isArticle isNBERWorkingPaper isDissAbs

    51. 51 Data Test Types Match Data Match the contents of a field selector against the coverage database MatchDATE, MatchISSN Regular expression Match a pattern in field selector string HasVOLUME, HasSPAGE, isArticle Bool data Perform a test on bib/item record data Innovative origins only

    52. 52 Data Test – Create New…

    53. 53 Data Test – “MatchISSN”

    54. 54 Regular Expressions Regular expressions ? pattern matching Regex describes the pattern Character string is the object of the pattern match Simple Check for the existence of any character(s) .+ Match a specific string of characters bob Complex Match a varying pattern of characters (^.{4})(.{4}$)

    55. 55 Regular Expression Data Tests Match a string pattern in a field selector RegEx describes the pattern .+ = “look for any character(s)” Field selector is the object string VOLUME Data test applies the regex to the field selector HasVolume ? Are there any characters in the data defined by the VOLUME field selector? If yes, OpenURL has a value for volume ? data test = true If no, OpenURL has no volume value ? data test = false

    56. 56 Data Test – “HasVOLUME”

    57. 57 Data Test – “isNBERWorkingPaper”

    58. 58 Resources Where you link TO (aka, the “Target”) Definition components shared with III linking Name, Description Active, Show coverage, Logging Sort Order, Category Navigation, Image file Resolution Server Linking Components URL Link Display Data Tests Coverage Data

    59. 59 Resource Def – Create New…

    60. 60 Resource Def – Create New…

    61. 61 Resource Def – Project Muse

    62. 62 Resource Def – Name & Description Name does not need to be unique Multiple definitions for same resource One category per resource definition Name becomes the text of the link Value for #LinkText# placeholder in URL Should make sense Gets context from category Can/will appear with other text Description Internal use only

    63. 63 Resource Def – Active, etc. Active On / Off switch Logging Stats Show coverage Display info from coverage data Uses local catalog “LIB HAS” label Start and end dates: LIB. HAS  01-01-1995 - 12-31-2003 Useful?

    64. 64 Resource Def – Show coverage

    65. 65 Resource Def – Navigation & Image Navigation (frame vs. window) WebOPAC only Origin determines how WebBridge opens Image Displays as the link to the resource #LinkImage# used in URL File path relative to screens directory Meant for WebOPAC resource table

    66. 66 Resource Def – Link Display How the link displays #LinkText# (or #LinkImage#) What users click #LinkText# ? resource name Descriptive text (optional) Search for ABC at XYZ. HTML allowed Field selectors (optional) Anything that’s appropriate

    67. 67 Resource Def – link display examples Project Muse Get article at #LinkText#. Project Muse Browse to article at #LinkText#. Lafayette Library Catalog Search for <i>#@TITLE#</i> in the #LinkText#. ILL Article Request If this journal is not available at Lafayette, place an #LinkText#. RefWorks Export citation data for this record to #LinkText#.

    68. 68 WebBridge panel

    69. 69 Resource Def – URL aka the Link Syntax – URL for where users go when they click the link to the resource http://0-muse.jhu.edu.www.library.lafayette.edu/cgi-bin/resolve_openurl.cgi?genre=article&issn=#@ISSN-HYPHEN#&title=#@TITLE#&volume=#@VOLUME#&issue=#@ISSUE#&aulast=#@AULAST#&spage=#@SPAGE# $#@ISSN-HYPHEN##@URL#$ The more specific the target, the better Field selector placeholders Use data tests to make sure data is available Can’t always get specific URL dependent on resource, not WebBridge

    70. 70 Link Syntaxes – How to find ‘em No standard for resource linking CSDirect WebBridge Link Syntax FAQ WebBridge List Vendor Websites Trial and error Must be predictable Variable pieces must come from: OpenURL data Coverage data CrossRef to the rescue

    71. 71 Proprietary linking syntax Persistent article URLs – Project Muse http://muse.jhu.edu/journals/american_imago/ v060/60.4schapiro.html Problems using OpenURL metadata american_imago ? American Imago 060 ? 60 schapiro ? Schapiro More than one article by author in one issue v060/60.4schapiro1.html v060/60.4schapiro2.html Persistent/Durable ? Predictable

    72. 72 Resource Def – URL Link syntax tips No line breaks or spaces URL-encoded e.g., space ? %20 | semicolon ? %3B Beware of case-sensitivity Experiment with different values Field selectors represent variables Don’t confuse vendor keys with field selector names …&vol=45&iss=3… …&vol=#@VOLUME#&iss=#@ISSUE#… Can’t include session info

    73. 73 Resource Def – Data Tests Why? So the link is appropriate So the link has a chance of being successful Example: Project Muse Data Tests: MatchDATE, MatchISSN So the article is there HasTITLE, HasVOLUME, HasSPAGE So the link is successful http://muse.jhu.edu/cgi-bin/resolve_openurl.cgi? genre=article&issn=#@ISSN-HYPHEN#&title=#@TITLE# &volume=#@VOLUME#&issue=#@ISSUE#&aulast=#@AULAST# &spage=#@SPAGE#

    74. 74 Match Against this Resource

    75. 75 Secondary Lookups Use value from OpenURL to return value from coverage data Format: $#@FieldSelector##@ColumnNameFromCovData#$ Example: use ISSN to retrieve journal URL $#@ISSN-HYPHEN##@URL#$ Get value defined by ISSN-HYPHEN from OpenURL Look up that value in coverage data Return value for URL from same row: http://muse.jhu.edu/journals/american_imago/ Entire sting ($...$) replaced by returned value

    76. 76 Secondary Lookups – Example uses Journal-level Link URL: $#@ISSN-HYPHEN##@URL#$ $#@TITLE##@URL#$ Article-level Link URL; journal URL as base: $#@TITLE##@URL#$&#@volume#.#@issue# .#@spage# Grab JID value: http://expensivejournals.com/getit?fmt=FT& pub=$#@TITLE##@JID#$&date=#@DATE#&issue=#@ISSUE#&page=#@SPAGE# Grab any user-defined value in coverage data

    77. 77 External Lookups Applied to Origins Replace OpenURL data with data looked up somewhere else (“external” to the origin) Example: Google Scholar Weak OpenURLs, but often DOIs GS origin def: Do external lookup (CrossRef) If GS OpenURL has DOI: WebBridge sends DOI to CrossRef CrossRef returns citation data WebBridge resolves CrossRef data, not OpenURL data

    78. 78 External Lookup – Google Scholar & CrossRef lookup Requirements: Field selector for GS DOI: Name: DOIGS Def: id=doi RegEx: /doi:// External lookup definition URL: http://doi.crossref.org/servlet/query?id=#@DOIGS# &pid=lafayette:lafayette GS Origin definition: use external lookup. Mapping file in the live WebOPAC directory What to do with data returned by CrossRef lookup Map CrossRef tag “surname” to OpenURL aulast Map CrossRef tag “given_name” to OpenURL aufirst

    79. How to make it work… Troubleshooting

    80. 80 Troubleshooting Ask: Where is the process failing? WebBridge not a factor until button is clicked Is the category assigned to the origin? Is the missing resource assigned to the category? Are the data tests being met? Look at the OpenURL Look at the OpenURL Look at the OpenURL

    81. 81 OpenURLs Origins Can pass whatever they want Can NOT pass whatever they want Visible metadata may not equal OpenURL OpenURL may contain invisible data Can pass conflicting data Can pass incorrect data Can pass correct data in incorrect keys

    82. 82 Looking at the OpenURL The OpenURL is the URL of the WebBridge window To view it: Browser Address/Location bar Bookmark the window View window properties/info Firefox “CopyURL+” extension If HTTP POST instead of GET: <!--{openurl:<X>}--> tokens in resserv_panel.html

    83. How to make it work… Customizations

    84. 84 Customizable displays resserv_panel.html Used by OpenURL resolution server Only the copy in live screens is used Fully customizable resserv_staff_panel.html Millennium staff modules wp_panel.html WebOPAC

    85. 85 resserv_panel.html

    86. 86 resserv_panel.html – (manual page 106495) Major tokens: <!--{resourcelist}--> <!--{ifnoresources}--> <!--{xif}--> Useful tokens <!--{ifopenurl:<X>}--> <!--{openurl:<X>}--> Major classes for style sheet use wbbody, wbresourcelist, wbcategory wblinkdisplay, wblinkfield, wblinktext

    87. 87 resserv_panel.html – Sample code <!--{ifnoresources}--> <h1 class="heading-res">Sorry!</h1> <p><strong>Based on the information provided, WebBridge cannot offer appropriate links.</strong><p> <!--{ifopenurl:title}--> <p>Try searching for <i> <!--{openurl:title}--> </i>in the <a href="http://www.library.lafayette.edu/search/t?SEARCH= <!--{openurl:title}--> " target="_blank">Lafayette Library Catalog</a>. </p>

    88. 88 No resources – Rendered

    89. 89 OpenURL data passed to ILL form

    90. 90 HTML generated by resourcelist token

    91. 91 Rendered view

    92. 92 Write citation to window

    93. That’s all

    94. Really…that’s all I have Bob Duncan Lafayette College

More Related