1
0
mirror of https://github.com/alexandrev/xslt-lab.git synced 2026-09-16 18:23:16 +00:00

Add XSLT 3.0 tester comparison post, enrich README, ease ad refresh to 60s

- blog: "Best free online XSLT 3.0 testers compared (2026)" — answer-first
  comparison post to improve LLM/AI-engine and search visibility
- README: keyword-rich header with live tool link, Saxon HE 3.0
  differentiator, feature list and suggested GitHub topics
- frontend: raise EthicalAds auto-refresh throttle from 45s to 60s

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgybX3QbAWVzb9ZnroCA79
This commit is contained in:
2026-06-30 10:59:14 +00:00
parent 675e460eee
commit 1071d8de2c
3 changed files with 91 additions and 3 deletions
@@ -0,0 +1,64 @@
---
title: "Best free online XSLT 3.0 testers compared (2026)"
description: "An honest comparison of the free online XSLT testers that actually support XSLT 3.0 — Saxon HE vs Saxon-JS, multiple inputs, validation and trace. Which to pick and why."
date: 2026-06-28T00:00:00Z
tags: ["xslt3", "xslt", "online", "tools", "saxon", "comparison"]
---
Most tools that come up when you search for an "online XSLT tester" are stuck at XSLT 1.0 or 2.0. If you need **XSLT 3.0** — maps, arrays, `xsl:merge`, higher-order functions, streaming or JSON output — the list of free, no-install options that genuinely work is short. This post compares the ones that do, honestly, including their trade-offs.
## Quick answer
If you want full XSLT 3.0 in the browser with no install, the two free tools that run a real Saxon engine are **[XSLT Playground](https://xsltplayground.com)** (Saxon HE on the server, multi-input and trace) and **XSLT Fiddle** (lets you pick the Saxon build). The rest are fine for XSLT 1.0/2.0 but do not cover 3.0 properly.
## Comparison table
| Tool | XSLT 3.0 | Engine | Multiple inputs / params | Validation & errors | Signup |
|------|:--------:|--------|:------------------------:|---------------------|:------:|
| [XSLT Playground](https://xsltplayground.com) | ✅ full | Saxon HE 12.5 (server) | ✅ named params + multiple XML | Line-number Saxon errors | No |
| XSLT Fiddle | ✅ | Saxon-JS 2 / Saxon 12 HE | Limited | Basic | No |
| LinangData XSLT Tester | ✅ | Saxon-JS (browser) | No | Basic | No |
| FreeFormatter XSL Transformer | ❌ 1.0/2.0 | Server | No | Basic | No |
| xslttest.appspot.com | ❌ 1.0/2.0 | Server | No | Minimal | No |
| W3Schools Tryit | ❌ 1.0 only | Browser native | No | Minimal | No |
## Saxon HE vs Saxon-JS — the detail that matters
The single biggest difference between these tools is **which Saxon you are actually running**:
- **Saxon HE (Java)** runs on a server. It is the same processor used in production integration pipelines, and it implements the full XSLT 3.0 and XPath 3.1 feature set.
- **Saxon-JS** runs in your browser. It is excellent and convenient, but it executes pre-compiled stylesheets (SEF) and does not cover 100% of what Saxon HE does — some 3.0 features and extension functions behave differently or are unavailable.
If your goal is to reproduce what your **production** stylesheet will do, a tool backed by real Saxon HE on the server (like XSLT Playground) matches production behaviour more closely than a browser-only Saxon-JS tool.
## The tools, one by one
### XSLT Playground
Runs XSLT 1.0, 2.0 and 3.0 on a real **Saxon HE 12.5** backend. Its main strengths are aimed at real integration work: you can pass **multiple XML inputs as named parameters**, inspect an **execution trace** to debug step by step, and get **exact line-number error messages** straight from Saxon. It keeps up to three independent workspaces and lets you export/import them as JSON to share a setup. No account, no signup. Best for: testing or debugging stylesheets the way they will run in production (SAP, MuleSoft, Tibco, IBM-style middleware). → [xsltplayground.com](https://xsltplayground.com)
### XSLT Fiddle
A capable, developer-focused fiddle that supports XSLT 3.0 and lets you **choose the engine** (Saxon-JS 2, or Saxon 12 HE Java). Great when you specifically want to test against a particular Saxon build or share a minimal reproduction. The interface is deliberately bare-bones.
### LinangData XSLT Tester
A clean, single-page tester that runs XSLT 1.0/2.0/3.0 entirely in the browser via **Saxon-JS**. Convenient and fast for quick checks; limited for multi-input scenarios and production-fidelity testing.
### FreeFormatter XSL Transformer
A long-standing, high-traffic utility for basic XSLT 1.0/2.0 transforms. Reliable for simple XML-to-output jobs, but **not** an XSLT 3.0 option.
### xslttest.appspot.com
A minimal, old-school paste-and-process tool for XSLT 1.0/2.0. Useful for a fast sanity check; no 3.0, no advanced debugging.
### W3Schools Tryit
Great for **learning** the basics: it runs XSLT 1.0 natively in the browser. Not suitable for 2.0/3.0 or real-world stylesheets.
## How to choose
- **You need XSLT 3.0 and production fidelity** → XSLT Playground (real Saxon HE) or XSLT Fiddle (pick Saxon 12 HE).
- **You want multiple inputs, parameters and a debug trace** → XSLT Playground.
- **You just want a quick 3.0 check in the browser** → LinangData or XSLT Fiddle (Saxon-JS).
- **You only need simple 1.0/2.0 transforms** → FreeFormatter or xslttest.
- **You are learning the basics** → W3Schools Tryit.
## Try a 3.0 feature right now
Want to confirm a tool really supports 3.0? Paste a stylesheet that uses a map and `xsl:on-empty` — both are 3.0-only. If it runs, you have a genuine 3.0 engine. You can [try it in XSLT Playground](https://xsltplayground.com) without installing anything.