[LibX] how to get LibX to support multiple external lookups for WebBridge

LibX Project libx.org at gmail.com
Sun Jul 2 13:01:26 EDT 2006

The following feature may be of interest to LibX adopters who also use
the WebBridge OpenURL resolver.

The OpenURL v0.1 standard allows the specification of global
identifiers to describe a particular item. For instance,
id=doi:10.xxxx/yyyyy can be used to describe an item by its DOI, and
id=pmid:xxxxxx can be used to describe an item by its Pubmed ID.

Depending on which global identifier is used, OpenURL resolvers will
then contact the databases that map these identifiers to a more
complete bibliographic record by consulting CrossRef's or PubMed's XML
databases. Subsequently, they will provide the user with ways to find
the item.

Unfortunately, WebBridge is somewhat hobbled in how it performs these
lookups. Even if properly configured, it is only possible to consult
one external database per OpenURL. This could be either CrossRef or
Pubmed, but not both.

Steve Barber from the University of Warwick and I developed a
work-around. It turns out that instead of basing the decision which
external server to contact on the actual global identifier in the
OpenURL, WebBridge looks at the origin (or sid) field. It is possible
to configure one external lookup per origin. We can therefore correct
for WB's shortcoming by setting up different origins for CrossRef and
Pubmed lookups, respectively, and by tweaking the OpenURL before we
send it. (Unfortunately, other origins such as Google Scholar will not
be able to do that, which means that WB cannot take full advantage of
the global identifiers these sources provide.)

The LibX option is called $openurl.xrefsid; if given and if an OpenURL
contains a DOI, LibX will use this sid - otherwise, the sid specified
in $openurl.sid is used. If $libx.rewritescholarpage=true is
specified, this should also place the correct links on the Scholar
results page.

 - Godmar

More information about the Libx mailing list