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

Accept full URLs any place an identifier can be entered #866

Open
2 of 11 tasks
tfmorris opened this issue Mar 15, 2018 · 8 comments
Open
2 of 11 tasks

Accept full URLs any place an identifier can be entered #866

tfmorris opened this issue Mar 15, 2018 · 8 comments
Assignees
Labels
Affects: UI Issues with the web site's user interface. [managed] Lead: @cdrini Issues overseen by Drini (Staff: Team Lead & Solr, Library Explorer, i18n) [managed] Module: Wikidata Needs: Help Issues, typically substantial ones, that need a dedicated developer to take them on. [managed] Priority: 3 Issues that we can consider at our leisure. [managed] Theme: Identifiers Issues related to ISBN's or other identifiers in metadata. [managed] Type: Epic A feature or refactor that is big enough to require subissues. [managed] Type: Feature Request Issue describes a feature or enhancement we'd like to implement. [managed]

Comments

@tfmorris
Copy link
Contributor

tfmorris commented Mar 15, 2018

Any place that the user is asked to enter an identifier for which OpenLibrary has a URL template, they should be allowed to paste the full URL and have the identifier extracted from it.

UI Changes:

  • Authors
    • Good first candidate because it's already written in Vue
  • Editions
    • Identifiers
    • "What work is this an edition of?" field should accept URL. Edit: It already does! :)
  • Works

Next Steps:

  • Setup Author Identifiers component to accept url match patterns (client side only)
  • Create a mapping between our identifiers and Wikidata Identifiers (spreadsheet first, then code)
  • Setup Wikidata integration to access Properties (currently only pulls QIDs)
  • Plan/implement for how we'll load the url match patterns into Identifiers.
    • I would propose we have an endpoint that aggregates them that the edit pages can call on load. But not cached too aggressively so we if people update patterns in Wikidata they get the changes fairly fast.
  • Start using url match patterns in Authors, Editions, Works etc.

We should use the URL Match Pattern from Wikidata instead of maintaining it ourselves. See https://www.wikidata.org/wiki/Property:P214 for an example.
If we do that this is blocked by: #8236

@LeadSongDog
Copy link

From a UX perspective is makes sense, they copypaste an URL from wherever they find the edition. From antispam and data validation perspectives, it might be best to have a separate way of testing that the target page refers to this edition before any overwrite of existing data.

@xayhewalo

This comment was marked as off-topic.

@xayhewalo xayhewalo added Affects: UI Issues with the web site's user interface. [managed] Needs: Triage This issue needs triage. The team needs to decide who should own it, what to do, by when. [managed] State: Backlogged Type: Feature Request Issue describes a feature or enhancement we'd like to implement. [managed] labels Oct 27, 2019
@tfmorris

This comment was marked as resolved.

@cdrini cdrini self-assigned this Nov 11, 2019
@xayhewalo xayhewalo added Priority: 3 Issues that we can consider at our leisure. [managed] Theme: Identifiers Issues related to ISBN's or other identifiers in metadata. [managed] labels Nov 26, 2019
@mekarpeles

This comment was marked as resolved.

@mekarpeles mekarpeles added Needs: Breakdown This big issue needs a checklist or subissues to describe a breakdown of work. [managed] Type: Epic A feature or refactor that is big enough to require subissues. [managed] and removed Needs: Triage This issue needs triage. The team needs to decide who should own it, what to do, by when. [managed] labels Dec 12, 2019
@LeadSongDog

This comment was marked as resolved.

@mekarpeles mekarpeles added the Lead: @cdrini Issues overseen by Drini (Staff: Team Lead & Solr, Library Explorer, i18n) [managed] label Dec 18, 2019
@mekarpeles mekarpeles removed the Type: Epic A feature or refactor that is big enough to require subissues. [managed] label Sep 7, 2023
@RayBB RayBB added State: Blocked Work has stopped, waiting for something (Info, Dependent fix, etc. See comments). [managed] Needs: Help Issues, typically substantial ones, that need a dedicated developer to take them on. [managed] Module: Wikidata Type: Epic A feature or refactor that is big enough to require subissues. [managed] and removed Needs: Breakdown This big issue needs a checklist or subissues to describe a breakdown of work. [managed] State: Blocked Work has stopped, waiting for something (Info, Dependent fix, etc. See comments). [managed] labels Oct 7, 2023
@RayBB
Copy link
Collaborator

RayBB commented Oct 7, 2023

@tfmorris @cdrini @mekarpeles
I've updated this this issue is now updated with a plan that someone could take on.

@tfmorris
Copy link
Contributor Author

tfmorris commented Oct 9, 2023

@RayBB Thanks, but all the Wikidata stuff adds, in my opinion, unnecessary complexity and undesirable external coupling. The system already has URL templates for the purposes of converting identifiers into clickable links. It should be possible to leverage those for building extraction regexs.

@Freso
Copy link
Contributor

Freso commented Mar 12, 2024

If it can be any help, MusicBrainz has an extensive blob of JavaScript code that is used to auto‐assign types (and so some cleanup) for URLs (MusicBrainz generally stores URLs rather than IDs):
https://github.com/metabrainz/musicbrainz-server/blob/master/root/static/scripts/edit/URLCleanup.js

I know BookBrainz (which does store IDs and not URLs themselves) also has some autodetection, but I am not familiar enough with BookBrainz’s code to know where to find this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Affects: UI Issues with the web site's user interface. [managed] Lead: @cdrini Issues overseen by Drini (Staff: Team Lead & Solr, Library Explorer, i18n) [managed] Module: Wikidata Needs: Help Issues, typically substantial ones, that need a dedicated developer to take them on. [managed] Priority: 3 Issues that we can consider at our leisure. [managed] Theme: Identifiers Issues related to ISBN's or other identifiers in metadata. [managed] Type: Epic A feature or refactor that is big enough to require subissues. [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

7 participants