I was wondering what is recommended for this.
Should foreign keys cascade 'on delete' and 'on update' or be set to restrict?
I think that ON UPDATE CASCADE is usually the expected behaviour. For deletion, it really depends on what you are trying to do.