# uuid/valid?
Test whether a value is a well-formed canonical UUID string. Accepts
lowercase and uppercase hex; any version/variant nibble passes. Non-string
values return `false` (no error).
## Syntax
[uuid/valid? $s]
## Parameters
- `$s` — Value to test
## Examples
[uuid/valid? "598a1910-0eb9-43b0-86dc-aa7112972fa0"] # true [uuid/valid? "F47AC10B-58CC-4372-A567-0E02B2C3D479"] # true (uppercase) [uuid/valid? [uuid/nil]] # true [uuid/valid? "598a1910-0eb9-43b0"] # false (too short) [uuid/valid? "598a1910-0eb9-43b0-86dc-aa7112972fa0z"] # false (bad char) [uuid/valid? 42] # false (not a string)
## Returns
`true` when the value is exactly 36 characters in canonical
`8-4-4-4-12` hyphenated form with hex digits elsewhere; otherwise `false`.
## Notes
This is a format check only — it does not verify the version or variant
nibbles, so UUIDs of any version (v1–v8) and the nil UUID all validate.
## See Also
`uuid/v4`, `uuid/v7`, `uuid/nil`