1. A method comprising: establishing, by a processor in communication with a memory, a source hierarchical target and a destination hierarchical target; receiving, by the processor, a plurality of changes of one or more source elements of the source hierarchical target; traversing elements of a source element list, the source element list comprising the one or more source elements of the source hierarchical target, and, for each traversed source element, determining hierarchy child attributes of the traversed source element; copying the elements of the source element list to a destination element list in accordance with the hierarchy child attributes; propagating, by the processor, a first set of changes of the plurality of changes to a first set of elements of the destination hierarchical target, the first set of elements represented in the destination element list, and the propagating according to a sort order of changes to the first set of elements, the sort order based on hierarchical depths of the first set of elements in the destination element list; and propagating a second set of changes the plurality of changes to a second set of elements represented in the destination hierarchical target, the propagating according to a non-hierarchical order of the second set of elements in the destination element list.