Final international solution

From Meta, a Wikimedia project coordination wiki

I was reading through the archives of the Wikipedia-L and saw an excellent suggestion to interlinking that was probably forgotten. I'm going to update it a bit to make what I think is more feasible.

Basically for every wikipedia article there is a place (seperate from the article) for links to other wikipedias. I had this idea today when I saw the articles for en:Basic English and eo:Baza Angla and they were both good and had different information. After adding some content from the en version to the eo version, I realized it would be nice to easily be able to switch versions of wikipedia without typing the entire address over again.

There would be a (neutral language) page that would pop up with the list of languages (displayed in their native language, i.e. espanol, deutsch, etc) and the name of the article associated with them. At the top of this page there will be a Textbox with a dropdown list of languages next to it. The user will then select a language from the dropdown list and put the name of the article in that language in the textbox, then they would click a button labelled Link.

At this point the system would see if a language circle (or linked list for you techies) already exists for that article. If not, then it simply adds it to the new circle. If there is a circle for that already and there are no conflicts (such as es:Estados Unidos being linked to en:Cat) then it merges the two circles. If there is a conflict then the system will ask if you want to take es:Estados Unidos out of the translation of en:Cat. Then the user can choose to cancel or remove es:Estados Unidos from en:Cat.

Pseudocode for this part:

// Check to see if this article has translations
if ( language circle exists )
{
  if ( there is a conflict )
  {
    Ask if user wishes to remove other circle;
    if ( user wishes to remove )
    {
      Clear article name from other language circle;
    }
    else
    {
      Do nothing (Cancel);
    }
  }
  else
  {
    Merge language circles together;
  }
else
{
  Add new article to current language circle;
}

I know it sounds difficult (and probably is), but I think it will be the final solution for the interlinking problem. I would like it implemented so I can easily jump back and forth among languages for easy comparisons.

Also note that conflicts should be pretty rare so a simplified system could just disallow conflicts to occur (i.e. print an error and say it can't be done when they happen) or automatically clear the entry from the conflicting language circle (probably a better solution). Also a way to edit an entry in a language circle is necessary (in the case of redirects).

Chuck Smith


Don't know if this is relevent, but - could we rename this page, please? 'Final international solution' sounds too much like a bad joke. Final solution? We know wikipedians have a sense of history. Don't mean to cause any issues, though. 24.117.213.48