Skip to content

Commit 0a1cb43

Browse files
authored
Merge pull request #3908 from handrews/doc-desc-304
Use document/description/definition consistently (3.0.4)
2 parents 7792c15 + e37325e commit 0a1cb43

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

versions/3.0.4.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This document is licensed under [The Apache License, Version 2.0](https://www.ap
1010

1111
The OpenAPI Specification (OAS) defines a standard, language-agnostic interface to RESTful APIs which allows both humans and computers to discover and understand the capabilities of the service without access to source code, documentation, or through network traffic inspection. When properly defined, a consumer can understand and interact with the remote service with a minimal amount of implementation logic.
1212

13-
An OpenAPI definition can then be used by documentation generation tools to display the API, code generation tools to generate servers and clients in various programming languages, testing tools, and many other use cases.
13+
An OpenAPI description can then be used by documentation generation tools to display the API, code generation tools to generate servers and clients in various programming languages, testing tools, and many other use cases.
1414

1515
For examples of OpenAPI usage and additional documentation, please visit [learn.openapis.org](https://learn.openapis.org/).
1616

@@ -126,11 +126,11 @@ The OpenAPI Specification is versioned using a `major`.`minor`.`patch` versionin
126126

127127
Occasionally, non-backwards compatible changes may be made in `minor` versions of the OAS where impact is believed to be low relative to the benefit provided.
128128

129-
An OpenAPI document compatible with OAS 3.\*.\* contains a required [`openapi`](#oasVersion) field which designates the version of the OAS that it uses.
129+
An OpenAPI description document compatible with OAS 3.\*.\* contains a required [`openapi`](#oasVersion) field which designates the version of the OAS that it uses.
130130

131131
### Format
132132

133-
An OpenAPI document that conforms to the OpenAPI Specification is itself a JSON object, which may be represented either in JSON or YAML format.
133+
An OpenAPI description document that conforms to the OpenAPI Specification is itself a JSON object, which may be represented either in JSON or YAML format.
134134

135135
For example, if a field has an array value, the JSON array representation will be used:
136136

@@ -151,7 +151,7 @@ In order to preserve the ability to round-trip between YAML and JSON formats, YA
151151
- Tags MUST be limited to those allowed by [YAML's JSON schema ruleset](https://yaml.org/spec/1.2/spec.html#id2803231), which defines a subset of the YAML syntax and is unrelated to [JSON Schema](https://tools.ietf.org/html/draft-wright-json-schema-00).
152152
- Keys used in YAML maps MUST be limited to a scalar string, as defined by the [YAML Failsafe schema ruleset](https://yaml.org/spec/1.2/spec.html#id2802346).
153153

154-
**Note:** While APIs may be defined by OpenAPI documents in either YAML or JSON format, the API request and response bodies and other content are not required to be JSON or YAML.
154+
**Note:** While APIs may be described by OpenAPI documents in either YAML or JSON format, the API request and response bodies and other content are not required to be JSON or YAML.
155155

156156
### <a name="documentStructure"></a>OpenAPI Description Structure
157157

@@ -2311,7 +2311,7 @@ For computing links, and providing instructions to execute them, a [runtime expr
23112311

23122312
Field Name | Type | Description
23132313
---|:---:|---
2314-
<a name="linkOperationRef"></a>operationRef | `string` | A relative or absolute URI reference to an OAS operation. This field is mutually exclusive of the `operationId` field, and MUST point to an [Operation Object](#operationObject). Relative `operationRef` values MAY be used to locate an existing [Operation Object](#operationObject) in the OpenAPI definition.
2314+
<a name="linkOperationRef"></a>operationRef | `string` | A relative or absolute URI reference to an OAS operation. This field is mutually exclusive of the `operationId` field, and MUST point to an [Operation Object](#operationObject). Relative `operationRef` values MAY be used to locate an existing [Operation Object](#operationObject) in the OpenAPI description.
23152315
<a name="linkOperationId"></a>operationId | `string` | The name of an _existing_, resolvable OAS operation, as defined with a unique `operationId`. This field is mutually exclusive of the `operationRef` field.
23162316
<a name="linkParameters"></a>parameters | Map[`string`, Any \| [{expression}](#runtimeExpression)] | A map representing parameters to pass to an operation as specified with `operationId` or identified via `operationRef`. The key is the parameter name to be used (optionally qualified with the parameter location, e.g. `path.id` for an `id` parameter in the path), whereas the value can be a constant or an expression to be evaluated and passed to the linked operation.
23172317
<a name="linkRequestBody"></a>requestBody | Any \| [{expression}](#runtimeExpression) | A literal value or [{expression}](#runtimeExpression) to use as a request body when calling the target operation.
@@ -2321,9 +2321,9 @@ Field Name | Type | Description
23212321
This object MAY be extended with [Specification Extensions](#specificationExtensions).
23222322

23232323
A linked operation MUST be identified using either an `operationRef` or `operationId`.
2324-
In the case of an `operationId`, it MUST be unique and resolved in the scope of the OAS document.
2324+
In the case of an `operationId`, it MUST be unique and resolved in the scope of the OpenAPI description.
23252325
Because of the potential for name clashes, the `operationRef` syntax is preferred
2326-
for specifications with external references.
2326+
for multi-document OpenAPI descriptions.
23272327

23282328
Note that it is not possible to provide a constant value to `parameters` that matches the syntax of a runtime expression.
23292329
It is possible to have ambiguous parameter names, e.g. `name: id, in: path` and `name: path.id, in: query`; this is NOT RECOMMENDED and the behavior is implementation-defined, however implementations SHOULD prefer the qualified interpretation (`path.id` as a path parameter), as the names can always be qualified to disambiguate them (e.g. using `query.path.id` for the query paramter).
@@ -3123,7 +3123,7 @@ MyResponseType:
31233123
propertyName: petType
31243124
```
31253125

3126-
The expectation now is that a property with name `petType` _MUST_ be present in the response payload, and the value will correspond to the name of a schema defined in the OAS document. Thus the response payload:
3126+
The expectation now is that a property with name `petType` _MUST_ be present in the response payload, and the value will correspond to the name of a schema defined in the OpenAPI description. Thus the response payload:
31273127

31283128
```json
31293129
{
@@ -3942,23 +3942,23 @@ Two examples of this:
39423942

39433943
### OpenAPI Document Formats
39443944

3945-
OpenAPI documents use JSON, YAML, and JSON Schema, and therefore share their security considerations:
3945+
OpenAPI description documents use JSON, YAML, and JSON Schema, and therefore share their security considerations:
39463946
- [JSON](https://www.iana.org/assignments/media-types/application/json)
39473947
- [YAML](https://www.iana.org/assignments/media-types/application/yaml)
39483948
- [JSON Schema Core](https://json-schema.org/draft/2020-12/json-schema-core#section-13)
39493949
- [JSON Schema Validation](https://json-schema.org/draft/2020-12/json-schema-validation#name-security-considerations)
39503950

39513951
### Tooling and Usage Scenarios
39523952

3953-
In addition, OpenAPI documents are processed by a wide variety of tooling for numerous different purposes, such as client code generation, documentation generation, server side routing, and API testing. OpenAPI document authors must consider the risks of the scenarios where the OpenAPI document may be used.
3953+
In addition, OpenAPI description documents are processed by a wide variety of tooling for numerous different purposes, such as client code generation, documentation generation, server side routing, and API testing. OpenAPI description authors must consider the risks of the scenarios where the OpenAPI description may be used.
39543954

39553955
### Security Schemes
39563956

3957-
An OpenAPI document describes the security schemes used to protect the resources it defines. The security schemes available offer varying degrees of protection. Factors such as the sensitivity of the data and the potential impact of a security breach should guide the selection of security schemes for the API resources. Some security schemes, such as basic auth and OAuth Implicit flow, are supported for compatibility with existing APIs. However, their inclusion in OpenAPI does not constitute an endorsement of their use, particularly for highly sensitive data or operations.
3957+
An OpenAPI description describes the security schemes used to protect the resources it defines. The security schemes available offer varying degrees of protection. Factors such as the sensitivity of the data and the potential impact of a security breach should guide the selection of security schemes for the API resources. Some security schemes, such as basic auth and OAuth Implicit flow, are supported for compatibility with existing APIs. However, their inclusion in OpenAPI does not constitute an endorsement of their use, particularly for highly sensitive data or operations.
39583958

39593959
### Handling External Resources
39603960

3961-
OpenAPI documents may contain references to external resources that may be dereferenced automatically by consuming tools. External resources may be hosted on different domains that may be untrusted. References in an OpenAPI document, or across OpenAPI documents may cause a cycle. Tooling must detect and handle cycles to prevent resource exhaustion.
3961+
OpenAPI description documents may contain references to external resources that may be dereferenced automatically by consuming tools. External resources may be hosted on different domains that may be untrusted. References in an OpenAPI document, or across OpenAPI documents within a multi-document OpenAPI description, may cause a cycle. Tooling must detect and handle cycles to prevent resource exhaustion.
39623962

39633963
### Markdown and HTML Sanitization
39643964

0 commit comments

Comments
 (0)