The Crossref Curriculum

Participating in Crossmark

  1. If you’re using any deposit method except Metadata Manager, you can immediately move to step 2. If you’re using Metadata Manager to register content, you need to contact us as we need to take action to make the relevant fields available to you in Metadata Manager before you move onto step 2.
  2. Create a Crossmark policy page and assign it a DOI: create a page on your website explaining that you are participating in the Crossmark service and have committed to maintaining version of record copies of content that display the Crossmark button. This page should be registered and have a DOI to enable persistent linking. It should explain your policies on corrections, retractions, withdrawals and other updates, and may contain definitions and explanations of any additional custom metadata fields that are being used. The page could also include links to other relevant policies such as author submission guidelines, and peer review guidelines. Learn more about creating a Crossmark policy page.
  3. Deposit Crossmark metadata - as part of your regular Crossref metadata deposit, and can also be deposited as stand-alone data to populate backfiles. For Crossmark-only deposits, see the schema and schema documentation relating to resource-only deposits.

The minimum metadata required for Crossmark is:

  • The DOI of the content the Crossmark is being applied to
  • The DOI for the your Crossmark Policy Page

If you are using Metadata Manager to register your content with us, go to the journal-level record for your publication, add your Crossmark policy page DOI, and click Save.

Add Crossmark policy page DOI in Metadata Manager

Adding more information

Several metadata elements will automatically display in the Crossmark box if you are registering them:

If you are already registering this additional metadata at the time you implement Crossmark, there is nothing more you need to do. If you start to register these metadata elements after you have set up Crossmark, they will automatically be put into the Crossmark box.

Custom metadata

The Crossmark box has a section for you to show any additional non-bibliographic information about the content. You decide what to include here (you are not required to add anything). In this section, Crossmark participants often include publication history dates, details of the peer review process used, and links to supporting information.

Use Metadata Manager to add custom metadata, or use the assertion element in your XML.

The role of the @order attribute

@order is an optional attribute. If @order is absent, it will return stuff in the order you list it in deposit, but this is not guaranteed. If you want to be sure of the order, then you can use @order. Learn more about the Crossmark deposit elements (including what is optional) in the schema.

Step 1: Provide DOIs for items being corrected or updated. Crossmark updates should only be deposited for editorially significant changes - those that are likely to affect the interpretation or crediting of the work, and not for minor changes such as spelling corrections or formatting changes. There are 12 defined types of accepted update within Crossmark:

  • addendum
  • clarification
  • correction
  • corrigendum
  • erratum
  • expression_of_concern
  • new_edition
  • new_version
  • partial_retraction
  • removal
  • retraction
  • withdrawal

If an update does not fall into one of these categories, it should instead be placed in the more information section of the pop-up box by being deposited as an assertion. When deposited content corrects or updates earlier content, the DOI(s) of the corrected content must be supplied in the Crossmark metadata. See the Crossref unixref documentation section on updates for examples of how this is recorded in the Crossmark metadata. When a correction is made in situ (that is, it replaces the earlier version completely), then the DOI of the corrected content will be the same as the DOI for the original Crossref deposit. In situ updates are not considered best practice as they obscure the scholarly record.

Step 2: Record the DOI in HTML metadata. You should ensure that the DOI is embedded in the head of the HTML metadata for all content to which Crossmark buttons are being applied as follows: <meta name="dc.identifier" content="doi:10.5555/12345678"/>

Step 3: Apply the Crossmark button to your HTML pages. We supply a templated HTML/JavaScript code widget which will embed the Crossmark button and functionality into your web pages. The latest version of the widget (v2.0) is below. Do ensure you are using the latest version and that it points to our production server. Crossmark HTML widget. Please use the widget as specified below and do not alter the script or host the button locally.

<!-- Start Crossmark Snippet v2.0 -->
<script src=""></script>
 <a data-target="crossmark"><img src="" width="150" /></a>
<!-- End Crossmark Snippet -->

There are a number of variations of the Crossmark button available so that you can choose one that fits well on your site. You can change the Crossmark button that is used simply by changing the src attribute of the img element to point to one of the following:

Step 4: Add Crossmark metadata to PDF content. At a minimum, this metadata must include the DOI of the content and the optional Crossmark domain(s). You may wish to use our open source tool pdfmark for embedding metadata in PDF files. The appropriate metadata is added to a PDF with the following command:

java -jar pdfmark.jar -d 10.5555/12345678 sample_crossmark_article_pdf_w_crossmark.pdf

A minimal XMP file for the above PDF would look like this:

<?xml version="1.0" encoding="UTF-8"?>
<?xpacket begin="?" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39">
<rdf:RDF xmlns:rdf = ""
xmlns:pdfx = ""
xmlns:pdfaid = ""
xmlns:xap = ""
xmlns:xapRights = ""
xmlns:dc = ""
xmlns:dcterms = ""
xmlns:prism = ""
xmlns:crossmark = "">
<rdf:Description rdf:about="">
<?xpacket end="w"?>

It may appear redundant to apply Crossmark elements both in their own Crossmark namespace as well in the pdfx namespace, but the latter is necessary to ensure the Crossmark elements appear in the PDF dictionary, a specific requirement for some search engines. Any metadata found in the pdfx namespace will be copied over to the document info dictionary. Simply make sure that Crossmark metadata is in the pdfx namespace in the XMP provided to the tool.

Step 5: Apply linked Crossmark buttons to your content - learn more about Crossmark button guidelines, including how and where to display the Crossmark button.

We have also created pdfstamp, an open-source command-line tool that makes it possible to add an image or stamp to any location on a PDF and to link that image to a chosen URL.

The link structure for Crossmark links from PDFs looks like this:;domain=pdf&amp;date_stamp=2008-08-14


  • doi is the DOI of the content item
  • domain tells the Crossmark system what kind of static content the link is coming from, and will change for different static formats (such as epub)
  • date_stamp tells the Crossmark system the date on which a last Major Version of the PDF was generated. In most cases, this will be the date the article was published. However, when a member makes significant corrections to a PDF in-situ (no notice issued, and no new version of the work with a new DOI) then the date_stamp should reflect when the PDF was regenerated with the corrections. The system will then use the date_stamp in order to tell whether the reader needs to be alerted to updates or not. The date_stamp argument should be recorded in the form YYYY-MM-DD (learn more about ISO 8601).

Page owner: Laura J. Wilkinson   |   Last updated 2020-April-08