/Sorin-WorldCat

WorldCat search target extension for Sorin.

Primary LanguageElixirGNU General Public License v3.0GPL-3.0

SorinWorldcat

Sorin Worldcat is a Sorin extension that provides the WorldCat Search API as a catalog search endpoint.

Sorin catalog search extensions are responsible for two services:

  • Receiving search requests from Sorin's Search module, rebuilding them as appropriate for the given catalog's API, and issuing them to the catalog;
  • Receiving the catalog's results, parsing them into Elixir maps based on Sorin's Resource schema, and returning them to the Search module, which returns them to the client.

Sorin Worldcat encodes all of this functionality in lib/sorin_worldcat.ex.

Installation

  1. Add the following to Sorin's root-level mix.exs:
def deps do
  [
    {:sorin_worldcat, git: "https://github.com/seulibrary/Sorin-WorldCat.git"},
  ]
end
  1. From the root of the application:
$ mix deps.get && mix deps.compile
  1. Edit the search stanza in sorin.exs to point it at SorinWorldcat:
config :search,
  search_target: SorinWorldcat
  1. Add the following stanza to sorin.exs, updating the wskey and result_format keys as necessary:
config :sorin_worldcat,
  wskey: "[Your WSKey]",
  result_format: "&recordSchema=info%3Asrw%2Fschema%2F1%2Fdc"

Notes:

  • If you have other catalog extensions installed, it is not necessary to remove their configuration stanzas from sorin.exs.
  • If you are using the Sorin Search Filter extension, it will be necessary to update it to accommodate WorldCat's API. See the README file for Sorin Search Filter for instructions.
  • If you do not already have one, you will need to get a WorldCat WSKey to use this extension.