JSON::V...t201909(3)

πŸ’… NAME πŸ’…

okay bestie, welcome to JSON::V...t201909(3) β€” the manual page for JSON::Validator::Schema::Draft201909, aka the JSON-Schema Draft 2019-09 icon πŸ’–. She's giving schema validation realness, and we're gonna get into all of it.


✨ SYNOPSIS ✨

bestie, for the actual synopsis you gotta see "SYNOPSIS" in JSON::Validator::Schema. that's the whole vibe there. 🫢


🌸 DESCRIPTION 🌸

So this class represents <https://json-schema.org/specification-links.html#2019-09-formerly-known-as-draft-8> β€” yes, that's the 2019-09 spec link, formerly known as draft-8, no cap.

Support for parsing the draft is not yet complete. she's still in her WIP era, okay? 😭 Look at <https://github.com/mojolicious/json-validator/blob/master/t/draft2019-09-acceptance.t> for the most recent overview of what is not yet supported.

Currently less than 1% of the official test suite gets skipped. iconic behavior, honestly. but here's the honest list of known limitations:

  • Float and integers are equal up to 64-bit representation limits β€” this module is unable to say that the 64-bit number 9007199254740992.0 is the same as 9007199254740992. it just can't, bestie πŸ’€
  • unevaluatedItems β€” see unevaluatedProperties. they're linked, iykyk.
  • unevaluatedProperties β€” unevaluatedItems and unevaluatedProperties needs to track what has been validated or not using annotations. This is not yet supported. not me waiting on annotations to get their life together πŸ™ˆ
  • $recursiveAnchor β€” Basic support for $recursiveRef is supported, but using it together with $recursiveAnchor is not. so close, yet so far πŸŽ€

πŸ¦‹ ATTRIBUTES πŸ¦‹

specification

here's the little code moment:

my $str = $schema->specification;

Defaults to <https://json-schema.org/draft/2019-09/schema>. periodt. πŸ’…


🌈 SEE ALSO 🌈

JSON::Validator::Schema β€” go give her a read, bestie, she's right there and she's relevant. 🫢


mwah πŸ’‹ this page is from perl v5.42.0, dated 2025-03-17, and it's JSON::V...t201909(3) β€” slay and goodbye ✨

πŸ“¦ where this page comes from