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
The feedback to draft-wright-json-schema-hyperschema-00 and from
the final review for draft-wright-json-schema-hyperschema-01
has made it clear that "method" is extremely confusing, and no
two people can agree on the correct usage. The only clear
impulse is to use the draft-luff-json-hyper-schema-00 meaning
(explicit specification of HTTP methods), which is not the
desired approach.
"method" is not actually necessary now that "hrefSchema" and
"submissionSchema" have separated the roles that were previously
both implemented by "schema" depending on the value of "method".
Therefore remove it to prevent incorrect assumptions about its
behavior and gather feedback on what behavior is truly needed.
With "method" gone, it makes sense to remove the references to
HTML forms as the analogy is no longer direct. However, there are
still open issues around both whether and how to explicitly
indicate HTML form vs anchor semantics, and whether and how to
allow directly specifying HTTP methods (as was allowed by
draft-luff-json-hyper-schema-00).
Since there are no longer citations of HTML, that reference has
been removed. If a new keyword is added for HTML form semantics,
then it will be restored as needed.
Copy file name to clipboardExpand all lines: jsonschema-hyperschema.xml
+50-96Lines changed: 50 additions & 96 deletions
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,6 @@
10
10
<!ENTITYrfc5988 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5988.xml">
11
11
<!ENTITYrfc6570 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6570.xml">
12
12
<!ENTITYrfc7231 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.7231.xml">
13
-
<!ENTITYhtml5 SYSTEM "http://xml.resource.org/public/rfc/bibxml4/reference.W3C.CR-html5-20140731.xml">
14
13
]>
15
14
<?rfc toc="yes"?>
16
15
<?rfc symrefs="yes"?>
@@ -390,8 +389,13 @@
390
389
391
390
<sectiontitle="Links and data">
392
391
<t>
393
-
"Form"-like functionality can be defined by use of the <xreftarget="method">"method"</xref> and <xreftarget="submissionSchema">"submissionSchema"</xref> keywords, which supplies a schema describing the data to supply to the server.
394
-
Functionality equivalent to dynamic URI generation is available through the <xreftarget="href">"href"</xref> template and <xreftarget="hrefSchema">"hrefSchema"</xref>.
392
+
"Form"-like functionality can be defined by use of the
393
+
<xreftarget="submissionSchema">"submissionSchema"</xref> and
The following properties also apply to Link Description Objects, and provide functionality analogous to <xreftarget="W3C.CR-html5-20140731">HTML forms</xref>, by providing a means for making a request with client- or user-selected information.
870
+
If present, this property indicates the media type format the
871
+
client should use to for the request payload described by
Omitting this keyword has the same behavior as a value of application/json.
876
+
</t>
877
+
<t>
878
+
Note that "submissionEncType" and "submissionSchema"
879
+
are not restricted to HTTP URIs.
870
880
871
-
<sectiontitle="method"anchor="method">
872
-
<t>
873
-
This property specifies that the client can construct a templated query or non-idempotent request to a resource.
874
-
</t>
875
-
<t>
876
-
If "method" is "get", the link identifies how a user can compute the URI of an arbitrary resource. For example, how to compute a link to a page of search results relating to the instance, for a user-selected query term. Despite being named after GET, there is no constraint on the method or protocol used to interact with the remote resource.
877
-
</t>
878
-
<t>
879
-
If "method" is "post", the link specifies how a user can construct a document to submit to the link target for evaluation.
880
-
</t>
881
-
<t>
882
-
Values for this property SHOULD be lowercase, and SHOULD be compared case-insensitive. Use of other values not defined here SHOULD be ignored.
This property contains a schema which defines the acceptable structure of the document being encoded according to the "submissionEncType" property.
974
-
</t>
917
+
</artwork>
918
+
</figure>
919
+
</t>
920
+
</section>
975
921
976
-
<t>
977
-
Note that this does not define the structure for URI template variables. That is handed by <xreftarget="hrefSchema">"hrefSchema"</xref>. If the method is "get" and the resolved URI Template has a query string, the query string produced by input validated against "submissionSchema" replaces the existing query string.
This property contains a schema which defines the acceptable structure
925
+
of the document to be encoded according to the "submissionEncType" property
926
+
and sent to the target resource for processing. This can be viewed as
927
+
describing the domain of the processing function implemented by the
928
+
target resource.
929
+
</t>
979
930
980
-
<t>
981
-
This is a separate concept from the <xreftarget="targetSchema">"targetSchema"</xref> property, which is describing the target information resource (including for replacing the contents of the resource in a PUT request), unlike "submissionSchema" which describes the user-submitted request data to be evaluated by the resource.
982
-
"submissionSchema" is intended for use with requests that have payloads that are not
983
-
defined in terms of the target representation.
984
-
</t>
985
-
</section>
931
+
<t>
932
+
This is a separate concept from the <xreftarget="targetSchema">"targetSchema"</xref> property, which is describing the target information resource (including for replacing the contents of the resource in a PUT request), unlike "submissionSchema" which describes the user-submitted request data to be evaluated by the resource.
933
+
"submissionSchema" is intended for use with requests that have payloads that are not
934
+
defined in terms of the target representation.
935
+
</t>
936
+
<t>
937
+
Omitting "submissionSchema" or setting the entire schema to "false" prevents
0 commit comments