ddn.data.xml.validate
Validation entrypoints (DTD/XSD/RelaxNG), implemented in phases.
Types 6
Supported schema languages for XML validation.
XSDXML Schema (XSD).
RELAX_NGRelax NG (RNG).
structXmlValidateOptions
Validation options.
Fields
bool nonetIf `true`, do not allow network access in `xmllint` (`--nonet`).string[] catalogFilesOptional XML catalog files passed via `--catalogs` (may be empty).bool allowExternalSubsetIf `true`, allow loading an external subset / external entities during native DTD validation.bool preferNativeIf `true` (default), use native D9 validation for supported schema subsets before falling back to CLI tools.structXmlValidationResult
Result of validating an XML document.
Fields
bool valid`true` if the document is valid for the chosen schema.int exitCodeExit code returned by `xmllint`.string stdoutCaptured stdout from `xmllint`.string stderrCaptured stderr from `xmllint` (usually contains validation diagnostics).XmlValidationMessage[] messagesParsed diagnostics extracted from `stderr`.Validation message severity.
ERRORValidation error.
WARNINGValidation warning.
INFOInformational message.
Validation diagnostic category.
This is intentionally coarse-grained so it can be shared across CLI-backed and future native validators.
PARSEXML well-formedness / parser-level error.
DTDDTD validity error.
XSDXML Schema (XSD) validation error.
RELAX_NGRelax NG validation error.
OTHERAnything else / unknown.
structXmlValidationMessage
A structured validation diagnostic.
Fields
XmlValidationSeverity severitySeverity.XmlValidationCategory categoryCategory.XmlLocation locationLocation, if available.string messageHuman-readable message.string rawLineOriginal raw line from `xmllint` output.Functions 13
fn
XmlValidationResult validateDtd(
string xml,
string systemId = "",
XmlValidateOptions options = XmlValidateOptions.init) @safeValidates an XML document using the library's native DTD validation.fn
XmlValidationResult validateDtd(XmlDocument document, XmlValidateOptions options = XmlValidateOptions.init) @safeValidates a DOM document using native DTD validation.fn
XmlValidationResult validateXsdFile(
string xmlFile,
string xsdFile,
XmlValidateOptions options = XmlValidateOptions.init)Validates `xmlFile` using an XSD schema.fn
XmlValidationResult validateXsd(
string xml,
string xsdFile,
XmlValidateOptions options = XmlValidateOptions.init)Validates an in-memory XML document against an XSD schema.fn
XmlValidationResult validateXsd(
XmlDocument document,
string xsdFile,
XmlValidateOptions options = XmlValidateOptions.init)Validates a DOM document against an XSD schema.fn
XmlValidationResult validateRelaxNgFile(
string xmlFile,
string rngFile,
XmlValidateOptions options = XmlValidateOptions.init)Validates `xmlFile` using a Relax NG schema.fn
XmlValidationResult validateRelaxNg(
string xml,
string rngFile,
XmlValidateOptions options = XmlValidateOptions.init)Validates an in-memory XML document against a Relax NG schema.fn
XmlValidationResult validateRelaxNg(
XmlDocument document,
string rngFile,
XmlValidateOptions options = XmlValidateOptions.init)Validates a DOM document against a Relax NG schema.