There are a lot of "primitive" boiler plate types of data classes that could appear in many different programs.
However, I have never seen a class or library set that recognizes the need to combine all these things with common logic required for them such as validation.
Example classes ([] brackets correspond to classes also in hypothetical library):
Address (street, postal code, city, state/territory/province, country)
Person (name, contact info ([Phone]/[Email]/etc), [Address], SSN/TIN, [CreditCard])
Phone (number, country code, etc)
CreditCard (type, number, expiration, ccv) **
And I'm sure someone could come up with plenty of others.
I have developed my own Phone/Address/Person/CreditCard classes that I use in projects, complete with validation and logic.
However I only am capable of validating US based information. My phone number class would ideally inherit from a base Phone class, as mine actually seperates the number into NPA, NXX and Station and validates it fully with NANP standards.
Is there a set of libraries out there in the net that has a comprehensive collection of such boiler plate data classes with proper validation?
Does it include validation for a world wide set of data, or just US data?
And for the ** from CreditCard, is it capable of meeting PCI Data Security Standards?
I know these are classes many people have probably written many times in many different languages, but is there any .NET library that fufills these desires?
I would prefer opens source/free, though I would consider a paid 3rd party library set.