Package org.eclipse.rdf4j.rio.jsonld
Class JSONLDWriter
- java.lang.Object
-
- org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
-
- org.eclipse.rdf4j.rio.jsonld.JSONLDWriter
-
- All Implemented Interfaces:
CharSink
,Sink
,RDFHandler
,RDFWriter
public class JSONLDWriter extends AbstractRDFWriter implements CharSink
An RDFWriter that links toJSONLDInternalRDFParser
.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
baseURI
private Model
model
private StatementCollector
statementCollector
private java.io.Writer
writer
-
Fields inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
namespaceTable, statementConsumer
-
-
Constructor Summary
Constructors Constructor Description JSONLDWriter(java.io.OutputStream outputStream)
Create a JSONLDWriter using aOutputStream
JSONLDWriter(java.io.OutputStream outputStream, java.lang.String baseURI)
Create a JSONLDWriter using aOutputStream
JSONLDWriter(java.io.Writer writer)
Create a JSONLDWriter using aWriter
JSONLDWriter(java.io.Writer writer, java.lang.String baseURI)
Create a JSONLDWriter using aWriter
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
addPrefixes(java.util.Map<java.lang.String,java.lang.Object> ctx, java.util.Set<Namespace> namespaces)
Add name space prefixes to JSON-LD context, empty prefix gets the '@vocab' prefixvoid
consumeStatement(Statement st)
Consume a statement.void
endRDF()
Signals the end of the RDF data.RDFFormat
getRDFFormat()
Gets the RDF format that this RDFWriter uses.java.util.Collection<RioSetting<?>>
getSupportedSettings()
java.io.Writer
getWriter()
get theWriter
used by thisCharSink
.void
handleComment(java.lang.String comment)
Handles a comment.void
handleNamespace(java.lang.String prefix, java.lang.String uri)
Handles a namespace declaration/definition.void
startRDF()
Signals the start of the RDF data.-
Methods inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
checkWritingStarted, getFileFormat, getWriterConfig, handleStatement, isWritingStarted, set, setWriterConfig
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.common.io.Sink
acceptsFileFormat, getFileFormat
-
-
-
-
Field Detail
-
model
private final Model model
-
statementCollector
private final StatementCollector statementCollector
-
baseURI
private final java.lang.String baseURI
-
writer
private final java.io.Writer writer
-
-
Constructor Detail
-
JSONLDWriter
public JSONLDWriter(java.io.OutputStream outputStream)
Create a JSONLDWriter using aOutputStream
- Parameters:
outputStream
- The OutputStream to write to.
-
JSONLDWriter
public JSONLDWriter(java.io.OutputStream outputStream, java.lang.String baseURI)
Create a JSONLDWriter using aOutputStream
- Parameters:
outputStream
- The OutputStream to write to.baseURI
- base URI
-
JSONLDWriter
public JSONLDWriter(java.io.Writer writer)
Create a JSONLDWriter using aWriter
- Parameters:
writer
- The Writer to write to.
-
JSONLDWriter
public JSONLDWriter(java.io.Writer writer, java.lang.String baseURI)
Create a JSONLDWriter using aWriter
- Parameters:
writer
- The Writer to write to.baseURI
- base URI
-
-
Method Detail
-
getWriter
public java.io.Writer getWriter()
Description copied from interface:CharSink
get theWriter
used by thisCharSink
.
-
handleNamespace
public void handleNamespace(java.lang.String prefix, java.lang.String uri) throws RDFHandlerException
Description copied from interface:RDFHandler
Handles a namespace declaration/definition. A namespace declaration associates a (short) prefix string with the namespace's URI. The prefix for default namespaces, which do not have an associated prefix, are represented as empty strings.- Specified by:
handleNamespace
in interfaceRDFHandler
- Overrides:
handleNamespace
in classAbstractRDFWriter
- Parameters:
prefix
- The prefix for the namespace, or an empty string in case of a default namespace.uri
- The URI that the prefix maps to.- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
startRDF
public void startRDF() throws RDFHandlerException
Description copied from interface:RDFHandler
Signals the start of the RDF data. This method is called before any data is reported.- Specified by:
startRDF
in interfaceRDFHandler
- Overrides:
startRDF
in classAbstractRDFWriter
- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
endRDF
public void endRDF() throws RDFHandlerException
Description copied from interface:RDFHandler
Signals the end of the RDF data. This method is called when all data has been reported.- Specified by:
endRDF
in interfaceRDFHandler
- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
consumeStatement
public void consumeStatement(Statement st) throws RDFHandlerException
Description copied from class:AbstractRDFWriter
Consume a statement.Extending classes must override this method instead of overriding
AbstractRDFWriter.handleStatement(Statement)
in order to benefit from automatic handling of RDF-star conversion or encoding.- Overrides:
consumeStatement
in classAbstractRDFWriter
- Parameters:
st
- the statement to consume.- Throws:
RDFHandlerException
-
handleComment
public void handleComment(java.lang.String comment) throws RDFHandlerException
Description copied from interface:RDFHandler
Handles a comment.- Specified by:
handleComment
in interfaceRDFHandler
- Parameters:
comment
- The comment.- Throws:
RDFHandlerException
- If the RDF handler has encountered an unrecoverable error.
-
getRDFFormat
public RDFFormat getRDFFormat()
Description copied from interface:RDFWriter
Gets the RDF format that this RDFWriter uses.- Specified by:
getRDFFormat
in interfaceRDFWriter
-
getSupportedSettings
public java.util.Collection<RioSetting<?>> getSupportedSettings()
- Specified by:
getSupportedSettings
in interfaceRDFWriter
- Overrides:
getSupportedSettings
in classAbstractRDFWriter
- Returns:
- A collection of
RioSetting
s that are supported by this RDFWriter.
-
addPrefixes
private static void addPrefixes(java.util.Map<java.lang.String,java.lang.Object> ctx, java.util.Set<Namespace> namespaces)
Add name space prefixes to JSON-LD context, empty prefix gets the '@vocab' prefix- Parameters:
ctx
- contextnamespaces
- set of RDF name spaces
-
-