protected function doResolve(Reference $reference)
{
$referencedSchema = $this->resolveSchema($reference, $reference->getCurrentSchema());
if ($reference->hasFragment()) {
$schema = $this->resolveJSONPointer($reference, $referencedSchema);
} else {
$schema = $referencedSchema;
}
if ($schema instanceof Reference) {
return $this->resolve($schema, $referencedSchema);
}
return $schema;
}