Naming Conventions

This page covers naming conventions for Cache components and things to watch out for and avoid.

General
The architecture of Cache is such that you can sometimes run into naming conflicts that you might not be expecting. As a general rule you can use any valid names you like in a namespace except those starting with %. Names starting with % are generally reserved for Cache system code and utilities and have greater visibility and scope across namespaces.

%Z* and %z*
Packages, routine and global names starting with %Z or %z are not used by Cache and provide a set of names that can be used by developers to create routines and globals with greater visibility and scope across namespaces. These routines are generally used for system wide utility functions and by third-party package vendors to provide functionality that is available system-wide by default.

There is one exception. %ZEN* is used by Cache for the ZEN web-application, so avoid this name as well.

Cache
The following names are used by some Cache system functions and utilities in all namespaces and may conflict with your application:
 * Packages: -
 * Globals:
 * Routines: -

Ensemble
While not present in Cache, if you want to ensure that your application can be migrated to Ensemble at some time in the future you should ensure that the following names are avoided:
 * Packages names:
 * Globals:
 * Routines:

Future Versions
There is no guarantee that future versions of Cache / Ensemble will not use additional names that might conflict with your application. Beware of this and check when upgrading.