Jag har fått en del frågor på hur vi gjort integrationen mellan JULIA och LIBRIS. Tack vare xsearch, det LIBRIS specifika lättvikts-API:et, är det enkelt att göra just den typen av mashups. Tjänsten är snabb, stabil och enkel att jobba med.
I fallet JULIA så är det flera komponenter inblandade. Vi fångar upp sökorden, skickar dem till ett PHP script med AJAX (Prototype, fast i framtiden skall jag nog gå över till Jquery), scriptet pratar med xsearch och resultatet skickas tillbaka till JULIA. Det som jag fått mest frågor på har varit PHP biten .Nedan finner ni ett PHP exempel på hur man kan göra. Som ni ser är det inte speciellt omfattande. Hör av er om det här inte är tillräckligt tydligt eller ni vill veta mer.
<?php //Xsearch query - Daniel Forsman - 20081130 //Turn off error report, while testing you might want it turned on... error_reporting(0); //Search term - define your own if you want to test $word=$_GET["libristerm"]; //Path to xsearch, notice this is where you choose format $request = 'http://libris.kb.se/xsearch.jsp?query='.$word.'&format=mods'; //Set up the call using simple_xml function $xml = simplexml_load_file($request); //Define base $Base = $xml->modsCollection; if (empty($Base->mods)){ //do nada }else{ //print results echo "<h2>LIBRIS - Träfflista</h2><ol>"; $x = "1"; foreach ($Base->mods as $item) { echo "<li><a href=http://libris.kb.se/hitlist?d=libris&q="; echo $word; echo "&f=simp&spell=true&hist=true&p=1 STYLE='text-decoration: none;'>"; echo $item->titleInfo->title; echo "</a> "; echo $item->name->namePart; echo "</li>"; $x++; } echo "</ol><div align=right><br /><a href=http://libris.kb.se/hitlist?d=libris&q=$word&f=simp&spell=true&hist=true&p=1>Till träfflista i LIBRIS</a></div> "; } ?> |
Om man bara vill se lite xml från LIBRIS för att testa med så behöver man inte göra mer än att ropa på det t ex
http://libris.kb.se/xsearch.jsp?query=strindberg&format=mods det finns många bra exempel på hjälpsidan.