function
Library: RELAX NG (OMRELAXNG)
Import : omrelaxng.xmd |
Returns: a markup sink ready to receive parsed markup for validation |
export dynamic markup sink function validator against value schema-type schema-instance case-insensitive value switch is-case-insensitive optional initial { false } report-errors-to value markup sink errors optional
Use validator
to validate an SGML or XML document instance against a RELAX NG schema. The schema
must be specified as schema-instance argument to the function. The validator
function
sends all validation errors it finds into the errors sink if it is specified, and reports them in
the log stream if the errors argument is not specified.
This program validates sgml input against a RELAX NG schema, reports any errors and keeps going:
import "omrelaxng.xmd" prefixed by relaxng. define markup sink function error-reporter (value string sink s) as using output as s do markup-parse #current-input output "%c" done process local relaxng.relaxng-schema-type example-schema set example-schema to relaxng.compile-schema file "example-schema.rng" using output as relaxng.validator against example-schema report-errors-to error-reporter (#error) do xml-parse scan file "example-input.xml" output #content done