Release of SchXslt2 Schematron to XSLT transpiler
June 29, 2025
Submitted by David Maus.
I am glad to announce the release of version 1.4 of the SchXslt2 Schematron to XSLT 3.0 transpiler.
This version of the transpiler adds support for most features of the upcoming 4th edition of ISO Schematron.
Namely:
- typed variables (supported since version 1.0)
- top-level
<rules>
element (supported since version 1.0) - base URI and language fixup (supported since version 1.0)
- restrict validation to a subset of the document (
<phase>/@from
) - attribute to express the relative importance of an assertion (
<assert>/@severity
,<report>/@severity
) - refined rule context (
<rule>/@visit-each
) - rule sets (
<group>
) - libraries containing external declarations (
<library>
) - dynamic evaluation of
@flag
,@role
,@severity
- schema-level parameters (
<param>
)
SchXslt2 does not support dynamic phase selection (<phase>/@when
).
Support for Schematron 4 is based on the draft international standard (DIS) from December 2024.
This version also adds three new transpiler parameters to control the SVRL output: schxslt:report-active-pattern
,schxslt:report-fired-rule
, schxslt:report-suppressed-rule
.
Each is a static boolean parameter that controls whether the respective SVRL elements <active-pattern>
/<active-group>
, <fired-rule>
and <suppressed-rule>
are created (set to true
, the default) or not (set to false
).
You can download version 1.4 from the SchXslt2 release page.