eprintsug / EPrintsArchivematica

Digital Preservation through EPrints-Archivematica Integration - An EPrints export plugin to Archivematica
6 stars 1 forks source link

metdata.json file - two issues resolved #33

Closed photomedia closed 3 years ago

photomedia commented 3 years ago

Two issues with metadata.json file were resolved. I am adding an issue for tracking/documentation purposes:

1) Issue The first key-value pair in the metadata.json file has to refer to what it is describing, as per Archivematica documentation. In the absence of that, AM doesn't throw an error, but also doesn't index the metadata.json file correctly. After this change, all the metadata was indexed properly for searching inside of AM storage, so really important - being able to find AIPs after.

Resolved with commit: https://github.com/eprintsug/EPrintsArchivematica/commit/0eafb4193cfca223a89f8b524c651abc52ba73dc

2) Issue When the metadata.json file is not surrounded by square brackets, we get this error when processing the AIP:

'unicode' object has no attribute 'keys'Traceback (most recent call last): File "/opt/archivematica/archivematica/src/MCPClient/lib/job.py", line 111, in JobContext yield File "/opt/archivematica/archivematica/src/MCPClient/lib/clientScripts/json_metadata_to_csv.py", line 153, in call job.set_status(main(job, sip_uuid, json_metadata)) File "/opt/archivematica/archivematica/src/MCPClient/lib/clientScripts/json_metadata_to_csv.py", line 135, in main headers = fetch_keys(parsed) File "/opt/archivematica/archivematica/src/MCPClient/lib/clientScripts/json_metadata_to_csv.py", line 25, in fetch_keys o_keys = list(o.keys()) AttributeError: 'unicode' object has no attribute 'keys'

Resolved with commit: https://github.com/eprintsug/EPrintsArchivematica/commit/bc3402fdfeb1fb808444b028e91489ded317ef0b