Text is the basic unit of localization. Text is defined by a namespace, a key, a source string, and a display string. Together, the namespace and key form a unique identity by which a text can be referred by.
The namespace allows text to be translated differently in the case of homographs (identical strings with different meanings) by offering a different identity. The key provides specific context regarding the text.
The source string is the string in its native form, without having been translated. The display string is the string which will be shown, typically a translated form of the source string.
For example, a dialog box may appear in English or Spanish. The dialog box may have a message, an "Ok" button, and a "Cancel" button. All three pieces of text may use the namespace "MyProject". The message text
may use a key of "MyMessage", the "Ok" text may use a key of "DialogBox.AffirmativeButtonLabel", and the "Cancel" text may use a key of "DialogBox.NegatoryButtonLabel". Based on the namespace and key, each piece
of text can be uniquely identified and translated.