data validation for Clojure