Not if you do DDD where a calue type has exactly those semantics and for record types this is actually a free lunch.