Blog

Redirecting redirection

Crossref has decided to change the HTTP redirect code used by our DOIs from 303 back to the more commonly used 302. Our implementation of 303 redirects back in 2010 was based on recommended best practice for supporting linked data identifiers. Unfortunately, very few other parties have adopted this practice.

Using AWS S3 as a large key-value store for Chronograph

One of the cool things about working in Crossref Labs is that interesting experiments come up from time to time. One experiment, entitled “what happens if you plot DOI referral domains on a chart?” turned into the Chronograph project. In case you missed it, Chronograph analyses our DOI resolution logs and shows how many times each DOI link was resolved per month, and also how many times a given domain referred traffic to DOI links per day.

Python and Ruby Libraries for accessing the Crossref API

I’m a co-founder with rOpenSci, a non-profit that focuses on making software to facilitate reproducible and open science. Back in 2013 we started to make an R client working with various Crossref web services. I was lucky enough to attend last year’s Crossref annual meeting in Boston, and gave one talk on details of the programmatic clients, and another higher level talk on text mining and use of metadata for research.

DOIs and matching regular expressions

We regularly see developers using regular expressions to validate or scrape for DOIs. For modern Crossref DOIs the regular expression is short

/^10.\d{4,9}/[-._;()/:A-Z0-9]+$/i

For the 74.9M DOIs we have seen this matches 74.4M of them. If you need to use only one pattern then use this one.

Content Negotiation for Crossref DOIs

So does anybody remember the posting DOIs and Linked Data: Some Concrete Proposals? Well, we went with option “D.” From now on, DOIs, expressed as HTTP URIs, can be used with content-negotiation. Let’s get straight to the point. If you have curl installed, you can start playing with content-negotiation and Crossref DOIs right away: curl -D - -L -H “Accept: application/rdf+xml” “http://dx.doi.org/10.1126/science.1157784” curl -D - -L -H “Accept: text/turtle” “http://dx.doi.org/10.1126/science.1157784”

Ubiquity commands for Crossref services

So the other day Noel O’Boyle made me feel guilty when he pinged me and asked about the possibility using one of the Crossref APIs for creating a Ubiquity extension. You see, I had played with the idea myself and had not gotten around to doing much about it. This seemed inexcusable- particularly given how easy it is to build such extensions using the API we developed for the WordPress and Moveable Type plugins that we announced earlier in the year.

Kay Sera Sera

Crossref

admin – 2007 February 20

In Programming

Not specifically publishing-related, but here is a fun rant interview with Alan Kay titled The PC Must Be Revamped—Now. My favorite bit… “…in the last few years I’ve been asking computer scientists and programmers whether they’ve ever typed E-N-G-E-L-B-A-R-T into Google-and none of them have. I don’t think you could find a physicist who has not gone back and tried to find out what Newton actually did. It’s unimaginable. Yet the computing profession acts as if there isn’t anything to learn from the past, so most people haven’t gone back and referenced what Engelbart thought.

Stick this in your pipe…

Crossref

admin – 2007 February 19

In Programming

Rob Cornelius has a practical little demo of using Yahoo! pipes against some Ingenta feeds. Like Tony, I keep experiencing speed/stability problems while accessing pipes so I haven’t yet become a crack-pipes-head.

Ruby Makes A-List

Crossref

thammond – 2006 October 12

In Programming

Um, well. Seems according to O’Reilly Ruby that Ruby is now a mainstream language. “The Ruby programming language just made the A-list on the TIOBE Programming Community Index, and Ruby is now listed as a mainstream programming language. For the past three or four years Ruby has consistently placed in the high 20’s in this index, but is now placed as the 13th most popular programming language!” (No language wars, but I am, I will confess, a big admirer - for some time.