Wikidata/Development/Storyboard for linking Wikipedia articles v0.1

From Meta, a Wikimedia project coordination wiki
Jump to navigation Jump to search


This draft is obsolete and only kept for reference. Please refer to Wikidata/Development/Storyboard for linking Wikipedia articles v0.2 for the current version

This note describes the major workflows for phase I on Wikidata, i.e. how to create and maintain language links. This is the document resolving Bug #36435. Acknowledgments to mw:Extension:Interlanguage/WMF Design Pass.


An article that has no links yet to other language versions (neither locally in the Wikipedia nor in Wikidata) will look like in #1. Unlike today, the "Languages" section would be always visible. The local language (in this example English) is bold. This makes the behavior more consistent to Navboxes than to current language links, i.e. the current article is bolded and not a link instead of not displayed. Underneath the language links there is a link saying "add language".

In case of no Javascript, there is a link saying "edit language links" which points to the edit view on Wikidata. All the direct editing and further information popping up do not appear without Javascript.

Upon clicking on "add language", a box appears where the language (actually site) and the title of the article to link to are selected (see #2). The site and title are using autocompletion, similar to the way they do it on Wikidata already. On clicking "Details", label, description, alias, etc. can be added inline in the box being extended.

After saving, two things can happen:

  • If the selected article already had language links associated with it in Wikidata, these links are now immediately displayed (as displayed in #3). This means that if one link is added, suddenly several more links can appear automagically.
  • If the selected article has not been associated with further links yet in Wikidata, the newly added link is displayed (see #4)

When hovering over the language links, further information and editing options are displayed (#5+#6). When hovering over the own language, only the option "Details" is clickable. The other options do not make much sense. When hovering over a language link to another language, the link can be directly removed, further details (like the label etc., see above) can be made to be displayed, and it can also be clicked to be directly edited from within Wikipedia. The latter is displayed in #7.


  1. editor is on the Wikipedia article FROM in fr: and wants to connect it to the article TO in to: which already has a number of interlanguage links in Wikidata (i.e. an item in Wikidata already exists)
    It starts with #1. The editor clicks "add language", which leads to #2. to is selected as the language, and TO as the article. Click "save". The other language links from Wikidata get displayed immediately after (#3).
  2. editor is on the Wikipedia article FROM in fr: which currently has no interlanguage links at all and wants to connect to the article TO in to: which also has no interlanguage links
    It starts with #1. The editor clicks "add language", which leads to #2. to is selected as the language, and TO is typed as the article. Click "save". The language link is displayed (#4).
  3. editor is on the Wikipedia article FROM in fr: which has no interlanguage links and also no fitting article in another language, but wants to connect it to Wikidata
    The editor hovers over the "language link" for FROM (technically not a link, just the language name written in bold). The pop up box from #5 appears. The editor clicks "Details", adds a value to anything in the details, clicks "save". The article is now connected to Wikidata. This story is not obvious, but this is also due to the case that in phase I there is no real reason to connect Wikipedia articles with Wikidata items if not for the language links.
  4. editor is on the Wikipedia article FROM in fr: which has a number of interlanguage links already, and wants to transfer them to Wikidata
    Editor clicks on "edit" for editing the page and removes all language links from the wikitext (preferably by copy pasting them into a notepad or something like this). The change is saved, and then the language links are added one after the other (again, copy pasting can help a lot, especially with the more unusual scripts). This might be something that a volunteer might write a gadget for that actually adds the functionality to do this automatically in one click. On the other hand it also might be the case that many language links will be moved to Wikidata by language link bots, and thus this might be a story that is not that important anyway.

Suggested new items[edit]

  • Client API: Forward requests to the client on to Wikidata
  • Client: Ensure the Languages section in the sidebar is always displayed and the own language is displayed in bold
  • Client: Add language link
  • Client: Edit and remove a language link
  • Client: Detailed view in the language link
  • Client: Fix Bugzilla:5231: Mouseover explanations for interlanguage links in native languages. This should be easily done with the CLDR extension which is live on the WMF cluster. There exists a nice function (see rev:90900) to get the translated language name. Would be best in user language, otherwise content language would be fine too.
  • Client: Generalize the functionality beyond inter-language links to open links within the page, including potentially links to stubs. When hovering over an open link, offer a simple way to call functions that "partially fill" a link - for instance finding an article in a sister wiki, marking it a stub and submitting it as a first edit. Or, return a page of search results from a general purpose search engine, permitting the most relevant ones to be selected by checkbox, and submitting a page of those links, anchor-texted with title, as a stub. Ideally mark such generated pages, and potentially stubs, as something "between" a full and open link, with a different color or typeface (as determined by CSS), perhaps integrating this with FlaggedRevs (standard way to indicate which links may deserve/require more attention).
  • Server: Specify a policy by which inter-language or stub pages may be automatically generated without user intervention or a priori approval. For instance, a list or proper names associated with email, Facebook or LinkedIn can be reasonably stubbed with a simple page indicating all such links, straight from an address book. Or, a specified directory in a filesystem can automatically populate namespace only as the names are referred in pages as open links. Or, a corporate name that consistently appears at the top of several search engines and matches the entry on that name, can be linked as the authoritative site on that name. Or, an open link that is a resolved URL (like [[]]), can be directly linked with a link indicating that most/all root DNS resolve to that domain.
  • Server: Specify some default policies including transclusion of pages from public wikis, or caches of public wikis, similar to the functionality, or a private intranet / public web division of function, in which public pages are mirrored in the private wiki that maintains a much more extensive version of them.