MapGuide RFC 18 - Localization
This page contains a change request (RFC) for the MapGuide Open Source project. More MapGuide RFCs can be found on the RFCs page.
|RFC Template Version||(1.0)|
|Submission Date||March 7, 2007|
|Last Modified||Bruce Dechant Timestamp|
|Assigned PSC guide(s)||Bruce Dechant|
|Voting History||March 7, 2007|
The MapGuide server currently uses the "C" locale when it starts which is not very useful for end users that are running MapGuide in a non-English environment as this is a very restrictive locale.
The reason for adding better localization support is for better support of end-users that are not using English. This will allow sorting and using of Upper/Lower string functions on non-English data.
Add a new server configuration property "Locale" that can be set to whatever locale the end users wants. If this new property is blank or does not exist in the serverconfig.ini file then the server will default to the system locale.
The following is the format used for the Locale property:
Note: The values you can specify for the locale are platform specific.
- English_United States
- English_United States.1252
Please see the platform developer documentation for the setlocale() API for more information on the locale examples.
For more information on Windows: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_language_strings.asp
For more information on Linux: http://linux.about.com/library/cmd/blcmdl3_setlocale.htm
The following setlocale() API categories will be set to the locale specified in the server configuration "Locale" property:
Note: The category LC_NUMERIC is already using the "C" locale and will not be changed.
The current server configuration property "DefaultLocale" will be renamed to reflect what the property really does. The proposed new name is "DefaultMessageLocale" because the property is only for the locale of messages returned to clients that have not specified their locale themselves. The format for this property will remain the same, ie: ISO639-1 name.
Backwards compatibility is partially maintained because if the user is already using "DefaultLocale" with a value of "en" for English messages the new "DefaultMessageLocale" has a value of "en" by default. However, if they have changed to some other value they will be affected and will need to update their configuration.
Run unit tests on English and non-English locales.
Autodesk to provide resources / funding.