public abstract Value ConvertTo(AttributeType to);
public override bool IsCompatible(AttributeType type) => base.IsCompatible(type) || PrimaryType == type.PrimaryType;
public ValueSet(AttributeType elementType) : base(new HashSet <Value>()) { _type = new AttributeTypeCollection(PrimaryType.Set, elementType); }