Non tanto una risposta quanto un'osservazione. È tecnicamente possibile (ma probabilmente stupido in pratica) avere riferimenti circolari nei vincoli.
create table blue (blue_id number primary key, val varchar2(10), red_id number);
create table red (red_id number primary key, val varchar2(10), blue_id number);
insert into blue values (1,'test',2);
insert into red values (2,'test',1);
alter table blue add constraint blue_fk foreign key (red_id) references red (red_id);
alter table red add constraint red_fk foreign key (blue_id) references blue (blue_id);
Quindi potrei capire se decidessero che, poiché non è necessariamente sempre realizzabile, non si preoccuperebbero di mettere gli oggetti in ordine di dipendenza.
Pertanto, lascerei fuori i vincoli referenziali durante la creazione delle tabelle, quindi li applicherei come ALTER dopo che tutte le tabelle sono state create.