A specially crafted XML file may contain an XSL stylesheet that transforms generic XML data into an SVG file. Example: https://gist.github.com/drott/1fc70b3c7f0ac314d1fe2e5beecc5490?short_path=1c60adf This is a special case of XSLT processing that according to recently introduced use counters XSLPIInSVGImage (UseCounter id 5777), XSLPIInSVGStandaloneDoc (UseCounterId 5778) we consider virtually non-existant on the web and which we want to deprecated and remove before fully phasing out XSLT. This is rolled out in sync with experimental testing of the Rust based XML parser. This will not be immediately rolled out to 100% in the marked shipping release version. Update: https://crrev.com/c/7502375 introduced metrics that measure this feature, and it was found that this feature was not used. Which enables us to proceed with launching the Rust XML parser for SVG scenarios, too, which is https://chromestatus.com/feature/5309598397497344 .
Support for this feature is spotty. It seems hard to find a reason why the image resource could not be static and completed on the server side instead of requiring client side processing. Firefox and Chrome allow inline XSLT to generate SVG for a standalone SVG doc (top level navigated to example.svg), but do not process the XSLT when the image is referenced as an external image. (Safari does support this use case.) Continuing to allow usage of this feature blocks transitioning to secure XML parsing through Rust. We previously disallowed use of XSLT as an external resource loaded from an image in https://chromium-review.googlesource.com/c/chromium/src/+/6943450 - this is the next step. (without I2D/I2R) Newly introduced use counters show that usage of this functionality on the web is virtually non-existent. In Dev and Canary, the use counters show the value of 0. XSLPIInSVGImage (UseCounter id 5777), XSLPIInSVGStandaloneDoc (UseCounterId 5778) I propose to remove this functionality immediately in M147. Removing the functionality allows us to proceed with experimentation of the Rust XML parser for SVG scenarios as well, increasing robustness and improving confidence in our performance and compatibility data on the new parser.