Categorical (CategoricalGenerator)

The Categorical generator creates values at the same frequency and using the same values, including NULL values, as the underlying data. In other words, it shuffles the existing values within a field.

The Categorical generator does not support consistency. You can configure differential privacy. You can link columns.

The metadata object is populated from the CategoricalMetadata object. It contains the epsilon field, which provides the privacy budget for differential privacy.

{
  "schema": "string",
  "table": "string",
  "column": "string",
  "dataType": "string",  //MongoDB only
  "metadata": {
    "presetId": "string",
    "generatorId": "CategoricalGenerator",
    "epsilon": numeric,
    "isDifferentiallyPrivate": boolean,
    "encryptionProcessor": "x-on", //To use configured Structural data encryption
    "customValueProcessor": "string" //If custom value processor applied
  }
}

Example replacement

The following example replacement shows a single, un-linked column. Differential privacy is enabled, and epsilon is set to 1.

{
  "name": "userstatus",
  "schema": "test",
  "table": "users",
  "links": [
    {
      "schema": "test",
      "table": "users",
      "column": "userstatus",
      "metadata": {
        "presetId": "CategoricalGenerator",
        "generatorId": "CategoricalGenerator",
        "epsilon": 1,
        "isDifferentiallyPrivate": true
      }
    }
  ]
}

Last updated