You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The 'id' field requirement within the names schema in InvenioRDM is either an intentional change or a bug.
When manually adding names through instance setup or command line, these entries lack an 'id' field leading to validation error that was not the case before V12dev25.
The Question:
Should we update the requirement for an id field in the names schema so we update names ex: here and update the documentation here by adding their id fields
Or It's an oversight in handling vocabulary that needs correction.
Steps to Reproduce
1- on a fresh v12 latest using app_data/vocabularies/names.yaml
- affiliations:
- name: University of Zurich
- name: Humboldt University of Berlin
- name: Kaiser Wilhelm Institute for Physicsfamily_name: Einstein # <-- This will not be importedgiven_name: Albertidentifiers:
- identifier: gnd:118529579scheme: gnd
- affiliations:
- name: University of Cambridge
- name: California Institute of Technology
- name: University of Oxfordfamily_name: Hawkinggiven_name: Stephenid: 0000-0002-9079-593X # <-- this will be importedidentifiers:
- identifier: https://orcid.org/0000-0002-9079-593Xscheme: orcid
2- Import names using the command: invenio vocabularies import --vocabulary names --filepath app_data/vocabularies-future.yaml
3- Observe the behavior: names with an 'id' field (e.g., Stephen Hawking) are imported, while those without an 'id' (e.g., Albert Einstein) are not with validation error.
Expected behavior
Names should be imported consistently, regardless of the presence of an 'id' field in the YAML file.
Screenshots (if applicable)
This is before and after adding idfield to each names vocabularies:
I suspect this was an intended change, since previously it was difficult to figure out how to update name entries if multiple identifiers were present.
The update functionality still doesn't work from invenio vocabularies update, but I think that's a separate bug.
@tmorrell Could you share the issue link for the invenio vocabularies update, or if it doesn't exist, could you create one for this matter on how to reproduce?
Package version (if known): V12dev > 25
Describe the bug
The 'id' field requirement within the names schema in InvenioRDM is either an intentional change or a bug.
When manually adding names through instance setup or command line, these entries lack an 'id' field leading to validation error that was not the case before V12dev25.
The Question:
Should we update the requirement for an
id
field in the names schema so we update names ex: here and update the documentation here by adding their id fieldsOr It's an oversight in handling vocabulary that needs correction.
Steps to Reproduce
1- on a fresh v12 latest using
app_data/vocabularies/names.yaml
2- Import names using the command:
invenio vocabularies import --vocabulary names --filepath app_data/vocabularies-future.yaml
3- Observe the behavior: names with an 'id' field (e.g., Stephen Hawking) are imported, while those without an 'id' (e.g., Albert Einstein) are not with validation error.
Expected behavior
Names should be imported consistently, regardless of the presence of an 'id' field in the YAML file.
Screenshots (if applicable)
This is before and after adding
id
field to each names vocabularies:Additional context
This problem seems to have arisen in versions after V12dev25. specifically, after this big refactor:
inveniosoftware/invenio-vocabularies@ba8d3c6
I did not test other ways of importing names like ORCiD public dataset or other ways...
The text was updated successfully, but these errors were encountered: