[OJS 3.1.2] DOI Deposit cvc-pattern-valid error

Dear all,

I am trying to register DOI with Crossref, but the validator raises a cvc-pattern-valid error regarding the syntax of the links (which looks like “//ojs.subdomain.ourdomain.de/index.php/journal”).

<?xml version="1.0" encoding="UTF-8"?>
<doi_batch_diagnostic status="completed" sp="ds3.crossref.org">
   <submission_id>1451738343</submission_id>
   <batch_id>_1565868225</batch_id>
   <record_diagnostic status="Failure">
      <doi />
      <msg>Error: cvc-pattern-valid: Value '//ojs.subdomain.ourdomain.de/index.php/journal/issue/view/3' is not facet-valid with respect to pattern '([hH][tT][tT][pP]|[hH][tT][tT][pP][sS]|[fF][tT][pP])://.*' for type 'resource_t'.
Error: cvc-complex-type.2.2: Element 'resource' must have no element [children], and the value must be valid.
Error: cvc-pattern-valid: Value '//ojs.subdomain.ourdomain.de/index.php/journal/article/view/20' is not facet-valid with respect to pattern '([hH][tT][tT][pP]|[hH][tT][tT][pP][sS]|[fF][tT][pP])://.*' for type 'resource_t'.
Error: cvc-complex-type.2.2: Element 'resource' must have no element [children], and the value must be valid.
Error: cvc-pattern-valid: Value '//ojs.subdomain.ourdomain.de/index.php/journal/article/download/20/18' is not facet-valid with respect to pattern '([hH][tT][tT][pP]|[hH][tT][tT][pP][sS]|[fF][tT][pP])://.*' for type 'resource_t'.
Error: cvc-complex-type.2.2: Element 'resource' must have no element [children], and the value must be valid.
Error: cvc-pattern-valid: Value '//ojs.subdomain.ourdomain.de/index.php/journal/article/download/20/18' is not facet-valid with respect to pattern '([hH][tT][tT][pP]|[hH][tT][tT][pP][sS]|[fF][tT][pP])://.*' for type 'resource_t'.
Error: cvc-complex-type.2.2: Element 'resource' must have no element [children], and the value must be valid.
</msg>
   </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>

I would be very grateful for any help.

Best regards,
Franzi

Note: We needed to implement OJS 3 behind reverse proxy - how to achieve? - #10 by ctgraham for our SSL/HTTPS setup. Now we seem to run into the issue of relative links, see last comment here OJS 3 behind reverse proxy - how to achieve? - #17 by D_Schroeder_Micheel

Have you set the base_url in config.inc.php without a protocol? That is the only way I can immediately think of to generate this error.

I would suggest adding the https:// protocol to the base_url in config.inc.php, and signing a certificate for the machine behind the reverse proxy, even if it is only self-signed.

We took it out because we are running OJS inside a docker container. If we simply add https:// to the base_url it doesnt change anything. If we change the config to force_ssl, we get a “to many redirects” error and some things, like the CSS, are not working properly anymore. Outside the container, we run haproxy in http mode.

Are you using one of the existing Docker images? If so, which one?