Yes it will work.
What you will need is something along the lines of the following
BORef with Attributes: RefAttrib1, RefAttrib2
BOMain with Attributes: MainAttrib1, MainAttrib2, refBORef
Then add the following rules to BOMain
Rule1:
IF BORef WAS ADDED TO BOMain.refBORef THEN
BOMain.Attrib1=AddedBORef.RefAttrib1
BOMain.Attrib2=AddedBORef.RefAttrib2
Rule2:
IF BOMain.refBORef IS DEFINED AND
(BOMain.MainAttrib1<>BOMain.refBORef.RefAttrib1 OR BOMain.MainAttrib2<>BOMain.refBORef.RefAttrib2) THEN
FIND BORef WHERE BORef=BOMain.refBORef
BORef.RefAttrib1=BOMain.MainAttrib1
BORef.RefAttrib2=BOMain.MainAttrib2
This is a basic outline of what you would need to do, though you can add further conditions etc as you see fit
Hope it is understandable