Syntax highlighting for Schematron validation schema files (.sch).
Features
- Highlights all Schematron elements:
schema,pattern,rule,assert,report,ns,let,value-of,phase,include, and more - Full XPath syntax highlighting inside
test,context,select,path, andvalueattributes:- Functions (
normalize-space,count,not,matches,distinct-values, …) - Axes (
child::,ancestor-or-self::,descendant::, …) - Keywords and operators (
and,or,div,eq,ne,instance of, …) - Types (
xs:string,xs:integer,xs:date, …) - Variables (
$varname) - String literals and predicates (
[position()=1])
- Functions (
- Highlights Schematron-specific attributes (
id,queryBinding,prefix,uri,role,flag, …) separately from generic XML attributes - Standard XML support: comments, CDATA, processing instructions, entity references, namespace prefixes
- Auto-closing pairs for
<>,(),[],'',"" - Block comment toggling with
<!-- -->
Example
<schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
<ns prefix="ex" uri="urn:example"/>
<pattern id="MY_PATTERN">
<rule context="ex:Invoice/ex:LineItem">
<assert test="count(ex:Quantity) = 1">
Each line item must have exactly one quantity.
</assert>
<report test="xs:decimal(ex:Amount) < 0">
Amount must not be negative.
</report>
</rule>
</pattern>
</schema>
Supported File Extensions
| Extension | Description |
|---|---|
.sch |
Schematron schema |
Schematron Standards
This extension supports Schematron as defined in:
- ISO/IEC 19757-3 (DSDL Schematron)
- Namespace
http://purl.oclc.org/dsdl/schematron - XPath 1.0 and XPath 2.0 / XSLT 2.0 query bindings