Implementing foreign keys on generalized data model
You can have two (or more) foreign keys in a table. They can be both regarding the same attribute and referencing different tables. So you could have 2 foreign keys from racoon(pk), one referencing wild(pk) and the other referencing domestic(pk). Something like:

CREATE TABLE raccon
( mammal_id INT  PRIMARY KEY
, FOREIGN KEY (mammal_id)
    REFERENCES domestic (mammal_id)
, FOREIGN KEY (mammal_id)
    REFERENCES wild (mammal_id)
) ;


(assuming all tables have mammal_id as the primary key)