public function retrieve($uri) { $resolver = new UriResolver(); $parts = $resolver->parse($uri); $parts['fragment'] = '#'; $uri = $resolver->generate($parts); return parent::retrieve($uri); }
public function retrieve($uri, $baseUri = null) { $resolver = new UriResolver(); $resolvedUri = $fetchUri = $resolver->resolve($uri, $baseUri); $arParts = $resolver->parse($resolvedUri); if (isset($arParts['fragment'])) { unset($arParts['fragment']); $fetchUri = $resolver->generate($arParts); } $jsonSchema = $this->loadSchema($fetchUri); $jsonSchema = $this->resolvePointer($jsonSchema, $resolvedUri); $jsonSchema->id = $resolvedUri; return $jsonSchema; }
/** * Retrieve a URI * * @param string $uri JSON Schema URI * @param string|null $baseUri * @return object JSON Schema contents */ public function retrieve($uri, $baseUri = null) { $resolver = new UriResolver(); $resolvedUri = $fetchUri = $resolver->resolve($uri, $baseUri); //fetch URL without #fragment $arParts = $resolver->parse($resolvedUri); if (isset($arParts['fragment'])) { unset($arParts['fragment']); $fetchUri = $resolver->generate($arParts); } $jsonSchema = $this->loadSchema($fetchUri, $resolvedUri); // Use the JSON pointer if specified $jsonSchema = $this->resolvePointer($jsonSchema, $resolvedUri); if ($jsonSchema instanceof \stdClass) { $jsonSchema->id = $resolvedUri; } return $jsonSchema; }