This is an old revision of the document!


README
=== About ===

This is an implementation of unAPI for OCLC PICA integrated library
systems (LBS).

unAPI is a tiny RESTful HTTP-API for the few basic operations necessary
to copy discrete, identified content from any kind of web application.
See <http://unapi.info/> for more information.

=== Copyright ===

Copyright 2008 2009 Goetz Hatop <hatop@ub.uni-marburg.de>.
Copyright 2009 2010 Stephan Rosenke <rosenke@ulb.tu-darmstadt.de> or
<r01-551@r0s.de>.

=== License ===

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License along
with this program.  If not, see <http://www.gnu.org/licenses/>.

=== Installation ===

PHP 5.2.0 with curl module is recommended, for unClient.php PHP 5 is
required.
If you want use the scripts with lower versions of PHP please check
the source for the string "comment out if using PHP4".

Edit unAPI.inc.php and set the user-defineable variables. Put the
script together with unAPI.php on a web server. Your records
identified by PPN will then be available via unAPI, for example:
<http://example.com/unAPI.php?id=123&format=xml>

Try out unClient.php to see an example on how to fetch data delivered
by the unAPI.php server script.
The unClient.php requires the unAPI.inc.php to be included, too.
Copy them to a place on your web server where this can be accomplished.
This need not to be the same server where your unAPI.php script lives.

For Bibsonomy.php and Coins.php see below.

=== What is Pica LBS ===

OCLC/Pica distributes an integrated library system (ILS) named LBS
which presents its data for human beings in a search interface called
PSI. For automata, the bibliographic records are not really hidden
but not available in a useful or standardized format.

=== About this software  ===

This PHP script utilise the so-called XML web interfaces which usually
comes with the LBS software to make bibliographic records available
via an unAPI. It formats them as dublin core, in a XML format, BibTeX,
JSON or some other formats (for a complete list query the unAPI without
id- and format-parameter). MARC is missed from the list of available
formats but could be added if someone can figure out how to map pica
categories to marc records.

The PICA records are retrieved as categories, and all the art of converting
them to something like dublin core comes down to figure out the
meaning of the categories.

Internally, PICA+ categories and subfields of the record can be accessed
via a multi-dimensional hash (see functions getArray() and getArrayNice() in
unAPI.inc.php).
Mappings in getArrayNice(), getDublinCore() et al. follow HeBIS cataloguing
rules and must possibly be adapted.

The program unAPI.php uses php curl - if available - to contact an OPAC
server and retrieve a bibliographic record identified by a PPN, which
is the basic identifier in the PICA world.
Which OPAC server to contact can be specified in the file unAPI.inc.php
by setting $opac_url.

To interpret the bibliographic data the class PicaRecord is used which
can be found in unAPI.inc.php. Adaptions to local cataloguing rules
should be made in this class.

Getting bibliographic records via a clean web interface is a necessary,
basic step for further processing the data for web based bibliographies
or application to enrich the records further.
For an example see <http://www.gbv.de/wikis/cls/Unapi>, especially
<http://www.gbv.de/wikis/cls/Unapi#Anwendungen>.

=== Bibsonomy.php and Coins.php ===

Bibsonomy.php and Coins.php are two example scripts for using unAPI.

For information about Bibsonomy, see <http://en.wikipedia.org/wiki/BibSonomy>.
Bibsonomy uses unAPI classes and functions to redirect an client to
Bibsonomy supplying bibliographic data which is identified by a PPN.
In the OPAC web interface is only a link with the respective PPN necessary.
For example '<a href="http://example.com/Bibsonomy.php?id=123">Bibsonomy</a>'.

For information about COinS, see <http://ocoins.info/>.
Coins.php uses JavaScript inclusion mechanisms to enrich an OPAC page with
COinS - only some JavaScript with the respective PPN is necessary.
For example '<script src="http://example.com/Coins.php?id=123" 
type="text/javascript" language="JavaScript"></script>'.

=== version of this document===

20100113: Restructured document.
buechereielektrik/unapi/readme.1263413489.txt · Last modified: 2010-01-13 21:11 by rosenke
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0