CrossMark support

Hi,

I have added the following code in ArticleCrossrefXmlFilter.inc.php after the code given below;

  // publication date
  if ($datePublished = $publication->getData('datePublished')) {
  	$journalArticleNode->appendChild($this->createPublicationDateNode($doc, $datePublished));
  }

The code entered as;

// Crossmark
$crossmarkData = $doc->createElementNS($deployment->getNamespace(), ‘crossmark_data’);
$crossmarkPolicy = $doc->createElementNS($deployment->getNamespace(), ‘crossmark_policy’, htmlspecialchars(‘10.xxxx/crossmark_policy_doi’, ENT_COMPAT, ‘UTF-8’));
$crossmarkData->appendChild($crossmarkPolicy);
$crossmarkDomains = $doc->createElementNS($deployment->getNamespace(), ‘crossmark_domains’);
$crossmarkDomain = $doc->createElementNS($deployment->getNamespace(), ‘crossmark_domain’);
$crossmarkDomainWeb = $doc->createElementNS($deployment->getNamespace(), ‘domain’, htmlspecialchars(‘journaldomain.tld’, ENT_COMPAT, ‘UTF-8’));
$crossmarkDomain->appendChild($crossmarkDomainWeb);
$crossmarkDomains->appendChild($crossmarkDomain);
$crossmarkData->appendChild($crossmarkDomains);
$crossmarkDomainExclusive = $doc->createElementNS($deployment->getNamespace(), ‘crossmark_domain_exclusive’, htmlspecialchars(‘false’, ENT_COMPAT, ‘UTF-8’));
$crossmarkData->appendChild($crossmarkDomainExclusive);
$crossmarkCustom = $doc->createElementNS($deployment->getNamespace(),‘custom_metadata’);
// license
if ($submission->getLicenseUrl()) {
$licenseNode = $doc->createElementNS($deployment->getAINamespace(), ‘ai:program’);
$licenseNode->setAttribute(‘name’, ‘AccessIndicators’);
$licenseRefNode = $doc->createElementNS($deployment->getAINamespace(), ‘ai:license_ref’, htmlspecialchars($submission->getLicenseUrl(), ENT_COMPAT, ‘UTF-8’));
$licenseRefNode->setAttribute(‘applies_to’, ‘vor’);
$licenseNode->appendChild($licenseRefNode);
$crossmarkCustom->appendChild($licenseNode);
}
$crossmarkData->appendChild($crossmarkCustom);
$journalArticleNode->appendChild($crossmarkData);

Once, I export DOI XML data and submit to Crossref, the following error is received;

<?xml version="1.0" encoding="UTF-8"?>

<doi_batch_diagnostic status=“completed” sp=“ds4.crossref.org”>
<submission_id>1568567596</submission_id>
<batch_id>_1680990264</batch_id>
<record_diagnostic status=“Failure”>

Error: cvc-complex-type.2.4.a: Invalid content was found starting with element ‘crossmark_data’. One of ‘{“http://www.crossref.org/schema/4.3.6”:publication_date, “http://www.crossref.org/schema/4.3.6”:pages, “http://www.crossref.org/schema/4.3.6”:publisher_item, “http://www.crossref.org/schema/4.3.6”:crossmark, “http://www.crossref.org/fundref.xsd”:program, “http://www.crossref.org/AccessIndicators.xsd”:program, “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.
Error: cvc-complex-type.2.4.b: The content of element ‘custom_metadata’ is not complete. One of ‘{“http://www.crossref.org/schema/4.3.6”:assertion, “http://www.crossref.org/fundref.xsd”:program, “http://www.crossref.org/AccessIndicators.xsd”:program}’ is expected.

</record_diagnostic>
<batch_data>
<record_count>1</record_count>
<success_count>0</success_count>
<warning_count>0</warning_count>
<failure_count>1</failure_count>
</batch_data>
</doi_batch_diagnostic>

Current version: 3.3.0.14