1
- # [ short title of solved problem and solution ]
1
+ # ` format ` as an assertion
2
2
3
3
- Status: proposed
4
4
<!-- will update below to only those who participated in the vote -->
5
5
- Deciders: @gregsdennis @jdesrosiers @julian @jviotti @mwadams @karenetheridge
6
6
@relequestual
7
7
- Date: 2024-11-02
8
- - Technical Story: https://github.com/json-schema-org/json-schema-spec/issues/1520
9
- - Voting issue: https://github.com/json-schema-org/TSC/issues/19
8
+ - Technical Story: < https://github.com/json-schema-org/json-schema-spec/issues/1520 >
9
+ - Voting issue: < https://github.com/json-schema-org/TSC/issues/19 >
10
10
- For - @gregsdennis @jdesrosiers @jviotti @mwadams @karenetheridge
11
11
- Neutral - @relequestual
12
12
- Against - @julian
16
16
There's a long and sticky history around format.
17
17
18
18
1 . Going back all the way to Draft 01, format has never required validation.
19
- 2 . Whether to support format validation has always been the decision of the
19
+ 1 . Whether to support format validation has always been the decision of the
20
20
implementation.
21
- 3 . The extent to which formats are validated has also been the decision of the
21
+ 1 . The extent to which formats are validated has also been the decision of the
22
22
implementation.
23
23
24
24
The result of all of this is that implementation support for validation has been
@@ -45,7 +45,7 @@ short-term solution for schema generation from types.)
45
45
Due to this consistency in user expectations, we have decided to:
46
46
47
47
1 . make format an assertion keyword, and
48
- 2 . strictly enforce it by moving the appropriate tests into the required section
48
+ 1 . strictly enforce it by moving the appropriate tests into the required section
49
49
of the Test Suite and building them more completely.
50
50
51
51
## Decision Drivers
@@ -63,8 +63,8 @@ This is the current state. The primary benefit is that we don't need to make a
63
63
breaking change.
64
64
65
65
The primary downside is that the current system of (1) configuring the tool or
66
- (2) incluing the ` format-assertion ` vocab[ ^ 1 ] is confusing for many and doesn't
67
- align with user expectations.
66
+ (2) incluing the ` format-assertion ` vocab is confusing for many and doesn't
67
+ align with user expectations.[ ^ 1 ]
68
68
69
69
[ ^ 1 ] The ` format-assertion ` vocabulary will no longer be an option since we have
70
70
demoted vocabularies to a proposal for the stable release. This leaves tool
@@ -76,7 +76,8 @@ We change the spec to require `format` validation. Furthermore:
76
76
77
77
- Implementations SHOULD support ` format ` with the defined values
78
78
- Implementations MAY support others, but only by explicit config
79
- - Implementations MUST refuse to process a schema that contains an unsupported format
79
+ - Implementations MUST refuse to process a schema that contains an unsupported
80
+ format
80
81
81
82
## Decision Outcome
82
83
@@ -86,7 +87,8 @@ The TSC has decided via vote (see voting issue above) that we should change
86
87
### Positive Consequences <!-- optional -->
87
88
88
89
- Aligns with user expectations.
89
- - Users are still able to have purely annotative behavior through use of something like ` x-format ` .
90
+ - Users are still able to have purely annotative behavior through use of
91
+ something like ` x-format ` .
90
92
- Increased consistency for ` format ` validation across implementations.
91
93
92
94
### Negative Consequences <!-- optional -->
0 commit comments