protected void RemoveRule(DataModelValidationRule rule)
        {
            DebugCheck.NotNull(rule);
            Debug.Assert(_rules.Contains(rule), "should exist");

            _rules.Remove(rule);
        }
        protected void AddRule(DataModelValidationRule rule)
        {
            DebugCheck.NotNull(rule);
            Debug.Assert(!_rules.Contains(rule), "should not add the duplicate rule");

            _rules.Add(rule);
        }