public override void Update()
        {
            LeftSideSelectionViewModel.ChangeDataModelPath(DataModelConditionList.ListPath);
            NotifyOfPropertyChange(nameof(SelectedListOperator));

            // Remove VMs of effects no longer applied on the layer
            Items.RemoveRange(Items.Where(c => !DataModelConditionList.Children.Contains(c.Model)).ToList());

            if (DataModelConditionList.ListPath == null || !DataModelConditionList.ListPath.IsValid)
            {
                return;
            }

            List <DataModelConditionViewModel> viewModels = new();

            foreach (DataModelConditionPart childModel in Model.Children)
            {
                if (Items.Any(c => c.Model == childModel))
                {
                    continue;
                }
                if (!(childModel is DataModelConditionGroup dataModelConditionGroup))
                {
                    continue;
                }

                DataModelConditionGroupViewModel viewModel = _dataModelConditionsVmFactory.DataModelConditionGroupViewModel(dataModelConditionGroup, ConditionGroupType.List);
                viewModel.IsRootGroup = true;
                viewModels.Add(viewModel);
            }

            if (viewModels.Any())
            {
                Items.AddRange(viewModels);
            }

            foreach (DataModelConditionViewModel childViewModel in Items)
            {
                childViewModel.Update();
            }
        }