public function withParameter(string $nameSpace, string $paramName, string $paramValue): self
    {
        if (false === $this->xsltProcessor->setParameter($nameSpace, $paramName, $paramValue)) {
            throw new XslProcessorException(
                    'Could not set parameter ' . $nameSpace . ':' . $paramName
                    . ' with value ' . $paramValue
            );
        }

        if (!isset($this->parameters[$nameSpace])) {
            $this->parameters[$nameSpace] = [];
        }

        $this->parameters[$nameSpace][$paramName] = $paramValue;
        return $this;
    }