Papers Universal Citekey

Hi again,

As indicated in my very first email, I had 2 other emails I wanted to send to this list as well. Here is the second one…

When we launched Papers2, we also introduced a new way to generate a citekey which we call a ‘universal citekey’ generator. The basic idea is that by using a hash on the title or on the doi, Papers2 is able to generate a citekey that will be different for two different papers, and that will still be the same for two different users, even if they do not share their Papers library (and as long as they both have the correct title or doi).

Again, because of time constraints, we had not really explained in much detail what that meant exactly. We now have a document on our knowledge base, to describe exactly how universal citekeys are generated by Papers. This is a very technical description, that will only be of interest to the geekiest of you. It can also be of interest for other app developers that would like to use the same algorithm and generate the same universal citekey (that would be great!).

Here is the link to the current draft of this document:

http://dl.dropbox.com/u/360874/universal-citekey.pdf

In any case, I realize this is only tangentially related to CSL development, so if there is interest in any of that from some of you, let me know. There is also this discusssion on our support site:

http://support.mekentosj.com/discussions/suggestions/1942-universal-citekeys-discussion-and-questions

Thanks,

Charles–
Charles Parnot
@Charles_Parnot
twitter: @cparnot

Thanks. We have talked about citation ids here, and you’ll note some
discussion as well of a common JSON data format for embedding in
documents that ensures those documents can be portable across CSL
implementations. You might want to consider that as well?

A quick followup …

When we launched Papers2, we also introduced a new way to generate a citekey which we call a ‘universal citekey’ generator. The basic idea is that by using a hash on the title or on the doi, Papers2 is able to generate a citekey that will be different for two different papers, and that will still be the same for two different users, even if they do not share their Papers library (and as long as they both have the correct title or doi).

What happens if the item is untitled and doesn’t have a DOI (not
uncommon, say, in the humanities)?

Related aside:

Here’s my own, human-readable (for use in markdown), key algorithm for
RSS feeds (news articles in particular):

Bruce

Bruce