-
Notifications
You must be signed in to change notification settings - Fork 494
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Iqss/9150 handle fundreg reqs for ext cvv #9402
Iqss/9150 handle fundreg reqs for ext cvv #9402
Conversation
This allows creating an expandedValue field for a child cvoc field instead of just a primitive one.
Made method recursive. The new =* syntax allows navigating to all children in an array, which is required for handling the crossref funder registry output to extract labels in other languages
…dreg_reqs_for_ext_cvv
grooming:
|
…dreg_reqs_for_ext_cvv
Prio review:
@kcondon @jggautier collaborate on the details of how/where the UI testing gets done. |
Closes #9498 |
@qqmyers @jggautier Is there a simple, brief description of what this does from a user's perspective or do I need to do a deep dive into those "closes" issues? This seems like a tip of the iceberg kind of pr. |
@kcondon - I added some details on testing in the description. Basically this PR does nothing on its own, but it allows you to run the new Fundreg and ROR external vocab config/javascripts that are in a branch/PR in the gdcc external vocab repo. Nominally the setup for that is the same as for the older ORCID/Skosmos ones except that the example configs for fundreg/ror apply them to fields in the citation block rather than a new example block. |
Issues found so far:
I have more testing to do but this is what I've found. What I'm planning to finish, in addition to how to test items, is a. data input, b. data display, c. search, d. export Paraphrased from Julian's testing: J1. I ran into the display bug mentioned earlier. [Julian] I'd like to make sure that it's clear that points J2-4, and maybe J5, are questions I have that might be answered with the research I've been planning. And I was thinking of point 6 as being a matter of scope and timing. |
|
J2) Unlike ORCID, Fundreg doesn't provide much to help with prioritizing (that I've found anyway). I have added support to search not only by name but by the acronym and tags that they provide. These help the query 'NIH' bring the National Institutes of Health (which doesn't contain NIH) into the search results. I also raise the priority of anything you've chosen recently (last ~100 choices), so NIH should be first once you've used it once. There's code that prioritizes by prior use, then acronym, then tags (various parts of NIH add that tag even though they are one institute within NIH. The relative priorities there could be changed, or perhaps weights could be added. A more useful thing that only Crossref/a service could do would be to prioritize results based on popularity (either hits or the number of existing resources that cite that funder, etc.). J3 - see 7 J4 - this is in the URL? If so, yes, the advanced search and facets use the id when searching rather than the name (or international variants) for the back end, but all the places in the UI should be showing the name (again, from 6 these may show briefly as the id until the lookup can complete (against the server the first time or more quickly from browser memory after that). J5 -the popup shows the alternate names and acronyms that Crossref provides for the given id. Thus while the facet shows National Institutes of Health, which is the official name, you may have searched for NIH to add it and the popup will show that value. Whether there's a popup and what it shows (other names or just acronym) is controlled by the javascript in the external vocab repo and changes could be made there. There may be some limitations if we want to just exclude some values, i.e. I'm not sure that alternate names are distinguished from i18n values when Fundreg returns them. J6 - see 9. I'd definitely suggest changes to other formats should be separate issues. |
Thanks @qqmyers for being so thorough (as always!). The rationale for the popup is interesting. I haven't seen anything like it before. Is this being used in other repositories right now? I took a quick look at the facets on QDR's "Root" collection but didn't see anything (although I wouldn't think those facets are being populated by terms from an external vocab). |
The external vocab mechanism tells the script whether an item needs to be displayed, or an input/selection UI is needed. What the script does for each of those is up to the script, but, on the display side, there isn't currently any distinction for display in different parts of the UI, i.e. in the metadata pane, a facet, as a search hit, etc. A couple of the example scripts do use a popup - I think ORCID is the other one - it will show the email of the person (if their email is public at ORCID). For internal text/CVV fields, there is no equivalent mechanism to customize the display (just the basic formatting in the metadata block). If changes are desired, if the change applies to all places a term is displayed, the script can be updated. If a general mechanism is needed to make facet display different from display elsewhere, it would be an extension of the mechanism itself and would involve changes to Dataverse and scripts and the config mechanism, schema, etc. |
Stefano has decided that we should release this due to grant commitments and address/fix fundreq service performance with them and NIH after release. Have finished testing, will consolidate the above open issues and new questions/concerns here.
Existing, from above: |
|
Latest testing shows all major issues resolved. It was decided to merge and perform any ux later after spa. |
What this PR does / why we need it: This PR makes changes/extensions to the external vocabulary support mechanism to address requirements from the Crossref Funder registry use case. These include:
Which issue(s) this PR closes:
Special notes for your reviewer:
Suggestions on how to test this:
Use the new fundreg and/or ror example external vocab configs and related Javascripts at https://github.com/gdcc/dataverse-external-vocab-support/tree/fundregror and verify that you can add CrossRef fundreg entries in the citation block Funder (Grant Agency) metadata field or an ROR as the author affiliation. For regression testing, one could run the older cvoc example metadatablock and the orcid/skosmos scripts there and verify they still work (skosmos requires that "skosmos.dev.finto.fi" be replaced by "demo.skosmos.org" everywhere in the config).
Fundreg/ROR should work as with other external vocabs in that they should show correctly in the metadata display, search results, advanced search. Fundreg should also provide an expandedValue entry in the json metadata export that includes the name of the funding org (along with the URI as the "value").
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Is there a release notes update needed for this change?:
Additional documentation: