Skip to content

Commit

Permalink
Apply suggestions from code review
Browse files Browse the repository at this point in the history
Co-authored-by: Jeremy Fiel <[email protected]>
  • Loading branch information
handrews and jeremyfiel authored Jun 8, 2024
1 parent 367c599 commit b36e61f
Showing 1 changed file with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions versions/3.1.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,8 @@ If the same JSON/YAML object is parsed multiple times and the respective context

#### <a name="resolvingImplicitConnections"></a>Resolving Implicit Connections

Several features of this specification require resolving a non-URI-based connection to some other part of the OpenAPI Description (OAD).
Several features of this specification require resolution of non-URI-based connections to some other part of the OpenAPI Description (OAD).
``

These connections are easily resolved in single-document OADs, but the resolution process in multi-document OADs has never been spelled out, and is therefore _implementation-defined_, within the constraints described in this section.
In some cases, an unambiguous URI-based alternative is available, and OAD authors are RECOMMENDED to always use the alternative:
Expand All @@ -210,10 +211,10 @@ A fifth implicit connection, which involves appending the templated URL paths of
It is RECOMMENDED to consider all Operation Objects from all parsed documents when resolving any Link Object `operationId`.
This requires ensuring that all referenced documents have been parsed prior to determining an `operationId` to be unresolvable.

The implicit connections in the Security Requirement Object and Discriminator Object rely on the _component name_, which is the property name holding the component in the appropriate typed sub-object of the Components Object.
The implicit connections in the Security Requirement Object and Discriminator Object rely on the _component name_, which is the property name holding the component in the appropriately typed sub-object of the Components Object.
For example, the component name of the Schema Object at `#/components/schemas/Foo` is `Foo`.
The implicit connection of tags in the Operation Object use the `name` field of Tag Objects, which (like the Components Object) are found under the root OpenAPI Object.
This means that resolving component names and tag names both depend on starting from the correct OpenAPI Object.
The implicit connection of `tags` in the Operation Object use the `name` field of Tag Objects, which (like the Components Object) are found under the root OpenAPI Object.
This means resolving component names and tag names both depend on starting from the correct OpenAPI Object.

For resolving component and tag name connections from a referenced (non-entry) document, it is RECOMMENDED that tools resolve from the entry document, rather than the current document.
This allows Security Scheme Objects and Tag Objects to be defined with the API's deployment information (the top-level Server Objects), and treated as an interface for referenced documents to access.
Expand Down

0 comments on commit b36e61f

Please sign in to comment.