Entweder du korrigierst die Relation, denn selbige sollte keine Lücken aufweisen. Oder du löst das Problem per Rekursion. Hast du eine Verzweigung, musst du alle Zweige abgrasen und abbrechen, wenn es unsinnig wird. Unsinnig ist es, wenn nach einem motorway_link ein motorway mit falschem ref-Tag kommt oder eben ein way, der nicht motorway oder motorway_link ist. Du solltest auch an den Fall denken, dass ein Abzweig an einem der mittleren Knoten in einem way beginnt!
Gruß
Plasmon