The functioning of the Schematron Validator tool is based on two main concepts:
- Object types are used to type the schematron and thus allow the filtering on the client side
- Schematron stands for the description of a schematron file with metadata used by the tool to properly process it
Being logged as administrator will give you access to the following features:
- Edit, copy, delete schematron definitions
- Edit, delete object types
Management of object types
An object type is used to help the clients of the validator to retrieve a subset of schematrons. That means that an object type is linked to one or more schematron. The attributes of the object types are:
- Name: what is displayed in the user interface of the schematron section
- Keyword: uniquely identified an object type, it is the key used by the client to designate an object type
- Description: helps the user with understanding the purpose of the object type.
As a convention, the keyword of the object type is made of the short name of the standard the schematron has been developed for followed by a dash (-) and the affinity domain/extension (IHE, epSOS, ASIP …). This is how EVSClient builds the keyword to retrieve the list of schematrons.
Any object type can be edited by using the pencil icon.
Object types which are not bound to a schematron can be deleted thanks to the trash icon.
Management of Schematrons
For each schematron file, you need to create a schematron entry in the tool. The attributes of a schematron are the following:
- ID: automatically given by the tool. Useful to retrieve the compiled XSL related to your schematron
- Name: the name of your schematron which will be used in the webservice to tell which schematron to use. Also used by EVSClient to display the list of schematrons to the user.
- Keyword: uniquely identified the schematron
- Version: to keep track of your versions of schematrons. Reported in the validation
- Author: Who developed the schematron report so that users can see if results differ because the schematron has changed.
- ART-DECOR: for schematrons generated by Art-Decor, or also schematrons that include other schematrons.
- Standard: for any other schematron.
- Description: Free text field to describe the purpose of the schematron
- Last changed: updated each time you modified the entry
- Path: Relative path to the schematron file. Base path is $bin_path$/schematron where $bin_path$ is the value of the application preference named ‘bin_path’.
- This schematron uses relative paths ? Check this box if your schematron contains paths to other files which are given in a relative way. In that case, the base path used for absolute path computation is the directory where the schematron is stored.
- XSD Path: Relative path to the XSD to be used for checking that the document is correctly formatted. Base path is $gazelle_home_path$/xsd where $gazelle_home_path$ is the value of the application preference named ‘gazelle_home_path’.
- XSD Version: Schematron validator supports both 1.0 and 1.1
- Object Type: The type of object which is checked by this schematron
- Need daffodil transformation: whether or not the file shall be processed by Daffodil before being validated with the schematron
- DFDL schema keyword: If previous attribute is set to true, the keyword of the Daffodil schema as defined in Gazelle transformation service
- Available: whether or not the schematron shall be made available to the user
- Need report generation transformation: if the type Art-Decor is used, this box need to be checked to get all the check in the validation report.
- Process Unknown check type as an error?: If the output of the element is not typed, whether or not to report them as error
Currently, the only way to push files on the server is to copy them directly in the file system using SCP.
Schematrons shall be stored in the folder $bin_path$/schematron where $bin_path$ is the value of the application preference named ‘bin_path’ (usually /opt/Schematron_Validator_Prod/bin/).
XSD shall be stored in the folder $gazelle_home_path$/xsd where $gazelle_home_path$ is the value of the application preference named ‘gazelle_home_path’ (usually /opt/Schematron_Validator_Prod/).
Any schematron can be edited by using the pencil icon.
Any schematron can be deleted using the trash icon.
You can duplicate an entry by using the copy icon. All the attributes of the schematron will be copied in a new entry. The newly created schematron will have “.copy” appended at the end of its name and keyword.
For better performance, XSD factories are created only once. If the XSD file changes on disk, you need to click on the “reload XSD” to have the changes taken into account.
The Schematron files are compiled to be processed by the tool. If you look for the resulting XSL, you will find it in TOOL_DIRECTORY/bin/compilations/ID.xsl. The compilation is performed each time the file changes on disk. You can force the compilation by clicking on the green play icon.