XML to update the metadata of an in-situ correction


I am trying to update the metadata of an article that has been corrected. As far as I know, OJS will not generate an XML with this information. Therefore, following the examples available in Crossref Website, I tried to edit the regular XML of the article to include the information about the correction.

However, I get the following error:

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

The links mentioned in the error message lead to “not found pages” (404 error).

What I did was to include the following code before the <doi_data> tag, just like in the above mentioned examples:

		<update type="correction" date="2021-08-02">10.47235/rmu.v8i2.150</update>

I consulted the schema but could not determine what is generating the error.

Any help would be much appreciated.

1 Like

Hello @morurb ,

Thanks for your message, and welcome to the community forum. Do you happen to have the submission ID from our system that generated this error message? I’d like to review the entire submission in our admin tool to provide you with guidance on a fix.

Thanks in advance,

Hi, @ifarley:
Thanks for the response.

Sure, the submission ID is 1504504801.

After posting the message I realized that the original XML submitted didn’t have any crossmark content, and I wondered if this could be the cause of the problem, since now I am trying to make an update.


1 Like

Hi @morurb,

Thanks for the submission ID.

The error message from our system:

Error: cvc-complex-type.2.4.a: Invalid content was found starting with element ‘crossmark’. One of ‘{“http://0-www-crossref-org.pugwash.lib.warwick.ac.uk/relations.xsd”:program, “http://0-www-crossref-org.pugwash.lib.warwick.ac.uk/schema/4.3.6”:archive_locations, “http://0-www-crossref-org.pugwash.lib.warwick.ac.uk/schema/4.3.6”:doi_data}’ is expected.

means that your Crossmark metadata is not formatted properly.

We have XML examples here that you may review; there are several Crossmark examples: examples · master · crossref / Schema · GitLab

This example looks closest to what you are trying to accomplish with your submission:

It looks like the XML in your submission might have been a mix of different schema versions. I have cleaned that up for you. The XML is attached here.

Take a look and let me know if you have questions,

Crossmark_XML_fix_forum.xml (6.8 KB)

Thanks a lot!

However, now I get the following error:

<?xml version="1.0" encoding="UTF-8"?>
<doi_batch_diagnostic status="completed" sp="ds3.crossref.org">
   <record_diagnostic status="Failure" msg_id="4">
      <msg>Record not processed because submitted version: 1628256282 is less or equal to previously submitted version 20201110132802317</msg>

I tried with your original file and with a modified version that updated only the <doi_batch_id> and <timestamp> tags.

Ah. Yes. This is because the timestamp has not been increased in your follow-up submission.

The error message ‘Record not processed because submitted version: ___ is less or equal to previously submitted version (DOI match)’ indicates that the timestamp in your deposit is numerically lower than the timestamp used in a previous deposit.

Every deposit has a value, and that value needs to be incremented each time the DOI is updated. The timestamp errors do indicate that the DOI has been deposited, so if the metadata and URLs previously deposited for the DOIs are correct no further action is needed. You can find the most recent timestamp by reviewing your past deposit XML. Timestamps are also listed in the depositor reports available here: crossref.org : : depositor

My best,

Thank you, @ifarley,
I updated the timestamp by increasing the last digit by 1 and it seems to have worked.

That’s great! That’s exactly what needed to be done - increase the value of the timestamp. Well done! Happy to hear it worked for you.