Jet is fantastic; XML kinda sucks
Here let me convince you that a Jet-like syntax is better than an XML-like syntax.
No need to specify what the closing tag is. This is needlessly verbose. You could argue that this gives you an ability to confirm all tags are correct, but I'd say most people use editor plugins to auto-close tags in the right order anyways.
XML in general has a lot of neat features but the syntax is only nice for marking up a text document where most of the tokens in the document are content meant to be directly displayed (i.e. prose). It nicely tucks the rest behind an inconvenient syntax meant to get out of the way. If we invert that (write code that we can insert prose into), the Jet style is way more convenient:
It mirrors JS function calls with parens.
It uses keyword arguments to form the equivalent of XML attributes. This is made more convenient in Jet than raw JS by a transpiler auto-wrapping bare keyword args in curlies at callsites.
It follows an ages-old JS pattern of nesting closures, but provides the Swift-style syntax sugar for making those more pleasant to work with.
In fact, there's no value you can represent in XML that you cannot represent in Jet (in contrast to supports of preferring JSON over XML for data, where the syntax doesn't really provide for attribute support (though you can work around that)).
The two main reasons I can think of to prefer an XML-like syntax over Jet would be:
"I already know XML syntax". They should be pretty much 1-to-1 with a couple of small differences. It's designed to be simple enough to transpile either way in your head to JSX.
"Tutorials, Forum Posts, LLMs, etc all know about XML syntax and not Jet syntax." True. But again: transpile in your head, it's no different than treating it like pseudocode except it actually works. LLMs are fine after giving it a two sentence class how it works.