Currently, there is no mention of UTF-8 BOM in the ABNF. However, since BOM support is now part of the official test suite (toml-lang/toml-test@542746b), perhaps it should be made more explicit that TOML supports optional UTF-8 BOM.
For comparison, RFC 5424 does mention the UTF-8 BOM in its ABNF:
MSG-UTF8 = BOM UTF-8-STRING
BOM = %xEF.BB.BF
For TOML, the change could simply be:
;; Overall Structure
toml = [ utf8-bom ] expression *( newline expression )
utf8-bom = %xEF.BB.BF ; U+FEFF
Currently, there is no mention of UTF-8 BOM in the ABNF. However, since BOM support is now part of the official test suite (toml-lang/toml-test@542746b), perhaps it should be made more explicit that TOML supports optional UTF-8 BOM.
For comparison, RFC 5424 does mention the UTF-8 BOM in its ABNF:
For TOML, the change could simply be: