Skip to content

3.2: update normative reference for JSON to RFC8259 #4499

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 27, 2025

Conversation

ralfhandl
Copy link
Contributor

@ralfhandl ralfhandl commented Mar 26, 2025

Fixes #4487

Non-obvious changes are commented.

Tick one of the following options:

  • schema changes are included in this pull request
  • schema changes are needed for this pull request but not done yet
  • no schema changes are needed for this pull request

@ralfhandl ralfhandl requested review from a team as code owners March 26, 2025 13:44
@ralfhandl ralfhandl changed the title Update normative reference for JSON to RFC8259 3.2: update normative reference for JSON to RFC8259 Mar 26, 2025
@@ -117,7 +117,7 @@ Occasionally, non-backwards compatible changes may be made in `minor` versions o

### Format

An OpenAPI Document that conforms to the OpenAPI Specification is itself a JSON object, which may be represented either in JSON or YAML format.
An OpenAPI Document that conforms to the OpenAPI Specification is itself a JSON object, which may be represented either in [[RFC8259|JSON]] or [[YAML|YAML]] format.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make reference to JSON RFC explicit.

Otherwise our HTML build script would reference the old RFC in

line = line.replace('JSON or YAML format.','[[RFC7159|JSON]] or [[YAML|YAML]] format.');

@@ -2556,13 +2556,13 @@ The runtime expression is defined by the following [ABNF](https://tools.ietf.org
; %x2F ('/') and %x7E ('~') are excluded from 'unescaped'
escaped = "~" ( "0" / "1" )
; representing '~' and '/', respectively
name = *( CHAR )
name = *char
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: RFC7159 and RFC8259 both name this rule char. ABNF rule names are case-insensitive, but it is still easier to check the reference if the casing is exactly the same.

token = 1*tchar
tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "."
/ "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA
```

Here, `json-pointer` is taken from [RFC6901](https://tools.ietf.org/html/rfc6901), `CHAR` from [RFC7159](https://tools.ietf.org/html/rfc7159#section-7) and `token` from [RFC9110](https://www.rfc-editor.org/rfc/rfc9110.html#section-5.6.2).
Here, `json-pointer` is taken from [RFC6901](https://tools.ietf.org/html/rfc6901), `char` from [RFC8259](https://tools.ietf.org/html/rfc8259#section-7) and `token` from [RFC9110](https://www.rfc-editor.org/rfc/rfc9110.html#section-5.6.2).
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use RFC8259 rule name casing.

@ralfhandl ralfhandl added this to the v3.2.0 milestone Mar 26, 2025
@ralfhandl ralfhandl added the editorial Wording and stylistic issues label Mar 26, 2025
@lornajane lornajane merged commit a794bc6 into OAI:v3.2-dev Mar 27, 2025
2 checks passed
@ralfhandl ralfhandl deleted the 3.2-reference-rfc8259 branch March 27, 2025 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
editorial Wording and stylistic issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants