Intent to Experiment: Parse processing instructions in HTML

100 views
Skip to first unread message

Chromestatus

unread,
Mar 31, 2026, 7:34:38 AM (yesterday) Mar 31
to blin...@chromium.org, foo...@chromium.org, nrose...@chromium.org
Contact emails
nrose...@chromium.org, foo...@chromium.org

Explainer
https://github.com/WICG/declarative-partial-updates/blob/main/patching-explainer.md#proposed-markup

Specification
https://github.com/whatwg/html/pull/12118

Summary
Processing instructions (syntax: <?target data>) are an existing DOM construct, exposed in XML, that allows node objects that are not elements but can have some semantic meaning for the processing of a document. For example, they can be used to denote ranges for streaming or highlighting without requiring new DOM elements and changing the DOM structure as far as CSS is concerned, or as directives for the HTML parser about how to buffer and stream.

Blink component
Blink>HTML>Parser

Web Feature ID
html

TAG review
https://github.com/w3ctag/design-reviews/issues/1134

TAG review status
Pending

Goals for experimentation
Changing the parser behavior to recognize processing instructions might uncover web compatibility issues in certain websites (though hopefully not!). We want to uncover them early in case it affects the shape of the API. Note that this is a finch (to 1% stable) rather than an OT.

Risks


Interoperability and Compatibility
This feature changes the HTML parser to recognize XML processing instruction syntax, which was previously parsed as (bogus) comments. Querying HA showed that this is relatively safe, specifically as it doesn't parse xml-stylesheet and special characters like $.

Gecko: No signal (https://github.com/mozilla/standards-positions/issues/1369)

WebKit: No signal (https://github.com/WebKit/standards-positions/issues/628)

Web developers: No signals

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

No information provided


Ongoing technical constraints
None

Debuggability
No information provided

Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?
Yes

Is this feature fully tested by web-platform-tests?
Yes
https://wpt.fyi/results/html/syntax/parsing/parse-processing-instruction.tentative.html?label=master&label=experimental&aligned&q=processing-instruction

Flag name on about://flags
No information provided

Finch feature name
HTMLProcessingInstruction

Requires code in //chrome?
False

Tracking bug
https://issues.chromium.org/issues/481087638

Estimated milestones
Shipping on desktop150
Origin trial desktop first148
Origin trial desktop last150
Shipping on Android150
Origin trial Android first148
Origin trial Android last150
Shipping on WebView150
Origin trial WebView first148
Origin trial WebView last150


Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/6534495085920256?gate=5414789998313472

Links to previous Intent discussions
Intent to Prototype: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6981ee47.050a0220.baa59.0100.GAE%40google.com


This intent message was generated by Chrome Platform Status.

Mike Taylor

unread,
10:31 AM (2 hours ago) 10:31 AM
to Chromestatus, blin...@chromium.org, foo...@chromium.org, nrose...@chromium.org

Is there any fuzzing test coverage for this proposed change?

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/69cbb13f.2b0a0220.5f79f.0391.GAE%40google.com.

Daniel Bratell

unread,
10:55 AM (2 hours ago) 10:55 AM
to Mike Taylor, Chromestatus, blin...@chromium.org, foo...@chromium.org, nrose...@chromium.org

Has this already run in canary and beta? If so, did it give any indication of risk?

/Daniel

Noam Rosenthal

unread,
11:17 AM (2 hours ago) 11:17 AM
to Daniel Bratell, Mike Taylor, Chromestatus, blin...@chromium.org, foo...@chromium.org
On Wed, Apr 1, 2026 at 3:55 PM Daniel Bratell <brat...@gmail.com> wrote:

Has this already run in canary and beta? If so, did it give any indication of risk?

It's been enabled as an experimental feature in Canary for a few weeks.
No bugs have been filed on it so far.
We haven't run a finch on Canary yet, but we'll do that of course and open gradually.
I guess I could do that bit without waiting for the I2E but I wanted to get my ducks in a row :)

/Daniel

On 2026-04-01 16:30, Mike Taylor wrote:

Is there any fuzzing test coverage for this proposed change?

Fuzzers found some bugs during early development, so yes. 

Yoav Weiss (@Shopify)

unread,
11:24 AM (1 hour ago) 11:24 AM
to blink-dev, Noam Rosenthal, Mike Taylor, Chromestatus, blin...@chromium.org, Philip Jägenstedt, Daniel Bratell
LGTM to experiment M148-M150 inclusive

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Reply all
Reply to author
Forward
0 new messages