Package org.eclipse.rdf4j.rio.rdfjson
Class RDFJSONParser
java.lang.Object
org.eclipse.rdf4j.rio.helpers.AbstractRDFParser
org.eclipse.rdf4j.rio.rdfjson.RDFJSONParser
- All Implemented Interfaces:
RDFParser
RDFParser
implementation for the RDF/JSON format-
Field Summary
FieldsFields inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFParser
rdfHandler, valueFactory
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a parser usingRDFFormat.RDFJSON
to identify the parser.RDFJSONParser
(RDFFormat actualFormat) Creates a parser using the given RDFFormat to self identify. -
Method Summary
Modifier and TypeMethodDescriptionprivate com.fasterxml.jackson.core.JsonFactory
Get an instance of JsonFactory configured using the settings fromAbstractRDFParser.getParserConfig()
.protected Literal
createLiteral
(String label, String language, IRI datatype, com.fasterxml.jackson.core.JsonLocation currentLocation) Creates a literal, using the current value, language, and datatype, and additionally using the givenJsonLocation
to provide information about the line and column numbers in the event of a warning, error or exception being generated by the creation of the literal.Gets the RDF format that this parser can parse.Collection
<RioSetting<?>> void
parse
(InputStream inputStream, String baseUri) Parses the data from the supplied InputStream, using the supplied baseURI to resolve any relative URI references.void
Parses the data from the supplied Reader, using the supplied baseURI to resolve any relative URI references.private void
rdfJsonToHandlerInternal
(RDFHandler handler, ValueFactory vf, com.fasterxml.jackson.core.JsonParser jp) protected void
reportError
(String msg, com.fasterxml.jackson.core.JsonLocation location, RioSetting<Boolean> setting) protected void
reportError
(String msg, Exception e, com.fasterxml.jackson.core.JsonLocation location, RioSetting<Boolean> setting) protected void
reportFatalError
(String msg, com.fasterxml.jackson.core.JsonLocation location) protected void
reportFatalError
(String msg, Exception e, com.fasterxml.jackson.core.JsonLocation location) Methods inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFParser
clear, clearBNodeIDMap, createBNode, createBNode, createLiteral, createLiteral, createNode, createNode, createStatement, createStatement, createURI, getNamespace, getParseErrorListener, getParseLocationListener, getParserConfig, getRDFHandler, initializeNamespaceTableFromConfiguration, preserveBNodeIDs, reportError, reportError, reportError, reportError, reportError, reportFatalError, reportFatalError, reportFatalError, reportFatalError, reportFatalError, reportLocation, reportWarning, reportWarning, resolveURI, set, setBaseURI, setBaseURI, setNamespace, setParseErrorListener, setParseLocationListener, setParserConfig, setPreserveBNodeIDs, setRDFHandler, setValueFactory
-
Field Details
-
actualFormat
-
-
Constructor Details
-
RDFJSONParser
public RDFJSONParser()Creates a parser usingRDFFormat.RDFJSON
to identify the parser. -
RDFJSONParser
Creates a parser using the given RDFFormat to self identify.- Parameters:
actualFormat
-
-
-
Method Details
-
getRDFFormat
Description copied from interface:RDFParser
Gets the RDF format that this parser can parse. -
parse
public void parse(InputStream inputStream, String baseUri) throws IOException, RDFParseException, RDFHandlerException Description copied from interface:RDFParser
Parses the data from the supplied InputStream, using the supplied baseURI to resolve any relative URI references.- Parameters:
inputStream
- The InputStream from which to read the data.baseUri
- The URI associated with the data in the InputStream. May benull
. Parsers for syntax formats that do not support relative URIs will ignore this argument.Note that if the data contains an embedded base URI, that embedded base URI will overrule the value supplied here (see RFC 3986 section 5.1 for details).
- Throws:
IOException
- If an I/O error occurred while data was read from the InputStream.RDFParseException
- If the parser has found an unrecoverable parse error.RDFHandlerException
- If the configured statement handler has encountered an unrecoverable error.
-
createLiteral
protected Literal createLiteral(String label, String language, IRI datatype, com.fasterxml.jackson.core.JsonLocation currentLocation) throws RDFParseException Creates a literal, using the current value, language, and datatype, and additionally using the givenJsonLocation
to provide information about the line and column numbers in the event of a warning, error or exception being generated by the creation of the literal.- Parameters:
label
- the literal's lexical labellanguage
- the literal's language tag. Can be null.datatype
- the literal's datatype. Can be null.currentLocation
- the current JsonLocation. May not be null.- Returns:
- the created
Literal
object. - Throws:
RDFParseException
-
reportError
protected void reportError(String msg, Exception e, com.fasterxml.jackson.core.JsonLocation location, RioSetting<Boolean> setting) throws RDFParseException - Throws:
RDFParseException
-
reportError
protected void reportError(String msg, com.fasterxml.jackson.core.JsonLocation location, RioSetting<Boolean> setting) throws RDFParseException - Throws:
RDFParseException
-
reportFatalError
protected void reportFatalError(String msg, Exception e, com.fasterxml.jackson.core.JsonLocation location) throws RDFParseException - Throws:
RDFParseException
-
reportFatalError
protected void reportFatalError(String msg, com.fasterxml.jackson.core.JsonLocation location) throws RDFParseException - Throws:
RDFParseException
-
parse
public void parse(Reader reader, String baseUri) throws IOException, RDFParseException, RDFHandlerException Description copied from interface:RDFParser
Parses the data from the supplied Reader, using the supplied baseURI to resolve any relative URI references.- Parameters:
reader
- The Reader from which to read the data.baseUri
- The URI associated with the data in the InputStream. May benull
. Parsers for syntax formats that do not support relative URIs will ignore this argument.Note that if the data contains an embedded base URI, that embedded base URI will overrule the value supplied here (see RFC 3986 section 5.1 for details).
- Throws:
IOException
- If an I/O error occurred while data was read from the InputStream.RDFParseException
- If the parser has found an unrecoverable parse error.RDFHandlerException
- If the configured statement handler has encountered an unrecoverable error.
-
rdfJsonToHandlerInternal
private void rdfJsonToHandlerInternal(RDFHandler handler, ValueFactory vf, com.fasterxml.jackson.core.JsonParser jp) throws IOException, com.fasterxml.jackson.core.JsonParseException, RDFParseException, RDFHandlerException - Throws:
IOException
com.fasterxml.jackson.core.JsonParseException
RDFParseException
RDFHandlerException
-
getSupportedSettings
- Specified by:
getSupportedSettings
in interfaceRDFParser
- Overrides:
getSupportedSettings
in classAbstractRDFParser
- Returns:
- A collection of
RioSetting
s that are supported by this RDFParser.
-
configureNewJsonFactory
private com.fasterxml.jackson.core.JsonFactory configureNewJsonFactory()Get an instance of JsonFactory configured using the settings fromAbstractRDFParser.getParserConfig()
.- Returns:
- A newly configured JsonFactory based on the currently enabled settings
-