idutils icon indicating copy to clipboard operation
idutils copied to clipboard

add email and sha1 identifiers

Open dfdan opened this issue 1 year ago • 7 comments

:heart: Thank you for your contribution!

Description

This adds support for email and sha1 identifiers.

I was interested to learn that WADM (and possibly other W3C standards) allow the sha1 of an email address as a personal identifier for a creator to allow identification without revealing email addresses.

https://www.w3.org/TR/annotation-model/#agents

Checklist

Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:

Third-party code

If you've added third-party code (copy/pasted or new dependencies), please reach out to an architect.

Reminder

By using GitHub, you have already agreed to the GitHub’s Terms of Service including that:

  1. You license your contribution under the same terms as the current repository’s license.
  2. You agree that you have the right to license your contribution under the current repository’s license.

dfdan avatar Dec 15 '23 14:12 dfdan

I note that a new version of black (>24) has caused tests to fail on an existing line. Happy to fix the line length - or should we pin black?

dfdan avatar Dec 15 '23 14:12 dfdan

i think this PR changed the behavior with long lines in dict's.

we had the problem of different rules in newer black versions already and as i know already used the new style.

utnapischtim avatar Dec 17 '23 10:12 utnapischtim

This is an issue that's going to affect all packages... I'll wait and see what happens elsewhere :) I assume this change would produce backward-compatible dicts so it might be easiest just to fix...

dfdan avatar Dec 18 '23 09:12 dfdan

i also think that the easiest would be to just fix it and adopt the new style.

utnapischtim avatar Dec 18 '23 09:12 utnapischtim

Done, does this otherwise seem sensible?

dfdan avatar Dec 18 '23 10:12 dfdan

yes it does, although i am not sure where you will use it.

utnapischtim avatar Dec 18 '23 11:12 utnapischtim

The (in my view overlooked) use case is any Invenio instance where you want to associate one or more email addresses with a creatibutor (in addition / as an alternative to ORCID, GND etc). We have instances doing this, and others have asked the question on Discord.

The email_sha1 is specifically for planned work on WADM based annotation.

The DataCite schema accepts any scheme + URI as a nameIdentifier, so these additions are compatible with DataCite.

dfdan avatar Dec 18 '23 12:12 dfdan