You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<h1><br/>JSON Schema: core definitions and terminology<br/>json-schema-core</h1>
151
153
@@ -174,7 +176,7 @@ <h3>Status of This Memo</h3>
174
176
It is inappropriate to use Internet-Drafts as reference material or to cite
175
177
them other than as “work in progress.”</p>
176
178
<p>
177
-
This Internet-Draft will expire on July 25, 2013.</p>
179
+
This Internet-Draft will expire on August 3, 2013.</p>
178
180
179
181
<h3>Copyright Notice</h3>
180
182
<p>
@@ -341,7 +343,7 @@ <h3>Table of Contents</h3>
341
343
<p>
342
344
A JSON Schema is a JSON document, and that document MUST be an object. Object
343
345
members (or properties) defined by JSON Schema (this specification, or related
344
-
specifcations) are called keywords, or schema keywords.
346
+
specifications) are called keywords, or schema keywords.
345
347
346
348
</p>
347
349
<p>
@@ -507,7 +509,7 @@ <h3>Table of Contents</h3>
507
509
JSON Schema allows applications to validate instances, either non interactively
508
510
or interactively. For instance, an application may collect JSON data and check
509
511
that this data matches a given set of constraints; another application may use a
510
-
JSON Schema to build an interactve interface in order to collect user input
512
+
JSON Schema to build an interactive interface in order to collect user input
511
513
according to constraints described by JSON Schema.
512
514
513
515
</p>
@@ -592,8 +594,8 @@ <h3>Table of Contents</h3>
592
594
593
595
</p>
594
596
<p>
595
-
As a consequence, for interoperability reasons, any JSON used in the context of
596
-
JSON Schema, whether that JSON be a JSON Schema or an instance, SHOULD ensure
597
+
As a consequence, for interoperability reasons, JSON values used in the context
598
+
of JSON Schema, whether that JSON be a JSON Schema or an instance, SHOULD ensure
597
599
that mathematical integers be represented as integers as defined by this
598
600
specification.
599
601
@@ -638,37 +640,43 @@ <h3>Table of Contents</h3>
638
640
</p>
639
641
<p>
640
642
This keyword MUST be located at the root of a JSON Schema. The value of this
641
-
keyword MUST be a <aclass='info' href='#RFC3986'>URI<span> (</span><spanclass='info'>Berners-Lee, T., Fielding, R., and L. Masinter, “Uniform Resource Identifier (URI): Generic Syntax,” January 2005.</span><span>)</span></a> [RFC3986], and this URI MUST be both
642
-
absolute and normalized. The resource located at this URI MUST successfully
643
-
describe itself. It is RECOMMENDED that schema authors include this keyword in
644
-
their schemas.
643
+
keyword MUST be a <aclass='info' href='#RFC3986'>URI<span> (</span><spanclass='info'>Berners-Lee, T., Fielding, R., and L. Masinter, “Uniform Resource Identifier (URI): Generic Syntax,” January 2005.</span><span>)</span></a> [RFC3986] and a valid <aclass='info' href='#json-reference'>JSON Reference<span> (</span><spanclass='info'>Bryan, P. and K. Zyp, “JSON Reference (work in progress),” September 2012.</span><span>)</span></a> [json‑reference]; this URI MUST be both absolute
644
+
and normalized. The resource located at this URI MUST successfully describe
645
+
itself. It is RECOMMENDED that schema authors include this keyword in their
646
+
schemas.
645
647
646
648
</p>
647
649
<p>
648
650
The following values are predefined:
649
651
650
652
</p>
651
-
<blockquoteclass="text">
652
-
<p>"http://json-schema.org/schema#" (JSON Schema written
653
-
against the current version of the specification);
654
-
</p>
655
-
<p>"http://json-schema.org/hyper-schema#" (JSON Schema written
656
-
against the current version of the specification);
657
-
</p>
658
-
<p>"http://json-schema.org/draft-04/schema#" (JSON Schema written
659
-
against against JSON Schema, draft v4 -- this version);
written against JSON Schema, draft v4 -- this version);
663
-
</p>
664
-
<p>"http://json-schema.org/draft-03/schema#" (JSON Schema written
665
-
against <aclass='info' href='#json-schema-03'>JSON Schema, draft v3<span> (</span><spanclass='info'>Court, G. and K. Zyp, “JSON Schema, draft 3,” September 2012.</span><span>)</span></a> [json‑schema‑03]);
against <aclass='info' href='#json-schema-03'>JSON Schema, draft v3<span> (</span><spanclass='info'>Court, G. and K. Zyp, “JSON Schema, draft 3,” September 2012.</span><span>)</span></a> [json‑schema‑03].
written against <aclass='info' href='#json-schema-03'>JSON Schema, draft
669
-
v3<span> (</span><spanclass='info'>Court, G. and K. Zyp, “JSON Schema, draft 3,” September 2012.</span><span>)</span></a> [json‑schema‑03]).
670
-
</p>
671
-
</blockquote><p>
677
+
v3<span> (</span><spanclass='info'>Court, G. and K. Zyp, “JSON Schema, draft 3,” September 2012.</span><span>)</span></a> [json‑schema‑03].
678
+
</dd>
679
+
</dl></blockquote><p>
672
680
673
681
</p>
674
682
<aname="anchor24"></a><br/><hr/>
@@ -694,7 +702,7 @@ <h3>Table of Contents</h3>
694
702
695
703
<p>
696
704
JSON Schema uses <aclass='info' href='#json-reference'>JSON Reference<span> (</span><spanclass='info'>Bryan, P. and K. Zyp, “JSON Reference (work in progress),” September 2012.</span><span>)</span></a> [json‑reference] as a
697
-
general addressing mechanism. It extends this specification in two ways:
705
+
mechanism for schema addressing. It extends this specification in two ways:
698
706
699
707
</p>
700
708
<blockquoteclass="text">
@@ -705,6 +713,7 @@ <h3>Table of Contents</h3>
705
713
accept arbitrary fragment parts.
706
714
</p>
707
715
</blockquote><p>
716
+
708
717
709
718
</p>
710
719
<p>
@@ -725,7 +734,7 @@ <h3>Table of Contents</h3>
725
734
726
735
<p>
727
736
The value for this keyword MUST be a string, and MUST be a valid URI. This
728
-
URI MUST be normalized, and MUST NOT be an empty fragment (#) or the empty
737
+
URI MUST be normalized, and SHOULD NOT be an empty fragment (#) or the empty
729
738
URI.
730
739
731
740
</p>
@@ -789,7 +798,7 @@ <h3>Table of Contents</h3>
789
798
<dd>http://x.y.z/otherschema.json#
790
799
</dd>
791
800
<dt>#/schema2/nested</dt>
792
-
<dd>http://x.y.z/rootschema.json#bar
801
+
<dd>http://x.y.z/otherschema.json#bar
793
802
</dd>
794
803
<dt>#/schema2/alsonested</dt>
795
804
<dd>http://x.y.z/t/inner.json#a
@@ -850,7 +859,7 @@ <h3>Table of Contents</h3>
850
859
<p>
851
860
When an implementation encounters the "schema1" reference, it resolves it
852
861
against the most immediate parent scope, leading to URI
853
-
"http://my.site/myschema/schema1#". The way to process this URI will differ
862
+
"http://my.site/schema1#". The way to process this URI will differ
854
863
according to the chosen dereferencing mode:
855
864
856
865
</p>
@@ -859,8 +868,8 @@ <h3>Table of Contents</h3>
859
868
dereference this URI, and fetch the content at this URI;
860
869
</p>
861
870
<p>if inline dereferencing is used, the implementation will notice that
862
-
URI scope "http://my.site/myschema/schema1#" is already defined within
863
-
the schema, and choose to use the appropriate subschema.
871
+
URI scope "http://my.site/schema1#" is already defined within the
872
+
schema, and choose to use the appropriate subschema.
864
873
</p>
865
874
</blockquote><p>
866
875
@@ -891,7 +900,7 @@ <h3>Table of Contents</h3>
891
900
</pre></div>
892
901
<p>
893
902
An implementation choosing to support inline dereferencing SHOULD be able to
894
-
use this kind of references. Implementations choosing to use canonical
903
+
use this kind of reference. Implementations choosing to use canonical
895
904
dereferencing, however, are not required to support it.
896
905
897
906
</p>
@@ -910,8 +919,8 @@ <h3>Table of Contents</h3>
910
919
<p>
911
920
Extended JSON References using fragments which are not JSON Pointers are not
912
921
dereferenceable by implementations choosing not to support inline dereferencing.
913
-
This addressing mechanism is defined for backwards compatibility, and SHOULD NOT
914
-
be used in new schemas.
922
+
This kind of reference is defined for backwards compatibility, and SHOULD NOT be
0 commit comments