<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>blyberg.net &#187; PatREST</title>
	<atom:link href="http://www.blyberg.net/tag/patrest/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blyberg.net</link>
	<description>A library-geek blog</description>
	<lastBuildDate>Sat, 10 Jul 2010 23:08:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Chatting with Jon Udell and Ed Vielmetti</title>
		<link>http://www.blyberg.net/2007/02/04/chatting-with-jon-udell-and-ed-vielmetti/</link>
		<comments>http://www.blyberg.net/2007/02/04/chatting-with-jon-udell-and-ed-vielmetti/#comments</comments>
		<pubDate>Mon, 05 Feb 2007 04:32:42 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[jonudell]]></category>
		<category><![CDATA[lead-users]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[Podcast]]></category>
		<category><![CDATA[Superpatron]]></category>
		<category><![CDATA[vonhippel]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2007/02/04/chatting-with-jon-udell-and-ed-vielmetti/</guid>
		<description><![CDATA[I had a great chat with Jon Udell and Ed Vielmetti last week during a recorded podcast that Jon has made available on his new blog. Jon is a great podcaster&#8211;he has the ability to make a session feel like a conversation and less like an interview which makes for a very interesting and enjoyable [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/wp-content/images/podcast.jpg" align="left" width="100" />I had a great chat with <a href="http://blog.jonudell.net/">Jon Udell</a> and <a href="http://vielmetti.typepad.com/superpatron/">Ed Vielmetti</a> last week during a <a href="http://blog.jonudell.net/2007/02/02/a-conversation-with-ed-vielmetti-and-john-blyberg-about-superpatrons-and-superlibrarians/">recorded podcast</a> that Jon has <a href="http://jonudell.net/podcast/ju_SuperpatronSuperlibrarian.mp3">made available</a> on his new blog.  Jon is a great podcaster&#8211;he has the ability to make a session feel like a conversation and less like an interview which makes for a very interesting and enjoyable experience as one of the participants.</p>
<p>Anyway, we talked about superlibrarians and superpatrons within the context of <a href="http://web.mit.edu/evhippel/www/index.html">Eric Von Hippel&#8217;s</a> notion of &#8220;lead users.&#8221;  This is an area that should be of great interest to libraries&#8211;specifically, how do we identify those lead users, then enable them to mash-up, remix, and create services, tools, and content.  We can learn a great deal more from our users than we are currently used to and Von Hippel shows us how in a series of <a href="http://web.mit.edu/evhippel/www/tutorials.htm">online videos and papers.</a></p>
<p>I mostly talked about <a href="http://www.blyberg.net/downloads/patrest_1.3_overview.pdf">PatREST</a>&#8211;its history, what it is, where it might lead, and my decision to build a patron-oriented API on top of our existing ILS.  Ed shared some interesting insights into his perspective as a consumer of PatREST and other non-standard distribution channels made available on AADL&#8217;s system.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2007/02/04/chatting-with-jon-udell-and-ed-vielmetti/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://jonudell.net/podcast/ju_SuperpatronSuperlibrarian.mp3" length="12715124" type="audio/mpeg" />
		</item>
		<item>
		<title>PatREST to Include OCLC Audience Level Data</title>
		<link>http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/</link>
		<comments>http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/#comments</comments>
		<pubDate>Fri, 15 Sep 2006 13:31:17 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[Patron-REST]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/</guid>
		<description><![CDATA[I&#8217;ve updated AADL&#8217;s PatREST interface to reflect an addition I&#8217;ve made to the PatREST specification (now 1.3). This addition takes advantage of OCLC&#8217;s Audience Level indicator. OCLC makes this information available via an XML web service. From their service page: There are a variety of ways to characterize library materials. The type of reader believed [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jblyberg/243854995/"><img src="http://static.flickr.com/97/243854995_cb68f16623_m.jpg" align="right" /></a>I&#8217;ve updated AADL&#8217;s <a href="http://www.aadl.org/rest/record/1120526/">PatREST interface</a> to reflect an addition I&#8217;ve made to the PatREST specification (now <a href="http://www.blyberg.net/downloads/patrest_1.3_overview.pdf">1.3</a>).  This addition takes advantage of OCLC&#8217;s <a href="http://www.oclc.org/research/projects/audience/default.htm">Audience Level indicator</a>.  OCLC makes this information available via an XML web service.  From their service page:</p>
<blockquote><p>There are a variety of ways to characterize library materials. The type of reader believed to be interested in a particular item is one. Such an indicator, generally known as the audience level, is potentially useful for a variety of activities, including the development of new ways to improve information relevance for retrieval, reference services (including readers advisory) and collection development. Audience-level filters could be implemented in existing retrieval systems to assist users in finding content based on their information needs.</p></blockquote>
<p>This is not the first OCLC service PatREST has taken advantage of.  PatREST has been incorporating data from OCLC&#8217;s xISBN service for quite some time.  By pulling in the data they make available, the data PatREST is able to return becomes significantly more valuable.</p>
<p>Because AADL&#8217;s PatREST implementation relies heavily upon III&#8217;s XML server, I&#8217;ve added OCLC&#8217;s Audience Level functionality to the PHP XMLOPAC class code which is freely available from my <a href="http://www.blyberg.net/files/">files</a> page or you can directly grab it right <a href="http://www.blyberg.net/downloads/iii-xmlopac-1.11.tar.gz">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/09/15/patrest-to-include-oclc-audience-level-data/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Google Gadget Update &amp; PatREST changes</title>
		<link>http://www.blyberg.net/2006/08/22/google-gadget-update-patrest-changes/</link>
		<comments>http://www.blyberg.net/2006/08/22/google-gadget-update-patrest-changes/#comments</comments>
		<pubDate>Tue, 22 Aug 2006 18:04:42 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[L2]]></category>
		<category><![CDATA[Library2]]></category>
		<category><![CDATA[Mashups]]></category>
		<category><![CDATA[MUTL06]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/08/22/google-gadget-update-patrest-changes/</guid>
		<description><![CDATA[I&#8217;ve made a little update to two of the PatREST Google gadgets (top and new items)&#8211;partly due to the insistance of a certain Superpatron, but mostly because I was planning on doing it anyway. The new versions allow users to display cover images along with the records. A new option gives you the choice of [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/jblyberg/222151989/"><img align="left" src="http://static.flickr.com/64/222151989_4a9bae3a9d_m.jpg"/></a> I&#8217;ve made a little update to two of the PatREST Google gadgets (top and new items)&#8211;partly due to the <a href="http://vielmetti.typepad.com/superpatron/2006/08/aadl_patrest_go.html">insistance</a> of a certain <a href="http://vielmetti.typepad.com/superpatron/">Superpatron</a>, but mostly because I was planning on doing it anyway.</p>
<p>The new versions allow users to display cover images along with the records.  A new option gives you the choice of text only, images only, or images and text.  Not a major change, but noteworthy.  Also, in case you missed the update in my previous post, the new items gadget can now match subject headings&#8211;useful if you want to be notified about new items on a particular topic.</p>
<p>For the purposes of the Talis <a href="http://www.talis.com/tdn/competition">mashup competition</a> (for the judges), the original xml files are still available under a different name (<a href="http://www.blyberg.net/downloads/tops-v1.xml">tops-v1.xml</a> and <a href="http://www.blyberg.net/downloads/new-v1.xml">new-v1.xml</a>).  Everyone else, here are the new ones:</p>
<ul>
<li><a href="http://www.blyberg.net/downloads/tops.xml">tops.xml</a></li>
<li><a href="http://www.blyberg.net/downloads/new.xml">new.xml</a></li>
</ul>
<p>(FYI, it&#8217;s the same URL as the previous version.  If you&#8217;ve already added it to your Google page, the update will be automatic)</p>
<p>While working on this little project, I became painfully aware of PatREST&#8217;s limitations when dealing with asynchronous execution &#8212; like that of Google gadgets.  I previously thought it would be better to limit the amount of data returned in an XML hit-list and use a second record query for and detailed info.  I think I may have been a little short-sighted.  At any rate, the lesson learned is that the more practical experience I have with PatREST, the more I&#8217;ll know what works and what doesn&#8217;t.</p>
<p>The upshot of all this is that I&#8217;ve expanded the result objects in any PatREST function that returns multiple records to include more information, such as ISBN, cover image, author, and record link.  For those asynchronous folks, this will make life a lot easier.  The new additions have been added to an <a href="http://www.blyberg.net/downloads/patrest_1.2_overview.pdf">updated specification</a>.   Existing PatREST applications (I don&#8217;t think there are many at this point) will continue to work, of course.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/08/22/google-gadget-update-patrest-changes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Go-go Google Gadget!</title>
		<link>http://www.blyberg.net/2006/08/18/go-go-google-gadget/</link>
		<comments>http://www.blyberg.net/2006/08/18/go-go-google-gadget/#comments</comments>
		<pubDate>Fri, 18 Aug 2006 18:37:40 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[google-gadget]]></category>
		<category><![CDATA[Mashup-Contest]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[Talis]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/08/18/go-go-google-gadget/</guid>
		<description><![CDATA[I was having serious doubts that I&#8217;d find the time to put something together for Talis&#8217;s Mashing Up The Library competition. But that&#8217;s what late-nights are for, right? Anyway, my idea was to submit a suite of Google gadgets that, even if it doesn&#8217;t win, will serve another important purpose of providing a proof-of-concept for [...]]]></description>
			<content:encoded><![CDATA[<p>I was having serious doubts that I&#8217;d find the time to put something together for Talis&#8217;s <a href="http://www.talis.com/tdn/competition">Mashing Up The Library</a> competition.  But that&#8217;s what late-nights are for, right?</p>
<p>Anyway, my idea was to submit a suite of <a href="http://www.google.com/ig/directory">Google gadgets</a> that, even if it doesn&#8217;t win, will serve another important purpose of providing a proof-of-concept for my <a href="http://www.blyberg.net/downloads/patrest_1.1_overview.pdf">PatREST</a> specification.  So I&#8217;ve written four gadgets using the <a href="http://www.google.com/apis/homepage/">Google Gadgets API</a>.  These gadgets then consume the PatREST service for their data.  If you&#8217;re unfamiliar with the Google gadget, they are the little customizable panels on Google&#8217;s <a href="http://www.google.com/ig?hl=en">personalized home page</a>.  This is what the page looks like with all four enabled:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/218459782/"><img src="http://static.flickr.com/68/218459782_772219faed_m.jpg" /></a></p>
<p>Like all the other gadgets, they can be dragged around the page and individually configured.  Also, you can choose which gadget to install, if you don&#8217;t want all four.  They are:</p>
<ul>
<li><a href="http://www.blyberg.net/downloads/tops.xml">tops.xml</a> &#8211; <a href="http://fusion.google.com/add?moduleurl=http://www.blyberg.net/downloads/tops.xml"><img src="/wp-content/images/GadgetAdd.gif" /></a> &#8211; Displays the hottest items at the library.  You can configure it to display books, CDs, books on CDs, or everything.  You can also select the number of results you want returned.</li>
<li><a href="http://www.blyberg.net/downloads/new.xml">new.xml</a> &#8211; <a href="http://fusion.google.com/add?moduleurl=http://www.blyberg.net/downloads/new.xml"><img src="/wp-content/images/GadgetAdd.gif" /></a> &#8211; Displays the newest material at the library.  You can configure it to display books, CDs, books on CDs, or everything.  You can also select the number of results you want returned.</li>
<li><a href="http://www.blyberg.net/downloads/curitems.xml">curitems.xml</a> &#8211; <a href="http://fusion.google.com/add?moduleurl=http://www.blyberg.net/downloads/curitems.xml"><img src="/wp-content/images/GadgetAdd.gif" /></a> &#8211; Displays all your currently checked-out items.</li>
<li><a href="http://www.blyberg.net/downloads/holds.xml">holds.xml</a> &#8211; <a href="http://fusion.google.com/add?moduleurl=http://www.blyberg.net/downloads/holds.xml"><img src="/wp-content/images/GadgetAdd.gif" /></a> &#8211; Displays all your requested material.</li>
</ul>
<p>The beauty of these gadgets is that they require no modification of the code at all in order to be used with other libraries.  The catch is that the library needs to provide the PatREST API (and right now, that&#8217;s only <a href="http://www.aadl.org">AADL</a>).  My hope is that other libraries will see and recognize the usefulness of a patron-friendly API.</p>
<p>Installing the gadget is dead easy.  First, you need to create an account with Google so that you can personalize the Google home page.  Then, click the &#8220;<a href="http://www.google.com/ig/directory?hl=en">Add content</a>&#8221; button (top-left).  You&#8217;ll notice a small option next to the search box, &#8220;Add by URL&#8221;.  Click it, and paste in the URL of one of the XML gadget files above.  If successful, you&#8217;ll see something like:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/218459784/"><img src="http://static.flickr.com/77/218459784_a3f071df58_m.jpg" /></a></p>
<p>You can repeat this process for all of the gadgets, if you like.  When you&#8217;re finished, go back to your personalized homepage, and configure your gadgets:</p>
<p>Configuring the Top Items gadget:<br />
<a href="http://www.flickr.com/photos/jblyberg/218459783/"><img src="http://static.flickr.com/73/218459783_5f40a87f25_m.jpg" /></a></p>
<p>Configuring the Check-outs gadget.  Note that you will need a special token.  This is the token used to access your personal RSS feeds:<br />
<a href="http://www.flickr.com/photos/jblyberg/218459781/"><img src="http://static.flickr.com/67/218459781_73ce7a018c_m.jpg" /></a></p>
<p>That&#8217;s it!  I doubt it could be muh easier.  AADL patrons can benefit from these gadgets right away.  Hopefully other libraries will consider the PatREST specification, (vendors too!).  Once I had done the prototyping, creating additional gadgets was very easy because of PatREST&#8217;s simplicity and accessibility.</p>
<p>Naturally, these XML files are released under GPL v.2.  Feel free to modify and extend them as you like.  I have a number of ideas that I just don&#8217;t have time for right now, but hope to add in the future.</p>
<p>Also, because of the quality of XML data I get out of the III system, and, what I think is a bug on Google&#8217;s end, the results occasionally do not display.  Once Google clears it&#8217;s internal cache, however, things usually fix themselves.  I think this little bug is out of my hands&#8211;at least until I can learn more about it.</p>
<p>Please use these, and enjoy them responsibly!</p>
<p><strong>***</strong> Update 8/19/2006 <strong>***</strong></p>
<p>Added subject search to the New Items gadget.</p>
<p><strong>***</strong> Update 9/1/2006 <strong>***</strong></p>
<p>Not sure why I didn&#8217;t do this before, but I added &#8220;Add to Google&#8221; buttons to the links in this post, as well as on my <a href="http://www.blyberg.net/files/">files</a> page.  All you need to do to use these gadgets is click on the button and confirm by clicking on &#8220;Add it now&#8221;.  How&#8217;s that for simple?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/08/18/go-go-google-gadget/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>PatREST Enhancements &amp; Documentation</title>
		<link>http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/</link>
		<comments>http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/#comments</comments>
		<pubDate>Tue, 15 Aug 2006 17:13:00 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[AADL]]></category>
		<category><![CDATA[Catalogs]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/</guid>
		<description><![CDATA[A couple of notes regarding the status of PatREST. First, two new functions have been added to the service. One provides access to tops (or popular items) lists. The other provides access to the new materials lists. I believe these are significant-enough additions to the service that they merit the 1.1 version number. The top [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of notes regarding the status of PatREST.</p>
<p>First, two new functions have been added to the service.  One provides access to tops (or popular items) lists.  The other provides access to the new materials lists.  I believe these are significant-enough additions to the service that they merit the 1.1 version number.</p>
<p>The top items query is scalable by result size and can be paginated, just like the search results.  In addition, it can be scoped by material type: books, cd, dvd, or bocd (books on CD).  When applied to the AADL XSLT, it looks something like this:</p>
<p><a href="http://www.aadl.org/rest/top/books/10/2"><img src="http://static.flickr.com/96/216038171_5565e7d45f_m.jpg"/></a></p>
<p>The new items query is similar to the top query in that it can be scaled by material type, size and be paginated.  You can also search new items using their subject headings&#8211;useful for querying those new knitting books, <a href="http://vielmetti.typepad.com/superpatron/">Ed</a>&#8230;  It looks something like this:</p>
<p><a href="http://www.aadl.org/rest/new/books/dogs/5/1"><img src="http://static.flickr.com/77/216038170_7a4cbb8fd0_m.jpg"/></a></p>
<p>Second, and probably more importantly, I&#8217;ve <strong>finally</strong> <a href="http://www.blyberg.net/downloads/patrest_1.1_overview.pdf">drafted a specification</a> for PatREST which includes an explanation of it&#8217;s XML schema and some documentation for it&#8217;s various functions.  It&#8217;s about time, I know.  It can be found in the <a href="http://www.blyberg.net/files/">files</a> section, or downloaded <a href="http://www.blyberg.net/downloads/patrest_1.1_overview.pdf">here</a>. (PDF)</p>
<p>I&#8217;m not going to go in to too much detail about the two new functions in this post because the new documentation contains everything you need to know to get started with them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/08/15/patrest-enhancements-documentation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Major enhancements for patron-REST</title>
		<link>http://www.blyberg.net/2006/01/26/major-enhancements-for-patron-rest/</link>
		<comments>http://www.blyberg.net/2006/01/26/major-enhancements-for-patron-rest/#comments</comments>
		<pubDate>Thu, 26 Jan 2006 21:41:53 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Libraries]]></category>
		<category><![CDATA[OPAC]]></category>
		<category><![CDATA[PatREST]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Updates]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.blyberg.net/2006/01/26/major-enhancements-for-patron-rest/</guid>
		<description><![CDATA[(Codenamed PatREST in my SVN) When last I wrote about this, it was little more than a working proof-of-concept, but I&#8217;ve been working on it a lot this week&#8211;partly driven by DaveyP&#8217;s experiments and Ed&#8217;s tinkering, but mostly because I&#8217;ve been planning to do this for a long time now. So, to cut to the [...]]]></description>
			<content:encoded><![CDATA[<p>(Codenamed PatREST in my SVN)</p>
<p>When last I wrote about this, it was little more than a working proof-of-concept, but I&#8217;ve been working on it a lot this week&#8211;partly driven by <a href="http://www.daveyp.com/blog/">DaveyP&#8217;s experiments</a> and <a href="http://vielmetti.typepad.com/superpatron/">Ed&#8217;s tinkering</a>, but mostly because I&#8217;ve been planning to do this for a long time now.</p>
<p>So, to cut to the chase:<br />
PatREST now provides an easy, RESTful URI to do searches on quite a few fields.  Essentially, you will plug the search key into the URI, followed by the search term.  You can also request optional paging for keyword, author searches by appending hits-per-page and page-# to the URI.  It looks like this:</p>
<p>http://www.aadl.org/rest/search/[searchkey]/[searchterm]/[hits-per-page]/[page-#]</p>
<p>The following search keys are available:</p>
<p>title<br />
author<br />
callnum<br />
keyword<br />
subject<br />
gvtdocnum<br />
stdnum (ISBN/ISSN)<br />
titlekey<br />
controlnum<br />
barcode<br />
record (Bib #)<br />
bibnum (Bib # &#8211; Same as record)<br />
itemnum</p>
<p>Go ahead and try <a href="http://www.aadl.org/rest/search/keyword/japan/10/1">this keyword search</a>.  It&#8217;ll look something like this:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/91487868/"><img src="http://static.flickr.com/25/91487868_4ee1995bd3_m.jpg" /></a></p>
<p>You&#8217;ll notice that the XSLT stylesheet presents it nicely, all the data may not be displayed, but the XML is sound.  Go ahead and view source to examine the schema.  I&#8217;ve departed quite a bit from my original schema in order to provide a little bit of metadata for processing purposes.  The XSLT allows you to click on a title which will take you to another RESTful record:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/91487869/"><img src="http://static.flickr.com/18/91487869_f3a271d474_m.jpg" /></a></p>
<p>You&#8217;ll notice that the URI for this record looks like <a href="http://www.aadl.org/rest/record/1035670/">/rest/record/1035670/</a> &#8230; It&#8217;s /rest/record/[bibnum]/.  The XSLT allows you to click on either the title or cover image to go to the regular OPAC record.  Again, view source for the XML schema.  This schema has changed little and you&#8217;ll notice that I&#8217;m taking advantage of OCLC&#8217;s xISBN service.</p>
<p>The real treat in all this, however, is the ability to access your personal records RESTfully.  To do this, I make use of the RSS token that is provided to every cardholder who has registered for an online account.  This is the token that authenticates RSS readers against our system.  It is a 32 character MD5 hash that looks something like &#8220;316928e0d260556eaccb6627f2ed657b&#8221;.  Accessing personal data is as easy as using the following URIs:</p>
<p>For checkouts, you would use /rest/checkouts/[token] (ie http://www.aadl.org/rest/checkouts/316928e0d260556eaccb6627f2ed657b).  You&#8217;ll then get output at looks something like:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/91487870/"><img src="http://static.flickr.com/27/91487870_6a00d6c546_m.jpg" /></a></p>
<p>For holds, the URI is /rest/holds/[token].  Output looks like:</p>
<p><a href="http://www.flickr.com/photos/jblyberg/91487871/"><img src="http://static.flickr.com/36/91487871_90882d7159_m.jpg" /></a></p>
<p>Both of those results allow you to click on the bibnum and access the REST record for that item.  Again, check the XML schema with your browser (no point in putting it here).</p>
<p>Please hack away at this and send me your comments/suggestions.  You&#8217;re absolutely correct that it doesn&#8217;t adhere to any existing standard, but that&#8217;s because I didn&#8217;t want it to.</p>
<p>On a slightly less geek-oriented note&#8230;</p>
<p>I&#8217;ve gone <a href="http://www.blyberg.net/2005/11/24/talis-responds-to-bill-of-rights/">several rounds</a> with Talis&#8217;s Richard Wallis before, so I want to call your attention to a post he <a href="http://blogs.talis.com/panlibus/archives/2006/01/just_resting.html">made the other day</a> in which he suggest that a) DaveyP and I collaborate and b) I/we consider using industry standards.  I&#8217;d like to respond by saying that Dave and I have been communicating extensively.  Ed Vielmetti has been involved as well.</p>
<p>Richard writes:</p>
<p><em>I encourage John, Dave, and those that follow them to take a look at these standards like we have</em></p>
<p>I can&#8217;t speak for Dave, but I&#8217;m very familiar with these standards and so is Ed.  I think Richard is completely missing the point of this whole project which is to put a friendly, accessible, and useful development interface into the hands of <strong>patrons</strong>.  Ed offers just a small example of the type of features that existing standards don&#8217;t readily make available:</p>
<p><em>Already there is a lot more useful function in it than you can get in SRU, e.g. permalinks for card records and a sensible way to get item availability.</em></p>
<p>Bear in mind, that comment was made prior to my work with RESTful holds and checkouts, which, as far as I know, don&#8217;t even have a standard XML schema&#8211;I don&#8217;t think it&#8217;s been done before! (I&#8217;d love to be corrected on this)  This project will also evolve to the point where holds can be placed RESTfully, items renewed, fines paid.  It&#8217;ll also extend to our other features like checkout history, wifi device management, personal card catalog management.  Adding this functionality is not only going to allow the public to develop highly useful applications, but it&#8217;ll be a framework by which we ourselves can build new services in-house.  Vendor&#8217;s obviously haven&#8217;t stepped up to this, so we are&#8211;and we believe in our patrons.  They deserve this kind of access to their public library.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blyberg.net/2006/01/26/major-enhancements-for-patron-rest/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

