void RemoveUnrelatedNodes(IModelObjectView modelObjectView, IModelMergedDifferenceStrategyIncludedNodePath nodePath)
 {
     for (int i = modelObjectView.NodeCount - 1; i >= 0; i--)
     {
         var modelNode = modelObjectView.GetNode(i);
         if (modelNode.Id() == nodePath.NodePath)
         {
             modelNode.Remove();
             break;
         }
     }
 }
 void CloneNodes(IModelView modelView, IModelMergedDifferenceStrategyIncludedNodePath nodePath, IModelObjectView modelObjectView)
 {
     for (int i = 0; i < modelView.NodeCount; i++)
     {
         var modelNode = modelView.GetNode(i);
         var id        = modelNode.Id();
         if (id == nodePath.NodePath)
         {
             ModelEditorHelper.AddCloneNode((ModelNode)modelObjectView, (ModelNode)modelNode, id);
             break;
         }
     }
 }