Top
Best
New

Posted by robin_reala 3/28/2025

Xee: A Modern XPath and XSLT Engine in Rust(blog.startifact.com)
381 points | 232 commentspage 3
nashashmi 3/29/2025|
Just want to say that Microsoft has some sort of implementation of an xml application using Microsoft word or Ms word. But I have struggled to find examples I can use, but for a long time I have been trying to convert an office repository of corporate resumes to xml.
immibis 3/28/2025||
XSLT is great for nerd cred, when someone selects "view source" on your page and there's not an HTML tag in sight. I did this once.

Maybe it's good for compression, but probably not by a factor much bigger than gzip/brotli/zstd.

xvilka 3/29/2025||
I miss XHTML and XSL times. Time, when Web would have been more prepared for the AI consumption, less dynamic nonsense, and more focus on the actual content. Time shows all these Flash and Java gimmicks died off.
chromatin 3/29/2025||
NCBI still emits XML from their most prominent databases (e.g., PubMed). I'm looking forward to adopting this library into some of my production code that interfaces with PubMed!
blacklion 3/28/2025||
Does XSLT still used in a new projects? I have impression, that it was not popular even when XML was.

For example, apache HTTPD never has official module to serve XML via XSLT transformation.

And XSL:FO looks even more obscure.

int_19h 3/28/2025||
XSL:FO is dead for all practical purposes.

XSLT was not popular for its original intended application - which is to say, serving XML data from web servers and translating it to HTML (or XSL:FO, or ...) on the client as needed. However, it was used plenty for XML processing outside of that particular niche.

New projects these days rarely have to process complicated XML to begin with. But when you do, I'd say XSLT (or perhaps better yet, XQuery) is a very useful tool to have in your toolbox.

froh 3/29/2025|||
syntext serna was such an engineering marvel. a wysiwyg XML editor that used xslt to fo to specify your rendering. was built in the context of docbook and dita but did work for any xsd with a xslt to fo. amazing technology. ahead of its time. and then came json :-(
mdaniel 3/29/2025|||
> XSL:FO is dead for all practical purposes.

As opposed to what for cooking "PDF via XML" files? Because I can assure you than feeding rando.odt into $(libreoffice -pdf $TMPDIR/ohgawd) is 100% not the same as $(fop -fo $TMPDIR/my.fo -pdf $TMPDIR/out.pdf)

int_19h 3/29/2025||
As opposed to code in e.g. Java that uses the built-in XML APIs and some third party PDF output lib.
kondro 3/28/2025|||
There are a lot of APIs out there that are still XML-based, especially from enterprise suppliers.

Equifax and Experian’s APis immediately come to mind as documents that generate complex results that people often want to turn into some type of visual representation with XSLT.

blacklion 3/29/2025||
I see a lot of XML APIs and formats around me, it is true. But it is machine-machine formats or complex configuration files formats which doesn't need visualization. It needs schema support and tooling, but not visualization or transformation. It is more serialization formats for complex object trees, and all processing is done on these object trees, not XML itself.

But of course, I see only a part of the picture.

merb 3/30/2025||
Schematron / Peppol / electronic invoices inside the eu (since some stuff is based on as2 / as4 , stuff like saml but for sending invoices)
mvc 3/28/2025||
Nice work. Xpath is a beast. Obvious why paligo would be interested too. Must be a lot of commercial documentation out there where the best representation they can get looks a bit XMLish.
yxhuvud 3/28/2025||
I hope this will be packaged into shared libraries at some point so that languages that isn't rust will get access to it.
faitswulff 3/29/2025|
The author mentions Python bindings in the post.
torginus 3/29/2025||
I yearn for the day when people will stop considering the main advertising bullet point feature that their software was written in Rust. Rust 1.0 was released a decade ago, plenty of time for its alleged technical advantages to become apparent.

It's like a handbag whose main claim to being a premium product isn't workmanship or materials, but that it has Gucci on its side.

chuckadams 3/29/2025||
> It's like a handbag whose main claim to being a premium product isn't workmanship or materials, but that it has Gucci on its side.

Knockoffs aside, the latter is intended to serve as a proxy for the former. I too will be happy when Rust is the boring everyday choice, but in 2025 we still see new buffer overflows every day. And if I'm picking a library, I still want to know if it's in the same language as the app it's going into.

forty 3/29/2025|||
An xpath/xslt engine is something you might want to include in other software, the programming language used might be an important information for this purpose.
resonious 3/29/2025||
Personally I consider the programming language used for a piece of software to be similar to the materials used for a handbag.
hcayless 3/29/2025||
This sounds fantastic! Thank you for your work. Now I gotta go learn Rust :-).
shadowtree 3/28/2025|
Throwback shoutout to Steve Muench and his genius method of grouping elements in XSLT 1.0.

So good it has its own Wikipedia page!

https://en.wikipedia.org/wiki/XSLT/Muenchian_grouping

I mean, talk about hacker cred.

More comments...