private function getJsonVersioner()
    {
        if (!$this->jsonVersioner) {
            $this->jsonVersioner = new ChainVersioner(array(
                // check the schema of the "$schema" field by default
                new SchemaUriVersioner(),
                // fall back to the "version" field for 1.0
                new VersionFieldVersioner(),
            ));
        }

        return $this->jsonVersioner;
    }