use constraint validation for input-core