Skip to content
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

Planning overhaul of author alternate names #8341

Closed
1 of 3 tasks
sbwhitt opened this issue Sep 27, 2023 · 6 comments
Closed
1 of 3 tasks

Planning overhaul of author alternate names #8341

sbwhitt opened this issue Sep 27, 2023 · 6 comments
Labels
Lead: @cdrini Issues overseen by Drini (Staff: Team Lead & Solr, Library Explorer, i18n) [managed] Needs: Response Issues which require feedback from lead Priority: 3 Issues that we can consider at our leisure. [managed] Type: Feature Request Issue describes a feature or enhancement we'd like to implement. [managed]

Comments

@sbwhitt
Copy link
Collaborator

sbwhitt commented Sep 27, 2023

Mega-issue to overhaul the alternate names editor for author records. Eventually seeks to close:

In addition to any new issues created during planning.

Describe the problem that you'd like solved

The current interface to manage an author record's alternate names needs to be updated. It's very hard to parse at the moment and prone to errors. Providing a more organized and intuitive editing interface will make it easier for editors to purge bad values and make sure that different languages are being represented.

The current alternate names input:
image
Values are unnecessarily grouped in one textbox and separated by semicolons.

Proposal & Constraints

  1. Alternate names need to be separated into a list of different input fields, similar to the current autocomplete inputs (author section on work edit page for example).
    image
  2. An additional option to promote an alternate name to the author record's main title should be added alongside each value.
  3. If available, the language of the alternate name should also be inputted alongside each value in order to track translations.
  4. When viewing an author's page, the title should be translated into the user's current language if an alternate name of a matching language is available.

Proposed final solution markup:
image

Additional context

A new issue will need to be created to track step 3 if moving forward with that approach. Any community feedback is much appreciated as well as any more ideas about how to improve.

Stakeholders

@mekarpeles

@sbwhitt sbwhitt added Needs: Lead Needs: Triage This issue needs triage. The team needs to decide who should own it, what to do, by when. [managed] Type: Feature Request Issue describes a feature or enhancement we'd like to implement. [managed] labels Sep 27, 2023
@RayBB
Copy link
Collaborator

RayBB commented Sep 28, 2023

I don't have much of an opinion on design. However, soon (#710) we'll have access to the author's names in many languages as long as they have wikidata entries.
You can see a sample of how the data looks here https://www.wikidata.org/w/rest.php/wikibase/v0/entities/items/Q42

Edit: Also you might consider writing this component in Vue if it isn't already.

@sbwhitt
Copy link
Collaborator Author

sbwhitt commented Sep 28, 2023

I don't have much of an opinion on design. However, soon (#710) we'll have access to the author's names in many languages as long as they have wikidata entries. You can see a sample of how the data looks here https://www.wikidata.org/w/rest.php/wikibase/v0/entities/items/Q42

Edit: Also you might consider writing this component in Vue if it isn't already.

@RayBB
Sounds good. Thank you for the input. Tracking the language can probably be dropped for now then. If you want to update #7556 with that same info that would be helpful! As far as writing a new component in Vue; I would be fine doing that (and it honestly might be better to just write something from scratch), but I wasn't sure if we were continuing to create new Vue components. I can plan get that started for #8183.

@davidscotson
Copy link
Collaborator

One option for part 1 (adding a nicer interface for the current monoligual setup) would be to use a standard "tag" component like:

http://www.vue-tags-input.com/#/examples/validation

or

https://bootstrap-vue.org/docs/components/form-tags

(just randomly googled those, not specifically endorsing them) This format takes care of the ability to display multiple (possibly lots) of entries without becoming a long vertical list. You can easily add and remove entries, and they generally have basic validation built-in like, detecting duplicates with the option to customise it further. And are generally familiar to users, which is generally good for usability.

I believe there is already a tag-like interface somewhere in OpenLibrary, so possibly that could be re-used here.

@sbwhitt
Copy link
Collaborator Author

sbwhitt commented Sep 29, 2023

One option for part 1 (adding a nicer interface for the current monoligual setup) would be to use a standard "tag" component like:

http://www.vue-tags-input.com/#/examples/validation

or

https://bootstrap-vue.org/docs/components/form-tags

(just randomly googled those, not specifically endorsing them) This format takes care of the ability to display multiple (possibly lots) of entries without becoming a long vertical list. You can easily add and remove entries, and they generally have basic validation built-in like, detecting duplicates with the option to customise it further. And are generally familiar to users, which is generally good for usability.

I believe there is already a tag-like interface somewhere in OpenLibrary, so possibly that could be re-used here.

@davidscotson
Very cool, the tag system might be a good way to go. I'll definitely try that out as a I build out a new component. Thanks for the suggestion!

@davidscotson
Copy link
Collaborator

Whatever UI approach is used, it might be worth considering that the various Subject entry fields on Works follow the same pattern currently, i.e. multiple entries done as a delimited string on the front end, but stored seperately in the backend, but with comma seperators (and some auto-complete). A semi-consistent approach for these free-form text entries might be good.

@mekarpeles mekarpeles added Priority: 3 Issues that we can consider at our leisure. [managed] Lead: @cdrini Issues overseen by Drini (Staff: Team Lead & Solr, Library Explorer, i18n) [managed] Needs: Response Issues which require feedback from lead and removed Needs: Triage This issue needs triage. The team needs to decide who should own it, what to do, by when. [managed] Needs: Lead labels Oct 2, 2023
@cdrini
Copy link
Collaborator

cdrini commented Oct 3, 2023

Speaking with @sbwhitt on call ; decided that it might be best to change the UI to use newlines instead of semicolons. That simplifies the project a ton and resolves the concern in #8183 .
Closing this issue since the project is now smaller in scope, and is covered by #8183 .

@cdrini cdrini closed this as completed Oct 3, 2023
@cdrini cdrini closed this as not planned Won't fix, can't repro, duplicate, stale Oct 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Lead: @cdrini Issues overseen by Drini (Staff: Team Lead & Solr, Library Explorer, i18n) [managed] Needs: Response Issues which require feedback from lead Priority: 3 Issues that we can consider at our leisure. [managed] Type: Feature Request Issue describes a feature or enhancement we'd like to implement. [managed]
Projects
None yet
Development

No branches or pull requests

5 participants