Reducida a la distinción esencial, la identidad importa para las entidades, pero no importa para los objetos de valor. Por ejemplo, el nombre de alguien es un objeto de valor. Una entidad Cliente puede estar compuesta por un Nombre de cliente (objeto de valor), Lista <Orden> Historial de pedidos (Lista de entidades) y tal vez una Dirección predeterminada (generalmente un objeto de valor). La Entidad del Cliente tendría una ID y cada pedido tendría una ID, pero un Nombre no debería; en general, dentro del modelo de objetos de todos modos, la identidad de una dirección probablemente no importa.
Los objetos de valor se pueden representar normalmente como objetos inmutables; cambiar una propiedad de un objeto de valor esencialmente destruye el objeto antiguo y crea uno nuevo, porque no le preocupa tanto la identidad como el contenido. De forma adecuada, el método de instancia Equals en Name devolvería "verdadero" siempre que las propiedades del objeto sean idénticas a las propiedades de otra instancia.
Sin embargo, cambiar algún atributo de una entidad como Cliente no destruye al cliente; una entidad Cliente suele ser mutable. La identidad sigue siendo la misma (al menos una vez que se ha conservado el objeto).
Probablemente crea objetos de valor sin darse cuenta; siempre que esté representando algún aspecto de una entidad mediante la creación de una clase detallada, tendrá un objeto de valor. Por ejemplo, una clase IPAddress, que tiene algunas restricciones sobre valores válidos pero está compuesta por tipos de datos más simples, sería un objeto de valor. Un EmailAddress podría ser una cadena o podría ser un objeto de valor con su propio conjunto de comportamientos.
Es muy posible que incluso los elementos que tienen una identidad en su base de datos no tengan una identidad en su modelo de objetos. Pero el caso más simple es una combinación de algunos atributos que tienen sentido juntos. Probablemente no desee tener Customer.FirstName, Customer.LastName, Customer.MiddleInitial y Customer.Title cuando puede componerlos juntos como Customer.Name; probablemente serán múltiples campos en su base de datos cuando piense en la persistencia, pero a su modelo de objetos no le importa.