; vim: syntax=abnf:

; Copyright (c) 2021 <dev@brigid.jp>
; This software is released under the MIT License.
; https://opensource.org/licenses/mit-license.php

reg-name = *(unreserved / pct-encoded / "-" / ".")
; https://www.rfc-editor.org/errata/eid4942

relative-part = "//" authority path-abempty
  / path-absolute
  / path-noscheme
  / path-abempty ; this was added
  / path-empty
; https://www.rfc-editor.org/errata/eid5428

path-empty = ""
; https://www.rfc-editor.org/errata/eid2033

http-URI = "http:" "//" authority path-abempty ["?" query]
; https://www.rfc-editor.org/errata/eid4251

https-URI = "https:" "//" authority path-abempty ["?" query]
; https://www.rfc-editor.org/errata/eid4252

chunk-ext = *(BWS ";" BWS chunk-ext-name [BWS "=" BWS chunk-ext-val])
; https://www.rfc-editor.org/errata/eid4667
; https://www.rfc-editor.org/errata/eid4825

field-content = field-vchar [1*(SP / HTAB / field-vchar) field-vchar]
; https://www.rfc-editor.org/errata/eid4189

uri-host = host
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc7230.txt#L4683
; uri-host = <host, see [RFC3986], Section 3.2.2>

Via = <undef>
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc7230.txt#L4060
; comment = "(" *( ctext / quoted-pair / comment ) ")"
;
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc7230.txt#L4580
; Via = *( "," OWS ) ( received-protocol RWS received-by [ RWS comment
;  ] ) *( OWS "," [ OWS ( received-protocol RWS received-by [ RWS
;  comment ] ) ] )

frame-masking-key = %x00000000-FFFFFFFF
; https://www.rfc-editor.org/errata/eid5288

object = begin-object [<member> *(value-separator <member>)] end-object
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc8259.txt#L324
; object = begin-object [ member *( value-separator member ) ]
;          end-object

value = false / null / true / <object> / <array> / number / string
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc8259.txt#L308
; value = false / null / true / object / array / number / string

array = begin-array [<value> *(value-separator <value>)] end-array
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc8259.txt#L357
; array = begin-array [ value *( value-separator value ) ] end-array

member = string name-separator <value>
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc8259.txt#L327
; member = string name-separator value

JSON-text = ws <value> ws
; https://github.com/brigid-jp/brigid/blob/develop/test/lab/rfc8259.txt#L257
; JSON-text = ws value ws
