QueryDatasetListener
Follows the changes of QueryDatasets: every listener validates a change before any applys it, so a listener that cannot follow a change (a gateway that cannot be built, a name an aggregate takes) refuses it for all of them.