How to add ISSN metadata to a web page
Inspired by John Hoare at the Dirty Feed blog - I've asked the British Library to assign my blog an International Standard Serial Number (ISSN).
An ISSN is an 8-digit code used to identify newspapers, journals, magazines and periodicals of all kinds and on all media–print and electronic.
Why?
Shut up.
OK. It turns out that lots of people cite my blog in academic papers - so I wanted to make it slightly easier for scholars of the future to use metadata to trace my vast influence on Human civilisation.
How?
I filled in a form on the British Library website. Didn't cost me a penny. Was pretty quick!
Metadata
I can stick a bit of text at the bottom of each page with the ISSN - but that doesn't make it easily discoverable by automated tools. How can I make an ISSN machine readable? There are a few ways.
Meta Elements
There are a limited list of official <meta>
names. These are extensible, and Google Scholar recommends citation_issn
. Which is as simple as adding the following to your page's <head>
:
HTML<meta name="citation_issn" content="1234-5678">
There alternatives though.
Schema.org
In recent years, Schema.org has become the dominant form for representing metadata on the web. There are two ways you can implement it:
JSON-LD
JSON Linked Data involves adding a scrap of JavaScript to your HTML, like this:
HTML<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Blog",
"issn": "1234-5678"
}
</script>
If you don't want to add a separate script, you can add the data inline using...
Microdata
The microdata specification uses the exact same data as Schema.org - but allows you to add the data directly into the web page like this:
<body itemscope itemtype="https://schema.org/Blog">
...
ISSN <span itemprop="issn">1234-5678</span>
That's probably the easiest way to do it.
Links
The ISSN registry allows you to look up any ISSN with a simple URL. Mine is at https://portal.issn.org/resource/ISSN/2753-1570.
Belt and braces
So, this is what I've ended up doing - cramming everything in all at once.
HTML<head>
...
<meta name="citation_issn" content="1234-5678">
</head>
<body itemscope itemtype="https://schema.org/Blog">
...
ISSN <a href="https://portal.issn.org/resource/ISSN/1234-5678"><span itemprop="issn">1234-5678</span></a>
Any other ways?
What am I missing? Can someone smarter than I tell me that there's an easier / better / more interoperable way to do this?
Alan Fricker 💙 said on twitter.com:
Never knew you could give a blog an ISSN! Could make for an interesting reference enquiry or two!
HackerNewsTop10 said on twitter.com:
How to add ISSN metadata to a web page Link: shkspr.mobi/blog/2021/09/h… Comments: news.ycombinator.com/item?id=285639…
Andy Mabbett says:
It would be good if there was a simple WordPress plugin to take care of all this.
Terence Eden said on twitter.com:
Just discovered that @zotero correctly picks up the ISSN metadata when citing my blog!