Include Crossmark data in DOI deposit

Hello there!
I’m trying to include Crossmark data in the XML file that is submitted to deposit the DOI. I tried adding the following to the XML file that OJS generates:

		<crossmark>
			<crossmark_version>1</crossmark_version>
			<crossmark_policy>10.47235/erratas</crossmark_policy>
			<crossmark_domains>
				<crossmark_domain>
					<domain>revistademorfologiaurbana.org</domain>
				</crossmark_domain>
			</crossmark_domains>
			<crossmark_domain_exclusive>true</crossmark_domain_exclusive>
			<custom_metadata>
					<assertion name="peer_reviewed" label="Peer Reviewed">Yes</assertion>
					<assertion name="published" label="Published">2021-12-27</assertion>
					<assertion name="license" label="License" explanation="https://creativecommons.org/licenses/by/4.0">Creative Commons Attribution</assertion>
			</custom_metadata>
		</crossmark>	

But I get the error:

Error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ai:program'. One of '{"http://www.crossref.org/relations.xsd":program, "http://www.crossref.org/schema/4.3.6":archive_locations, "http://www.crossref.org/schema/4.3.6":doi_data}' is expected.

In the Crossref forum, @IFarley was super helpful and explained that my XML probably has syntax from conflicting versions. He generated a new XML file, but it was using schema 4.4.2. Since OJS generates a XML file with version 4.3.6, I was wondering how I could edit it properly in order to speed things up and not have to create new XML from scratch for each DOI I deposit.

The complete XML file (edited by me) can be checked here.

I also tried including the metadata separately as per @kksabu’s guidelines here, to no avail. This time I did not receive any error message, but when I click the crossmark button it says the article has no Crossmark data.

Application Version - e.g., OJS 3.3.0.7

1 Like

Hello, I understand this problem persists with current Crossmark XML export.
I have successfully resolved it for my journal by replacing with below code in XML lines:

		<crossmark>
			<crossmark_version>1</crossmark_version>
			<crossmark_policy>10.....................</crossmark_policy>
			<crossmark_domains>
				<crossmark_domain>
					<domain>..................</domain>
					</crossmark_domain>
				</crossmark_domains>
			<crossmark_domain_exclusive>true</crossmark_domain_exclusive>
			<custom_metadata>
				<assertion name="orcid" label="ORCID" group_name="identifiers" group_label="Identifiers" order="0" href=""> </assertion>
				<assertion name="received" label="Received" group_name="publication_history" group_label="Publication History" order="0">2021-09-03</assertion>
				<assertion name="accepted" label="Accepted" group_name="publication_history" group_label="Publication History" order="1">2021-12-10</assertion>
				<assertion name="published" label="Published" group_name="publication_history" group_label="Publication History" order="2">2021-12-25</assertion>
				<assertion name="copyright" label="Copyright" group_name="copyright_info" group_label="Copyright Information" order="3">....................</assertion>
				<ai:program xmlns:ai="http://www.crossref.org/AccessIndicators.xsd" name="AccessIndicators">
					<ai:license_ref>https://creativecommons.org/licenses/by-nc/4.0</ai:license_ref>
				</ai:program>
			</custom_metadata>
		</crossmark>

This code should be replaced between:

        <pages>
          <first_page>570</first_page>
          <last_page>574</last_page>
        </pages>

and

<doi_data>
</doi_data>

tags

1 Like

You need to delete the previous line for ai:program tag as it is already included in the crossmark code.

1 Like