OAI-PMH Support
(UXPROD-993)
|
|
| Status: | Closed |
| Project: | mod-oai-pmh |
| Components: | None |
| Affects versions: | None |
| Fix versions: | 1.0.0 | Parent: | OAI-PMH Support |
| Type: | Story | Priority: | P3 |
| Reporter: | Hkaplanian | Assignee: | Hkaplanian |
| Resolution: | Done | Votes: | 0 |
| Labels: | epam-thunderjet | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original estimate: | Not Specified | ||
| Attachments: |
|
||||||||||||||||
| Issue links: |
|
||||||||||||||||
| Sprint: | oai-pmh - sprint 50 | ||||||||||||||||
| Story Points: | 5 | ||||||||||||||||
| Development Team: | Thunderjet | ||||||||||||||||
| Epic Link: | OAI-PMH Support | ||||||||||||||||
| Description |
|
Official specification: https://www.openarchives.org/OAI/openarchivesprotocol.html#ListRecords 1. Implementation This story does not include resumptionTokens. That will be handled in a separate story. Can probably reuse some of the ListIdentifiers code For now multiple calls to inventory may be required. Use a default limit of 100 records for now |
| Comments |
| Comment by Piotr Kalashuk [ 01/Nov/18 ] |
|
The default implementation uses Instance Storage API:
Regards, |
| Comment by Piotr Kalashuk [ 01/Nov/18 ] |
|
Also we've noticed that /instance-storage/instances/{instanceId}/source-record/marc-json returns ind1 and ind2 with 2 backslash symbols as a value when space is intended to be there e.g. ... "035": { "ind1": "\\", "ind2": "\\", "subfields": [{ "a": "(DE-599)GBV727867881" }] } ... According to MARC21slim.xsd schema the value is expected in following format (i.e. only one character which is a digit, letter or space) <xsd:simpleType name="indicatorDataType" id="ind.st"> <xsd:restriction base="xsd:string"> <xsd:whiteSpace value="preserve"/> <xsd:pattern value="[\da-z ]{1}"/> </xsd:restriction> </xsd:simpleType> So once marc-json is converted by marc4j to marc xml format and then the logic adds metadata record to OAIPMH response, jaxb complains that the content is invalid according to schema. Even if the jaxb validation is disabled, the response is not valid and harvesters won't be able to handle it (we've checked using MarcEdit tool) Regards, |
| Comment by Piotr Kalashuk [ 01/Nov/18 ] |
|
Sample of the harvested records via MarcEditor: Note: edge API requires apikey parameter. The only way to add it in MarcEditor is to specify this in Set Name field like all&apikey=Z2luMHVGdjNMZl10kWt1X2Rpa3U= Regards, |
| Comment by Piotr Kalashuk [ 05/Nov/18 ] |
|
The changes have been merged to master. Regards, |