See also: Writing Registry Plugins

Some additional conventions are required when writing a Normalization Plugin.

  1. The name of the Plugin should match the format FooNormalizer.
  2. The Plugin must implement one function, which is defined in Model/FooNormalizer.php.
    1. normalize(), which accepts an array of data in typical Cake format and returns an array of normalized data in the same format. This function should be sure to copy any data to the return array that it does not modify, not just normalized data.

Because of the way data is passed to plugins, if a model alias is in use the Plugin will only see that in the data. This typically happens during Enrollment Flows, where the model alias EnrolleeCoPersonRole is used instead of CoPersonRole, and so the Plugin will need to check both names to normalize CoPersonRole data.