Repository navigation
Use wikidata id to represent tags #352
Description
Activity
Following up on the conversation with @Chocobozzz at the JDLL and on mastodon, here is how I think the task of deduplicating tags could be eased by the use of Wikidata items:
Each Wikidata item represents a concept: as a first approximation, 1 Wikipedia article => 1 Wikidata item.
Example:- the city of London, a.k.a. Londres in French or Londra in Italian, is uniquely identified in Wikidata as Q84
- exoplanets, a.k.a. extrasolar planets, Экзапланета in Belarusian, or كوكب خارج المجموعة الشمسية in Arab have the unique id Q44559
This means that you can search for any of those terms in any of those languages and be gently redirected to the uniquely identified concept:
- search London in English
- search Londres in French
- search Londra in Italian
- search exoplanet in English
- search extrasolar planet in English
- search Экзапланета in Belarusian
- search كوكب خارج المجموعة الشمسية in Arab
This is thank to the fact that each of those items can have one main label and a series of aliases in each languages.
This disambiguation makes it a great base for a tagging system, the hard work of deduplicating concepts being done by the Wikidata community.
It also gives structured relationships between topics: see how Quora uses it
But building PeerTube tagging system on top of Wikidata would have another major virtue: it would link the tags to the Wikidata-aware web of data! We could for instance easily link to each others between PeerTube and Inventaire:
- books about London: https://inventaire.io/entity/wd:Q84 (API)
- books about Exoplanets: https://inventaire.io/entity/wd:Q44559 (API)
- page for the book "La Horde du Contrevent" and the people sharing a copy of it: https://inventaire.io/entity/wd:Q3209796
I would love to be able to suggest a list of videos on a given topic on those different Inventaire pages: if there was a way to query PeerTube instances APIs to aggregate such a list using Wikidata items ids, that would be crazily awesome :D
As a bonus (I don't see an application in PeerTube yet, but let's see), out of this possibility to link between systems using the Wikidata ids, Wikidata also provides you with identifiers in many databases: it can tell you that Q84 equivalent in OpenStreetMap is 65606 or 119861367 at BNF, etc. which allows to crosswalk from one identifier system to another:
- how to go from the BNF id to the Inventaire page: https://tools.wmflabs.org/hub/bnf:119861367?site=inventaire
As you can see, I'm quite enthusiastic about it, so feel free to ask for any further explanation ^^
Limits
The limit of this idea is that you depend on what is in Wikidata: for instance, you couldn't tag a video with a JDLL 2018 tag (there is JDLL (Q3187082) but not JDLL 2018) or a [insert your unknown association/school/new concept] tag (see Wikidata notability criteria). A suggestion to work around it: make the tag input autosuggest Wikidata items when typing, but if none is selected, still allow to create the tag: it will just be a plain string, not linked to anything but the other plain string tags.
Further readings
Reacted by Daniel Mietchen, nicolasmaia, Filip Bengtsson, Thomas Kuntz, Michael Pfaff, Mr Beedell, Roke Julian Lockhart and FitikReacted by Chocobozzz, Thomas Citharel, Rigel Kent, Julien Deswaef, LecygneNoir, nicolasmaia, Envel Le Hir, Andy Mabbett, Thomas Kuntz, Michael Pfaff and 1 moreI second this, using Wikidata tags would greatly enrich the content metadata.
- changed the title
[-]Allow moderators or administrators to curate tags[/-][+]Use wikidata id to represent tags[/+]on Dec 13, 2018 I think this is a great idea. If no progress has been made, I might try and prototype something like it.
How I am thinking of implementing this: (critique wanted)
- User uploads video. When typing a tag, the client checks for
either aliases orsearch results on WikiData and lists them for the user to see (there can be an option to ignore the suggestions). - If a user selects a WikiData suggestion, the tag becomes something like "wikidata:Q50938515", which the client renders as the localized name of that tag (so an English client will see the tag as "PeerTube"), with a visible hyperlink to the associated Wikipedia page.
A list of WikiData aliases for that tag is then added to a new database row of 'wikidata_tags', which function like tags but are managed automatically by the server, hidden from the uploader or viewers. This way, searching does not become any more complicated for the end user and should now work with aliases and localizations.
The only side effect I can think of is that the WikiData aliases may change (I already found one that needs fixing!) which should eventually result in the wikidata_tags changing to match it. The server could be set to update wikidata tags weekly or monthly?
Reacted by Matthias Meißer- User uploads video. When typing a tag, the client checks for
The only side effect I can think of is that the WikiData aliases may change (I already found one that needs fixing!) which should eventually result in the wikidata_tags changing to match it. The server could be set to update wikidata tags weekly or monthly?
That's what I'd recommend doing. While most of the time the labels/aliases of the Wikidata items won't change much, there's always the possibility that someone adds a label for a language, or that they remove an alias that's actually not referring to the proper "concept".
Overall, I second this feature request. @maxlath explained in great length what possibilities it'd bring to make PeerTube "Wikidata-aware". And while they're talking of books, in my case I'm interested about the video games. I'd love to replicate those "cards" that YouTube puts in the description of the video games video that takes you to a YouTube Gaming "channel" of all the videos made on said game. But that would be the job of a plugin, right?
I'd love to work on that issue though. If I do, I'll link my branch to this issue so that if I give up, anyone could start back on what I'd have already created.
See also a discussion about/spec for wikidata tagging on mastodon at https://wikidata.org/wiki/Wikidata:Mastodon_tags_with_QIDs
Reacted by Thomas Citharel, Rigel Kent and Fitik
PeerTube version or commit: 1.0.0-alpha.8
What is the expected behaviour?
Tags will only be useful if videos about the same topic all use the same tag. It would be good to be able to list all tags and to be able to delete or “rename” a tag.
There is currently no way to browse tags. Changing a tag in multiple videos requires to visit the metadata page for each video, which can be pretty tedious.