eZ\Publish\Core\FieldType\RichText\Validator::schematronValidate PHP Method

schematronValidate() protected method

Validates given $document using XSLT stylesheet converted from ISO Schematron schema and returns an array or error messages.
protected schematronValidate ( DOMDocument $document, string $filename ) : string[]
$document DOMDocument
$filename string
return string[]
    protected function schematronValidate(DOMDocument $document, $filename)
    {
        $stylesheet = $this->loadFile($filename);
        $xsltProcessor = new XSLTProcessor();
        $xsltProcessor->importStyleSheet($stylesheet);
        $result = $xsltProcessor->transformToDoc($document);
        $xpath = new DOMXPath($result);
        $xpath->registerNamespace('svrl', 'http://purl.oclc.org/dsdl/svrl');
        $xpathExpression = '//svrl:failed-assert';
        $failures = array();
        $failedAsserts = $xpath->query($xpathExpression);
        foreach ($failedAsserts as $failedAssert) {
            $failures[] = $this->formatSVRLFailure($failedAssert);
        }
        return $failures;
    }