290 likes | 411 Views
The Scripting Library Combining data and information in the library. Stelline 2009. I servizi messi a disposizione con e per l'utente Cenfor Seminar Milan, March 12th, 2009. Changing needs. Rise of quantity, quality and diversification of information
E N D
The Scripting Library Combining data and information in the library Stelline 2009 I servizi messi a disposizione con e per l'utente Cenfor Seminar Milan, March 12th, 2009
Changing needs • Rise of quantity, quality and diversification of information • Desire and need of the users of manipulating (modifying, trasforming, remixing) data • In the point of interaction between users and data lies the mashup technology • Mashup idea match Web 2.0 concepts of data as intel inside, hackability, the right to remix, user-generated content, users as co-developers
Mashup architecture • Combine data and informationfromtwo or more sourcesto build new applications and services • Often “mashup” is used to represent also a manipulation of data from only one source, utilized in new ways (or opened or (better) interlinked with information from other sources) • Structured information • Non structured information transformed in structured information • Non structured information used at its best (e.g. screen scraping) Publishers begin to open their data: The Guardian docet! “The cost? Free. 'We feel like we are fueling an ecosystem'"
API – Application Programming Interface • Set of functions, procedures andmethods to access an online application • There are also APIs for offline applications • API expresses: • the logic with which the application is built • its informative resources • operations that can be performed from outside the application / service From a software -not human- point of view
How practically invoke functions provided by an API, utilize its resources, manage the data and / or information exchange?
Web Services • “A software system designed to support interoperable machine-to-machine interaction over a network” (W3C) • The exchange takes place between a service that exposes its information, data or services • Service Provider • And a service that asks for them • Service Consumer • Request formatted in XML or in other languages and sent usually via HTTP • Response formatted in XML, JSON, HTML or other languages and sent usually via HTTP
RESTful Web Services • Resource-oriented architecture • The client performs the request through a method of the HTTP protocol • Often GET • The request of information or operations is built and launched by the program through a simple Url • Information sent in the response are formatted in HTML or in other languages • They can be rendered as web pages or sent to other applications
(RESTful) Information Exchange • Web application (Service Provider) • API (what resources, operations, Url language etc.) • REST Interface • Mashup client (Service Consumer) • Builds request Url following REST interface parameters • Sends it via HTTP method(s) • Gets information to display or push to other applications
Hooks (and how to make your website mashable!) • RSS / Atom Feed • Image (Flickr) • Video(YouTube) • Map • Website (XHTML/CSS) XML OAI-PMH JSON MicroFormats (iCal, CoinS etc.) RDFa/RDFe OpenUrl UnAPI (Open) Linked Data Open APIs
Client-side scripting languages • Vital role of JavaScript in (closed) applications • Template • Application logic • Middleware layer How to effect the closed applications' web pages: • DOM • JavaScript and JSON • Callback • Dynamic Script Tag
Library Lookup by Jon Udell • Javascript:var re=/([\ /-]|is[bs]n=)(\d{7,9}\dX])/i; • if(re.test(location.href)==true) • {var isbn=RegExp.$2; • void(win=window.open('http://opac.biblio.unimib.it'+'/F/?func=scan&scan_code=ISBN&scan_start='+isbn,'LibraryLookup','scrollbars=1,resizable=1,location=1,width=575,height=500'))} • http://opac.biblio.unimib.it/F/?func=scan&scan_code=ISBN&scan_start=1591585376 The power of bookmarklet
Free usage data • University of Huddersfield Libraries: data of • Circulation • Suggestions • ISBN linking (via LibraryThing ISBN API) • With an Open Data Commons license Offered as XML files on the Web to everyone for • Global ranking of OPACs results • Augmented recommendation services • More effective collection development policies • ...
From APIs to Linked Data? • RDF Book Mashup • Integrates Web 2.0 data sources in the Semantic Web • Makes information about books, authors, reviews and bookshops available as semantic data • Turn XML responses from Web 2.0 web services into RDF • LIBRIS: the Linked Bibliographic Data • Dublin Core • SKOS • FOAF • Bibliontology • Home made ontology for holdings, FRBR relations
The Scripting Library means... • Requiring APIs or other standardized ways to access information from vendors and commercial suppliers (libraries are users theirselves) • Getting a more transparent, standardized and Web-like approach to data (the Web is simple) • Commitment to open library data and information, sharing them (i.e. making them hackable) and letting users, stakeholders and applications (e.g. Course Management Systems, Facebook Apps, browser toolbar etc.) access them (openness, addressability, discoverability) • (Right to) Manipulate, enhance, mash-up, remix, re-invent • Using immagination and participation – together
What's for? • The Scripting Library might become a means of renewal and innovation • Offering all the richness of the data (also) in a machine-readable format allows for data • Re-use • Enhancing • Showcasing And for better cooperation between libraries And between libraries and other organizations
Towards a library *data* portability • From • "It isn't the cables, it is the computers which are interesting" • To • “It isn't the computers, but the documents which are interesting” • To • “It's not documents that are important but the things they are about which are important” • Tim Berners Lee dixit
This talk is dedicated to Alberta Zanella(for that story of 29th November...) Thank you! Bonaria Biancu a.k.a. The Geek Librarian Library of the University of Milano-Bicocca Blog: http://bonariabiancu.wordpress.com/ E-mail: bonariabiancu@gmail.com
Mashup Editors • Yahoo! Pipes • Open Kapow • Microsoft Popfly • Google mashup Editor (on the way to be shut down) • MashMaker • Dapper • ... • Enterprise software
Credits & Notes • I got inspiration for the “Scripting Library” concept from Bruce Sterling's “Scripting Architecture” • The script for Gbooks and LThing in Metalib is made by Ere Maijala • Bibliobar was developed by Salvatore Vassallo • Piero Cavaleri is the author of “Biblioteche Oggi” web service • -------------------------------------------- • Suggested readings: • Library Mashup: exploring new ways to deliver library data, edited by Nicole Engard, Information Today, 2009 (in press) * • Pro Web 2.0 Mashup: remixing data and web services, Raymond Yee, Apress, 2008 • *Disclaimer: I am the author of one chapter of the book :-)