Well, I solved adding OPTIONAL to the MATCH, but your solution
CREATE OR REPLACE DATABASE gdpr
looks more effective and elegant.
Chapeau!
..... but it cannot be used in a composite database because I have to recreate the DB then recreate all the aliases ....
So, the winning solution to empty a federated DB is
CALL {
USE federatednotions.gdpr
optional MATCH (n) DETACH DELETE (n)
}