XML Mask (XmlMaskGenerator)
The XML Mask generator runs a selected generator on values that match a user specified path expression.
Link object structure
For the XML Mask generator, there is a link object for each path expression value to assign a sub-generator to.
The generator does not itself support consistency or differential privacy.
The metadata object is populated from the XmlMaskMetadata object. It includes:
- pathExpression, which is the expression that identifies the value to apply the sub-generator to.
- The - subGeneratorMetadataobject, which identifies and configures the sub-generator.
{
  "schema": "string",
  "table": "string",
  "column": "string",
  "dataType": "string",  //MongoDB only
  "metadata": {
    "generatorId": "XmlMaskGenerator",
    "customValueProcessor": "string",  //If custom value processor applied
    "pathExpression": "string",
    "subGeneratorMetadata": {
      "presetId": "string",
      "generatorId": "string",
      //Metadata for the selected sub-generator
      "customValueProcessor": "string"  //If custom value processor applied to the sub-generator
    }
  }
}Example replacement
In the following example replacement for the XML Mask generator:
- The Name generator is assigned to the path expression - //view/item-descriptor//@display-name. The value is in the format First Name Last Name (John Smith), and capitalization is not preserved. Consistency is disabled.
- The Constant generator is assigned to the path expression - //view//object-class. The constant value is- object-class.
{
  "name": "xml_data",
  "schema": "public",
  "table": "xml_me",
  "links": [
    {
      "schema": "public",
      "table": "xml_me",
      "column": "xml_data",
      "metadata": {
        "generatorId": "XmlMaskGenerator",
        "presetId": "XmlMaskGenerator",
        "pathExpression": "//view/item-descriptor//@display-name",
        "subGeneratorMetadata": {
          "presetId": "NameGenerator",
          "generatorId": "NameGenerator",
          "nameType": "FirstThenLastName",
          "preserveCapitalization": false,
          "isConsistent": false
        }
      }
    },
    {
      "schema": "public",
      "table": "xml_me",
      "column": "xml_data",
      "metadata": {
        "generatorId": "XmlMaskGenerator",
        "presetId": "XmlMaskGenerator",
        "pathExpression": "//view//object-class",
        "subGeneratorMetadata": {
          "presetId": "ConstantGenerator",
          "generatorId": "ConstantGenerator",
          "constant": "object-class"
        }
      }
    }
  ]
}Last updated
Was this helpful?

