Skip to content

Commit

Permalink
fix: GitHub changed markdown rendering for headings/anchors
Browse files Browse the repository at this point in the history
Signed-off-by: Mike Ralphson <mike.ralphson@gmail.com>
  • Loading branch information
MikeRalphson committed Oct 19, 2023
1 parent ddcab42 commit 5c31415
Show file tree
Hide file tree
Showing 9 changed files with 1,279 additions and 1,279 deletions.
2 changes: 1 addition & 1 deletion proposals/2019-10-31-Clarify-Nullable.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ This is the proposed replacement for the `nullable` definition:

Field Name | Type | Description
---|:---:|---
<a name="schemaNullable"></a>nullable | `boolean` | A `true` value adds `"null"` to the allowed type specified by the `type` keyword, only if `type` is explicitly defined within the same Schema Object. Other Schema Object constraints retain their defined behavior, and therefore may disallow the use of `null` as a value. A `false` value leaves the specified or default `type` unmodified. The default value is `false`.
<a id="schemaNullable"></a>nullable | `boolean` | A `true` value adds `"null"` to the allowed type specified by the `type` keyword, only if `type` is explicitly defined within the same Schema Object. Other Schema Object constraints retain their defined behavior, and therefore may disallow the use of `null` as a value. A `false` value leaves the specified or default `type` unmodified. The default value is `false`.
<hr>

## Detailed design
Expand Down
28 changes: 14 additions & 14 deletions proposals/2019-12-24-Overlays.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,51 +21,51 @@

In recent months we have been discussing various use cases for overlays and various solutions. The following proposal takes a somewhat more radical approach to the problem. It is a more ambitious proposal than the others we have seen before but the additional complexity does allow for supporting many of the scenarios that have been discussed to date.

#### <a name="overlayDocument"></a>Overlay Document
#### <a id="overlayDocument"></a>Overlay Document

An overlay document contains a list of [Update Objects](#overlayUpdates) that are to be applied to the target document. Each [Update Object](#updateObject) has a `target` property and a `value` property. The `target` property is a [JMESPath](http://jmespath.org/specification.html) query that identifies what part of the target document is to be updated and the `value` property contains an object with the properties to be overlaid.


#### <a name="overlayObject"></a>Overlay Object
#### <a id="overlayObject"></a>Overlay Object

This is the root object of the [OpenAPI Overlay document](#oasDocument).

##### Fixed Fields

Field Name | Type | Description
---|:---:|---
<a name="overlayVersion"></a>overlay | `string` | Version of the Overlay specification that this document conforms to.
<a name="overlayInfo"></a>info | [[Info Object](#overlayInfoObject)] | Identifying information about the overlay.
<a name="overlayExtends"></a>extends | `url` | URL to an OpenAPI document this overlay applies to.
<a name="overlayUpdates"></a>updates | [[Update Object](#updateObject)] | A list of update objects to be applied to the target document.
<a id="overlayVersion"></a>overlay | `string` | Version of the Overlay specification that this document conforms to.
<a id="overlayInfo"></a>info | [[Info Object](#overlayInfoObject)] | Identifying information about the overlay.
<a id="overlayExtends"></a>extends | `url` | URL to an OpenAPI document this overlay applies to.
<a id="overlayUpdates"></a>updates | [[Update Object](#updateObject)] | A list of update objects to be applied to the target document.

The list of update objects MUST be applied in sequential order to ensure a consistent outcome. Updates are applied to the result of the previous updates. This enables objects to be deleted in one update and then re-created in a subsequent update.

The `extends` property can be used to indicate that the Overlay was designed to update a specific OpenAPI description. This is an optional property. Where no `extends` is provided it is the responsibility of tooling to apply the Overlay documents to the appropriate OpenAPI description.

#### <a name="overlayInfoObject"></a>Info Object
#### <a id="overlayInfoObject"></a>Info Object

This object contains identifying information about the [OpenAPI Overlay document](#oasDocument).

##### Fixed Fields

Field Name | Type | Description
---|:---:|---
<a name="overlayTitle"></a>title | `string` | A human readable description of the purpose of the overlay.
<a name="overlayVersion"></a>version | `string` | A version identifier for indicating changes to an overlay document.
<a id="overlayTitle"></a>title | `string` | A human readable description of the purpose of the overlay.
<a id="overlayVersion"></a>version | `string` | A version identifier for indicating changes to an overlay document.

#### <a name="updateObject"></a>Update Object
#### <a id="updateObject"></a>Update Object

This object represents one or more changes to be applied to the target document at the location defined by the target JMESPath.

##### Fixed Fields

Field Name | Type | Description
---|:---:|---
<a name="updateTarget"></a>target | `string` | A JMESPath expression referencing the target objects in the target document.
<a name="updateAdd"></a>add | [Any](#addObject) | An object to be added as a child of the object(s) referenced by the target. Property has no impact if `remove` property is `true`.
<a name="updateMerge"></a>merge | [Any](#mergeObject) | An object with the properties and values to be merged with the object(s) referenced by the target. Property has no impact if `remove` property is `true`.
<a name="updateRemove"></a>remove | `boolean` | A boolean value that indicates that the target object is to be removed from the the map or array it is contained in. The default value is false.
<a id="updateTarget"></a>target | `string` | A JMESPath expression referencing the target objects in the target document.
<a id="updateAdd"></a>add | [Any](#addObject) | An object to be added as a child of the object(s) referenced by the target. Property has no impact if `remove` property is `true`.
<a id="updateMerge"></a>merge | [Any](#mergeObject) | An object with the properties and values to be merged with the object(s) referenced by the target. Property has no impact if `remove` property is `true`.
<a id="updateRemove"></a>remove | `boolean` | A boolean value that indicates that the target object is to be removed from the the map or array it is contained in. The default value is false.

The properties of the merge object MUST be compatible with the target object referenced by the JMESPath key. When the Overlay document is applied, the properties in the merge object replace properties in the target object with the same name and new properties are appended to the target object.

Expand Down
Loading

0 comments on commit 5c31415

Please sign in to comment.