diff --git a/jsonschema-hyperschema.xml b/jsonschema-hyperschema.xml index dbfb826f..4b1e9bb6 100644 --- a/jsonschema-hyperschema.xml +++ b/jsonschema-hyperschema.xml @@ -390,15 +390,15 @@
- "Form"-like functionality can be defined by use of the "method" and "schema" keywords, which supplies a schema describing the data to supply to the server. + "Form"-like functionality can be defined by use of the "method" and "submissionSchema" keywords, which supplies a schema describing the data to supply to the server. Functionality equivalent to dynamic URI generation is available through the "href" template and "hrefSchema". - The simplest kind of link has an "href" with no template variables, and no "schema". This does not + The simplest kind of link has an "href" with no template variables, and no "submissionSchema". This does not allow for any variance in the link URI, nor does it allow for a request document. - An "href" with at least one template variable, but no "hrefSchema" or "schema", allows resolving + An "href" with at least one template variable, but no "hrefSchema" or "submissionSchema", allows resolving the template variable from the instance, but does not allow resolving it from external data, nor does it allow a request document. @@ -407,7 +407,7 @@ data to resolve the template, and falls back to resolving any remaining variables from the instance. - A link with a "schema" allows submitting external data either as a request body (if "method" is "post"), + A link with a "submissionSchema" allows submitting external data either as a request body (if "method" is "post"), or as a URI query string (if "method" is "get"). Such a query string replaces any query string present after the "href" template is resolved. @@ -580,7 +580,7 @@ The above example simulates the behavior found in earlier drafts using only "hrefSchema", - which would allow the concurrent use of "schema" on a "post" link. + which would allow the concurrent use of "submissionSchema" on a "post" link.
@@ -702,7 +702,7 @@ GET /foo/ -
+
This property provides a schema that is expected to describe the link target's representation. Depending on the protocol, @@ -883,7 +883,7 @@ GET /foo/
-
+
If present, this property indicates the media type format the client should use to encode a query parameter or send to the server. If the method is "get", this will indicate how to encode the query-string that is appended to the "href" link target. @@ -894,10 +894,10 @@ GET /foo/
-
+
- This property contains a schema which defines the acceptable structure of the document being encoded according to the "encType" property. + This property contains a schema which defines the acceptable structure of the document being encoded according to the "submissionEncType" property. - Note that this does not define the structure for URI template variables. That is handed by "hrefSchema". If the method is "get" and the resolved URI Template has a query string, the query string produced by input validated against "schema" replaces the existing query string. + Note that this does not define the structure for URI template variables. That is handed by "hrefSchema". 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 is a separate concept from the "targetSchema" property, which is describing the target information resource (including for replacing the contents of the resource in a PUT request), unlike "schema" which describes the user-submitted request data to be evaluated by the resource. + This is a separate concept from the "targetSchema" 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. + "submissionSchema" is intended for use with requests that have payloads that are not + defined in terms of the target representation.
@@ -1056,6 +1058,9 @@ GET /foo/ Removed URI Template pre-processing Clarified how links and data submission work Clarified how validation keywords apply hyper-schema keywords and links + Clarified HTTP use with "targetSchema" + Renamed "schema" to "submissionSchema" + Renamed "encType" to "submissionEncType"