| ▲ | Aurornis 7 hours ago |
| I have yet to read an article complaining about XSLT deprecation from someone who can explain why they actually used it and why it’s important to them. > I will keep using XSLT, and in fact will look for new opportunities to rely on it. This is the closest I’ve seen, but it’s not an explanation of why it was important before the deprecation. It’s a declaration that they’re using it as an act of rebellion. |
|
| ▲ | ndiddy 6 hours ago | parent | next [-] |
| My guess is that a lot of the controversy is simply because this is one of the first times that a major web feature has been removed from the web standards. For the past 20+ years, people have grown to expect that any page they make will remain viewable indefinitely. It doesn't matter that most people don't like XSLT, or that barely any sites use it. Removing XSLT does break some websites and that violates their expectation, so they get mad at it reflexively. As someone who's interested in sustainable open source development, I also find the circumstances around the deprecation to be interesting and worth talking about. The XSLT implementation used by all the browsers is a 25 year old C library whose maintainer recently resigned due to having to constantly deal with security bugs reported by large companies who don't provide any financial contribution or meaningful assistance to the project. It seems like the browser vendors were fine with the status quo of having XSLT support as long as they didn't have to contribute any resources to it. As soon as that free maintenance went away and they were faced with either paying someone to continue maintenance or writing a new XSLT library in a safer language, they weren't willing to pay the market value for what it would cost to do this and decided to drop the feature instead. |
|
| ▲ | jerf 7 hours ago | parent | prev | next [-] |
| What a horrible technology to wrap around your neck for rebellion's sake. XSLT didn't succeed because it's fundamentally terrible and was a bad idea from the very beginning. But I suppose forcing one's self to use XSLT just to spite Google would constitute its own punishment. |
|
| ▲ | crazygringo 7 hours ago | parent | prev | next [-] |
| Yeah, the idea that it's some kind of foundation of the "open web" is quite silly. I've used XSLT plenty for transforming XML data for enterprises but that's all backend stuff. Until this whole kerfuffle I never knew there was support for it in the browser in the first place. Nor, it seems, did most people. If there's some enterprise software that uses it to transform some XML that an API produces into something else client-side, relying on a polyfill seems perfectly reasonable. Or just move that data transformation to the back-end. |
|
| ▲ | zekica 7 hours ago | parent | prev | next [-] |
| I used it. It's an (ugly) functional programming language that can transform one XML into another - think of it as Lisp for XML processing but even less readable. It can work great when you have XML you want to present nicely in a browser by transforming it into XHTML while still serving the browser the original XML. One use I had was to show the contents of RSS/Atom feeds as a nice page in a browser. |
| |
| ▲ | rwmj 5 hours ago | parent | next [-] | | I would just do this on the server side. You can even do it statically when generating the XML. In fact until all the stuff about XSLT in browsers appeared recently, I didn't even know that browsers could do it. | | |
| ▲ | wizzwizz4 2 hours ago | parent [-] | | Converting the contents of an Atom feed into (X)HTML means it's no longer a valid Atom feed. The same is true for many other document formats, such as flattened ODF. |
| |
| ▲ | fuzzzerd 7 hours ago | parent | prev [-] | | I have done same thing with sitemap.xml. |
|
|
| ▲ | Fileformat 6 hours ago | parent | prev | next [-] |
| Making RSS/Atom feeds friendly to new users is key for its adoption, and for the open web. XSLT is the best way to do that. I made a website to promote doing using XSLT for RSS/Atom feeds. Look at the before/after screenshots: which one will scare off a non-techie user? https://www.rss.style/ |
| |
| ▲ | shadowgovt 5 hours ago | parent | next [-] | | RSS and Atom feeds are at this point a solution looking for a problem. I use RSS all the time... To keep up-to-date on podcasts. But for keeping up to date on news, people use social media. RSS isn't the missing piece of the puzzle for changing that, an app on top of RSS is. And in the absence of Reader, nothing has shown up to fill that role that can compete with just trading gossip on Facebook. | | |
| ▲ | basscomm 3 hours ago | parent [-] | | > But for keeping up to date on news, people use social media. RSS isn't the missing piece of the puzzle for changing that, an app on top of RSS is. And in the absence of Reader, nothing has shown up to fill that role that can compete with just trading gossip on Facebook. I guess if you don't use social media or facebook you're out of luck? | | |
| ▲ | shadowgovt 2 hours ago | parent [-] | | I don't see why. You can always subscribe to a newspaper. Or just use RSS and a subscription tool since it didn't just go away. What I'm saying, though, is if you don't use social media at this point you're already an outlier (I am, it should be noted, using the term broadly: you are using social media. Right now. Hacker News is in the same category as Facebook, Twitter, Mastodon, et. al. in this context: it's a place you go to get information instead of using a collection of RSS feeds, and I think the reason people do this instead of that may be instructive as to the ultimate fate of RSS for that use-case). | | |
| ▲ | basscomm 2 hours ago | parent | next [-] | | > You can always subscribe to a newspaper. The circulation for my local newspaper is so small that they now get printed at a press a hundred miles away and are shipped in every morning to the handful of subscribers who are left. I don't even know the last time I saw a physical newspaper in person. > Hacker News... it's a place you go to get information instead of using a collection of RSS feeds No, it's a place I go to _in addition_ to RSS feeds. An anonymous news aggregator with web forum attached isn't really social media. Maybe some people hang out here to socialize, but that's not a use case for me | | |
| ▲ | shadowgovt 2 hours ago | parent [-] | | The relevant use case is you come here to see links people share and comment on them. That's sufficiently "social" in this context. Contrasting the other use case you dabble in (that makes you an outlier) of pulling content from specific sources (I'm going to assume generating original content, not themselves link aggregators, otherwise this topic is moot) via RSS. Most people see that as redundant if they have access to something like HN, or Fark, or Reddit, or Facebook. RSS readers alone, in general, don't let you share your thoughts with other people reading the article, so it's not as popular a tool. | | |
| ▲ | basscomm an hour ago | parent [-] | | > The relevant use case is you come here to see links people share and comment on them. That's sufficiently "social" in this context. Just having users submit links that other users can comment on doesn't make it social media. I can't follow particular users or topics, I can't leave myself a note about some user that I've had a positive or negative experience with, I can't ignore someone who I don't want to read, etc. Heck, usernames are so de-emphasized on this site that I almost always forget that they're there. | | |
| ▲ | shadowgovt 41 minutes ago | parent [-] | | A rose by any other name. If you'd prefer I'd have said "But for keeping up to date on news, people use link aggregation boards where other users post links to stuff on the web and then talk to each other about them. RSS isn't the missing piece of the puzzle for changing that, an app on top of RSS is. And in the absence of Reader, nothing has shown up to fill that role that can compete with just trading gossip on Hacker News." ... that would be the same point. RSS, by itself, is a protocol for finding out some site created new content and is just not particularly compelling by itself for the average user when they can use "link aggregation boards where other users post links to stuff on the web and then talk to each othe about them" instead. | | |
|
|
| |
| ▲ | righthand 8 minutes ago | parent | prev [-] | | > since it didn't just go away. But do you see how removing a feature from a major browser makes it seem like RSS did just go away and how RSS will eventually go away? What a terrible disingenuous argument. Anyone not in line with big tech deserves to be pushed aside eh? |
|
|
| |
| ▲ | cpill 2 hours ago | parent | prev [-] | | yes, but why???
Your on the website and you have a link to the syndicated feed, for the website your on, and you want to make they feed look good in the browser... so they can click the link to the website _you are already on_???
The argument you should be looking at the feed XML in the browser instead of the website is bonkers. They are not meant to replace the website coz if they were why have the website?! | | |
| ▲ | Fileformat an hour ago | parent | next [-] | | But you are tech-savvy and know about RSS & feed readers and such like! Think about it from a non-technical user's perspective: they click on a RSS link and get a wall of XML text. What are they going to do? Back button and move on. How are they ever going to get introduced to RSS and feed readers and such like? I think a lot of feeds never get hit by a browser because there isn't a hyperlink to them. For example: HN has feeds, but no link in the HTML body, so I'm pretty confident they don't get browser hits. And no one who doesn't already know about feeds will ever use them. | |
| ▲ | kstrauser 2 hours ago | parent | prev [-] | | I just checked and I’ve had 3 hits for my blog’s RSS feed from a legit-looking browser user agent string this year. Almost literally no one reads my site via RSS in the browser. Quite a few people fetch the feed from separate clients. I wouldn’t spend 5 minutes making that feed look pretty for browser users because no one will ever see it. I don’t know who these mythical visitors are who 1) know what RSS is and 2) want to look at it in Chrome or Safari or Firefox. | | |
| ▲ | Fileformat an hour ago | parent [-] | | You are absolutely right!!! But... What about people who don't "1) Know what RSS is"??? And what if you could make it friendly for them in 4 minutes? You could by dropping in a XSLT file and adding a single line to the XML file. I bet you could do it in 3 minutes. |
|
|
|
|
| ▲ | roywashere 6 hours ago | parent | prev | next [-] |
| All browsers ever implemented was XSLT 1.0, from 1999. There were 2.0 and 3.0 for which there is an open source Java based implementation (Saxon) but this never made it into libxslt and/or browsers! |
|
| ▲ | basscomm 3 hours ago | parent | prev | next [-] |
| > I have yet to read an article complaining about XSLT deprecation from someone who can explain why they actually used it and why it’s important to them. I used it to develop a website because I'm not a programmer, but I still want to have some basic templates on my webpage without having to set up a dev environment or a static site generator. XML and XSLT extend HTML _just enough_ to let me do some fun things without me having to become a full-on programmer. |
|
| ▲ | danwilsonthomas 4 hours ago | parent | prev | next [-] |
| Imagine you have users that want to view an XML document as a report of some kind. You can easily do this right now by having them upload a document and attaching a stylesheet to it. I do this to let people view after-game reports for a video game (Nebulous: Fleet Command). They come in as XML and I transform them to HTML. Now I do this all client-side using the browser support for XSLT and about 10 lines of javascript because I don't want to pay for and run a server for file uploads. But if I did the XSLT support in the browser would make it truly trivial to do. Now this obviously isn't critical infrastructure, but it sucks getting stepped on and I'm getting stepped on by the removal of XSLT. |
|
| ▲ | James_K 6 hours ago | parent | prev | next [-] |
| I use XSLT because I want my website to work for users with JavaScript disabled and I want to present my Atom feed link as an HTML document on a statically hosted site without breaking standards compliance. Hope this helps. |
| |
| ▲ | matthews3 6 hours ago | parent | next [-] | | Could you run XSLT as part of your build process, and serve the generated HTML? | | |
| ▲ | Fileformat an hour ago | parent | next [-] | | That is not the point: I already have the blog's HTML pages. I want the RSS feed to be an RSS feed, not another version of the HTML. The XSLT view of the RSS feed so people (especially newcomers) aren't met with a wall of XML text. It should still be a valid XML feed. Plus it needs to work with static site generators. | |
| ▲ | kuschku 5 hours ago | parent | prev | next [-] | | I have arduinos with sensors providing their measurements as XML, with an external XSLT stylesheet to make them user-friendly. The arduinos have 2KB RAM and 16 MIPS. Which build process are you talking about? Which XSLT library would you recommend for running on microcontrollers? | | |
| ▲ | matthews3 4 hours ago | parent [-] | | > Which build process are you talking about? The one in the comment I replied to. | | |
| ▲ | kuschku 4 hours ago | parent [-] | | Fair, but that shows the issue at hand, doesn't it? XSLT is a general solution, while most alternatives are relatively specific solutions. (Though I've written repeatedly about my preferred alternative to XSLT) | | |
| ▲ | righthand an hour ago | parent [-] | | > (Though I've written repeatedly about my preferred alternative to XSLT) Link to example? |
|
|
| |
| ▲ | bilog 6 hours ago | parent | prev | next [-] | | XML source + XSLT can be considerably more compact than the resulting transformation, saving on hosting and bandwidth. | | |
| ▲ | zetanor 5 hours ago | parent [-] | | The Internet saves a lot more on storage and bandwidth costs by not shipping an XSLT implementation with every browser than it does by allowing Joe's Blog to present XML as an index. | | |
| |
| ▲ | James_K 6 hours ago | parent | prev [-] | | No because then it would not be an Atom feed. Atom is a syndication format, the successor to RSS. I must provide users with a link to a valid Atom XML document, and I want them to see a web page when this link is clicked. This is why so many people find this objectionable. If you want to have a basic blog, you need some HTML docments and and RSS/Atom feed. The technologies required to do this are HTML for the documents and XSLT to format the feed. Google is now removing one of those technologies, which makes it essentially impossible to serve a truly static website. | | |
| ▲ | ErroneousBosh 6 hours ago | parent | next [-] | | > Google is now removing one of those technologies, which makes it essentially impossible to serve a truly static website. How so? You're just generating static pages. Generate ones that work. | | |
| ▲ | James_K 6 hours ago | parent [-] | | You cannot generate a valid RRS/Atom document which also renders as HTML. | | |
| ▲ | shadowgovt 5 hours ago | parent [-] | | So put them on separate pages because they are separate protocols (HTML for the browser and XML for a feed reader), with a link on the HTML page to be copied and pasted into a feed reader. It really feels like the developer has over-constrained the problem to work with browsers as they are right now in this context. | | |
| ▲ | kuschku 5 hours ago | parent [-] | | > So put them on separate pages because they are separate protocols Would you also suggest I use separate URLs for HTTP/2 and HTTP/1.1? Maybe for a gzipped response vs a raw response? It's the same content, just supplied in a different format. It should be the same URL. | | |
| ▲ | zzo38computer 4 hours ago | parent | next [-] | | There are separate URLs for "https:" vs "http:" although they are usually the same content when both are available (although I have seen some where it isn't the same), although the compression (and some other stuff) is decided by headers. However, it might make sense to include some of these things optionally within the URL (within the authority section and/or scheme section somehow), for compression, version of the internet, version of the protocol, certificate pinning, etc, in a way that these things are easily delimited so that a program that understands this convention can ignore them. However, that might make a mess. I had also defined a "hashed:" scheme for specifying the hash of the file that is referenced by the URL, and this is a scheme that includes another URL. (The "jar:" scheme is another one that also includes other URL, and is used for referencing files within a ZIP archive.) | |
| ▲ | ErroneousBosh 2 hours ago | parent | prev | next [-] | | > Would you also suggest I use separate URLs for HTTP/2 and HTTP/1.1? Maybe for a gzipped response vs a raw response? The difference between HTTP/2 and HTTP/1.1 is exactly like the difference between plugging your PC in with a green cable or a red cable. The client neither knows nor cares. > It's the same content, just supplied in a different format. It should be the same URL. So what do I put as the URL of an MP3 and an Ogg of the same song? It's the same content, just supplied in a different format. | | |
| ▲ | kuschku 2 hours ago | parent [-] | | > The difference between HTTP/2 and HTTP/1.1 is exactly like the difference between plugging your PC in with a green cable or a red cable. The client neither knows nor cares. Just like protocol negotiation, HTTP has format negotiation and XML postprocessing for exactly the same reason. > So what do I put as the URL of an MP3 and an Ogg of the same song? It's the same content, just supplied in a different format Whatever you want? If I access example.org/example.png, most websites will return a webp or avif instead if my browser supports it. Similarly, it makes sense to return an XML with XSLT for most browsers and a degraded experience with just a simple text file for legacy browsers such as NCSA Mosaic or 2027's Google Chrome. |
| |
| ▲ | shadowgovt 32 minutes ago | parent | prev [-] | | Then the server should supply the right format based on the `Accept` header, be it `application/rss+xml` or `application/atom+xml` or `text/xml` or `text/html`. Even cheaper than shipping the client an XML and an XSLT is just shipping them the HTML the XSLT would output in the first place. |
|
|
|
| |
| ▲ | gldrk 5 hours ago | parent | prev [-] | | >I must provide users with a link to a valid Atom XML document, and I want them to see a web page when this link is clicked. Do RSS readers and browsers send the same Accept header? |
|
| |
| ▲ | cpill 2 hours ago | parent | prev [-] | | Yeah, but WHY?
If they are on the website, why would they want to look at the feed for the website, on the website, in the browser instead of just looking at the website? If the feed is so amazing, why have the website in the first place? Oh yeah, you need something to make the feed off :D | | |
| ▲ | Fileformat 32 minutes ago | parent [-] | | I don't want the feed to look amazing. I just don't want to present a wall of XML text to non-technical users who don't know what an RSS feed is! |
|
|
|
| ▲ | 6510 5 hours ago | parent | prev [-] |
| If you have a lot of xml data and need an UI that does complex operations that scream xpath it would be rather spectacular if it could be done without much of a back end, in the browser without js. I'm not good enough with XSLT to know if it is worth creating the problem that fits the solution. |