MySource Matrix Developer

Main Content

MySource Matrix Localisation

This technical document contains information on how to use, and develop for, the localisation features of MySource Matrix.

In this article:

  • Command lines within this article should be run from the root of your MySource Matrix system, unless otherwise specified.
  • Command lines are written for a Linux/UNIX-style system. If you are attempting to run a Windows-based installation, you may need to adapt command lines to suit (for example, by replacing forward slashes with backslashes).
  • This article assumes your command-line interface (CLI) version of PHP is named 'php'. If your CLI build of PHP is named something else (for example, 'php-cli'), then enter that instead.

What is Localisation?

It is generally accepted that there are two distinct parts of preparing software for an international audience: Internationalisation and Localisation. The W3C defines Internationalisation - typically abbreviated to 'I18N' (18 letters between 'I' and 'N') - as "the design and development of a product, application or document content that enables easy locali[s]ation for target audiences that vary in culture, region, or language". In contrast, Localisation (or 'L10N') is defined as 'the adaptation of a product, application or document content to meet the language, cultural and other requirements of a specific target market (a "locale")'.

"Full" localisation has a wide scope: other than text, full localisation also focuses on aspects such as currency; date and time formats; weights and measures (eg. metric vs. imperial); sort order; and other specific cultural issues which may impact on, or cause offence or reaction within a community.

Extent of Localisation within MySource Matrix

Since the 3.6 branch of MySource Matrix, partial localisation has been implemented to the extent that text within MySource Matrix - in interfaces, error and internal messages - are able to be adapted to other languages, given sufficient time to develop a set of translations for each language.

So it is within this limited scope - localisable interfaces in particular - that the term 'localisation' is used throughout the rest of this document. Localisable interfaces are mandatory for the core system of MySource Matrix, as well as all commercial packages. Making other custom packages localisable is optional, but strongly recommended.

Some aspects of "full" localisation are currently outside the scope of MySource Matrix, but may be affected by other aspects of the overall platform your MySource Matrix system is running on. For example:

  • Sort (or collating) order may be affected by the locale setting within your database system. This will affect how special characters and other character combinations are sorted.
  • Date and time formats are controlled in part by your web server platform (operating system and PHP installation). Since we use the PHP date() function to print most dates within the Administration and Simple Edit interfaces, such things as month names will be affected by locale settings within your web server. (However the order of elements inside the date will most likely not change.)