Translation Policy

From LibrePlanet
Revision as of 22:05, 27 January 2011 by Alexus (talk | contribs) (Translation_Policy (rev. 1.0))
Jump to: navigation, search

Introduction

This documents defines the translation policy for the LibrePlanet wiki.

Terminology used in this document:

original [page]
master page
- refer to the original page (in the language used by the author) from which the translations are made;
translation [page]
- refers to a page that contains a translation of an original page.

Naming of translation pages

A translation page should be named in the following format:

<MasterPage>.<LangCode>

where:

<MasterPage>
is the name of the master page;
<LangCode>
is the 2-digits lowercase code (ISO 639-1) of the language used by the translation.

So, the rule is: the translation page keeps the same (untranslated) name of the original page, plus a dot character followed by the 2-digits lowercase code (ISO 639-1) of the language used by the translation.

This will result in better searches results, less confusion and more consistency of the wiki.

Example: The Italian translation of the Main_Page of this wiki should be named as Main_Page.it.

Language bar

When some translation of a master page exist in the wiki, then either the master page or each of its translation pages should display (at their top) a language bar linking to all the available translations.

To do this, the master page and all its translation pages should call (at their top) the Template:Languages.

This template should be called in the following format:

{{Languages|master page=<MasterPage>|language=<LangCode>}}

where:

<MasterPage>
is the name of the master page;
<LangCode>
is the 2-digits lowercase code (ISO 639-1) of the language used for the content of the page from which the template itself is being called (no matter if it is the master page or one of its translations).

Example: The Main_Page of this wiki has been written in English, so it should include at top:

{{Languages|master page=Main_Page|language=en}}

its Italian translation page should include at top:

{{Languages|master page=Main_Page|language=it}}

Please, note that in both cases the template is called referring to the same master page, but for the page in English is used the code 'en' while for the page in Italian is used the code 'it.'

'Language code' property

When using the Template:Languages, it also sets the Semantic MediaWiki property 'Language code' for the calling page to the <LangCode> parameter value. This property value could then be used in semantic queries and searches.

In other words, following the example above, when including in a page:

{{Languages|master page=Main_Page|language=it}}

it not only will display the language bar, but also will assign for that page the 'it' value to the semantic property 'Language code'. This means that page will be matched when searching/querying the Semantic MediaWiki for those pages having the 'Language code' property set to 'it'.

Aligning existing translation pages to this policy

If a master page has one or more translation, then they should be checked in order to be aligned to this policy.

To do this:

  1. the names of all the translation pages should be aligned to the format described above:
    • create a new page for the translation giving it the right name;
    • cut 'n paste ALL the content from the "old" translation page (that with the "wrong" name) to the "new" page just created (that with the "right" name);
    • redirect the "old" page to the "new" one;
  2. either the master page and all its translation pages should be checked in order to adding a call to the Template:Languages, using the format) described above, if it is missing (or wrong).