Why you should be excited there are 6000+ CSL styles

This morning, the number of citation styles in the Citation Style Language (CSL) repository went above 6000. This is an amazing success story for a tiny, unfunded open source project. Here are three reasons you should be excited about this.

1. Publishers are seeing the light on citation styles

When Rintze Zelle posted this news on twitter, one response was bewilderment (even anger) about the number of citation styles:

But these folks get it all wrong. The reason there are more CSL styles is that there are fewer citation styles. Take a look at this graph, by Carles Pina, one of Mendeley’s developers (not embedded since it updates daily). See those jumps of the green line in mid-April and mid-March? Those were the dates citation styles for a massive number of journals by Springer and Elsevier were added. But now look at the blue line – the number of “unique” styles, i.e. citation styles that are actually different. It hardly budges on those dates. The reason for that is that both Springer and Elsevier have started to consolidate the citation styles for all of their journals. Once they’re done, (almost) every one of their journals will be based on one of six citation styles. The list with those styles was provided to Papers and Mendeley developers when their companies were bought by Springer and Elsevier respectively. Taylor & Francis is in a similar process of consolidating their journals to five citation styles and they just gave us the list when we asked (and were very nice & helpful in the whole process, I’ll add). All three of these publishers base their styles on popular existing manuals such as APA and Chicago. Sage seems to be doing the same — they have style manuals for a Harvard  and a Vancouver style — but hasn’t replied to my request for a list of journals following them. Sadly, I haven’t seen any similar movements from the major university presses — Cambridge, Oxford, I’m looking at you.

But why do we add those journals to CSL then? And do we keep 500 versions of the same style? As for the first question – our vision is that if you want to publish in a journal you just look it up in the list of styles for you (CSL-using) reference manager and, voilà, you have correctly formatted references. No need to check “Instructions for Authors” on the journal’s webpage or to figure out if the style they provide is “Elsevier Harvard” or not. And of course we don’t keep 500 copies of the same style on the CSL repository. Where one style is used by multiple journals, we create a dependent style, which is typically about 15 lines long and mainly consists of the name of the journal and a link to its “parent” style. You can see an example here if you’re curious.

2. CSL increases competition among reference managers…

…and that improves the quality of the existing products. Seven years ago, when Zotero got started, and CSL was still in its kids shoes, providing a citation function was a major obstacle for a new reference manager. Zotero invested a fair amount of initial resources getting CSL of the ground, writing the first CSL processor (the code that converts data and citation styles into formatted citations) and contributing a fair number of citation styles.

Today, when a new product like Docear or Colwiz enters the same market, things are radically different. They can freely use many thousands of CSL styles (each one under an open CC-BY-SA license). They don’t even have to write their own processor, but can pick from various options: citeproc-js by Frank Bennett (used e.g. in Zotero, Mendeley), citeproc-hs  by Andrea Rosato (used in the wonderful Pandoc) as well as citeproc-ruby  (Sylvester Keil) and citeproc-php, (Ron Jerome) both of which are optimized for web-based implementations. They can direct their users to the visual CSL editor developed by Steve Ridout in a cooperation between Columbia University and Mendeley. Thanks to CSL, implementing a citation function in a reference manager has become relatively easy.

In other words the “barriers to entry” in the reference manager market have been lowered significantly by CSL to the benefit of us, the users. More competition doesn’t just mean more choice, it also means more rapid innovation. Even if you’re still an Endnote user (and you really shouldn’t be) you’ll benefit as Endnote is reacting to the increasingly fierce competition by improving exactly those feature where e.g. Zotero and Mendeley excel (or why did you think there is now a retrieve metadata feature for PDFs and better support for webpages?) and improving theirfree offerings (their #freeEndNote hashtag sounds more like a plea to me, though).

3. Free and Open Source Solutions Work

While much of the work on CSL is performed by a small team of unpaid volunteers (essentially Rintze, me, and the authors of the processors), we have been increasingly successful attracting outside contributions. According to the stats collected by ohloh.net, CSL as a “very large development team.” While I have been critical of the lack of support for CSL by Mendeley et al in the past (and still the vast share of new styles and improvements come from Zotero and its users), both Mendeley and Papers have taken a very welcome more pro-active role in CSL recently. Papers developer Charles Parnot has been instrumental in engineering the push to incorporate more dependent styles (and has developed much of the work-flow we use for that). Mendeley contributed the long awaited visual editor (which is open source) and Carles Pina has helped out with the large Elsevier and Taylor&Francis additions. The brand new CSL logo you see up top was donated by Austrian graphic designer Johannes Krtek. So helping hands all around.

All that said, CSL’s enormous popularity does pose some challenges, as the day-to-day maintenance of the repository at times takes up more time than Rintze and I can reasonably muster. CSL currently has no funding of any kind. We’re working on finding ways to make the project long-term sustainable and assure continuing improvements (and I’m somewhat confident that the large number of stake-holder will help in that process), but that’s a topic for another day.

Zotero Item URIs from Client

While working with Frank Bennett on implementing a Zotero workflow for google docs or Scrivener (almost ready – stay tuned) I wrote two little (tiny, really) tools that I thought I’d share.

The first one allows you to quick copy the URI of an item from your Zotero client. The second one gives you a zotero://select link that opens an item in Zotero.

Zotero Item URI

Say you want to send a friend a link to an item in your public Zotero library or in a group on zotero.org. Right now this is  a cumbersome process: Go online, search for the item, copy the link from the URL bar… With the “Item URI” Translator, you can simply drag and drop a link to the online version of the item. Setting this up takes three steps

  1. Download the file “Item URI.js” from here and place it in the directory “translators” in your Zotero data folder.
  2. Restart Firefox/Zotero
  3. In the Zotero Preferences go to the “Export” and set the Default Output Format to “Item URI” (this will be towards the bottom of the list)quickcopy-itemuris

You can now take advantage of Zotero’s quick copy functionality and drag&drop links from the item in your client right into an email or a blogpost. You can also use the shortcut for “Copy Selected Items –  ctrl+alt+c on Linux/Windows, cmd+shift+c on Mac – to copy the URI to you clipboard. It will look something like this: http://zotero.org/users/76252/items/UUKSSZVK

Personally I think something like this should be included as a button in Zotero’s interface, but until that’s the case, I hope you find it useful.

Zotero Select

Zotero allows you to directly link to an item in your local database. If you paste a valid URI starting with zotero://select into your URL bar in Firefox, it will open Zotero to that item.  To create such a zotero://select link from an item, download the file “Zotero Select Item.js” from here and then follow steps 1-3 above. A link will look like zotero://select/items/0_USN95MJC and work only with your library.

The main use for such links would be to link to Zotero from other software, e.g. from note-taking applications There are several issues involved with that depending on your operating system and I’m not going to go into the details, but see here for a good overview with many more links and here for a Mac/Applescript specific solution. The version of the Zotero select translator linked to above will only create the link – you can find some more elaborate version – including html wrappers and basic item information – linked to from here.

What’s New in Zotero 4.0 – Part 2

In the last blogpost I introduced some of the new features of Zotero that help you to collect and organize your references more easily. Zotero 4.0 also has a number of new features that improve citations and make syincing more flexible.

Automatic Journal Abbreviations

Up to now, Zotero took journal abbreviations from the “Journal Abbr.” field. Many databases don’t populate that field properly or at all, so this required a lot of maintenance by users who needed correctly abbreviated journal titles in citations. Now, Zotero comes with a built-in journal abbreviation list. The list takes the journal title from the “Publication” field and matches it against a list of journal titles and words to create a journal abbreviation. The abbreviation list currently only works when using the word processor plugins. For new documents, the option to “Automatically Abbreviated Journal Titles” is active when using styles requiring abbreviated journal titles. In documents created before the release of Zotero 4.0, you can turn on the option under “Set Document Preferences” in the word processor plugin. It will only be available if your chosen citation style requires abbreviated journal titles.

journal-abbreviations

File Sync on Demand

When you sync Zotero to a new computer with file syncing enabled, all item data and all attachments are downloaded. As attachments can take up multiple gigabytes, this can be a long process, impracticable for users who switch computers often. In Zotero 4.0, users can set file syncing to “Download files as needed.” That way, files on the server will only be downloaded when you try to open them. This option is turned off by default.

sync-on-demand

Relative Linked Attachment Filepaths

By default, Zotero stores all file attachments in a “storage” folder in the data directory. Using file sync via Zotero file storage or a WebDAV server, you can sync these files and comfortably access them on multiple computers. Some users, however, prefer to use their own organizing structure for files in their file system and link to them from Zotero. In the past, this made accessing files on multiple computers difficult. On one computer a file may have had the path ‘/home/workcomputer/Zoterofiles/Important-Paper.pdf’ while on another it was ‘/home/homecomputer/Zoterofiles/Important-Paper.pdf’. The link to this file – what we call an “absolute” link – would only work on one of the two computers. In Zotero 4.0, you can now specify a base directory, and have linked files be relative to that directory. In our example, you would go to “Files and Folders” tab of the “Advanced” tab of the Zotero preferences and on one computer input ‘/home/workcomputer/Zoterofiles’, on the other computer ‘/home/homecomputer/Zoterofiles/’ as the “base directory.” The link to ‘Important-Paper.pdf’ would then work on both computers. This will also work if there is a folder structure within the base directory, as long as it is the same on both computers.

relative-paths

And there is still more…

This is still not everything. Even more new features were introduced in Zotero 4.0. They include multiple performance improvements — for syncing, duplicate detection, pdf metadata retrieval — as well as many little additions that we hope will make Zotero even more useful to you. You can find a full list of all changes here. As always, if you have any questions about Zotero, a dedicated group of users and developers are happy to help you on the Zotero Forums.

What’s New in Zotero – Part 1

This is an extended write-up that I originally prepared for the Zotero blog, but that turned out too extensive for that purpose.

At first glance, the changes in Zotero 4.0 may seem small. It may even have taken you some time to notice that Zotero had updated to a new major version. In reality, though, Zotero 4.0 introduces a wealth of new features — so many, in fact, that it will take us two blogposts to introduce them. In this post I will cover the features that are broadly related to organization and import. The second post will cover features related to syncing, file management, and citations.

Color Coded Tags

Not all tags are created equal. Maybe you have a “to read” tag and you would like to quickly identify items on your reading list. Or you have your favorite articles marked as important. For those and many other cases, Zotero now allows you to assign colors to up to six tags. You can assign a color to a tag by right-clicking on it in the tag selector in the left hand panel. The item will then appear with a colored square before its title in the middle panel. Obviously one item can have multiple color coded tags.

tags

Color coded tags can also be assigned particularly quickly. When you assign a color, you also assign a number to a tag. You can then automatically tag any item(s) selected in the middle panel just by pressing that number on your keyboard.

assign-color

Adding Multiple Tags and Identifiers at Once

Say you have a list of words that you would like to add to a Zotero item as tags. Or you have a list of DOIs or PubMed IDs that you would like to add using Zotero’s “Magic Wand” add by identifier feature. Up to now, you had to enter these one by one. Now you can paste multiple tags, separated by newlines (return/enter) into the “Add tag” field and similarly input lists of identifiers into the magic wand:

multi-tags multi-DOIs

While typically you would copy and paste such a list, e.g. from a text editor or even a spreadsheet, you can also toggle the add tag/add identifier field into multiline mode using Shift+Return.

New Attachment/Note Indicators

You can now add separate columns for Notes and Attachments to the middle panel. The “Notes” column contains the number of child notes (if any) attached to an item. The attachment column – marked by a paper clip – marks items with at least one attachment with a dot. The dot will be colored blue if the attachment is present on the currently used computer and hollow if it is not (e.g. if file syncing is turned off or if files are only synced as needed – a feature that we will introduce in the next blogpost). By the way – we have also added many more options for columns to add to the middle panel.

attachment-icon1

Display What You are Downloading and Where to

When you import items using the URL bar icon, Zotero now tells you in which collection it is saving and lists all attachments it downloads for an item. That way you will see immediately if an item is saved into the right collection and if e.g. a PDF of an article was successfully downloaded.

import-marker

In Case you Missed it: IE and Mobile Support with the Bookmarklet

We released the bookmarklet for Zotero several months ago, but in case you missed it: With the bookmarklet you can now take advantage of Zotero’s convenient one-click import from hundreds of sites from mobile devices (saving straight to your zotero.org account) or previously unsupported browsers such as Internet Explorer (saving either to Zotero Standalone or to zotero.org). You can download the bookmarklet and find additional instruction here.