El dominio de un atributo es el conjunto de valores válidos que ese atributo puede tomar. Dicho de otro modo, define el tipo y el rango de datos admitidos. Por ejemplo:
| Atributo | Dominio |
|---|---|
| Fecha de Alta | Calendario Gregoriano (fechas desde 01/01/1900 en adelante) |
| Teléfono | Cadena numérica de 9 dígitos |
| Cobro de Incentivos | SÍ / NO |
| Edad | Números enteros en el intervalo 16–65 |
| Estado Civil | Soltero, Casado, Divorciado, Viudo |
El concepto de dominio va ligado al de restricción. Un atributo puede pertenecer a un dominio amplio (por ejemplo, los números naturales ℕ) pero la entidad concreta que lo contiene puede añadir restricciones adicionales. El atributo «EDAD» pertenece al dominio de los números naturales, pero dentro de la entidad «PROFESOR» solo son válidos los valores entre 16 y 65, porque esos son los límites legales de la vida laboral.
Esta separación entre dominio base y restricciones de entidad es útil porque el mismo dominio puede reutilizarse en varios atributos. Si el dominio «Calendario Gregoriano» se define una sola vez, cualquier atributo de tipo fecha de cualquier entidad puede referenciarlo, evitando repetir las mismas reglas de validación en cada sitio.
En los sistemas gestores de bases de datos actuales, los dominios se implementan habitualmente mediante el tipo de dato de la columna (INTEGER, VARCHAR, DATE…) combinado con restricciones CHECK que acotan los valores admitidos.