erambler/legacy/blog/from-doi-to-open-access/index.html

190 lines
7.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<meta content="IE=edge" http-equiv="X-UA-Compatible">
<meta content="width=device-width, initial-scale=1" name="viewport">
<link href="../../old/assets/style/styles.css" rel="stylesheet" type="text/css">
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<script>
(function() {
var s, scheme, wf;
this.WebFontConfig = {
google: {
families: ['Amaranth:700,700italic:latin', 'Inconsolata::latin']
}
};
wf = document.createElement('script');
scheme = 'https:' === document.location.protocol ? 'https' : 'http';
wf.src = scheme + "://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js";
wf.type = 'text/javascript';
wf.async = 'true';
s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(wf, s);
}).call(this);
</script>
<title>Resolving DOIs with green OA copies | eRambler</title>
<link href="https://erambler.co.uk/rss.xml" rel="alternate" type="application/rss+xml">
</head>
<body class="single-post">
<div id="container">
<header class="page-header">
<hgroup>
<div class="h1"><a href="../../">eRambler</a></div>
<div class="lead">Jez Cope's blog on becoming a research technologist</div>
</hgroup>
<nav><ul>
<li><a href="../../">Home</a></li>
<li><a href="../../about/">About</a></li>
<li><a href="../../blogroll/">Blogroll</a></li>
</ul>
</nav>
</header>
<section>
<div class="row">
<p class="archive-warning"><strong><em>Please note:</em></strong> this older content has been <strong>archived</strong> and is no longer fully linked into the site. Please go to the <a href="../../">current home page</a> for up-to-date content.</p>
</div>
<div id="content">
<article class="h-entry">
<div class="row">
<h1 class="post-title p-name">Resolving DOIs with green OA copies</h1>
</div>
<div class="row">
<div class="post-info">
<div class="post-date dt-published">
<a class="u-url" href="http://erambler.co.uk/blog/from-doi-to-open-access/">Thursday 7 March 2013</a>
</div>
Tagged with
<ul class="post-tags">
<li class="p-category"><span class="tag">DOI</span></li>
<li class="p-category"><span class="tag">Open access</span></li>
<li class="p-category"><span class="tag">Open scholarship</span></li>
<li class="p-category"><span class="tag">OAI-PMH</span></li>
<li class="p-category"><span class="tag">Programming</span></li>
<li class="p-category"><span class="tag">Ruby</span></li>
<li class="p-category"><span class="tag">Sinatra</span></li>
<li class="p-category"><span class="tag">Things I made</span></li>
</ul>
</div>
<div class="post-body">
<div class="post-content e-content">
<p>The other week I was at a <a href="http://orbital.blogs.lincoln.ac.uk/2013/02/27/ckan-for-rdm-workshop/">gathering of developers, librarians and researchers with an interest in institutional data repositories</a>. Amongst other things, we spent some time brainstorming the requirements for such a repository, but there was one minor-sounding one that caught my imagination.</p>
<p>It boiled down to this question: given only the <a href="http://en.wikipedia.org/wiki/Digital_object_identifier">DOI</a> for a published article (or other artefact), how do you find an open access copy archived in an institutional repository? Some (rather cursory) Googling didnt come up with an obvious solution, so I thought “How hard can it be to implement?”.</p>
<p>All thats required is a database mapping DOIs onto URLs, and a spot of glue to make it accessible over the web. The data that you need is freely available in machine-readable format from most repositories via <a href="http://en.wikipedia.org/wiki/Open_Archives_Initiative_Protocol_for_Metadata_Harvesting">OAI-PMH</a>, so you can fill up the database using that as a data source.</p>
<p>So, without further ado here it is:</p>
<ul>
<li><a href="http://doi2oa.erambler.co.uk">Open Access DOI resolver</a></li>
</ul>
<p>A few caveats:</p>
<ol>
<li>I dont get much chance to write code at work at the moment, so this was an opportunity to exercise under-used brain muscles and learn some new stuff. It could probably be done better (and the <a href="http://github.com/jezcope/doi2oa">source code</a> is on github, so feel free to fork it and add improvements). Its written in <a href="http://ruby-lang.org/">Ruby</a> using the awesome <a href="http://sinatrarb.com/">Sinatra</a> web framework.</li>
<li>Its currently hosted on <a href="http://heroku.com/">Heroku</a>s free starter-level service, so theres very little capacity. It therefore only includes DOIs from the University of Baths <a href="http://opus.bath.ac.uk">Opus</a> repository, and the database is full.</li>
</ol>
<p>Go try it out and let me know what you think. If its useful, Ill look into how I can make it more robust and resolve more DOIs.</p>
</div>
<div id="disqus_thread"></div>
<script>
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_shortname = 'erambler'; // required: replace example with your forum shortname
var disqus_identifier = 'tag:erambler.co.uk,2013-03-07:/blog/from-doi-to-open-access/';
var disqus_title = 'Resolving DOIs with green OA copies'
var disqus_url = 'http://erambler.co.uk/blog/from-doi-to-open-access/';
var disqus_developer = 0;
if (window.location.hostname == 'localhost')
disqus_developer = 1;
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
</div>
</div>
</article>
</div>
<div id="sidebar">
<div class="sidebar-box about-me h-card">
<p>Hi, Im <a href="http://erambler.co.uk" class="p-name u-url">Jez Cope</a> and this is my
blog, where I talk about technology in research and higher
education, including:</p>
<ul>
<li>Research data management;</li>
<li>e-Research;</li>
<li>Learning;</li>
<li>Teaching;</li>
<li>Educational technology.</li>
</ul>
</div>
<div class="sidebar-box links">
<h2>Me elsewhere</h2>
<ul>
<li><a href="https://twitter.com/jezcope" rel="me">Twitter</a></li>
<li><a href="https://github.com/jezcope" rel="me">github</a></li>
<li><a href="https://linkedin.com/in/jezcope">LinkedIn</a></li>
<li><a href="http://diigo.com/user/jezcope">Diigo</a></li>
<li><a href="https://www.zotero.org/jezcope">Zotero</a></li>
<li><a href="http://gplus.to/jezcope">Google+</a></li>
</ul>
</div>
</div>
<div class="row">
<footer><a class="license" href="http://creativecommons.org/licenses/by-sa/4.0/" rel="license">
<img alt="Creative Commons License" src="http://i.creativecommons.org/l/by-sa/4.0/88x31.png" style="border-width:0">
</a>
<span href="http://purl.org/dc/dcmitype/Text" property="dct:title" rel="dct:type" xmlns:dct="http://purl.org/dc/terms/">
eRambler
</span>
by
<a href="http://erambler.co.uk/" property="cc:attributionName" rel="cc:attributionURL" xmlns:cc="http://creativecommons.org/ns#">
Jez Cope
</a>
is licensed under a
<a href="http://creativecommons.org/licenses/by-sa/4.0/" rel="license">
Creative Commons Attribution-ShareAlike 4.0 International license
</a>
</footer>
</div>
</section>
</div>
<script>
if (!/^http:\/\/localhost/.test(window.location)) {
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-10201101-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
}
</script>
</body>
</html>