internal PropertyValue(PropertyRule parent, string label, IEnumerable<string> collectionNames = null) {
     ParentPropertyRule = parent;
     Label = label;
     _collectionNames = (collectionNames == null) ? null : collectionNames.Where(each => !string.IsNullOrEmpty(each)).ToArray();
 }
 internal PropertyValue(PropertyRule parent, string label, IEnumerable <string> collectionNames = null)
 {
     ParentPropertyRule = parent;
     Label            = label;
     _collectionNames = (collectionNames == null) ? null : collectionNames.Where(each => !string.IsNullOrEmpty(each)).ToArray();
 }