The Escali Schematron Package is part of the Schematron QuickFix project. The core module is a Schematron QuickFix compiler. The other modules provides components, APIs or GUIs to implement Schematron QuickFix or to embed the compiler.
Following a short overview of the projects modules. For more information please read the corresponding README.md
The Escali Schematron Compiler is a set of XSLT and XProc scripts, Java classes and schema files to compile and validate Schematron QuickFix schemas as well as execute QuickFixes.
The Escali GUI Components provides Java Swing components, which can be used to integrate the Escali Schematron Compiler into an existing GUI.
The Escali Oxygen Plugin is a integration of the Escali Schematron Compiler and the Escali GUI Components into the Oxygen XML Editor via its plugin API. more
This project contains a JavaScript based Web editor to validate XML files by Schematron and execute QuickFixes. Therefor it runs the XSLT scripts of the Escali Schematron Compiler on the XSLT processor Saxon-CE.
This project was rudimentary transferred from a self-designed project structure and still needs to be customized for Maven.
The XSM processor performs manipulations of XML documents based on XPath. The manipulations are done by unparsed text modifications. Any other content will be preserved.
This process is needed to execute QuickFixes without getting the "XSLT effects": resolving all entities, loose XML and/or DTD declarations, make unexpected Whitespace changes, write attributes which was defined by default values into the document, etc.
Base of this project are some helper JAVA classes. They are maintained in the GitHub organisation oxygen-plugins:
- com.github.oxygen-plugins/common-xml
- com.github.oxygen-plugins/common-gui
- com.github.oxygen-plugins/common-oxygen
- com.github.oxygen-plugins/common-gui: version 0.2.0
- Take over changes of the Second Draft of the SQF specification:
- Updated schema / sqf.sch
- Implementation of the localisation concept of the Second Draft
- Added test suite for sqf.sch
- Bug fixes:
- Switch of namespace context with XSM did not worked for sqf:add/@position=before|after
- Unescaping of attribute value templates (
{XPATH}
) did not worked correctly
- UserEntries:
- Better handling for larger values
- Support for multi-line values
- Bug fixes:
- Validation for new files did not worked.
- Bug fixes:
- Fixes undeclared $sqf:current variable error if it was used in variables of generic QuickFixes.
- Bug fixes:
- com.github.oxygen-plugins/common-xml: version 0.1.2
- com.github.oxygen-plugins/common-gui: version 0.1.2
- com.github.oxygen-plugins/common-oxygen: version 0.1.2
- Introduced variable $es:match to have access to the matched text phrase of @es:regex.
- Bug fixes:
- Attributes of Literal Result Elements in NULL-Namespace in QuickFixes was not be copied into the document
- Bug fixes:
- BaseUri was null in some cases. The error position could not be found.
- concurrent exception occured, when plugin was switched of in options
- Wrong report was displayed, if switching the editor during the validation.
- Usage of common-xml version 0.1.1: Character entities should not hurt anymore.
- First public release