The package provides facilities for creating and managing keys in the sense of the keyval and xkeyval packages, but it is intended to be more robust and faster. Its robustness comes from its ability to preserve braces in key values throughout parsing. The need to preserve braces in key values arises often in parsing keys (for example, in the xwatermark package). The package is faster than xkeyval package because (among other things) it avoids character-wise parsing of key values (called “selective sanitization” by the xkeyval package). The package also provides functions for defining and managing keys.