Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm not sure if there is any open source XSLT tool as complete as jq is for JSON. There is xsltproc but IIRC it does not support streaming scenarios (jq has some support for streaming processing)

Though, personally, I prefer JSON. Probably due to superior tools (thanks to its popularity) and less-bloated syntax (it is somewhat easier for me to read raw JSON file than raw XML file).



Saxon is where it's at.

When XSLT 3.0 tells a joke, it starts with "a JSON walks into a bar..."

https://github.com/Saxonica/Saxon-HE


Now that is just aggressively dumb: https://github.com/Saxonica/Saxon-HE/tree/SaxonHE12-3/12#sou... and https://github.com/Saxonica/Saxon-HE/tree/SaxonHE12-3/12/sou... (not even the decency to use .gitattributes so it knows the files are binary)

FWIW https://saxonica.plan.io/projects/saxonmirrorhe/repository seems to be the for-real source repo


I do not see license in either repository and it seems that this tool only has 30 day evaluation tier for free. Anyway, using this means that you have dependency on a single vendor and you accept their future pricing changes.

Now compare this with JSON ecosystem


Their "home" edition is open source and way more capable than anything I've seen for other formats.

Saxonica, the company behind it, has been critical for the evolution of the XML ecosystem.

I agree that lack of alternatives sucks but the breadth of options you refer to is backed by an army of open source volunteers.


If XML tools aren't open enough for certain needs, then sure, I get it. But it's tragic to see highly-engineered, pro solutions just die out because younger devs don't like the learning challenge or because business owners are cheapskates.


I think XPath would be the XML analog to jq.

It would be cool to be able to use XPath to query JSON. Of course you'd need to come up with a good mapping between JSON nodes and XML nodes.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: