A namespace is an abstract container that can be used to setVariable over specific scopes.

Variables set in one namespace are not available in others, so the same variable name can be used in different namespaces.

Instead of using setVariable & getVariable, it is also possible to use with to assign or read variables:

uiNameSpace setVariable ["myString","abc"];
uiNameSpace setVariable ["myNumbers",123];

// is the same as
with uiNamespace do {
  myString= "abc";
  myNumbers = 123;

// and can be read via:
player sidechat (uiNameSpace getVariable "myString");
player sidechat str (uiNameSpace getVariable "myNumbers");

// or
with uiNameSpace do {
  player sidechat myString;
  player sidechat str myNumbers;