raoh.required=is required
raoh.blank=must not be blank
raoh.too_short=must be at least {min} characters
raoh.too_long=must be at most {max} characters
raoh.invalid_length=must be exactly {expected} characters
raoh.out_of_range=must be between {min} and {max}
raoh.out_of_range.minimum=must be at least {min}
raoh.out_of_range.maximum=must be at most {max}
raoh.out_of_range.range=must be between {min} and {max}
raoh.out_of_range.positive=must be positive
raoh.out_of_range.negative=must be negative
raoh.out_of_range.non_negative=must be non-negative
raoh.out_of_range.non_positive=must be non-positive
raoh.out_of_range.before=must be before {before}
raoh.out_of_range.after=must be after {after}
raoh.out_of_range.between=must be between {from} and {to}
raoh.not_multiple_of=must be a multiple of {divisor}
raoh.invalid_scale=too many decimal places (max {maxScale})
raoh.too_small=must have at least {min} elements
raoh.too_small.nonempty=must not be empty
raoh.too_big=must have at most {max} elements
raoh.invalid_size=must have exactly {expected} elements
raoh.invalid_value=must be {expected}
raoh.missing_element=must contain {expected}
raoh.missing_elements=must contain all of {expected} (missing: {missing})
raoh.duplicate_element=must not contain duplicates: {duplicates}
raoh.not_allowed=must be one of {allowed}
raoh.invalid_format=invalid format
raoh.invalid_format.email=not a valid email
raoh.invalid_format.url=not a valid URL
raoh.invalid_format.uri=not a valid URI
raoh.invalid_format.uuid=not a valid UUID
raoh.invalid_format.ip=not a valid IP address
raoh.invalid_format.ipv4=not a valid IPv4 address
raoh.invalid_format.ipv6=not a valid IPv6 address
raoh.invalid_format.ulid=not a valid ULID
raoh.invalid_format.cuid=not a valid CUID
raoh.invalid_format.starts_with=must start with "{prefix}"
raoh.invalid_format.ends_with=must end with "{suffix}"
raoh.invalid_format.includes=must include "{substring}"
raoh.invalid_format.enum=invalid value
raoh.invalid_format.literal=invalid value
raoh.invalid_format.instant=not a valid ISO 8601 instant
raoh.invalid_format.date=not a valid ISO-8601 date (e.g., 2024-01-15)
raoh.invalid_format.time=not a valid ISO-8601 local time (e.g., 10:30 or 10:30:45)
raoh.invalid_format.date_time=not a valid ISO-8601 local date-time (e.g., 2024-01-15T10:30 or 2024-01-15T10:30:45)
raoh.invalid_format.offset_date_time=not a valid ISO-8601 offset date-time (e.g., 2024-01-15T10:30:00+09:00)
raoh.type_mismatch=expected {expected}
raoh.type_mismatch.string_keys=expected object with string keys, found {actual} key
raoh.type_mismatch.numeric_range=value is outside the {expected} range
raoh.unknown_field=unknown field
raoh.one_of_failed=no variant matched
raoh.missing_field=field is missing
raoh.invalid_format.json=not valid JSON