Nej, det finns inga villkor under vilka resultatuppsättningarna kommer att vara annorlunda.
Men ditt antagande "a.id = b.id(+) har ingen betydelse" är inte 100 % korrekt. Det har en betydelse, eftersom den definierar sammanfogningen, annars skulle detta vara en kartesisk produkt av a och b med alla rader från a och b.name ='XYZ'.
Det som inte har någon effekt är (+) , eftersom påståendet är "semantiskt" fel. Det är ingen mening att gå med på id utan att gå med på namn.
Vanligtvis önskas något sådant:
select * from a,b where a.id =b.id(+) and b.name(+) = 'XYZ';
Kort exempel på https://www.sqlfiddle.com/#!4/d19b4/ 15