[media-types] [IANA #1453324] text/vnd.bovnar registra tion request
"Amanda Baber via RT" <[email protected]> Wed, 03 Jun 2026 18:53:58 +0000
| Newsgroups | gmane.ietf.types |
|---|---|
| Message-ID | <[email protected]> |
Hi Darrel, Some links in the text/vnd.bovnar specification section had to be fixed. Here's the updated version: Published specification: - Format specification: https://github.com/sothis/bovnar/blob/main/web/doc/1_bovnar_spec.md - Grammar (EBNF): https://github.com/sothis/bovnar/blob/main/web/doc/5_bovnar.ebnf - Unit system: https://github.com/sothis/bovnar/blob/main/web/doc/2_bovnar_unit_system.md - Project / overview: https://github.com/sothis/bovnar - Website: https://www.bovnar.io thanks, Amanda On Tue Jun 02 00:10:30 2026, amanda.baber wrote: > Hi Darrel, > > Would you be able to review this one for us by June 15th? > > thanks, > Amanda > > ===== > > Name: Janos Sonntag > > Email: [email protected] > > Media type name: text > > Media subtype name: vnd.vnd.bovnar > > Required parameters: N/A > > Optional parameters: `charset` — per RFC 6657. Bovnar documents are > Unicode text encoded as UTF-8; > `UTF-8` is the only interoperable value and the assumed default. Other > charsets > SHOULD NOT be used. > > Encoding considerations: 8bit > > Bovnar document is UTF-8 text and may contain non-ASCII octets in > string > values, identifiers, and unit symbols (e.g. `m/s²`, `µ`). Embedded > binary data is > carried as *escaped octet streams* (`\xNN …`), so the byte stream > remains text; > no transfer encoding is required for 8-bit-clean transports. Over 7- > bit-only > transports, use quoted-printable or base64. > > Security considerations: A Bovnar document is passive data. It carries > no scripting, macros, external > entity references, or instructions that a conforming parser executes; > processing > a document cannot, by itself, cause code execution. > > Implementations consuming untrusted documents should nonetheless note: > > - *Resource consumption.* Deeply nested structures/arrays and very > large octet > streams or array dimensions can consume memory and CPU. Parsers SHOULD > bound > input size and nesting depth. The reference implementation exposes a > configurable maximum document size and recovers from malformed input > rather > than aborting. > - *Internal references.* The `&.path` reference syntax names another > value within > the *same* document only; it does not trigger any network or > filesystem access, > so it is not an SSRF/XXE vector. Cyclic or dangling references are a > validation > error, not a fetch. > - *Numeric / unit values.* Values are validated against their declared > type, > bit-width, base, and physical unit. A mismatch is a parse error. > Consumers > should still range-check semantically significant quantities. > - *Binary payloads.* Octet streams are opaque bytes; a consumer that > interprets > or executes them is responsible for its own validation. > > The reference implementation is built with standard hardening (bounds > checks, > stack protection, FORTIFY) and is exercised by a fuzz suite. > > Interoperability considerations: The format is strongly and explicitly > typed: each value's type family, bit-width, > numeric base, and physical unit travel inline with the value. > Producers SHOULD > emit canonical type annotations; consumers MUST reject documents whose > inline > values contradict their annotations (e.g. a unit mismatch). Units > outside a > consumer's known set are a validation error rather than silently > ignored. The > grammar is specified in EBNF (see published specification) to support > independent, interoperable implementations. > > Published specification: - Format specification: > <https://github.com/sothis/bovnar/blob/main/doc/1_bovnar_spec.md> > - Grammar (EBNF): > <https://github.com/sothis/bovnar/blob/main/doc/5_bovnar.ebnf> > - Unit system: > <https://github.com/sothis/bovnar/blob/main/doc/2_bovnar_unit_system.md> > - Project / overview: <https://github.com/sothis/bovnar> > - Website: <https://www.bovnar.io> > > Applications which use this media: Configuration and data interchange > for scientific, engineering, financial, and > industrial systems where values must carry their physical unit and > exact numeric > type. Implementations include the Bovnar C99 reference library and > command-line > tool, and the `bovnar` Python package on PyPI > (<https://pypi.org/project/bovnar/>). > Editor support exists for VS Code, Sublime Text, Vim, and Geany. > > Fragment identifier considerations: N/A > > Restrictions on usage: N/A > > Provisional registration? (standards tree only): No > > Additional information: > > 1. Deprecated alias names for this type: N/A > 2. Magic number(s): N/A > 3. File extension(s): bvnr, bovnar > 4. Macintosh file type code: N/A > 5. Object Identifiers: N/A > > General Comments: > > Person to contact for further information: > > 1. Name: Janos Sonntag > 2. Email: [email protected] > > Intended usage: COMMON > > Author/Change controller: Janos Sonntag (the Bovnar project > maintainer) _______________________________________________ media-types mailing list -- [email protected] To unsubscribe send an email to [email protected]