[media-types] [IANA #1453324] text/vnd.bovnar registra tion request

"Amanda Baber via RT" <[email protected]> Mon, 22 Jun 2026 18:14:45 +0000
Newsgroups gmane.ietf.types
Message-ID <[email protected]>
Hi Darrel,

There's been another update to the links listed in the published specification section. I've edited them into the template and added a few line breaks.

The applicant writes, "As time of writing I released bovnar 1.1 with a minor addidtion to the grammar (not breaking 1.0 constructs): version directive, datetime type annotation and indexed array dereferencing. As of this release sadly the links to the documentation have changed again. Hopefully it is the last change of that during the review process. I apologize for this inconvenience."

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:

Project website
https://www.bovnar.io

Source repository on GitHub
https://github.com/sothis/bovnar

Specification — the authoritative format spec (v1.1)
https://github.com/sothis/bovnar/blob/main/doc/1_bovnar_spec.md

Unit System Reference — physical units, currencies, prefixes, and symbols
https://github.com/sothis/bovnar/blob/main/doc/2_bovnar_unit_system.md

Formal EBNF Grammar — machine-readable grammar for the format
https://github.com/sothis/bovnar/blob/main/doc/5_bovnar.ebnf

FAQ — common questions on the format, types, units, and limits
https://github.com/sothis/bovnar/blob/main/doc/6_bovnar_faq.md

Conformance Test Tool — test suite and IUT protocol for implementations
https://github.com/sothis/bovnar/blob/main/doc/7_bovnar_conformance.md

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

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]