Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

XMLLint Processor

Purpose

Validates XML files using xmllint.

The Rust alternative is ixmllint: the same well-formedness checks and --schema validation, in-process, with libxml2’s messages and verdicts. Switching is xmllint → ixmllint in the stanza header, and args = ["--schema", "x.xsd"] → schema = "x.xsd". Files that need --valid, --dtdvalid or --relaxng stay here.

How It Works

Discovers .xml files in the project (excluding common build tool directories), runs xmllint --noout on each file, and records success in the cache. A non-zero exit code from xmllint fails the product.

This processor supports batch mode.

Source Files

  • Input: **/*.xml
  • Output: none (checker)

Configuration

[processor.checker.xmllint]
args = []
dep_inputs = []
KeyTypeDefaultDescription
argsstring[][]Extra arguments passed to xmllint
dep_inputsstring[][]Extra files whose changes trigger rebuilds

Batch support

The tool accepts multiple files on the command line. When batching is enabled (default), rsconstruct passes all files in a single invocation for better performance.

Clean behavior

This processor is a Checker — rsconstruct clean outputs is a no-op for it (checkers produce no outputs). See Clean behavior and rsconstruct clean.