Citing URLs with Kcite

The Kcite plugin [1] generates bibliographies in kblog articles from a variety of different article identifiers, including arXiv, PubMed and DOIs. Kcite now also supports simple URLs [2]. In this article, I describe how to use kcite to cite an article via a URL. This has the significant advantage that many more forms of article can be cited than the restricted subset with other identifiers.

Simple Citation

At heart, citing a URL is very simple and consistent with other uses of Kcite. A shortcode syntax can be used combined with the URL. So, for example [cite][/cite] will be displayed as a citation [3].

The Bibliographic Metadata

One difficultly with citing a URL directly is that there is no standard mechanism for accessing the bibliographic metadata, that is the author, title and year of publication; or, rather, there are many “standards”, which are used inconsistently through out the web. For the other forms of identifier, there is a central location which provides this metadata, and from which Kcite retrieves the information.

Kcite works around this problem by using the Greycite [4] service. This captures metadata directly from the URL and then returns this to Kcite [3].

The Citation is Wrong

Sometimes when citing with a URL, the citation will appear incorrectly. The most common problem is missing author data, which is most obvious when using author-year in text citations, as this citation shows where the author is displayed as anon [5].

The metadata describing the article is retrieved from the URL via the Greycite service [4]; in the absence of a single standard representation, Greycite implements several different mechanisms for recovering this metadata. In most cases, fields are missing because the metadata is just not present in any computationally amenable form. For example, the BBC does not usually publish authorship for news articles. Even where it is displayed to the reader, it is not marked up.

With Greycite and Kcite we, the authors, have made an active decision to take the publishers at their word; if the authors do not display an author name, then presenting the article as anonymous is the correct behaviour. In short, in most cases, if an article is not being displayed correctly, then you need to contact the author of the article. If you are the author, then the easiest way to ensure that your metadata is released in a way consistent with Kcite is to use the kblog-metadata plugin [6].

In a few cases, Greycite may have failed to parse available metadata, or parse it incorrectly; in these cases, please feel free to contact us. We cannot guarantee to support all forms of metadata, but we will try.

PubMed, ArXiv and DOI by URL

It is also possible to cite any supported identifier with a URL. As well as allowing a consistent citation format, this also disambiguates between the different identifiers. So for example, you can cite using an DOI using the URL form of the DOI. This shortcode [‍cite][/cite‍] will be displayed as follows [7]. Similarly, it is possible to cite arXiv IDs, so [‍cite][/cite‍] which will appear as [8], or Pubmed IDs so [‍cite][/cite‍] which will appear as [9].

For these forms of citation, the URLs are specifically recognised; metadata is retrieved from the underlying service, rather than Greycite [4]. If citations appear incorrect, it may be because the metadata is wrong at the source.


Phillip Lord
School of Computing Science
Newcastle University


  1. S. Cockell, and P. Lord, "KCite Plugin", Knowledge Blog, 2011.
  2. P. Lord, "Kcite, Greycite and Kblog-metadata", An Exercise in Irrelevance, 2012.
  3. P. Lord, L. Marshall, P. Lord, and L. Marshall, "Greycite: Citing the Web", An Exercise in Irrelevance, 2012.
  4. P. Lord, "Greycite", Knowledge Blog, 2012.
  5. . @BBCNews, "UK science to be freely available - BBC News", BBC News, 2012.
  6. P. Lord, "Kblog Metadata Plugin", Knowledge Blog, 2012.
  7. P. Lord, and R. Stevens, "Adding a Little Reality to Building Ontologies for Biology", PLoS ONE, vol. 5, pp. e12258, 2010.
  8. M.J. Bell, C.S. Gillespie, D. Swan, and P. Lord, "An approach to describing and analysing bulk biological annotation quality: a case study using UniProtKB", arXiv, 2012.
  9. P. Lord, "An evolutionary approach to Function.", Journal of biomedical semantics, 2010.