OAI validation fails with "Unrecognized namespace declaration"

Hi

I’m using OJS v3.1.2 to host my journal and am receiving the following error message when I try to validate the journal with OAI. Any help resolving this issue is much appreciated.

baseURL is https://bull.nzsee.org.nz/index.php/bnzsee/oai
Validation only
Request logged from 210.54.37.74

Checking Identify response

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=Identify GET

PASS Administrator email address is ‘reagan.c@canterbury.ac.nz’

PASS Correctly reports OAI-PMH protocol version 2.0

PASS baseURL supplied matches the Identify response

PASS Datestamp granularity is ‘seconds’

PASS Extracted earliestDatestamp 2019-04-20T22:56:34Z

FAIL Unrecognized namespace declaration ‘https://www.openarchives.org/OAI/2.0/oai-identifier’ for oai-identifier, expected http://www.openarchives.org/OAI/2.0/oai-identifier (for v2.0) or http://www.openarchives.org/OAI/1.1/oai-identifier (for v1.1). Assuming version 2.0.

PASS namespace-identifier (repositoryIdentifier element) in oai-identifier declaration is bull.nzsee.org.nz

Checking ListSets response

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListSets GET

PASS responseDate has correct format: 2019-04-21T00:14:35Z

FAIL Error in pairing OAI namespace with schema location, expected: xsi:schemaLocation=“http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd” but got https://www.openarchives.org/OAI/2.0/ https://www.openarchives.org/OAI/2.0/OAI-PMH.xsd

PASS Extracted 9 set names: { bnzsee bnzsee:EDT bnzsee:ART … }, will use setSpec &set=bnzsee in tests

Checking ListIdentifiers response

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListIdentifiers&metadataPrefix=oai_dc&set=bnzsee GET

PASS responseDate has correct format: 2019-04-21T00:14:37Z

FAIL Error in pairing OAI namespace with schema location, expected: xsi:schemaLocation=“http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd” but got https://www.openarchives.org/OAI/2.0/ https://www.openarchives.org/OAI/2.0/OAI-PMH.xsd

PASS Good ListIdentifiers response, extracted id ‘oai:bull.nzsee.org.nz:article/10’ for use in future tests.

Checking ListMetadataFormats response

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListMetadataFormats&identifier=oai%3Abull.nzsee.org.nz%3Aarticle/10 GET

PASS responseDate has correct format: 2019-04-21T00:14:39Z

FAIL Error in pairing OAI namespace with schema location, expected: xsi:schemaLocation=“http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd” but got https://www.openarchives.org/OAI/2.0/ https://www.openarchives.org/OAI/2.0/OAI-PMH.xsd

PASS Good ListMetadataFormats response, includes oai_dc

PASS Data provider supports oai_dc metadataPrefix

Checking GetRecord response

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=GetRecord&identifier=oai%3Abull.nzsee.org.nz%3Aarticle/10&metadataPrefix=oai_dc GET

PASS responseDate has correct format: 2019-04-21T00:14:42Z

FAIL Error in pairing OAI namespace with schema location, expected: xsi:schemaLocation=“http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd” but got https://www.openarchives.org/OAI/2.0/ https://www.openarchives.org/OAI/2.0/OAI-PMH.xsd

PASS Datestamp in GetRecord response (2019-04-20T23:02:52Z) has the correct form for seconds granularity.

PASS Datestamp in GetRecord response (2019-04-20T23:02:52Z) matched the seconds granularity specified in the Identify response.

PASS Expected setSpec was returned in the response (implied by a descendant setSpec)

Checking ListRecords response

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&from=2019-04-20T23:02:52Z&until=2019-04-20T23:02:52Z&metadataPrefix=oai_dc GET

PASS responseDate has correct format: 2019-04-21T00:14:45Z

FAIL Error in pairing OAI namespace with schema location, expected: xsi:schemaLocation=“http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd” but got https://www.openarchives.org/OAI/2.0/ https://www.openarchives.org/OAI/2.0/OAI-PMH.xsd

PASS Response is well formed

PASS ListRecords response correctly included record with identifier oai:bull.nzsee.org.nz:article/10

Checking exception handling (errors)

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?junk GET

PASS Error response correctly includes error code ‘badVerb’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=junk GET

PASS Error response correctly includes error code ‘badVerb’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=GetRecord&metadataPrefix=oai_dc GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=GetRecord&identifier=oai:bull.nzsee.org.nz:article/10 GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=GetRecord&identifier=invalid"id&metadataPrefix=oai_dc GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListIdentifiers&until=junk GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListIdentifiers&from=junk GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListIdentifiers&resumptionToken=junk&until=2000-02-05 GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&metadataPrefix=oai_dc&from=junk GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&resumptionToken=junk GET

PASS Error response correctly includes error code ‘badResumptionToken’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&metadataPrefix=oai_dc&resumptionToken=junk&until=1990-01-10 GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&metadataPrefix=oai_dc&until=junk GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords GET

PASS Error response correctly includes error code ‘badArgument’

PASS All 13 error requests properly handled

Checking for version 2.0 specific exceptions

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&metadataPrefix=oai_dc&from=2002-02-05&until=2002-02-06T05:35:00Z GET

PASS Error response correctly includes error code ‘badArgument’

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&metadataPrefix=oai_dc&until=2018-04-20T22:56:34Z GET

PASS Error response correctly includes error code ‘noRecordsMatch’

Checking that HTTP POST requests are handled correctly

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai POST verb:Identify

PASS POST test 1 for Identify was successful

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai POST identifier:oai:bull.nzsee.org.nz:article/10 metadataPrefix:oai_dc verb:GetRecord

PASS POST test 2 for GetRecord was successful

Checking for correct use of resumptionToken (if used)

REQUEST https://bull.nzsee.org.nz/index.php/bnzsee/oai?verb=ListRecords&metadataPrefix=oai_dc GET

PASS resumptionToken not used

Summary - failure

  • Namespace declared for v2.0 oai-identifiers is bull.nzsee.org.nz
  • Uses https URIs (not specified in protocol)
  • Total tests passed: 39
  • Total warnings: 0
  • Total error count: 6
  • Validation status: FAILED

Thanks and Regards

Reagan

Hi @reagan,

See e.g.: FAILED: Testing OAI Support in Worldcat digital collection gateway

Regards,
Alec Smecher
Public Knowledge Project Team

Hi Alec

Thanks a lot for that. Made the changes to the files noted in the Github diff and the OAI validation passes just fine.

Warm Regards

Reagan