[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]