Skip to content

Commit 519409e

Browse files
authored
Merge pull request #1449 from json-schema-org/gregsdennis/proposal-template
add proposal document template
2 parents f632ec3 + d90219d commit 519409e

File tree

2 files changed

+97
-5
lines changed

2 files changed

+97
-5
lines changed

PROCESS.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -122,11 +122,9 @@ At least two (2) Core Team members must have implemented prototypes before the c
122122

123123
Once a rough consensus for the idea has been reached, a formal proposal will be written, separate from the specification, with the goal of precisely defining specification changes.
124124

125-
The proposal will use the [Proposal Template]() and be stored in this repository's `proposals` folder.
125+
The proposal will use the [Proposal Template](./proposals/proposal-template.md) and be stored in this repository's `proposals` folder.
126126

127-
```diff
128-
@@ TODO: Define Proposal Template and fill in the link. @@
129-
```
127+
Additionally, a draft ADR will be included using the file name of the proposal document with an `-adr` suffix: `{proposal-file-name}-adr.md`. This ADR will include additional information from the "Concept" discussion.
130128

131129
Proposed keywords will be added to the appropriate vocabulary meta-schemas in:
132130

@@ -169,7 +167,9 @@ If a proposal cannot advance to the next stage, it may be removed. The proposal
169167

170168
### Stable
171169

172-
The proposal is incorporated into the specification in the `main` branch, and the feature will be required as of the next release.
170+
The feature is incorporated into the specification in the `main` branch as specified by the proposal document, and the feature will be required as of the next release.
171+
172+
The draft ADR is completed, dated, and moved to the `adr` folder.
173173

174174
The appropriate vocabulary meta-schema in the `main` branch is updated to include a subschema that validates the feature's syntax requirements. This will be made available with the next release.
175175

proposals/proposal-template.md

+92
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# JSON Schema Proposal: <TODO>
2+
3+
## Abstract
4+
5+
<!--
6+
Fill in the specification(s) that will change. If adding a keyword, which vocabulary
7+
will contain it?
8+
9+
For example
10+
11+
This document proposes a change to the JSON Schema Core specification and
12+
Applicator vocabulary by adding the `propertyDependencies` keyword.
13+
14+
-->
15+
16+
This document proposes a change to the ??? specification by adding ???.
17+
18+
## Current Status
19+
20+
<!--
21+
Status is free text: just something to explain where the proposal is in
22+
its journey. This status does not align with the SDLC feature life cycle.
23+
-->
24+
25+
## Note to Readers
26+
27+
<!--
28+
It would be a good idea to isolate the issues that discuss the feature by
29+
updating the link below to include a query.
30+
-->
31+
32+
The issues list for this proposal can be found at
33+
<https://github.com/json-schema-org/json-schema-spec/issues>.
34+
35+
For additional information, see <https://json-schema.org/>.
36+
37+
To provide feedback, use this issue tracker or any of the communication methods
38+
listed on the homepage.
39+
40+
## Table of Contents
41+
42+
## Conventions and Terminology
43+
44+
All conventions and terms used and defined by the JSON Schema Core specification
45+
also apply to this document.
46+
47+
## Overview
48+
49+
### Problem Statement
50+
51+
<!-- What problem exists that needs solving? -->
52+
53+
### Solution
54+
55+
<!-- What is the solution? Include examples of use. -->
56+
57+
### Limitations
58+
59+
<!-- Are there any limitations inherent to the proposal? -->
60+
61+
## Change Details
62+
63+
<!--
64+
This is where the specification changes are defined. This must be precise as
65+
these changes will be made verbatim.
66+
67+
For example
68+
69+
1. The following section will be added to the JSON Schema Core specification as
70+
a subsection of "Keywords for Applying Subschemas Conditionally".
71+
> ### {New section name}
72+
>
73+
> {Feature description}
74+
2. The following subschema will be added to the Applicator Vocabulary schema,
75+
`https://json-schema.org/<version>/<release>/meta/applicator`, at
76+
`/properties/{keyword}`:
77+
```jsonc
78+
{
79+
// keyword schema
80+
}
81+
```
82+
-->
83+
84+
## [Appendix] Change Log
85+
86+
* [MMMM YYYY] Created
87+
88+
## [Appendix] Champions
89+
90+
| Champion | Company | Email | URI |
91+
|----------------------------|---------|-------------------------|----------------------------------|
92+
| Your Name | | | < GitHub profile page > |

0 commit comments

Comments
 (0)