See http://labix.org/constraint