XJSLT is an incomplete implementation of an XSLT 2.0 processor written in native TypeScript.
XJSLT compiles stylesheets to runnable JavaScript, so it should be possible to create pure-javascript runnable transforms for use in a browser.
Tested with node 20
npm install && npm run build
xjslt test/simple2.xslt test/simple.xml
if
/choose/when/otherwise
- conditional evaluationtemplate
- named templates, priority, mode, and params are not yet supportapply-templates
/for-each
- recursive evaluationelement
/attribute
/value-of
- dynamic elements, attributes, and text- literal text and xml element output
variable
- ??
-
include
-
strip-space
/preserve-space
-
output
-
key
-
sort
-
attribute-set
- template priority
- webpack compilation for browsers
- namespaces
- …