checks that attributes of children are the same with that of a parent -- outputs can have an output in the parent even if they are consumed in the local graph -- checks that there are only one output origin per output name if not a side-effect