Skip to content

API reference / Quittio \ Core \ Validation \ Drivers

KositValidator

final class in quittio/core · implements ValidationDriver

Quittio\Core\Validation\Drivers\KositValidator · Source

Official Schematron validation (level L5) with the KoSIT validator.

Modes:

  • daemon: HTTP POST to a running validator (recommended; also for Docker or an own endpoint),
  • cli: one JVM per call (slow start, no service needed).

Schematron rules are XSLT 2.0, which PHP cannot execute; therefore Java is required.

Constants#

ConstantValueDescription
MODE_CLI'cli'
MODE_DAEMON'daemon'

Methods#

MethodDescription
->__construct()
->lastReport()Raw report of the last validation (for archiving as test report).
->levels()
->name()
->supports()
->validate()
->validateXml()

__construct()#

public function __construct(
    string $mode = self::MODE_DAEMON,
    string $url = 'http://127.0.0.1:8081',
    ?string $jar = null,
    list<array{scenarios: string, repository: string}> $configurations = [],
    string $java = 'java',
    int $timeout = 30,
    bool $failOnUnavailable = true,
    KositReportParser $parser = new \Quittio\Core\Validation\Drivers\KositReportParser(),
    (Closure(string, string, int): array{status: int, body: ?string})|null $http = null,
)
ParameterTypeDescription
$modestring = self::MODE_DAEMON
$urlstring = 'http://127.0.0.1:8081'
$jar?string = null
$configurationslist<array{scenarios: string, repository: string}> = []cli mode only
$javastring = 'java'
$timeoutint = 30
$failOnUnavailablebool = true
$parserKositReportParser = new \Quittio\Core\Validation\Drivers\KositReportParser()
$http(Closure(string, string, int): array{status: int, body: ?string})|null = null

lastReport()#

public function lastReport(): ?string

Raw report of the last validation (for archiving as test report).

Returns
?string

levels()#

public function levels(): array
Returns
array

name()#

public function name(): string
Returns
string

supports()#

public function supports(ValidationSubject $subject): bool
ParameterTypeDescription
$subjectValidationSubject
Returns
bool

validate()#

public function validate(ValidationSubject $subject): ValidationResult
ParameterTypeDescription
$subjectValidationSubject
Returns
ValidationResult

validateXml()#

public function validateXml(string $xml): list<ValidationMessage>
ParameterTypeDescription
$xmlstring
Returns
list<ValidationMessage>

The open core packages are MIT licensed. The legal wording of the country packs must be confirmed by a tax adviser.