Skip to content

Commit eeade22

Browse files
committed
Enforce consistency in supported draft display for libraries
1 parent 9201063 commit eeade22

File tree

2 files changed

+74
-32
lines changed

2 files changed

+74
-32
lines changed

_data/validator-libraries.yml

Lines changed: 52 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
license: "MIT"
77
- name: NJsonSchema
88
url: http://NJsonSchema.org
9-
notes: "- *supports draft 4*"
9+
notes:
10+
draft: [4]
1011
license: Ms-PL
1112
- name: ActionScript 3
1213
anchor-name: action-script-3
@@ -24,27 +25,32 @@
2425
implementations:
2526
- name: wjelement-cpp
2627
url: https://github.com/petehug/wjelement-cpp
27-
notes: "- *supports draft 4*"
28+
notes:
29+
draft: [4]
2830
license: LGPLv3
2931
- name: Header-only C++ library for JSON Schema validation
3032
url: https://github.com/tristanpenman/valijson
31-
notes: "- *supports only draft 4*"
33+
notes:
34+
draft: [4]
3235
license: BSD-2-Clause
3336
- name: Modern C++ JSON schema validator
3437
url: https://github.com/pboettch/json-schema-validator
35-
notes: "- *supports only draft 4* based on JSON for Modern C++"
38+
notes: "based on JSON for Modern C++"
39+
draft: [4]
3640
license: "MIT"
3741
- name: Clojure
3842
implementations:
3943
- name: scjsv
4044
url: https://github.com/metosin/scjsv
41-
notes: "- *supports draft 4* (wrapper for [java-json-tools/json-schema-validator](https://github.com/java-json-tools/json-schema-validator))"
45+
notes: "(wrapper for [java-json-tools/json-schema-validator](https://github.com/java-json-tools/json-schema-validator))"
46+
draft: [4]
4247
license: Eclipse Public License v1.0
4348
- name: Dart
4449
implementations:
4550
- name: json_schema
4651
url: https://github.com/patefacio/json_schema
47-
notes: "*supports draft 4*"
52+
notes:
53+
draft: [4]
4854
license: BSL-1.0
4955
- name: Erlang
5056
implementations:
@@ -58,7 +64,8 @@
5864
license: "Apache 2.0"
5965
- name: jsonschema
6066
url: https://github.com/santhosh-tekuri/jsonschema
61-
notes: "*supports draft 4, draft 6*"
67+
notes:
68+
draft: [4, 6]
6269
license: BSD-3-Clause
6370
- name: Haskell
6471
implementations:
@@ -67,51 +74,62 @@
6774
license: "MIT"
6875
- name: hjsonschema
6976
url: https://github.com/seagreen/hjsonschema
70-
notes: "- *supports draft 4*"
77+
notes:
78+
draft: [4]
7179
license: MIT
7280
- name: Java
7381
implementations:
7482
- name: json-schema-validator
7583
url: https://github.com/java-json-tools/json-schema-validator
76-
notes: "- *supports draft 4*"
84+
notes:
85+
draft: [4]
7786
license: LGPLv3
7887
- name: json-schema (implementation based on the org.json API)
7988
url: https://github.com/everit-org/json-schema
80-
notes: "- *supports draft 4, draft 6*"
89+
notes:
90+
draft: [4, 6]
8191
license: Apache License 2.0
8292
- name: json-schema-validator
8393
url: https://github.com/networknt/json-schema-validator
84-
notes: "- *supports draft 4*"
94+
notes:
95+
draft: [4]
8596
license: Apache License 2.0
8697
- name: JavaScript
8798
implementations:
8899
- name: ajv
89100
url: https://github.com/epoberezkin/ajv
90-
notes: "for Node.js and browsers - *supports draft 4, draft 6, [custom keywords](https://github.com/epoberezkin/ajv-keywords) and [$data reference](https://github.com/json-schema-org/json-schema-spec/issues/51)*"
101+
notes: "for Node.js and browsers - *supports [custom keywords](https://github.com/epoberezkin/ajv-keywords) and [$data reference](https://github.com/json-schema-org/json-schema-spec/issues/51)*"
102+
draft: [4, 5, 6]
91103
license: MIT
92104
- name: djv
93105
url: https://github.com/korzio/djv
94-
notes: "for Node.js and browsers - *supports draft 4*"
106+
notes: "for Node.js and browsers"
107+
draft: [4]
95108
license: MIT
96109
- name: jsonschema
97110
url: https://github.com/tdegrunt/jsonschema
98-
notes: "for Node.js - *supports draft 4*"
111+
notes: "for Node.js"
112+
draft: [4]
99113
license: MIT
100114
- name: is-my-json-valid
101115
url: https://github.com/mafintosh/is-my-json-valid
102-
notes: "- *supports draft 4*"
116+
notes:
117+
draft: [4]
103118
license: MIT
104119
- name: tv4
105120
url: http://geraintluff.github.com/tv4/
106-
notes: "- *supports draft 4*"
121+
notes:
122+
draft: [4]
107123
license: [Public Domain, MIT]
108124
- name: JaySchema
109125
url: https://github.com/natesilva/jayschema
110-
notes: "for Node.js - *supports draft 4*"
126+
notes: "for Node.js"
127+
draft: [4]
111128
license: BSD
112129
- name: z-schema
113130
url: https://github.com/zaggino/z-schema
114-
notes: "for Node.js - *supports draft 4*"
131+
notes: "for Node.js"
132+
draft: [4]
115133
license: MIT
116134
- name: direct-schema
117135
url: http://github.com/IreneKnapp/direct-schema
@@ -131,13 +149,15 @@
131149
license: "MIT"
132150
- name: JSEN
133151
url: https://github.com/bugventure/jsen
134-
notes: "for Node.js - *supports draft 4*"
152+
notes: "for Node.js"
153+
draft: [4]
135154
license: "MIT"
136155
- name: PHP
137156
implementations:
138157
- name: jsv4-php
139158
url: https://github.com/geraintluff/jsv4-php
140-
notes: "- *supports draft 4*"
159+
notes:
160+
draft: [4]
141161
license: [Public Domain, MIT]
142162
- name: php-json-schema
143163
url: https://github.com/hasbridge/php-json-schema
@@ -147,11 +167,13 @@
147167
license: "Berkeley"
148168
- name: JVal
149169
url: https://github.com/stefk/jval
150-
notes: "- *supports draft 4*"
170+
notes:
171+
draft: [4]
151172
license: "MIT"
152173
- name: JSON Guard
153174
url: https://github.com/thephpleague/json-guard
154-
notes: "- *supports draft 4*"
175+
notes:
176+
draft: [4]
155177
license: "MIT"
156178
- name: Perl
157179
implementations:
@@ -165,7 +187,8 @@
165187
implementations:
166188
- name: jsonschema
167189
url: https://github.com/Julian/jsonschema
168-
notes: "- *supports draft 4*"
190+
notes:
191+
draft: [4]
169192
license: "MIT"
170193
- name: json-schema-validator
171194
url: https://github.com/zyga/json-schema-validator
@@ -177,17 +200,20 @@
177200
license: "MIT"
178201
- name: json-schema
179202
url: https://github.com/hoxworth/json-schema
180-
notes: "- *supports draft 4*"
203+
notes:
204+
draft: [4]
181205
license: MIT
182206
- name: Rust
183207
implementations:
184208
- name: valico
185209
url: https://github.com/rustless/valico
186-
notes: "- *supports draft 4*"
210+
notes:
211+
draft: [4]
187212
license: MIT
188213
- name: Scala
189214
implementations:
190215
- name: json-schema-parser
191216
url: https://github.com/VoxSupplyChain/json-schema-parser
192-
notes: "- Schema parser and validator, *supports draft 4*"
217+
notes: "Schema parser and validator"
218+
draft: [4]
193219
license: Apache 2.0

implementations.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,29 @@ Validators
3030

3131
<!-- To add a validator library, add it in _data/validator-libraries.yml -->
3232

33-
{% for language in validator-libraries %}
34-
35-
- {{language.name}} <a id="validator-{% if language.anchor-name %}{{ language.anchor-name }}{% else %}{{ language.name | downcase }}{% endif %}"></a>{% for implementation in language.implementations %}
36-
- [{{ implementation.name }}]({{implementation.url}}) {{implementation.notes}}
37-
({{implementation.license | join: ", "}}){% endfor %}
33+
<ul>
34+
{% for language in validator-libraries %}
35+
<li>
36+
{{language.name}} <a id="validator-{% if language.anchor-name %}{{ language.anchor-name }}{% else %}{{ language.name | downcase }}{% endif %}"></a>
37+
<ul>
38+
{% for implementation in language.implementations %}
39+
<li>
40+
<a href="{{implementation.url}}">{{ implementation.name }}</a>
41+
42+
{% if implementation.draft %}
43+
<em>supports draft {{ implementation.draft | join: ", draft " }}</em>
44+
{% endif %}
45+
46+
{{implementation.notes | markdownify | remove: '<p>' | remove: '</p>'}}
47+
({{ implementation.license | join: ", " }})
48+
49+
</li>
50+
{% endfor %}
51+
</ul>
52+
</li>
53+
{% endfor %}
54+
</ul>
3855

39-
{% endfor %}
4056

4157

4258
### Online

0 commit comments

Comments
 (0)