inveniosoftware / datacite

Python API wrapper for the DataCite API.
https://datacite.readthedocs.io
Other
27 stars 33 forks source link

DataCite 4.3 #51

Closed tmorrell closed 3 years ago

tmorrell commented 5 years ago

Add support for DataCite version 4.3

tmorrell commented 4 years ago

Changes pending DataCite decisions how to handle 4.3 schema

BaptisteCecconi commented 4 years ago

Hi, I'm trying to use the datacite-4.3 version for my project, and I have a few issues using the fork:

I've read the datacite Metadata Schema (https://doi.org/10.14454/7xq3-zf69), and I can't decide which of those implementations is correct.

I can propose a fix to the datacite-4.3 branch, so that it would be compliant with the datacite 4.3 XML schema. Let me know.

tmorrell commented 4 years ago

The confusion was that DataCite listed 0-n possible affiliationIdentifiers in the pdf documentation for the 4.3 schema, but it was implemented as 0-1 in the xsd and json examples. DataCite just decided to go with 0-1 https://github.com/datacite/schema/pull/78. I had removing the affiliationIdentifier object on my to-do list, but if you'd like to do it go ahead!

BaptisteCecconi commented 4 years ago

I have proposed a pull request from my fork. The tests have not been modified (but they were not passing even before my commits).

(one thing I didn't set, since I don't know what's the policy: how to advertise my contribution in the contributors?)

tmorrell commented 4 years ago

I've made changes to get the tests to pass @BaptisteCecconi. DataCite is using affiliation and name as the labels (instead of affiliations and affiliation) in their current JSON API, so that's what I've included here.

I don't know how Invenio is doing contributors; hopefully that will get handled before the merge

The PR needs to be rebased once the 4.2 one is merged.