JSON::...sertion(3pm)

πŸ“¦
version 0.642 Β· 4 versions
, in ubuntu stonking

🌸 NAME 🌸

okay so πŸ’– welcome to the manual page for JSON::Schema::Modern::Vocabulary::FormatAssertion β€” that's the JSON::...sertion(3pm) page you see truncated at the top, straight outta the User Contributed Perl Documentation. It's the implementation of the JSON Schema Format-Assertion vocabulary, and yes it eats πŸ’…


✨ VERSION ✨

version 0.642

so the versioning scheme here is linearly-increasing β€” meaning it just goes up one at a time, no lore, no hidden meaning. No meaning should be presumed or inferred from the version being less than 1.0. it says nothing bestie, literally nothing πŸ™ˆ


πŸ¦‹ DESCRIPTION πŸ¦‹

This module is the implementation of the JSON Schema Draft 2020-12 "Format-Assertion" vocabulary, which metaschemas point at with the URI https://json-schema.org/draft/2020-12/vocab/format-assertion, and which is formally specified right here: <https://json-schema.org/draft/2020-12/json-schema-validation.html#section-7>. slay πŸ’–

Support is also provided for the following, and no we did not forget them:

Assertion behaviour can be enabled by /json-schema.org/draft/2020-12/json-schema-core.html#rfc.section.8.1.2/referencing this vocabulary explicitly in https: in a metaschema's $vocabulary keyword β€” or by toggling the validate_formats option in JSON::Schema::Modern. your choice bestie, both work πŸ’…

Here's the vibe check on how formats behave πŸ‘€

When the Format-Annotation vocabulary is specified (which, btw, is the default for the draft2020-12 metaschema) and it's combined with the validate_formats option set to true:

  • formats that aren't implemented will silently validate β€” sneaky, no drama
  • but implemented formats will validate completely, full main character energy
note that some formats need optional module dependencies, and if those modules aren't there, you get an error. so like, keep your deps installed bestie 😭

When this vocabulary β€” the Format-Assertion one β€” is specified, it's a whole different story: unimplemented formats will generate an error on use. no silent passes, periodt.

Wanna override a particular format implementation, or add a brand new one? That's done through format_validations in JSON::Schema::Modern. go off 🫢

and finally: format uri-template is not yet implemented. using this format will always result in an error. no cap, every single time πŸ’€

πŸŽ€ SEE ALSO πŸŽ€

  • "Format Validation" in JSON::Schema::Modern
  • JSON::Schema::Modern::Vocabulary::FormatAnnotation

πŸ’– GIVING THANKS πŸ’–

if you found this module useful (and bestie, we hope you did πŸ₯Ί), please show your appreciation by dropping a +1 on MetaCPAN <https://metacpan.org/dist/JSON-Schema-Modern> and starring it on GitHub <https://github.com/karenetheridge/JSON-Schema-Modern>. it costs you nothing and it makes the author's whole day, iykyk ✨


🫢 SUPPORT 🫢

Bugs may be submitted through <https://github.com/karenetheridge/JSON-Schema-Modern/issues>.

The author is also usually active on irc, hanging out as 'ether' at irc.perl.org and irc.libera.chat.

You can also find them on the JSON Schema Slack server <https://json-schema.slack.com> and the OpenAPI Slack server <https://open-api.slack.com> β€” both are great resources for finding help πŸ¦‹


πŸ‘‘ AUTHOR πŸ‘‘

Karen Etheridge <ether@cpan.org>


This software is copyright (c) 2020 by Karen Etheridge.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

Some schema files have their own licence, in share/LICENSE.


and that's the whole page, bestie πŸŽ€ this was JSON::...sertion(3pm) from perl v5.40.1, dated 2026-07-31 β€” go forth and validate your formats, you absolute icon πŸ’œπŸ’…

πŸ“¦ where this page comes from