def __call__(self, etree):
        """Validate doc using Schematron.

        Returns true if document is valid, false if not.
        """
        self._clear_error_log()
        result = self._validator(etree)
        if self._store_report:
            self._validation_report = result
        errors = self._validation_errors(result)
        if errors:
            if _etree.iselement(etree):
                fname = etree.getroottree().docinfo.URL or '<file>'
            else:
                fname = etree.docinfo.URL or '<file>'
            for error in errors:
                # Does svrl report the line number, anywhere? Don't think so.
                self._append_log_message(
                    domain=self._domain, type=self._error_type,
                    level=self._level, line=0,
                    message=_etree.tostring(error, encoding='unicode'),
                    filename=fname)
            return False
        return True
Validate doc using Schematron.

        Returns true if document is valid, false if not.
        
stackoverflow/venv/lib/python3.6/site-packages/lxml/isoschematron/__init__.py