<?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"
	>

<channel>
	<title>τεχνοσοφια &#187; Digital Libraries and Archives</title>
	<atom:link href="http://lackoftalent.org/michael/blog/category/libraries/digital-libraries/feed/" rel="self" type="application/rss+xml" />
	<link>http://lackoftalent.org/michael/blog</link>
	<description>The occasional rambling of a digital library artisan</description>
	<pubDate>Mon, 08 Sep 2008 12:15:34 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>DRM for Librarians</title>
		<link>http://lackoftalent.org/michael/blog/2008/09/08/drm-for-librarians/</link>
		<comments>http://lackoftalent.org/michael/blog/2008/09/08/drm-for-librarians/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 12:15:34 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[Digital Rights Management]]></category>

		<category><![CDATA[Libraries]]></category>

		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/?p=148</guid>
		<description><![CDATA[
I know precious little about rights management.  And what I do know I have gleaned from the occasional Slashdot post or Wired article.  Former colleague Grace Agnew, Associate University Librarian for Digital Library Systems at Rutgers University, has put the wraps on a book about digital rights management targeted at librarians, Digital Rights Management: A [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:148"><!-- &nbsp; --></abbr>
<p>I know precious little about rights management.  And what I do know I have gleaned from the occasional Slashdot post or Wired article.  Former colleague Grace Agnew, Associate University Librarian for Digital Library Systems at Rutgers University, has put the wraps on a book about digital rights management targeted at librarians, <a href="http://www.amazon.com/Digital-Management-Librarians-Technology-Practise/dp/other-editions/1843341824" target="_blank">Digital Rights Management: A Librarian&#8217;s Guide to Technology and Practice</a> (also available in paperback):</p>
<blockquote><p>This book provides an overview of the current landscape in digital rights management (DRM), including: an overview of terminology and issues facing libraries, plus an overview of the technology (including standards and off-the-shelf products). It discusses the role and implications of DRM for existing library services, such as integrated library management systems, electronic reserves, commercial database licenses, digital asset management systems and digital library repositories. It also discusses the impact that DRM ‘trusted system’ technologies, already in use in complementary areas, such as course management systems and web-based digital media distribution, may have on libraries. It also discusses strategies for implementing DRM in libraries and archives for safeguarding intellectual property in the web environment.</p></blockquote>
<p>If you&#8217;re a librarian or information professional looking for an introduction to DRM, an underpinning for rights management strategy, or a refresher on rights management technologies, you might consider checking it out.</p>
<p>For full disclosure, I was one of several reviewers of this book.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2008/09/08/drm-for-librarians/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ORE plugin updated</title>
		<link>http://lackoftalent.org/michael/blog/2008/07/25/ore-plugin-updated/</link>
		<comments>http://lackoftalent.org/michael/blog/2008/07/25/ore-plugin-updated/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 17:19:29 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[APIs]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[OAI-ORE]]></category>

		<category><![CDATA[Repositories]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/?p=135</guid>
		<description><![CDATA[
I&#8217;ve been using my time at RepoCamp today to get the OAI-ORE plugin for WordPress validating again.  I&#8217;m having some trouble using the validator so I say that with some diffidence.  But the latest code which is now checked in to the WordPress plugins svn repo ought to be close, if not fully conformant, to [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:135"><!-- &nbsp; --></abbr>
<p>I&#8217;ve been using my time at <a href="http://barcamp.org/RepoCamp" target="_blank">RepoCamp</a> today to get the OAI-ORE <a href="http://lackoftalent.org/michael/blog/ore-wordpress-plug-in/" target="_blank">plugin</a> for WordPress <a href="http://african.lanl.gov/ovalnet/validate.jsp" target="_blank">validating</a> again.  I&#8217;m having some trouble using the validator so I say that with some diffidence.  But the latest code which is now checked in to the WordPress plugins svn repo ought to be close, if not fully conformant, to the 0.9 version of the ORE spec.</p>
<p>I&#8217;m not sure the plugin is really useful; it&#8217;s just an Atom feed of all posts and pages in a WP instance.  I can think of some ways to make this more useful, by allowing blog authors to create their own aggregations, pulling in content outside of the particular instance.  I am certain that others can come up with even better uses.  I&#8217;m open to suggestions.</p>
<p>Thanks to Jay Datema for <a href="http://www.bookism.org/open/2008/07/17/repurposing-metadata/" target="_blank">prodding</a> me a bit, if indirectly.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2008/07/25/ore-plugin-updated/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sustaining digital libraries</title>
		<link>http://lackoftalent.org/michael/blog/2008/07/18/sustaining-digital-libraries/</link>
		<comments>http://lackoftalent.org/michael/blog/2008/07/18/sustaining-digital-libraries/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 12:43:37 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[Preservation]]></category>

		<category><![CDATA[Repositories]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/?p=132</guid>
		<description><![CDATA[
About a month ago, I read on my colleague&#8217;s blog that the Emory University Digital Library published a new book on sustaining digital libraries.  I&#8217;ve finally started reading it and figured I would post a note here.
The articles of this monograph provide resources for digital library stakeholders who seek to better understand how to effectively [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:132"><!-- &nbsp; --></abbr>
<p>About a month ago, I read on my <a href="http://digitaleccentric.blogspot.com/2008/06/strategies-for-sustaining-digital.html" target="_blank">colleague&#8217;s blog</a> that the Emory University Digital Library published a new <a href="http://digital.library.emory.edu/SSDL" target="_blank">book on sustaining digital libraries</a>.  I&#8217;ve finally started reading it and figured I would post a note here.</p>
<blockquote><p>The articles of this monograph provide resources for digital library stakeholders who seek to better understand how to effectively evolve such efforts from short-term projects to long-term sustainable programs. The monograph includes contributions from leaders in major digital libraries that have made such transitions or which are systematically considering the question of programmatic sustainability, including representatives from the National Digital Infrastructure and Information Preservation Program (NDIIPP) and the National Science Digital Library (NSDL).</p></blockquote>
<p>I might also note that the book is available for free as a <a href="http://metascholar.org/publications/StrategiesforSustainingDigitalLibraries.pdf" target="_blank">PDF</a>.</p>
<p>So far I&#8217;ve read the introduction by the editors and the abstract from Leslie&#8217;s paper, and the book looks like a high-quality read from cover to cover, with articles based on actual digital library experience.  It&#8217;s a pragmatic approach for how to sustain digital library initiatives, looking beyond technical concerns towards the more challenging social and economic ones.  To some extent, we are getting pretty good at preserving bits and relationships between collections of bits &#8212; it is yet to be seen how good we will be at preserving the preservation systems themselves.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2008/07/18/sustaining-digital-libraries/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Jythons and Javas and bears, oh my!</title>
		<link>http://lackoftalent.org/michael/blog/2008/04/11/jythons-and-javas-and-bears-oh-my/</link>
		<comments>http://lackoftalent.org/michael/blog/2008/04/11/jythons-and-javas-and-bears-oh-my/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 01:41:52 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[Preservation]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[Repositories]]></category>

		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/?p=122</guid>
		<description><![CDATA[
It&#8217;s hard to believe but I&#8217;ve been at the new job for six months already, a full half-year come the 29th.  Some days it seems like I&#8217;ve been here forever; others like I&#8217;m still a rank newb.   I haven&#8217;t written terribly much about what I&#8217;ve been up to (but I assure you [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:122"><!-- &nbsp; --></abbr>
<p>It&#8217;s hard to believe but I&#8217;ve been at the <a href="http://lackoftalent.org/michael/blog/2007/09/27/october/" target="_blank">new job</a> for six months already, a full half-year come the 29th.  Some days it seems like I&#8217;ve been here forever; others like I&#8217;m still a rank newb.   I haven&#8217;t written terribly much about what I&#8217;ve been up to (but I assure you I&#8217;ve been busy).  Let me rectify that.</p>
<h2><strong>The Transfer Problem</strong></h2>
<p>Two of the projects I&#8217;ve been working on relate to a fairly general problem that we like to call &#8220;transfer,&#8221; which revolves around, well, transferring files to and fro.  Sounds simple.  <em>Is</em> simple.  That is, until you start thinking about preservation and accounting for a highly heterogeneous network with idiosyncratic nodes, esoteric storage software, and differential firewall rules.  And that&#8217;s where it gets interesting (and problematic). <span id="more-122"></span>The transferring itself, or copying of files from one location to another which we call &#8220;transport,&#8221; is the easiest part.  We like to use common tools in our environment.  It makes life easy.  And so good ol&#8217; <a href="http://en.wikipedia.org/wiki/Secure_copy" target="_blank">scp</a> seems like an obvious choice to handle the job.</p>
<p>Since preservation is a core aspect of our &#8220;repository,&#8221; a term which I use loosely, we must build certain other functionalities into the transfer process: validation, verification, inventory, backup, ingest, and so forth.  Every time a file is copied to a non-transient location, we verify the file against a (<a href="http://www.faqs.org/rfcs/rfc3174.html" target="_blank">SHA1</a>) checksum and record an event for auditing purposes.</p>
<h2><strong>Repository Workflows</strong></h2>
<p>Some steps in the transfer process are routine and best handled by machines. Thus we automate them with scripts and code.  Others require human intervention.  This introduces another key aspect of our repository needs: workflows.  No two projects will have the same workflow and yet all will have some steps in common.  We&#8217;re using JBoss&#8217;s <a href="http://www.jboss.org/jbossjbpm/" target="_blank">jBPM</a> library for workflow management and it is more than capable of handling our workflow needs.  It allows us to model complex and varied flows in a robust and not <em>ad hoc</em> way; it does seem preferable to me to model our workflows via jBPM&#8217;s graphical editor (serialized to <a href="http://docs.jboss.com/jbpm/v3/userguide/jpdl.html" target="_blank">JPDL</a> XML) rather than copying around blocks of code and otherwise modeling the workflow procedurally in business logic.</p>
<p>One of my coworkers (<a href="http://www.dlib.org/dlib/july07/littman/07littman.html" target="_blank">the author of this</a>) designed a complete workflow system in jBPM last summer and I&#8217;ve taken on implementing, tweaking, and testing this system, which has required bootstrapping my sorry-arse Java skills and learning jBPM.  Though I find it difficult to think in Java patterns and generally find it a burdensome environment, I&#8217;m quite impressed by jBPM.  I&#8217;ve been working on various updates of and unit test coverage for the workflow system, which has been a crash course in a number of Java technologies and a perfect first task at LC, as it gets me into the guts of things.  The Java stack we use for our workflow is highly abstracted and componentized, which is conveniently modular&#8230; but it&#8217;s also Java: fairly heavy and arguably not as agile as dynamic languages such as Python.</p>
<h2><strong>Two Great Tastes?</strong></h2>
<p>So recently we&#8217;ve begun to think about implementing some transfer and workflow components in <a href="http://www.jython.org/" target="_blank">Jython</a> (Python written in Java).  Why?  The value of Jython is as follows:</p>
<ol>
<li><strong>Ease of deployment</strong> - Deploying jar files to existing JVMs in production environments (which we do not control) is a simple task, or at least simpler than some other options.</li>
<li><strong>Interoperability</strong> - Our stack is primarily Java-based and so interoperating with existing Java components means not having to rewrite functionality in other languages.  Jython allows Python to talk to Java and vice versa.</li>
<li><strong>Familiarity</strong> - It&#8217;s Python, and we like Python.  It&#8217;s the closest my team has to a <em>lingua franca</em> and so it increases the chances of sharing code, maintaining code, and so forth.</li>
</ol>
<p>It does not come without its drawbacks:</p>
<ol>
<li><strong>Currency</strong> - The Jython project went moribund for a few years or so and the latest stable version is now 2.2.1.  Compare that to the latest version of Python: <a href="http://www.python.org/download/releases/2.5.2/" target="_blank">2.5.2</a>.  I don&#8217;t begrudge the Jython developers, though.  I&#8217;m glad some folks picked the project up, dusted it off, and breathed new life into it.   I am also glad that they&#8217;re skipping 2.3 and 2.4 releases and plowing right into a 2.5 release.  Because of this currency issue, some Python libraries won&#8217;t work with the latest Jython and that means you&#8217;re stuck looking for outdated, potentially vulnerable Python libraries, or hooking into Java libraries for the same functionality (which inevitably means more lines of code).  I&#8217;m no lines of code fetishist but it does militate against the goal of agility somewhat.One does have the option of living on the edge and trying out the 2.5 branch, but that seems out of step with an infrastructure that is supposed to preserve terabytes upon terabytes of our nation&#8217;s, and the world&#8217;s, intellectual property.  It&#8217;s a responsibility I do not take lightly, as much as I&#8217;d like to be on the bleeding edge.</li>
<li><strong>Interoperability difficulties - </strong>Talking to Java from Jython is a snap: just <code>import java</code> at the top of your script, and, assuming your classpath is copacetic, <em>voila:</em> you have access to Java libraries in your Python code!  Talking to your Jython modules from Java code is, well, a little more complicated. Read on.</li>
</ol>
<p>Despite the caveats it does seem a sane, reasonable, and potentially productive path to go down. Right?  I am specifically looking to implement two workflow components in Jython: one for transport (wrapping Ant&#8217;s<a href="http://www.jcraft.com/jsch/" target="_blank"> JSch</a> library, which provides a slick scp API) and the other for automation of <a href="http://www.opensolaris.org/os/community/zfs/" target="_blank">ZFS</a> filesystem/volume creation on the staging server.  Nothing arcane, nothing tricky, nothing fancy.  So it must be easy!  Right? &#8230;</p>
<h2><strong>Lessons Learned?</strong></h2>
<p>I&#8217;m beginning to wonder about the feasibility of using Jython to make bits of our Java stack more agile. Specifically, there are three ways to get at Jython code from Java:</p>
<ol>
<li>Compile to bytecode/jar via the Jython compiler (jythonc) and reference your Jython objects and methods as though they were <a href="http://en.wikipedia.org/wiki/POJO" target="_blank">POJOs</a></li>
<li>Embed a Jython interpreter</li>
<li>Instantiate a (<a href="http://jcp.org/en/jsr/detail?id=223" target="_blank">JSR-223</a>) script engine</li>
</ol>
<p>Option 1 is nice because you get object- and method-level interop.  However, <a href="http://www.jython.org/Project/jythonc.html" target="_blank">jythonc</a> is unsupported and will disappear.  This does not seem sustainable though I might be able to limp along a while.  And there are <a href="http://sourceforge.net/mailarchive/message.php?msg_name=96c4692d0802280853r70e6b74fg71aed3cdd7701cbf%40mail.gmail.com" target="_blank">signs of hope</a>:</p>
<blockquote><p>Though jythonc is going away, all of the capabilities it provides will be present in 2.5 in other forms.  We&#8217;re adding functionality to expose Python classes as Java classes using decorators to replace the docstring class creation that jythonc provided, and we&#8217;re adding static compilation of proxy classes so regular jython can run in applets and other environments with restrictive classloaders.  We&#8217;re definitely doing something about jythonc.</p></blockquote>
<p>That doesn&#8217;t help much <em>now</em>, of course, but just because jythonc goes away does not mean my jars will stop working.</p>
<p>The suggested methods for option 2 [<a href="http://wiki.python.org/jython/JythonMonthly/Articles/October2006/3" target="_blank">1</a>, <a href="http://wiki.python.org/jython/JythonMonthly/Articles/September2006/1" target="_blank">2</a>] seem to be more trouble than they&#8217;re worth.  If the goal is more agile development for certain components, the reliance upon multiple, separate Java classes &#8212; an interface class and an object factory, in the examples listed &#8212; to get a ten-line Jython script working, this seems suboptimal, both inefficient and not straightforwardly maintainable; it seems, to me and my Java-dumb ways, rather baroque.</p>
<p>Option 3 [<a href="http://wiki.python.org/jython/JythonMonthly/Articles/October2006/1" target="_blank">1</a>, <a href="http://www.jython.org/Project/userguide.html#using-jsr-223" target="_blank">2</a>] is more appealing than option 2 as it does not rely upon these other classes specifically for Jython code.  But the number of lines of Java code that must be wrapped around the Jython to get it working looks like overkill for the drop-dead simple scripts I&#8217;m writing &#8212; it might be easier, for instance, to just write the darn things in Java and be done with it.  (Did I just say that?)</p>
<h2><strong>Conclusions</strong></h2>
<p>Options 2 and 3 are similar as both involve embedding Jython code, or referencing files with Jython code, and interpreting the code within Java.  Generally, I worry that either option would obviate the benefit of agile Jython scripting because you wind up wrapping the code in so much Java.  I offer two disclaimers to counter my objections:</p>
<ol>
<li>Cleverer Java coders than myself could, I am almost certain, find ways to build abstractions (or abstractions of abstractions) to eliminate the &#8220;lines of code&#8221; and &#8220;many separate classes per Jython script&#8221; issues</li>
<li>The value of Jython in our Java environment increases proportionately with the complexity of the component &#8212; given the overhead, a short Java class seems easier and more straightforward to implement than a short embedded Jython script.  On the other hand, there&#8217;s value in embedding a Jython script that&#8217;d be an order of magnitude simpler than its Java analog.</li>
</ol>
<p>At least, that&#8217;s the state of my head right now re: getting Jython and Java to play nice.  If I make any breakthroughs or give up entirely, I&#8217;ll post follow-ups.</p>
<p>I am but a Java philistine and a Jython neophyte, so I remain humbly open-minded.  I would greatly appreciate comments, questions, corrections, smackdowns, sagacious advice, and so on.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2008/04/11/jythons-and-javas-and-bears-oh-my/feed/</wfw:commentRss>
		</item>
		<item>
		<title>OAI-ORE ResourceMap for WordPress</title>
		<link>http://lackoftalent.org/michael/blog/2007/12/14/oai-ore-resourcemap-for-wordpress/</link>
		<comments>http://lackoftalent.org/michael/blog/2007/12/14/oai-ore-resourcemap-for-wordpress/#comments</comments>
		<pubDate>Fri, 14 Dec 2007 21:14:38 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[APIs]]></category>

		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[OAI-ORE]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/2007/12/14/oai-ore-resourcemap-for-wordpress/</guid>
		<description><![CDATA[
This is very rough, but here&#8217;s a WordPress plugin that provides a resource map for the aggregation of all posts within an installation of WordPress.  I&#8217;ll be working on this some more, but for now, it does appear to work and validate (as Atom).  Useful?  If so, I&#8217;ll zip it up and [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:111"><!-- &nbsp; --></abbr>
<p>This is very rough, but here&#8217;s a WordPress plugin that provides a <a href="http://lackoftalent.org/michael/blog/wp-content/plugins/oai-ore/rem.php" target="_blank">resource map</a> for the aggregation of all posts within an installation of WordPress.  I&#8217;ll be working on this some more, but for now, it does appear to work and validate (as Atom).  Useful?  If so, I&#8217;ll zip it up and commit it to the wp-plugins svn.</p>
<p>Note:<a href="http://inkdroid.org/journal/" target="_blank">Ed</a> reminds me that xsltproc can be used to transform the Atom-based resource map into RDF via GRDDL:</p>
<p><code>xsltproc http://www.openarchives.org/ore/atom-grddl.xsl http://lackoftalent.org/michael/blog/wp-content/plugins/oai-ore/rem.php</code></p>
<p><strong>Update:</strong> The plugin has its own <a href="http://lackoftalent.org/michael/blog/ore-wordpress-plug-in/" target="_blank">page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2007/12/14/oai-ore-resourcemap-for-wordpress/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Use cases for Handle identifiers?</title>
		<link>http://lackoftalent.org/michael/blog/2007/10/05/use-cases-for-handle-identifiers/</link>
		<comments>http://lackoftalent.org/michael/blog/2007/10/05/use-cases-for-handle-identifiers/#comments</comments>
		<pubDate>Fri, 05 Oct 2007 04:13:40 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Persistent Identifiers]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/2007/10/05/use-cases-for-handle-identifiers/</guid>
		<description><![CDATA[
Reading Adam Smith&#8217;s D-Lib article has got me thinking about identifiers again.  I don&#8217;t agree with some of the assertions in the section titled &#8220;A Persistent Identifier Primer&#8221; &#8212; URIs are in fact persistent; we just break them through poor management &#8212; and so I&#8217;m led to a fundamental question: what are the good [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:107"><!-- &nbsp; --></abbr>
<p>Reading Adam Smith&#8217;s D-Lib <a href="http://dlib.org/dlib/september07/smith/09smith.html" target="_blank">article</a> has got me thinking about identifiers again.  I don&#8217;t agree with some of the assertions in the section titled &#8220;A Persistent Identifier Primer&#8221; &#8212; URIs <em>are</em> in fact persistent; we just break them through poor management &#8212; and so I&#8217;m led to a fundamental question: what are the good use cases for Handle (or ARK, or PURL) identifiers?  </p>
<p>I get the need for persistent and globally unique identifiers; I&#8217;m just wondering why one needs special software with a separate URI namespace to gain persistence.</p>
<p>One potential use case might be resources that are outside of the organization&#8217;s control &#8212; i.e., licensed content from vendors &#8212; but surely folks are using Handles for many resources that are created and managed <em>within the organization</em>.  And I&#8217;m curious why they have decided that Handles are more durable than native URIs (the URIs to which Handles redirect), and how they deal with the problem of downstream (post-redirection) citation and bookmarking.  How useful is this sort of identifier scheme if your users never even see the supposedly more persistent URI for a resource?</p>
<p>As a former proponent of Handles and ARKs, this may seem like a hypocritical question to pose.  If I had to answer my own question, I would say that Handles seem like a good option because they save you some work and headaches in the short-term; you don&#8217;t need to get together with your web team and come up with a scalable and sustainable URI policy; just assign native URIs in the usual haphazard way and generate Handles to compensate for a lack of identifier policies.</p>
<p>But if you&#8217;re already making an organizational commitment to identifier persistence &#8212; and if you&#8217;re rolling out Handles, I&#8217;d wager that&#8217;s likely &#8212; why not do so by minting carefully-considered <a target="_blank" href="http://www.w3.org/Provider/Style/URI">cool URIs</a>?  Less management and technology overhead and less confusion for your users are two good reasons to consider it.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2007/10/05/use-cases-for-handle-identifiers/feed/</wfw:commentRss>
		</item>
		<item>
		<title>OAI-PMH in XQuery</title>
		<link>http://lackoftalent.org/michael/blog/2007/09/25/oai-pmh-in-xquery/</link>
		<comments>http://lackoftalent.org/michael/blog/2007/09/25/oai-pmh-in-xquery/#comments</comments>
		<pubDate>Tue, 25 Sep 2007 17:48:44 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[OAI-PMH]]></category>

		<category><![CDATA[Open Source]]></category>

		<category><![CDATA[Software]]></category>

		<category><![CDATA[XQuery]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/2007/09/25/oai-pmh-in-xquery/</guid>
		<description><![CDATA[
I seem to be having issues successfully submitting comments to certain WordPress blogs lately &#8212; or perhaps Akismet has finally decided to (rightly) classify my comments are spam?  Anyone know of any Firefox / WordPress comment bugs?  My comments seem to be submitted &#8212; there are no errors &#8212; and Firefox winds up [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:104"><!-- &nbsp; --></abbr>
<p><small>I seem to be having issues successfully submitting comments to certain WordPress blogs lately &#8212; or perhaps Akismet has finally decided to (rightly) classify my comments are spam?  Anyone know of any Firefox / WordPress comment bugs?  My comments seem to be submitted &#8212; there are no errors &#8212; and Firefox winds up on a link like &#8220;http://example.org/blog/foo-bar-whatever/#comment-12309&#8243;.  Any ideas?  At any rate, I&#8217;m left to comment via trackback for now.</small></p>
<p>Thanks for the nod, <a href="http://thedil.wordpress.com/2007/09/25/xquery-and-oai/" target="_blank">Winona</a>.  Hopefully you folks will get some good use out of the <a href="http://diglib2.princeton.edu/oss/wiki/xqOAI" target="_blank">XQuery-based OAI-PMH data provider</a> I&#8217;ve been working on.</p>
<p>I just want to clarify that only one small bit of the code is specific to X-Hive, and that&#8217;s a call to an extension that gets last-modified dates from the X-Hive service.  We do not reliably store this information in the metadata itself, and so I needed to go this route.  Some folks do store this in MODS or elsewhere in descriptive or administrative metadata.  It should be a two-line change to short-circuit this behavior (xhive-exts:last-update() is only invoked in two places, I believe).</p>
<p>I&#8217;m currently working on adding EAD support, modularizing things a bit more, and streamlining configuration.  resumptionTokens will come after that, I hope.</p>
<p>I&#8217;ll be interested to hear more of UVM&#8217;s implementation and how I can make this thing more useful to others.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2007/09/25/oai-pmh-in-xquery/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Digital preservation for archivists</title>
		<link>http://lackoftalent.org/michael/blog/2007/06/12/digital-preservation-for-archivists/</link>
		<comments>http://lackoftalent.org/michael/blog/2007/06/12/digital-preservation-for-archivists/#comments</comments>
		<pubDate>Tue, 12 Jun 2007 06:09:17 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[Fedora]]></category>

		<category><![CDATA[Libraries]]></category>

		<category><![CDATA[Persistent Identifiers]]></category>

		<category><![CDATA[Preservation]]></category>

		<category><![CDATA[Repositories]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/2007/06/12/digital-preservation-for-archivists/</guid>
		<description><![CDATA[
At long last, the paper that Ron Jantz and I wrote for the Journal of Archival Organization has been published in a special double issue.  It&#8217;s titled &#8220;Digital Archiving and Preservation: Technologies and Processes for a Trusted Repository&#8221; and is intended to be a fairly nitty-gritty piece on digital preservation (in the context of [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:95"><!-- &nbsp; --></abbr>
<p>At long last, the <a target="_blank" href="http://www.haworthpress.com/store/Toc_views.asp?sid=B9KRK3DL5LA88K9NC1ENHM48GKDQ0AJ0&#038;TOCName=J201v04n01_TOC&#038;desc=Volume%3A%204%20Issue%3A%201%2F2">paper</a> that Ron Jantz and I wrote for the Journal of Archival Organization has been published in a special double issue.  It&#8217;s titled &#8220;Digital Archiving and Preservation: Technologies and Processes for a Trusted Repository&#8221; and is intended to be a fairly nitty-gritty piece on digital preservation (in the context of trusted repositories) <strong>for archivists</strong>.  The abstract:<br />
<blockquote>This article examines what is implied by the term &#8220;trusted&#8221; in the phrase &#8220;trusted digital repositories.&#8221; Digital repositories should be able to preserve electronic materials for periods at least comparable to existing preservation methods. Our collective lack of experience with preserving digital objects and consensus about the reliability of our technological infrastructure raises questions about how we should proceed with digital-based preservation practices, an emerging role for academic libraries and archival institutions. This article reviews issues relating to building a trusted digital repository, highlighting some of the issues raised and possible solutions proposed by the authors in their work of implementing and acculturating a digital repository at Rutgers University Libraries.</p></blockquote>
<p>This special double-issue of JAO will also be released in the <a href="http://www.haworthpress.com/store/product.asp?sid=0MEHAR64F60N9J3KA44B3X8836FHDSK6&#038;sku=6008&#038;detail=Contents" target="_blank">manuscript</a>, &#8220;Archives and the Digital Library.&#8221;</p>
<p>Thanks to editors Bill Landis, Robin Chandler, Tom Frusciano, and Caryn Radick for seeing this through.  And of course to Ron Jantz for getting me interested in this crazy stuff at a time when I had no direction or interest in my career.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2007/06/12/digital-preservation-for-archivists/feed/</wfw:commentRss>
		</item>
		<item>
		<title>NJLA 2007 Talk</title>
		<link>http://lackoftalent.org/michael/blog/2007/06/05/njla-2007-talk/</link>
		<comments>http://lackoftalent.org/michael/blog/2007/06/05/njla-2007-talk/#comments</comments>
		<pubDate>Tue, 05 Jun 2007 22:04:02 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[Feeds]]></category>

		<category><![CDATA[Libraries]]></category>

		<category><![CDATA[NJLA2007]]></category>

		<category><![CDATA[OpenSearch]]></category>

		<category><![CDATA[Systems]]></category>

		<category><![CDATA[unAPI]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/2007/06/05/njla-2007-talk/</guid>
		<description><![CDATA[
This is a slightly modified (read: rough) transcription of the talk I gave at this year&#8217;s NJLA conference, called &#8220;Library Revolution.&#8221;  
The abstract described an idealistic scenario:
Imagine, if you will, a world where library services are automatically discovered; Library users retrieve information objects and metadata with a single click, never having to navigate the [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:93"><!-- &nbsp; --></abbr>
<p>This is a slightly modified (read: rough) transcription of the talk I gave at this year&#8217;s <a href="http://www.njla.org/conference/2007/">NJLA conference</a>, called &#8220;Library Revolution.&#8221;  <span id="more-93"></span></p>
<p>The abstract described an idealistic scenario:</p>
<blockquote><p>Imagine, if you will, a world where library services are automatically discovered; Library users retrieve information objects and metadata with a single click, never having to navigate the dark alleys of dead-ends that are full-text resolvers; Information sources and services are connected and remixed according to user preferences and needs, where and when they wish. What if we could leverage existing library and industry standards, applications, and protocols to make this a reality? And soon?</p></blockquote>
<p>In this scenario, a potential library revolution could be fomented &#8212; in which the goal would be to return the means of production to users, to hand over the reins, to re-envision ourselves as tool- and service-building artisans, as <a href="http://freerangelibrarian.com/">Karen G. Schneider</a> described in her <a href="http://www.code4lib.org/2007/schneider">keynote</a> at the <a href="http://www.code4lib.org/2007">Code4Lib 2007 conference</a>, rather than gatekeepers and information proxies &#8212; and I&#8217;m going to suggest some ways this might be achieved.  For now I&#8217;ll assume it&#8217;s self-evident <em>why</em> it is desirable to, generally speaking, get &#8220;our stuff&#8221; &#8220;out there&#8221; and meet users at <em>their</em> points of need.</p>
<p>Rather than get into nitty-gritty details, I&#8217;d like to describe a higher-level vision which has been put forward by a host of library technologists that have come before me (especially <a href="http://onebiglibrary.net/">Daniel Chudnov</a>).  Some aspects of my vision may indeed be pie-in-the-sky, but consider this:</p>
<ol>
<li>Isn&#8217;t pie delicious?</li>
<li>Shouldn&#8217;t we reach for it?</li>
</ol>
<p>So, what&#8217;s the problem?  Why a revolution?  Here are some (arguably trite) observations:</p>
<ol>
<li>Full-text resolvers do not work well.  You should not have to click through two, three, or four windows to get at full-text &#8212; assuming it&#8217;s actually there and not a complete dead end!  Don&#8217;t get me wrong &#8212; it&#8217;s better to have access to full-text through a resolver than not to.  I&#8217;d like to see more resolver systems that implement look-ahead resolution like Oregon State University&#8217;s new, and freely available, metasearch tool, <a href="http://libraryfind.org/">LibraryFind</a>.  LF uses what <a href="http://digitallibrarian.org/">Jeremy Frumkin</a>, the Chair of Innovative Library Services at OSU, likes to call &#8220;two-click workflow&#8221;: one click to find, one click to get.</li>
<li>Information splatter.  We&#8217;ve accumulated too many silos and need to figure out better ways to access all of that information via a single interface, whether the method is federation, aggregation, or something else.  Users should not have to go to multiple sites to search our collections for resources of interest.</li>
<li>Sandboxing.  Our content and services are, generally speaking, tightly coupled to our websites, so we are generally unable to meet users at their points of need.</li>
<li>Service usage &#8212; reference desk visits, OPAC searches &#8212; appears to be dwindling.</li>
<li>Growing popularity of Google, Amazon, and &#8220;web 2.0&#8243; or social networking sites &#8212; del.icio.us, flickr, twitter, myspace, facebook, ning, librarything.  These sites are great &#8212; especially MySpace, where I get all sorts of offers for new prescription drugs and live adult webcams.  But these sites really -are- great.  They empower users to connect with one another, to describe their own resources, to share with others, to remix information.  And most of all?  They&#8217;re incredibly easy to use.  Are our tools as easy to use?  Are we similarly empowering users?</li>
</ol>
<p>An aside on &#8220;2.0&#8243;: Although I cringe at the viral &#8220;2.0&#8243; meme &#8212; web 2.0, library 2.0, business 2.0, identity 2.0, enterprise 2.0, learning 2.0, travel 2.0&#8230; &#8212; it is interesting to note that there is something to &#8220;2.0&#8243;.  Something revolutionary.  And it&#8217;s not folksonomies, it&#8217;s not tagging, it&#8217;s not tag clouds, it&#8217;s not sharing, it&#8217;s not any particular site or idea.  It is the very fabric of &#8220;2.0&#8243;, and that is a re-envisioning of the web from connecting people with data to connecting people with people.  The web has evolved from a network of interlinked documents to an extension of the social fabric connecting us all.</p>
<p>As you can see, a revolution of sorts has already begun.  Time magazine selected &#8220;You&#8221; as their 2006 <a href="http://www.time.com/time/magazine/article/0,9171,1569514,00.html">person of the year</a>.  When MSNBC covered the <a href="http://www.msnbc.msn.com/id/16242528/">story</a>, the headline read &#8220;From blogs to YouTube, user-generated content transforms the Internet&#8221;.  I&#8217;m personally not that interested in the social networking aspect, and it already receives a lot of coverage from the library 2.0 gang.  Library 2.0 is a popular topic now, and much has been said of wikis, blogs, and RSS.  These are important topics but others are already covering them quite well.  The point to take away from 2.0, in my view, is that it&#8217;s empowering and inspiring users to do things with information they previously were not able or willing to do.  Ask tens of millions of people to help us catalog MARC records?  Right.  But ask them to tag videos on YouTube, bands on Last.FM, images on Flickr, links on del.icio.us, and so forth?  There you go.  My areas of interest with regard to library revolution are unifying our content and services, getting them outside the library sandbox, and returning the means of production in this very &#8220;2.0&#8243; way.</p>
<p>Let&#8217;s step through some technologies and technological concepts that may play a role in reaching this outcome.</p>
<ul>
<li>Systems integration: We have accumulated a wealth of resources over the years and have purchased, or built, or licensed, numerous systems to access these resources that have traditionally been disparate.  This is a great accomplishment; the more information we can get into the hands of our users, the better.  The process doesn&#8217;t scale, though, and has resulted in a proliferation of information silos.  Because of thorny issues of interoperability, not to mention licensing issues, technological incompatibilities, and lack of resources, we have thus far struggled to bridge the gaps between these silos.  The result?  A number of different search interfaces, with different result sets, in different formats, supporting different depths of coverage.<br />&nbsp;<br />&nbsp;How can we reconcile in our users&#8217; minds this information environment with the &#8220;simple, single search box&#8221; mentality of the Google age?   What if we built bridges between our systems?  Pull together metasearch with the link resolver, the link resolver with the catalog, the catalog with institutional repositories.  Easy, right?  Well, no.  But at the very least, if you can get <a href="http://www.w3.org/XML/">XML</a> out of these systems &#8212; whether through <a href="http://www.openarchives.org/OAI/openarchivesprotocol.html">OAI-PMH</a>, or <a href="http://www.loc.gov/standards/sru/">SRU</a>, or a database export &#8212; you can bring it together.  Index it with a tool like <a href="http://lucene.apache.org/solr/">Solr</a>, and you&#8217;ve got your Google-ish library search tool.</li>
<li>Auto-discovery: Auto-discovery is used by a number of technologies, though perhaps its usage to announce syndication (RSS) feeds is the most well-known.  The mechanism for syndication auto-discovery is actually quite simple.  Got a feed for your site?  Add a single line of HTML code to any page you&#8217;d like to announce it on, and modern web browsers will pick it up and clue you in.<br />&nbsp;<br />&nbsp;In HTML, there is a <a href="http://www.w3.org/TR/html401/struct/links.html#h-12.3">LINK</a> tag, not to be confused with the A tag (which stands for anchor) commonly used for hyperlinks.  The anchor and link tags differ in the following ways:
<ul>
<li>Anchor tags may have text content and show up as labels for links.  For instance, you might link to FoxNews.com and label it &#8220;Fair and balanced?  Yeah right.&#8221;  LINK tags do not have text content.</li>
<li>Actionability: Anchor tags are clickable.  They take you someplace.  LINK tags are not clickable.</li>
<li>Context: Anchor tags appear in the body of a document.  LINK tags appear in the HEAD.</li>
<li>Semantics: Anchor tags may represent any number of things.  It might be a link to content further down in the current page, it might link to another page entirely, or it might even be used to activate some javascript or launch a popup window.  LINK tags are used solely to describe document relationships, more semantic information.  For instance, a LINK tag might describe a link to the next and previous chapters in an e-book, a LINK tag might be used to link to alternative representations of a document, such as versions in other languages, or versions formatted in RSS or the Atom syndication format.  The LINK tag is a great way to leverage the existing web architecture to handle the problem of &#8220;one resource, many representations&#8221;, and I wouldn&#8217;t be surprised if the <a href="http://www.openarchives.org/ore/">OAI-Object Reuse and Exchange</a> initiative took a hard look at it.</li>
</ul>
<p>The LINK tag sort of auto-discovery, such as for syndication feeds, is common, but is not the only implementation of auto-discovery.  There are more sophisticated ways, such as Zero Configuration Networking.</li>
<li>Syndication: You&#8217;ve probably heard a lot about <a href="http://en.wikipedia.org/wiki/RSS_(file_format)">RSS</a>, or Really Simple Syndication, and I wouldn&#8217;t be surprised if most of you are already using it.  It&#8217;s a great technology, simple to use and implement, and I know it saves me a great deal of time on a daily basis.  Instead of having to click through and browse the 50 or so websites I track regularly, I read updated content from each site in my feed aggregator in a unified interface. A lot of attention is already paid to RSS, especially in library 2.0 circles, so I won&#8217;t say much more about it.  Syndication allows content to be syndicated into feeds that folks can subscribe to and unsubscribe from willy-nilly.<br />&nbsp;<br />&nbsp;But I thought it was important to include an explicit mention of syndication since a couple of the other topics relate to it, and since it is a great example of getting stuff out there.  Rather than requiring your audience to come to your website, syndication enables them to read your content in an environment of their choosing.  It&#8217;s worth noting that my wife is not a fan of syndication.  She likes the experience of going to different websites, enjoying their different takes on web design, and compartmentalizing her web surfing.  And that&#8217;s great; no one, to the best of my knowledge, has advocated an &#8220;RSS-only&#8221; interface.  Content available in the RSS format is also available otherwise, so it is a convenient option for people like myself.<br />&nbsp;<br />&nbsp;One more point about RSS, despite saying I wouldn&#8217;t talk much about it.  It&#8217;s kind of an academic point, but I feel it warrants some clarification.  The term RSS has quickly become the Band-Aid, or the Kleenex, of syndication feeds.  RSS is one of a number of formats used for marking up syndication feeds.  Another is the <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">Atom Syndication Format</a>.  Most browser and feed aggregators are fully aware of both feed types &#8212; for instance, Bloglines has supported both formats since June of 2006 &#8212; and they generally should render the same, and that&#8217;s why you don&#8217;t hear about Atom much; it&#8217;s a detail that is, for the most part, behind the scenes.</li>
<li>OpenSearch: Does anyone here have a website or a catalog?  Do they have search interfaces?  Perfect, you&#8217;re about a third of the way there.  <a href="http://www.opensearch.org/Home">OpenSearch</a> is a specification for some simple formats that allow you to share search results.  Just as syndication allows you to decouple your content from your website, OpenSearch allows you to decouple your search engines from your websites.  Here&#8217;s how it works:
<ol>
<li>Go to your search page and look at the URL after you run a search</li>
<li>Write an OpenSearch description document</li>
<li>Embed a LINK tag linking to the OpenSearch description document, for auto-discovery</li>
<li>Return search results in RSS or Atom</li>
</ol>
<p>You might ask &#8220;why bother?&#8221;  Firstly, the newest browsers &#8212; FF2 and IE7, among others &#8212; support auto-discovery of OpenSearch targets.  So folks can search Google, Wikipedia, Amazon, eBay &#8230; and your websites or catalogs directly from their browser.  Secondly, it allows for fairly simple federation of searches across OpenSearch targets.  Since each target contains a description document that is machine-readable, I can point my OpenSearch client at a number of targets, find their descriptions, and learn how to search them.  Results are, by convention, returned in RSS or Atom, which are easily crosswalkable, so aggregating result sets is fairly trivial (though how to sort or rank them is tricky).  Thirdly, since results are returned as RSS or Atom, one can in effect subscribe to search results.  For example, you could subscribe to a search on Wikipedia for &#8220;Anarcho-Syndicalism&#8221;, and your feed aggregator will be alerted whenever that search returns new results.  Or, a Linguistics professor could subscribe to your catalog&#8217;s OpenSearch target, hoping to be alerted when new materials about Germanic syntax are cataloged &#8212; and it&#8217;s worth noting, this is as easy as just two or three clicks in a web browser.</li>
<li>unAPI: Numerous tools and protocols exist for integrating library resources into other information systems, library or otherwise.  OAI-PMH and OpenURL are two great examples of successful and widely deployed technologies.  Unfortunately, few developers outside the relatively small world of library technology know anything about library standards, and this is seen as a significant integration barrier.  Dan Chudnov, a librarian programmer at LC, <a href="http://onebiglibrary.net/story/rethinking-openurl">reflected</a> on this: &#8216;we librarians and those of us librarians who write standards tend, in writing our standards, to &#8220;make complex things possible, and make simple things complex.&#8221;&#8216;<br />&nbsp;<br />&nbsp;To address this issue, a number of librarians and technologists came together to develop a new standard called <a href="http://unapi.info/">unAPI</a>.  unAPI is a tiny web-based specification designed to solve the problem of identifying, copying, and pasting discrete content objects to and from web applications (including catalogs, bibliographic databases, repositories, link resolvers, and so forth), making it simpler for developers outside the library world to get at our vast intellectual resources.  The objective of unAPI, then, is to enable web sites with HTML interfaces to information-rich objects to simultaneously publish richly structured metadata for those objects, or those objects themselves, in a predictable and consistent way for machine processing.<br />&nbsp;<br />&nbsp;unAPI consists of three parts: A <a href="http://en.wikipedia.org/wiki/Microformats">microformat</a> for embedding object identifiers in HTML, an HTML LINK tag for unAPI service auto-discovery (as used for RSS, Atom, and OpenSearch), and a web service consisting of three functions&#8211;get formats , get formats for x identifier , get format y of identifier x &#8212; two of which have a standardized response format, returning XML.</li>
<li>ZeroConf: I want to acknowledge Dan Chudnov again, for suggesting that Zero Configuration Networking might have a place in library services.  The general question here is &#8220;why can&#8217;t library tools be as cool as iTunes is?&#8221;  Just waltz into Starbucks, connect to the wi-fi, and you can see everyone else&#8217;s playlist.  You can listen to their music, even.  What sort of magic made this sort of auto-discovery &#8220;just work?&#8221;<br />&nbsp;<br />&nbsp;The technology is called <a href="http://www.zeroconf.org/">Zero Configuration Networking</a>, or ZeroConf, though you may see older mentions under the names Rendezvous and Bonjour.  Without getting into the hairy details, ZeroConf is a small stack of fairly low-level technologies that piggy-back on the ubiquitous domain name system (or DNS), which enables us to type identifiers like &#8220;google.com&#8221; and &#8220;nytimes.com&#8221; into a web browser and rest assured that our computers will take care of the rest for us &#8212; looking up the domain name, finding the network address of the server, connecting to the server on an appropriate port, and so forth.  ZeroConf allows machines to connect to networks without any knowledge of what&#8217;s already on the network, without regard for the type of network topology or infrastructure, and both register the services it provides and query the services already provided by other nodes on the network.  It sounds complicated, but everytime you walk into Starbucks and start up iTunes, it seems pretty trivial.  It &#8220;just works.&#8221;<br />&nbsp;<br />&nbsp;Wouldn&#8217;t it be great if users could discover our services and resources that easily?  What if we went through with systems integration and announced that unified service via ZeroConf?  A visiting scholar could enter our library, connect her machine to the network &#8212; and let&#8217;s forget about authentication and authorization for now &#8212; and immediately find our new service, from which she could run a simple search against all of our bibliographic databases, all of our catalog records, all of our full-text holdings, and all of our repository objects.  What if library services &#8220;just worked&#8221;?Significant work needs to be done in this area before it becomes viable as I&#8217;ve just described, but I find it to be a compelling vision.</li>
</ul>
<p>The technology as is widely acknowledged is the easy part.  So how do we get there?  How do we re-envision ourselves as library artisans?  How do we craft services that &#8220;just work?&#8221;  How can we investigate all these technologies that let us unleash our considerable assets?</p>
<ol>
<li>Commitment to innovation.  If you can afford to have skunkworks in your organization, even if it&#8217;s only one employee, or allowing a couple of creative individuals to devote 10% of their time to innovative pursuits, it&#8217;s worth it.</li>
<li>Bold direction.</li>
<li>Think outside the orgchart &#8212; leverage collaborative development, forge communities, make the most of your consortial ties.</li>
<li>&#8230; You tell me.</li>
</ol>
<p>We can yield revolutionary results via small steps and a bold, forward-thinking direction.  Pie in the sky?  Maybe, but isn&#8217;t pie delicious?  (Yes, that was a glib and abrupt ending, but I&#8217;m tired of editing.)</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2007/06/05/njla-2007-talk/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Identifier Persistence: Fundamentals</title>
		<link>http://lackoftalent.org/michael/blog/2007/06/05/identifier-persistence-fundamentals/</link>
		<comments>http://lackoftalent.org/michael/blog/2007/06/05/identifier-persistence-fundamentals/#comments</comments>
		<pubDate>Tue, 05 Jun 2007 20:34:33 +0000</pubDate>
		<dc:creator>Michael Giarlo</dc:creator>
		
		<category><![CDATA[Digital Libraries and Archives]]></category>

		<category><![CDATA[Persistent Identifiers]]></category>

		<category><![CDATA[Preservation]]></category>

		<guid isPermaLink="false">http://lackoftalent.org/michael/blog/2007/06/05/identifier-persistence-fundamentals/</guid>
		<description><![CDATA[
A friend and former colleague asked if I would comment on a chapter in her upcoming book on digital rights management and I agreed.  The chapter is about identification and authenticity of web resources.  Throughout my review of the chapter, I kept coming back to a couple of very basic notions that underlie [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="oai:lackoftalent.org:technosophia:92"><!-- &nbsp; --></abbr>
<p>A friend and former colleague asked if I would comment on a chapter in her upcoming book on digital rights management and I agreed.  The chapter is about identification and authenticity of web resources.  Throughout my review of the chapter, I kept coming back to a couple of very basic notions that underlie any effort to provide persistent identifiers for web resources.  These notions are, to my mind, central to identifier persistence, and any other concerns rely upon this foundation:</p>
<ol>
<li>Identifier persistence requires an organizational commitment.  Persistence cannot be ensured by a few renegades in the skunk-works, nor can it be mandated from on high without the support of those who manage the identifiers or produce web resources.  <strong>All individuals involved in the life-cycle of web resources must be committed to persistence in perpetuity if true persistence of identifiers is to be achieved.</strong></li>
<li>No technology, no standard, no identifier scheme, no information architecture will get you persistence.  Whether you choose native URIs, Handles, DOIs, PURLs, ARKs, UUIDs, or XRIs, <strong>you will never achieve identifier persistence without active management of your identifiers and web resources</strong>.  This requires the aforementioned organizational commitment since such management cannot occur without sufficient resources.  Management of web resources and identifiers requires time and due diligence and those don&#8217;t come for free.</li>
</ol>
<p>And, at the risk of being reductive, that&#8217;s about it.  Once you&#8217;ve got an organizational commitment and a person or team to manage your identifiers and web resources, the rest of the decisions are secondary.  If you like semantically meaningful URLs that redirect, choose Handles; if you prefer opaque identifiers, go with ARKs; if you don&#8217;t want to run your own software, consider PURLs.  At that point, it <strong>really doesn&#8217;t matter</strong> which scheme you choose, as long as its characteristics match your organization&#8217;s values.  You&#8217;ve already done the heavy lifting; rest easy.</p>
]]></content:encoded>
			<wfw:commentRss>http://lackoftalent.org/michael/blog/2007/06/05/identifier-persistence-fundamentals/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
