@Override public Boolean call() throws Exception { try{ RDFParser.source(datasetLocation).parse(rdfStream); } catch (Exception e) { ExceptionOutput.output(e, "Error parsing dataset: "+ datasetLocation, logger); signalSyntaxError.set(true); forcedCancel = true; throw new SyntaxErrorException(e.getMessage()); } return true; }
@Override public Stream<Triple> read(final InputStream input, final RDFSyntax syntax, final String base) { requireNonNull(input, "The input stream may not be null!"); requireNonNull(syntax, "The syntax value may not be null!"); try { final org.apache.jena.graph.Graph graph = createDefaultGraph(); final Lang lang = rdf.asJenaLang(syntax).orElseThrow(() -> new RuntimeTrellisException("Unsupported RDF Syntax: " + syntax.mediaType())); RDFParser.source(input).lang(lang).base(base).parse(graph); // Check the graph for any new namespace definitions final Set<String> namespaces = nsService.getNamespaces().entrySet().stream().map(Map.Entry::getValue) .collect(toSet()); graph.getPrefixMapping().getNsPrefixMap().forEach((prefix, namespace) -> { if (!namespaces.contains(namespace)) { LOGGER.debug("Setting prefix ({}) for namespace {}", prefix, namespace); nsService.setPrefix(prefix, namespace); } }); return rdf.asGraph(graph).stream().map(Triple.class::cast); } catch (final RiotException | AtlasException | IllegalArgumentException ex) { throw new RuntimeTrellisException(ex); } }
private static void readUtil(Graph graph, String uri, int limit) { StreamRDF sink = StreamRDFLib.graph(graph) ; sink = new StreamRDFLimited(sink, limit) ; RDFParser.source(uri).streamManager(Fuseki.webStreamManager).parse(sink); } }
@Override public void run() { Charset utf8 = StandardCharsets.UTF_8 ; ByteArrayInputStream input = new ByteArrayInputStream(data.getBytes(utf8)); try { RDFParser.source(input).lang(Lang.TTL).parse(out); } catch (Throwable t) { // Ignore the error } return; } };
private static void readUtil(Graph graph, String uri, int limit) { StreamRDF sink = StreamRDFLib.graph(graph) ; sink = new StreamRDFLimited(sink, limit) ; RDFParser.source(uri).streamManager(Fuseki.webStreamManager).parse(sink); } }
@Override public Stream<Triple> read(final InputStream input, final RDFSyntax syntax, final String base) { requireNonNull(input, "The input stream may not be null!"); requireNonNull(syntax, "The syntax value may not be null!"); try { final org.apache.jena.graph.Graph graph = createDefaultGraph(); final Lang lang = rdf.asJenaLang(syntax).orElseThrow(() -> new RuntimeTrellisException("Unsupported RDF Syntax: " + syntax.mediaType())); RDFParser.source(input).lang(lang).base(base).parse(graph); // Check the graph for any new namespace definitions final Set<String> namespaces = nsService.getNamespaces().entrySet().stream().map(Map.Entry::getValue) .collect(toSet()); graph.getPrefixMapping().getNsPrefixMap().forEach((prefix, namespace) -> { if (!namespaces.contains(namespace)) { LOGGER.debug("Setting prefix ({}) for namespace {}", prefix, namespace); nsService.setPrefix(prefix, namespace); } }); return rdf.asGraph(graph).stream().map(Triple.class::cast); } catch (final RiotException | AtlasException | IllegalArgumentException ex) { throw new RuntimeTrellisException(ex); } }
@Override final public void handle(String baseIRI, HttpResponse response) { try { Graph g = GraphFactory.createDefaultGraph() ; HttpEntity entity = response.getEntity() ; // org.apache.http.entity.ContentType ; String ct = contentType(response) ; Lang lang = RDFLanguages.contentTypeToLang(ct) ; StreamRDF dest = StreamRDFLib.graph(g) ; try(InputStream in = entity.getContent()) { RDFParser.source(in).lang(lang).base(baseIRI).parse(dest); } this.graph = g ; } catch (IOException ex) { IO.exception(ex) ; } }
@Override final public void handle(String baseIRI, HttpResponse response) { try { DatasetGraph dsg = DatasetGraphFactory.createTxnMem(); HttpEntity entity = response.getEntity() ; // org.apache.http.entity.ContentType ; String ct = contentType(response) ; Lang lang = RDFLanguages.contentTypeToLang(ct) ; StreamRDF dest = StreamRDFLib.dataset(dsg); try(InputStream in = entity.getContent()) { RDFParser.source(in).lang(lang).base(baseIRI).parse(dest); } this.dsg = dsg ; } catch (IOException ex) { IO.exception(ex) ; } }
@Override public Stream<Quad> stream() { final Dataset dataset = create(); try (final InputStream input = client.getObject(req).getObjectContent()) { RDFParser.source(input).lang(NQUADS).parse(dataset); } catch (final IOException ex) { dataset.close(); throw new RuntimeTrellisException("Error parsing input from S3", ex); } return rdf.asDataset(dataset).stream().map(Quad.class::cast).onClose(dataset::close); } }
@Override protected void parseSynchronusly() throws IOException { StreamRDF dest; final JenaRDF jenaRDF = getJenaFactory(); if (getTargetGraph().isPresent() && getTargetGraph().get() instanceof JenaGraph) { final Graph jenaGraph = ((JenaGraph) getTargetGraph().get()).asJenaGraph(); dest = StreamRDFLib.graph(jenaGraph); } else { if (generalizedConsumerQuad != null) { dest = jenaRDF.streamJenaToGeneralizedQuad(generalizedConsumerQuad); } else if (generalizedConsumerTriple != null) { dest = jenaRDF.streamJenaToGeneralizedTriple(generalizedConsumerTriple); } else { dest = JenaRDF.streamJenaToQuad(getRdfTermFactory().get(), getTarget()); } } final Lang lang = getContentTypeSyntax().flatMap(jenaRDF::asJenaLang).orElse(null); final String baseStr = getBase().map(IRI::getIRIString).orElse(null); if (getSourceIri().isPresent()) { RDFParser.source(getSourceIri().get().toString()).base(baseStr).lang(lang).parse(dest); } else if (getSourceFile().isPresent()) { try (InputStream s = Files.newInputStream(getSourceFile().get())) { RDFParser.source(s).base(baseStr).lang(lang).parse(dest); } } else { RDFParser.source(getSourceInputStream().get()).base(baseStr).lang(lang).parse(dest); } }
protected Graph getVocabulary(final String url) { final Graph graph = createDefaultGraph(); try { RDFParser.source(url).httpAccept(ACCEPT).parse(graph); } catch (final HttpException | RiotNotFoundException ex) { LOGGER.warn("Could not fetch {}: {}", url, ex.getMessage()); } assumeTrue(graph.size() > 0, "Remote vocabulary has no terms! Skip the test for " + url); return graph; }
@Override protected Graph getVocabulary(final String url) { final Graph graph = createDefaultGraph(); try { RDFParser.source(url).httpAccept("application/ld+json").parse(graph); } catch (final HttpException ex) { LOGGER.warn("Could not fetch {}: {}", url, ex.getMessage()); assumeTrue(false, "Error fetching the URL (" + url + "): skip the test"); } return graph; }
Supplier<SPARQLResult> r = ()->{ StreamRDF sink = StreamRDFLib.graph(model.getGraph()); RDFParser.source(in).lang(lang).parse(sink); return new SPARQLResult(model); }; Supplier<SPARQLResult> r = ()->{ StreamRDF sink = StreamRDFLib.dataset(ds.asDatasetGraph()); RDFParser.source(in).lang(lang).parse(sink); return new SPARQLResult(ds); };
@Test(expected=RiotException.class) public void trix_bad() { ErrorHandler err = ErrorHandlerFactory.getDefaultErrorHandler() ; try { ErrorHandlerFactory.setDefaultErrorHandler(ErrorHandlerFactory.errorHandlerSimple()) ; InputStream in = IO.openFile(fInput) ; StreamRDF sink = StreamRDFLib.sinkNull() ; RDFParser.source(in).lang(Lang.TRIX).parse(sink); } finally { ErrorHandlerFactory.setDefaultErrorHandler(err) ; } } }
throw new UpdateException("Attempt to load quads into a graph"); RDFParser parser = RDFParser .source(input.getInputStream()) .forceLang(lang) .build();