package jsonschema import ( "regexp" "time" ) var ( dateRe = regexp.MustCompile(`^\d{4}-\d{2}-\d{2}$`) emailRe = regexp.MustCompile(`^[^\s@]+@[^\s@]+\.[^\s@]+$`) ) // formatValid checks whether s satisfies the named format. Returns true for // formats we don't support — JSON Schema treats `format` as an annotation by // default, so unknown formats are non-failing. func formatValid(format, s string) bool { switch format { case "date": if !dateRe.MatchString(s) { return false } // Reject obviously-malformed dates like 2026-13-40. _, err := time.Parse("2006-01-02", s) return err == nil case "email": return emailRe.MatchString(s) } return true }