[media-types] [IANA #1453840] text/qml registration requ est
"Amanda Baber via RT" <[email protected]> Sat, 27 Jun 2026 04:44:49 +0000
| Newsgroups | gmane.ietf.types |
|---|---|
| Message-ID | <[email protected]> |
Hi Alexey, Sending a reminder for this request from June 17th. thanks, Amanda On Wed Jun 17 17:37:59 2026, amanda.baber wrote: > Hi Alexey, > > We've received a request to register text/qml as a grandfathered > standards-tree type. Would you be able to review this by July 31st? > > They've provided an argument for grandfathering (pasted below after > the registration form), but would be OK with vendor-tree registration > if you can't recommend that. > > thanks, > Amanda > > ===== > > FORM: > > Name: Samuel Cuesta Pardo > > Email: [email protected] > > Media type name: text > > Media subtype name: qml > > Required parameters: charset > The charset parameter MUST be specified. The default value is "utf-8". > QML files are text files that use Unicode encoding. > > Optional parameters: N/A > > Encoding considerations: 8bit > > QML files are UTF-8 encoded text. Lines may exceed 998 octets in > length. As such, "8-bit" encoding considerations apply per RFC 6838 > section 6. Transports not capable of handling 8-bit text should apply > appropriate encoding (e.g., quoted-printable or base64). > > Security considerations: (1) QML files contain executable content in > the form of declarative JavaScript expressions and property bindings. > When processed by a QML engine (such as Qt QML), this content executes > within a sandboxed environment with controlled access to system > resources via the Qt security model. QML engines that load content > from untrusted sources should implement appropriate sandboxing, access > controls, and permission systems. > > (2) QML files do not inherently require privacy or integrity services. > However, applications loading QML from untrusted network sources > should verify content integrity and authenticity through external > mechanisms such as TLS (HTTPS) and code signing. > > (3) The QML language supports network requests, local file access > (subject to engine permissions), and interaction with external > devices. QML engines should implement appropriate permission models to > restrict these capabilities when processing untrusted content. > > (4) QML uses a JavaScript-like syntax but does not use XML or JSON as > its underlying format. No specific XML or JSON security considerations > apply. > > (5) QML files may import external modules by URI. Resolvers processing > these imports should validate the source and integrity of imported > modules. > > Interoperability considerations: QML is a language specific to the Qt > framework ecosystem. Files of this type are intended to be processed > by Qt QML-compatible engines. Other consumers may treat the content as > plain text (text/plain) as a fallback, since QML syntax is human- > readable. The QML language is defined by The Qt Company and its > specification is publicly available. > > Published specification: Qt QML Documentation: https://doc.qt.io/qt- > 6/qtqml-index.html > Qt QML Language Specification: https://doc.qt.io/qt-6/qml- > language.html > QmlBrowser (implementation serving text/qml over HTTP): > https://github.com/Toorion/qml-browser > > Applications which use this media: QmlBrowser > (https://github.com/Toorion/qml-browser) — a web browser that renders > QML pages served over HTTP > Qt Creator IDE — identifies and opens .qml files > qmlscene — Qt QML runtime viewer > Qt QML Engine (QQmlEngine) — the core QML runtime used by all Qt Quick > applications > Any application built with the Qt framework using the Qt QML module > > Fragment identifier considerations: N/A > > Restrictions on usage: None > > 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): .qml > 4. Macintosh file type code: N/A > 5. Object Identifiers: N/A > > General Comments: > > Person to contact for further information: > > 1. Name: Samuel > 2. Email: [email protected] > > Intended usage: COMMON > > == > > ADDITIONAL INFORMATION: > > The applicant has provided the following information in support of > grandfathering the type: > > Documentation: > > QML (Qt Modeling Language) has a published, publicly available > specification maintained by The Qt Company: > > - Qt 6 QML reference: https://doc.qt.io/qt-6/qtqml-index.html > - Qt 6 QML language syntax: https://doc.qt.io/qt-6/qtqml-syntax- > basics.html > - Wikipedia: https://en.wikipedia.org/wiki/QML_(Qt_Modeling_Language) > > The language has been documented in published books, including: > > - Qt 6: QML: https://www.qt.io/product/qt6/qml-book > - Qt 6 C++ GUI Programming Cookbook: > https://github.com/PacktPublishing/QT6-C-GUI-Programming-Cookbook--- > Third-Edition- > - Qt 6 QML for begginers: > https://github.com/rutura/Qt6QMLBeginnersBookRelease > > Wide Use: > > QML has been in continuous production use since Qt 4.7 (September > 2010) — over 15 years. It is the primary declarative UI language for > the Qt framework, which is one of the most widely used cross-platform > application development frameworks. > > Notable deployments and users include: > > 1) KDE Plasma — the default desktop environment for multiple major > Linux distributions (openSUSE, Kubuntu, Fedora KDE Spin) uses QML > extensively for its shell and widgets. > > 2) Automotive industry — Qt/QML is widely used for in-vehicle > infotainment (IVI) systems. Mercedes-Benz MBUX, Volvo, and other > manufacturers use Qt-based systems. > > 3) Embedded systems — Qt/QML is a leading framework for medical device > UIs, industrial HMI, and IoT devices. > > 4) Open source community — Multiple projects use QML, including: > > - Liri OS > - Plasma Mobile (KDE) > - Multiple apps on Flathub > > Existing Use of the text/qml Media Type: > > The text/qml media type (not just the .qml extension) is already in > use: > > - Qt Creator (The Qt Company's official IDE) — internal MIME handling > - QmlBrowser (https://github.com/Toorion/qml-browser) — a Chromium- > based browser that renders QML pages served with Content-Type: > text/qml > - GitHub Linguist — recognizes .qml files > - Multiple editor extensions (VS Code, Kate, etc.) > > Multiple Implementations: > > Beyond the reference implementation in Qt, QML parsers and tooling > include: > > - The official QtQML engine (open source, LGPLv3) > - Community tooling such as qmllint, qmlformat (bundled with Qt) > - Third-party syntax highlighters and language servers > > Standardization-like Characteristics: > > While The Qt Company is not an IESG-recognized SDO, the QML > specification: > > - Is publicly published and versioned > - Has been stable across multiple major Qt releases (4.7 → 5.x → 6.x) > - Has an open governance model (The Qt Project, > https://www.qt.io/developers/qt-project-governance) > - Is implemented under an open source license (LGPLv3) > > Summary: > > Given QML's 15+ years of production use, public specification, > multiple independent deployments across industries (desktop, > automotive, embedded), and existing use of the text/qml media type in > tooling, I respectfully request that the IESG-designated media type > experts consider recommending text/qml for grandfathered registration > in the Standards tree. > > If the experts determine that grandfathering is not appropriate, I am > willing to proceed with the Vendor tree (text/vnd.qml) as a fallback. _______________________________________________ media-types mailing list -- [email protected] To unsubscribe send an email to [email protected]