5
5
<!ENTITY RFC5988 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.5988.xml" >
6
6
<!ENTITY RFC6839 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.6839.xml" >
7
7
<!ENTITY RFC6901 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.6901.xml" >
8
- <!ENTITY RFC6906 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.6906.xml" >
9
8
<!ENTITY RFC7049 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.7049.xml" >
10
9
<!ENTITY RFC7159 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.7159.xml" >
11
10
<!ENTITY RFC7231 SYSTEM " http://xml.resource.org/public/rfc/bibxml/reference.RFC.7231.xml" >
675
674
676
675
<section title =' Linking to a schema' >
677
676
<t >
678
- It is RECOMMENDED that instances described by a schema/profile provide a link to
677
+ It is RECOMMENDED that instances described by a schema provide a link to
679
678
a downloadable JSON Schema using the link relation "describedby", as defined by
680
679
<xref target =" W3C.REC-ldp-20150226" >Linked Data Protocol 1.0, section 8.1</xref >.
681
680
</t >
@@ -696,21 +695,23 @@ Link: <http://example.com/my-hyper-schema#>; rel="describedby"
696
695
</section >
697
696
698
697
699
- <section title =' Describing a profile of JSON ' anchor =" profile " >
698
+ <section title =' Identifying a schema via a media type parameter ' anchor =" parameter " >
700
699
<t >
701
- Instances MAY specify a "profile" as described in
702
- <xref target =" RFC6906" >The 'profile' Link Relation</xref >.
703
- When used as a media-type parameter, HTTP servers gain the ability to perform
704
- Content-Type Negotiation based on profile.
700
+ Media types MAY allow for a "schema" media type parameter, which gives
701
+ HTTP servers the ability to perform Content-Type Negotiation based on schema.
705
702
The media-type parameter MUST be a whitespace-separated list of URIs
706
703
(i.e. relative references are invalid).
707
704
</t >
708
705
<t >
709
- The profile URI is opaque and SHOULD NOT automatically be dereferenced.
710
- If the implementation does not understand the semantics of the provided profile,
706
+ When using the media type application/schema-instance+json, the "schema"
707
+ parameter MUST be supplied.
708
+ </t >
709
+ <t >
710
+ The schema URI is opaque and SHOULD NOT automatically be dereferenced.
711
+ If the implementation does not understand the semantics of the provided schema,
711
712
the implementation can instead follow the "describedby" links, if any, which may
712
- provide information on how to handle the profile .
713
- Since "profile " doesn't necessarily point to a network ___location, the
713
+ provide information on how to handle the schema .
714
+ Since "schema " doesn't necessarily point to a network ___location, the
714
715
"describedby" relation is used for linking to a downloadable schema.
715
716
However, for simplicity, schema authors should make these URIs point to the same
716
717
resource when possible.
@@ -724,34 +725,39 @@ Link: <http://example.com/my-hyper-schema#>; rel="describedby"
724
725
<artwork >
725
726
<![CDATA[
726
727
Content-Type: application/json;
727
- profile ="http://example.com/my-hyper-schema#"
728
+ schema ="http://example.com/my-hyper-schema#"
728
729
]]>
729
730
</artwork >
730
731
</figure >
731
732
732
733
<t >
733
- Multiple profiles are whitespace separated:
734
+ Multiple schemas are whitespace separated:
734
735
</t >
735
736
736
737
<figure >
737
738
<artwork >
738
739
<![CDATA[
739
740
Content-Type: application/json;
740
- profile ="http://example.com/alice http://example.com/bob"
741
+ schema ="http://example.com/alice http://example.com/bob"
741
742
]]>
742
743
</artwork >
743
744
</figure >
744
745
745
746
<t >
746
- HTTP can also send the "profile" in a Link, though this may impact media-type
747
+ <cref >
748
+ This paragraph assumes that we can register a "schema" link relation.
749
+ Should we instead specify something like "tag:json-schema.org,2017:schema"
750
+ for now?
751
+ </cref >
752
+ HTTP can also send the "schema" in a Link, though this may impact media-type
747
753
semantics and Content-Type negotiation if this replaces the media-type parameter
748
754
entirely:
749
755
</t >
750
756
751
757
<figure >
752
758
<artwork >
753
759
<![CDATA[
754
- Link: </alice>;rel="profile ", </bob>;rel="profile "
760
+ Link: </alice>;rel="schema ", </bob>;rel="schema "
755
761
]]>
756
762
</artwork >
757
763
</figure >
@@ -915,7 +921,6 @@ User-Agent: product-name/5.4.1 so-cool-json-schema/1.0.2 curl/7.43.0
915
921
916
922
<references title =" Informative References" >
917
923
&RFC5988;
918
- &RFC6906;
919
924
&RFC7049;
920
925
&RFC7231;
921
926
&fragid-best-practices;
0 commit comments