From 38198c9f1fd896466f843d03e43be303b43fb88d Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Wed, 18 Feb 2026 10:59:29 -0500 Subject: [PATCH 01/12] feat: adds string literal replacement syntax Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index 7f771e7..aee5251 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -157,6 +157,33 @@ The properties of the `update` or `copy` object MUST be compatible with the targ This object MAY be extended with [Specification Extensions](#specification-extensions). +### String literal replacement syntax + +The following string replacement syntax MAY be used: + +%source.key% + +Where **source** is a known source which value MUST ONLY be **env** for environment variables, or **param** for parameters. The key MUST only contain the following characters A-Za-z0-9, contain at least one character and start with a letter. + +#### ABNF notation + +```abnf +replacement-string = "%" source "." key "%" +source = "env" / "param" +key = ALPHA *( ALPHA / DIGIT ) +``` + +Where ALPHA and digit rules are defined in [[RFC5234]]. + +#### Environment replacement source + +When the environment replacement source is used, the key MUST match (case-insensitive) an environment variable defined for the process parsing the Overlay document. If the environment variable is not defined, the processor MAY either replace it with an empty string or return an error. + +#### Parameter replacement source + +When the parameter replacement source is used, the key MUST match (case-sensitive) a corresponding parameter defined for the action template. + + ### Examples #### Structured Overlay Example From 74f3a40999e2d18980ac2ee03f9fb273f019d72f Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Wed, 18 Feb 2026 11:55:59 -0500 Subject: [PATCH 02/12] feat: adds high level definitions for templates and templates parameters Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index aee5251..923b3a6 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -155,6 +155,31 @@ The properties of the `update` or `copy` object MUST be compatible with the targ - An object value of the `update` or `copy` property is recursively merged with an object value of the target property. - Other property value combinations are incompatible and result in an error. +This object MAY be extended with [Specification Extensions](#specification-extensions). + +#### Action template object + +This object represents one or more changes to be applied to the target document at the locations defined by the target JSONPath expression and reused in one of more action references. + +##### Fixed fields + +| Field Name | Type | Description | +| ---- | :----: | ---- | +| parameters | [[Action template parameter object](#action-template-parameter-object)] | A list of parameters to be used during string literal replacement. Optional. | +| Any field defined in the [action object](#action-object) | mixed | The [string literal replacement syntax](#string-literal-replacement-syntax) MAY be used for any of the fields, and the replacements MUST be evaluated as the template reference is being resolved. | + +This object MAY be extended with [Specification Extensions](#specification-extensions). + +#### Action template parameter object + +##### Fixed fields + +| Field Name | Type | Description | +| ---- | :----: | ---- | +| name | `string` | The name of the parameter, MUST match the key for the string literal replacement expression. Required. | +| overlay | `string` | **REQUIRED**. This string MUST be the [version number](#versions) of the Overlay Specification that the Overlay document uses. The `overlay` field SHOULD be used by tooling to interpret the Overlay document. | | info | [Info Object](#info-object) | **REQUIRED**. Provides metadata about the Overlay. The metadata MAY be used by tooling as required. | | extends | `string` | URI reference that identifies the target document (such as an [[OpenAPI]] document) this overlay applies to. | -| actions | [[Action Object](#action-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | +| actions | [[Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | +| components | [Component Object](#component-object) | A set of components to reuse across the Overlay Document. Optional. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -128,6 +129,18 @@ The metadata MAY be used by the clients if needed. This object MAY be extended with [Specification Extensions](#specification-extensions). +#### Component Object + +The object provides a set of components to be reused across the Overlay document. + +##### Fixed Fields + +| Field Name | Type | Description | +| ---- | :----: | ---- | +| actionTemplates | Map(`string`, [Action Template Object](#action-template-object)) | A key-value set of action templates to reference in the actions. Optional. | + +This object MAY be extended with [Specification Extensions](#specification-extensions). + #### Action Object This object represents one or more changes to be applied to the target document at the locations defined by the target JSONPath expression. @@ -176,10 +189,21 @@ This object MAY be extended with [Specification Extensions](#specification-exten | Field Name | Type | Description | | ---- | :----: | ---- | -| name | `string` | The name of the parameter, MUST match the key for the string literal replacement expression. Required. | +| name | `string` | **REQUIRED** The name of the parameter, MUST match the key for the string literal replacement expression. | | $ref | `string` | **REQUIRED** A valid reference to an action template in the components section, represented as `#/components/actionTemplates/actionTemplateKey`. | +| Date: Wed, 25 Feb 2026 10:13:22 -0500 Subject: [PATCH 05/12] feat: adds reusable actions to the components Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 99 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 98 insertions(+), 1 deletion(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index 61d3b65..241a606 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -84,7 +84,7 @@ This is the root object of the [Overlay](#overlay). | overlay | `string` | **REQUIRED**. This string MUST be the [version number](#versions) of the Overlay Specification that the Overlay document uses. The `overlay` field SHOULD be used by tooling to interpret the Overlay document. | | info | [Info Object](#info-object) | **REQUIRED**. Provides metadata about the Overlay. The metadata MAY be used by tooling as required. | | extends | `string` | URI reference that identifies the target document (such as an [[OpenAPI]] document) this overlay applies to. | -| actions | [[Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | +| actions | [[Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object) or [Action Reference Object](#action-reference-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | | components | [Component Object](#component-object) | A set of components to reuse across the Overlay Document. Optional. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -138,6 +138,9 @@ The object provides a set of components to be reused across the Overlay document | Field Name | Type | Description | | ---- | :----: | ---- | | actionTemplates | Map(`string`, [Action Template Object](#action-template-object)) | A key-value set of action templates to reference in the actions. Optional. | +| actions | Map(`string`, [Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object)) | A key-value set of actions or action template references to use in the actions. Optional. | + +> Note: the target field for components actions is Optional. This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -195,6 +198,15 @@ This object MAY be extended with [Specification Extensions](#specification-exten This object MAY be extended with [Specification Extensions](#specification-extensions). +#### Action reference object + +##### Fixed fields + +| Field Name | Type | Description | +| ---- | :----: | ---- | +| $ref | `string` | **REQUIRED** A valid reference to an action in the components section, represented as `#/components/actions/actionTemplateKey`. | +| target | `string` | A RFC9535 JSONPath query expression selecting nodes in the target document and overrides the target defined in the referenced action. Optional when the resolved action defines a target, required when the resolved action does not. | + #### Action template reference object ##### Fixed fields @@ -635,6 +647,91 @@ paths: description: OK ``` +##### Action Reference Example + +###### Source Description + +```yaml +openapi: 3.2.0 +info: + title: Example API + version: 1.0.0 +paths: + /items: + get: + responses: + 200: + description: OK + /some-items: + delete: + responses: + 200: + description: OK +``` + +###### Overlay + +```yaml +overlay: 1.2.0 +info: + title: Use templates to insert error responses + version: 1.0.0 +components: + actions: + errorResponse: + update: + 404: + description: Not Found + application/json: + schema: + type: object + properties: + message: + type: string + description: Adds an error response to the %param.pathItem% path item %param.operation% operation +actions: +- $ref: '#/components/actions/errorResponse' + target: "$.paths['items'].get.responses" +- $ref: '#/components/actions/errorResponse' + target: "$.paths['some-items'].delete.responses" +``` + +###### Result description + +```yaml +openapi: 3.2.0 +info: + title: Example API + version: 1.0.0 +paths: + /items: + get: + responses: + 200: + description: OK + 404: + description: Not Found + application/json: + schema: + type: object + properties: + errorMessage: + type: string + /some-items: + delete: + responses: + 200: + description: OK + 404: + description: Not Found + application/json: + schema: + type: object + properties: + deleteErrorMessage: + type: string +``` + ##### Action Template Example ###### Source Description From 06a21c9c5b2ad6513f2d4a340d94d22c6fb5eed2 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Wed, 25 Feb 2026 10:19:33 -0500 Subject: [PATCH 06/12] feat: adds environment variables template Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index 241a606..8e3f8c5 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -182,6 +182,7 @@ This object represents one or more changes to be applied to the target document | Field Name | Type | Description | | ---- | :----: | ---- | | parameters | [[Action template parameter object](#action-template-parameter-object)] | A list of parameters to be used during string literal replacement. Optional. | +| environmentVariables | [[Action template parameter object](#action-template-parameter-object)] | A list of environment variables to be used during string literal replacement. Optional. | | Any field defined in the [action object](#action-object) | mixed | The [string literal replacement syntax](#string-literal-replacement-syntax) MAY be used for any of the fields, and the replacements MUST be evaluated as the template reference is being resolved. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -774,6 +775,9 @@ components: properties: '%param.propertyName%': type: string + stageName: + type: string + const: '%env.stageName%' description: Adds an error response to the %param.pathItem% path item %param.operation% operation parameters: - name: pathItem @@ -781,6 +785,9 @@ components: default: get - name: propertyName default: errorMessage + environmentVariables: + - name: stageName + default: dev actions: - $ref: '#/components/actionTemplates/errorResponse' parameterValues: @@ -792,6 +799,8 @@ actions: propertyName: deleteErrorMessage ``` +> Note: in this example, not value is set for the process environment variable "stageName". + ###### Result description ```yaml @@ -813,6 +822,9 @@ paths: properties: errorMessage: type: string + stageName: + type: string + const: dev /some-items: delete: responses: @@ -826,6 +838,9 @@ paths: properties: deleteErrorMessage: type: string + stageName: + type: string + const: dev ``` ### Specification Extensions From 553fca8413b75352d2e8675ca9818a59ba5678b7 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Wed, 25 Feb 2026 11:37:43 -0500 Subject: [PATCH 07/12] chore: capitalization fixes Co-authored-by: Ralf Handl --- versions/1.2.0-dev.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index 8e3f8c5..0a11f90 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -85,7 +85,7 @@ This is the root object of the [Overlay](#overlay). | info | [Info Object](#info-object) | **REQUIRED**. Provides metadata about the Overlay. The metadata MAY be used by tooling as required. | | extends | `string` | URI reference that identifies the target document (such as an [[OpenAPI]] document) this overlay applies to. | | actions | [[Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object) or [Action Reference Object](#action-reference-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | -| components | [Component Object](#component-object) | A set of components to reuse across the Overlay Document. Optional. | +| components | [Components Object](#components-object) | A set of components to reuse across the Overlay Document. Optional. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -129,7 +129,7 @@ The metadata MAY be used by the clients if needed. This object MAY be extended with [Specification Extensions](#specification-extensions). -#### Component Object +#### Components Object The object provides a set of components to be reused across the Overlay document. @@ -173,7 +173,7 @@ The properties of the `update` or `copy` object MUST be compatible with the targ This object MAY be extended with [Specification Extensions](#specification-extensions). -#### Action template object +#### Action Template Object This object represents one or more changes to be applied to the target document at the locations defined by the target JSONPath expression and reused in one of more action references. @@ -187,7 +187,7 @@ This object represents one or more changes to be applied to the target document This object MAY be extended with [Specification Extensions](#specification-extensions). -#### Action template parameter object +#### Action Template Parameter Object ##### Fixed fields @@ -199,7 +199,7 @@ This object MAY be extended with [Specification Extensions](#specification-exten This object MAY be extended with [Specification Extensions](#specification-extensions). -#### Action reference object +#### Action Reference Object ##### Fixed fields @@ -208,7 +208,7 @@ This object MAY be extended with [Specification Extensions](#specification-exten | $ref | `string` | **REQUIRED** A valid reference to an action in the components section, represented as `#/components/actions/actionTemplateKey`. | | target | `string` | A RFC9535 JSONPath query expression selecting nodes in the target document and overrides the target defined in the referenced action. Optional when the resolved action defines a target, required when the resolved action does not. | -#### Action template reference object +#### Action Template Reference Object ##### Fixed fields @@ -219,7 +219,7 @@ This object MAY be extended with [Specification Extensions](#specification-exten This object MAY be extended with [Specification Extensions](#specification-extensions). -### String literal replacement syntax +### String Literal Replacement Syntax The following string replacement syntax MAY be used: @@ -227,7 +227,7 @@ The following string replacement syntax MAY be used: Where **source** is a known source which value MUST ONLY be **env** for environment variables, or **param** for parameters. The key MUST only contain the following characters A-Za-z0-9, contain at least one character and start with a letter. -#### ABNF notation +#### ABNF Notation ```abnf replacement-string = "%" source "." key "%" @@ -235,13 +235,13 @@ source = "env" / "param" key = ALPHA *( ALPHA / DIGIT ) ``` -Where ALPHA and digit rules are defined in [[RFC5234]]. +Where ALPHA and DIGIT rules are defined in [[RFC5234]]. -#### Environment replacement source +#### Environment Replacement Source When the environment replacement source is used, the key MUST match (case-insensitive) an environment variable defined for the process parsing the Overlay document. If the environment variable is not defined, the processor MAY either replace it with an empty string or return an error. -#### Parameter replacement source +#### Parameter Replacement Source When the parameter replacement source is used, the key MUST match (case-sensitive) a corresponding parameter defined for the action template. @@ -697,7 +697,7 @@ actions: target: "$.paths['some-items'].delete.responses" ``` -###### Result description +###### Result Description ```yaml openapi: 3.2.0 @@ -801,7 +801,7 @@ actions: > Note: in this example, not value is set for the process environment variable "stageName". -###### Result description +###### Result Description ```yaml openapi: 3.2.0 From 9329227fe9e903f318724f8be238b85f4f2014c8 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Wed, 25 Feb 2026 11:38:17 -0500 Subject: [PATCH 08/12] chore: typo fixes Co-authored-by: Ralf Handl --- versions/1.2.0-dev.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index 0a11f90..d012eef 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -215,7 +215,7 @@ This object MAY be extended with [Specification Extensions](#specification-exten | Field Name | Type | Description | | ---- | :----: | ---- | | $ref | `string` | **REQUIRED** A valid reference to an action template in the components section, represented as `#/components/actionTemplates/actionTemplateKey`. | -| parameterValues | `Map(string, Any)` | A set of values to use for the template parameters, the key MUST match the parameter name. Optional. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -225,7 +225,7 @@ The following string replacement syntax MAY be used: %source.key% -Where **source** is a known source which value MUST ONLY be **env** for environment variables, or **param** for parameters. The key MUST only contain the following characters A-Za-z0-9, contain at least one character and start with a letter. +Where **source** is a known source whose value MUST ONLY be **env** for environment variables, or **param** for parameters. The key MUST only contain the following characters A-Za-z0-9, contain at least one character and start with a letter. #### ABNF Notation @@ -799,7 +799,7 @@ actions: propertyName: deleteErrorMessage ``` -> Note: in this example, not value is set for the process environment variable "stageName". +> Note: in this example, no value is set for the process environment variable "stageName". ###### Result Description From d01be1eea369af03af85d338888a21f8be04e555 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Wed, 25 Feb 2026 11:39:52 -0500 Subject: [PATCH 09/12] fix: case sensitive environment variable Co-authored-by: Ralf Handl --- versions/1.2.0-dev.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index d012eef..45e2596 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -239,7 +239,7 @@ Where ALPHA and DIGIT rules are defined in [[RFC5234]]. #### Environment Replacement Source -When the environment replacement source is used, the key MUST match (case-insensitive) an environment variable defined for the process parsing the Overlay document. If the environment variable is not defined, the processor MAY either replace it with an empty string or return an error. +When the environment replacement source is used, the key MUST match (case-sensitive) an environment variable defined for the process parsing the Overlay document. If the environment variable is not defined, the processor MAY either replace it with an empty string or return an error. #### Parameter Replacement Source From 0b71e07e67c4acaa05e219436226d7adf69d2895 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Tue, 3 Mar 2026 08:33:11 -0500 Subject: [PATCH 10/12] feat: merges reusable actions Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index 8e3f8c5..fef88d7 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -84,7 +84,7 @@ This is the root object of the [Overlay](#overlay). | overlay | `string` | **REQUIRED**. This string MUST be the [version number](#versions) of the Overlay Specification that the Overlay document uses. The `overlay` field SHOULD be used by tooling to interpret the Overlay document. | | info | [Info Object](#info-object) | **REQUIRED**. Provides metadata about the Overlay. The metadata MAY be used by tooling as required. | | extends | `string` | URI reference that identifies the target document (such as an [[OpenAPI]] document) this overlay applies to. | -| actions | [[Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object) or [Action Reference Object](#action-reference-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | +| actions | [[Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object)] | **REQUIRED** An ordered list of actions to be applied to the target document. The array MUST contain at least one value. | | components | [Component Object](#component-object) | A set of components to reuse across the Overlay Document. Optional. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -138,7 +138,6 @@ The object provides a set of components to be reused across the Overlay document | Field Name | Type | Description | | ---- | :----: | ---- | | actionTemplates | Map(`string`, [Action Template Object](#action-template-object)) | A key-value set of action templates to reference in the actions. Optional. | -| actions | Map(`string`, [Action Object](#action-object) or [Action Template Reference Object](#action-template-reference-object)) | A key-value set of actions or action template references to use in the actions. Optional. | > Note: the target field for components actions is Optional. @@ -199,14 +198,6 @@ This object MAY be extended with [Specification Extensions](#specification-exten This object MAY be extended with [Specification Extensions](#specification-extensions). -#### Action reference object - -##### Fixed fields - -| Field Name | Type | Description | -| ---- | :----: | ---- | -| $ref | `string` | **REQUIRED** A valid reference to an action in the components section, represented as `#/components/actions/actionTemplateKey`. | -| target | `string` | A RFC9535 JSONPath query expression selecting nodes in the target document and overrides the target defined in the referenced action. Optional when the resolved action defines a target, required when the resolved action does not. | #### Action template reference object @@ -215,7 +206,8 @@ This object MAY be extended with [Specification Extensions](#specification-exten | Field Name | Type | Description | | ---- | :----: | ---- | | $ref | `string` | **REQUIRED** A valid reference to an action template in the components section, represented as `#/components/actionTemplates/actionTemplateKey`. | -| parameterValues | `Map(string, Any)` | A set of values to use for the template parameters, the key MUST match the parameter name. Optional. | +| Date: Tue, 3 Mar 2026 08:37:20 -0500 Subject: [PATCH 11/12] fix: updates wording for references definition Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index c8d5e12..d0749c7 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -205,7 +205,7 @@ This object MAY be extended with [Specification Extensions](#specification-exten | Field Name | Type | Description | | ---- | :----: | ---- | -| $ref | `string` | **REQUIRED** A valid reference to an action template in the components section, represented as `#/components/actionTemplates/actionTemplateKey`. | +| $ref | `string` | **REQUIRED** A [same-document](https://www.rfc-editor.org/rfc/rfc3986.html#section-4.4) (or fragment-only) relative URI reference, per RFC3986 §4.4, and that the fragment syntax is JSON Pointer, with the pointer prefix restricted to `/components/actionTemplates/`. | | action overrides | mixed | Any field defined in the [Action Object](#action-object) to be used as an override to the value resolved in the template. Optional | From 3a58335b287b2510eedcc9db8651ef2c4a8ed739 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Tue, 3 Mar 2026 09:29:38 -0500 Subject: [PATCH 12/12] fix: aligns wording for the action fields in template and template references Signed-off-by: Vincent Biret --- versions/1.2.0-dev.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/versions/1.2.0-dev.md b/versions/1.2.0-dev.md index d0749c7..902b57c 100644 --- a/versions/1.2.0-dev.md +++ b/versions/1.2.0-dev.md @@ -182,7 +182,7 @@ This object represents one or more changes to be applied to the target document | ---- | :----: | ---- | | parameters | [[Action template parameter object](#action-template-parameter-object)] | A list of parameters to be used during string literal replacement. Optional. | | environmentVariables | [[Action template parameter object](#action-template-parameter-object)] | A list of environment variables to be used during string literal replacement. Optional. | -| Any field defined in the [action object](#action-object) | mixed | The [string literal replacement syntax](#string-literal-replacement-syntax) MAY be used for any of the fields, and the replacements MUST be evaluated as the template reference is being resolved. | +| Any field defined in the [action object](#action-object) | mixed | The [string literal replacement syntax](#string-literal-replacement-syntax) MAY be used for any of the fields, and the replacements MUST be evaluated as the template reference is being resolved. | This object MAY be extended with [Specification Extensions](#specification-extensions). @@ -207,7 +207,7 @@ This object MAY be extended with [Specification Extensions](#specification-exten | ---- | :----: | ---- | | $ref | `string` | **REQUIRED** A [same-document](https://www.rfc-editor.org/rfc/rfc3986.html#section-4.4) (or fragment-only) relative URI reference, per RFC3986 §4.4, and that the fragment syntax is JSON Pointer, with the pointer prefix restricted to `/components/actionTemplates/`. | | action overrides | mixed | Any field defined in the [Action Object](#action-object) to be used as an override to the value resolved in the template. Optional | +| Any field defined in the [action object](#action-object) | mixed | Any field defined in the [Action Object](#action-object) to be used as an override to the value resolved in the template. The [string literal replacement syntax](#string-literal-replacement-syntax) MAY NOT be used for any of the fields. Optional. | This object MAY be extended with [Specification Extensions](#specification-extensions).