How to cite sources using Schema.org in JSON-LD

April 19, 2019
By Paul Grieselhuber

So you want to add your list of sources as citations to an article, blog post, or some other creative work? This is a short and sweet post that gives you the output format you are looking for.

I have run this through Google’s Structured Data Testing Tool and it passes with flying colors.

{
    "@context": "https://schema.org/",
    "@type": "Article",
    "name": "The article title",
    "about": "The subject of your article",
    "author": {
        "@type": "Person",
        "@id": "https://www.website.com/author/your-name",
        "name": "Your Name"
    },
    "citation": [
        {
            "@type": "CreativeWork",
            "citation": "Smith et al, \"Some cited work\" Some Journal, Jan. 2015. "
        },
        {
            "@type": "CreativeWork",
            "citation": "Hatcher et al, \"Some other cited work\" Another Journal, Mar. 2019. doi: 12.3456/abc.01.123"
        }
    ],
    "commentCount": 100,
    "copyrightHolder": {
        "@id": "https://www.website.com/#organization"
    },
    "copyrightYear": 2019,
    "datePublished": "2019-04-23 01:23:45",
    "dateModified": "2019-04-23 03:23:45",
    "description": "The subject of your article",
    "discussionUrl": "https://www.website.com/blog/your-post#comments",
    "editor": {
        "@id": "https://www.website.com/author/your-name#author"
    },
    "headline": "The article title",
    "image": "https://www.website.com/wp-content/uploads/image.jpg",
    "inLanguage": "English",
    "mainEntityOfPage": "https://www.website.com/blog/your-post",
    "publisher": {
        "@id": "https://www.website.com/#organization"
    },
    "sourceOrganization": {
        "@id": "https://www.website.com/#organization",
        "type": "Organization",
        "name": "Our Company",
        "logo": {
            "@type": "ImageObject",
            "name": "Our Logo",
            "width": "230",
            "height": "67",
            "url": "https://www.website.com/images/logo.png"
        }
    },
    "url": "https://www.website.com/blog/your-post"
}

Other fields added for context, and because this stuff can be a PITA to figure out.

You’ll obviously want to edit the other fields accordingly. Happy citing!

Paul Grieselhuber