Bueno, una de las razones por las que las reglas probablemente se están dejando de lado es que creo que con las reglas solo puede tener una por columna y solo verifican los datos que ingresan a la base de datos, es decir, no verifican los datos existentes que ya están en la base de datos. Con las restricciones de verificación, puede tener múltiples restricciones en una columna determinada y se aplican a todos los datos (datos que ingresan y datos que ya están en la base de datos). Dado que las reglas parecen ser una solución pobre para las restricciones de verificación, Microsoft probablemente finalmente se dio cuenta de que era hora de deshacerse de ellas, además de que no son el estándar SQL.
Si una restricción de verificación no es suficiente, también puede usar un disparador para obtener una lógica más elaborada.