bibliotek.dk as target for SFX with plugin support (using SRU)
Tags: intermediate
, sfx-plugin
, sfx-target
Last Updated: May 24, 2011 13:14
- Description
bibliotek.dk is a free service where you can see what has been published in Denmark and the holdings of Danish libraries.
This small code contribution implements bibliotek.dk as a target with the use of a plugin so the target only displays if holdings for the given ISSN or ISBN number exists.
The plugin uses the SRU web service of bibliotek.dk and can be used as a template for similar services.
- Author: Kasper Løvschall
- Additional author(s):
- Institution: Aalborg Universitetsbibliotek
- Year: 2011
- License: BSD style
- Short description: Use, modification and distribution of the code are permitted provided the copyright notice, list of conditions and disclaimer appear in all related material.
- Link to terms: [Detailed license terms]
- Skill required for using this code:
intermediate
State
'In Development' but running in production at our library. So you can call it: beta!
Programming language
The target parser and plugin is written in Perl.
Software requirements
Tested using SFX v4 but should also work in SFX v3.
Screen captures
No electronic holdings available via SFX but the item was located in bibliotek.dk:
Author(s) homepage
Download
Target Parser version 1.0
PlugIn version 1.0
Working example
Learning XML ISBN 0-596-00046-4 with holdings in bibliotek.dk
Changes
- Version 1.0 / First release to the public.
Release notes
Notice: This CodeShare page is a work in progress. Help us to improve the code and documentation by giving us feedback. Thanks!
Installation instructions
On the SFX server
- Login as sfxlcl41 (or your preferred instance).
- Type "tp" to enter the target parser directory.
- Create a new directory called "AUB" and download the target parser with:
- Or put the file bibliotekdk.pm in here manually
- Go back two directories and enter the PlugIn directory and download the lookup tool:
- Or put the file bibliotekdkLookup.pm in here manually
From the SFX admin page
- Open Targets and select the button "Add New Target"

- Select the name for the target: AUB_BIBLIOTEKDK
- Select the Public Name e.g.: bibliotek.dk
- Select the service: getHolding
- Feel free to enter the general description: bibliotek.dk is a free service where you can see what has been published in Denmark and the holdings of Danish libraries.
- Select the character set utf8
- Click submit
Now we need to add the getHolding to the newly created AUB_BIBLIOTEKDK_LCL target.
- Select (S) for services for the target AUB_BIBLIOTEKDK_LCL

- Edit(E) the automatically created getHolding target service (else create it)
- Disable Object Lookup and mark the target as free
- Select Parser: AUB::bibliotekdk
- Set AutoActive as No
- Add the following (global) Threshold: (($obj->need('rft.issn') || $obj->need('rft.eissn') || $obj->need('rft.isbn')) && $obj->plugIn('bibliotekdkLookup'))
- Click submit
TO DO list
- The plugin and target parser only supports ISSN, eISSN, ISBN and year and could be expanded by other context objects.
- A target displayer could be written in order to display the actual holdings in bibliotek.dk within the SFX menu
Known issues
The plugin has a timeout of 5 seconds and bibliotek.dk's web service can be slower than this in it's response.

