Package org.eclipse.rdf4j.rio.rdfxml
Class RDFXMLWriter
java.lang.Object
org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
org.eclipse.rdf4j.rio.rdfxml.RDFXMLWriter
- All Implemented Interfaces:
CharSink,Sink,RDFHandler,RDFWriter
- Direct Known Subclasses:
RDFXMLPrettyWriter
An implementation of the RDFWriter interface that writes RDF documents in XML-serialized RDF format.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ParsedIRIprotected Stringprotected booleanprotected booleanprotected Resourceprotected charprotected final WriterFields inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
namespaceTable, statementConsumer -
Constructor Summary
ConstructorsConstructorDescriptionRDFXMLWriter(OutputStream out) Creates a new RDFXMLWriter that will write to the supplied OutputStream.RDFXMLWriter(OutputStream out, ParsedIRI baseIRI) Creates a new RDFXMLWriter that will write to the supplied OutputStream.RDFXMLWriter(Writer writer) Creates a new RDFXMLWriter that will write to the supplied Writer.RDFXMLWriter(Writer writer, ParsedIRI baseIRI) Creates a new RDFXMLWriter that will write to the supplied Writer. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidConsume a statement.voidendRDF()Signals the end of the RDF data.protected voidGets the RDF format that this RDFWriter uses.Collection<RioSetting<?>>protected StringgetValidNodeId(BNode bNode) Create a syntactically valid node id from the supplied blank node id.voidhandleComment(String comment) Handles a comment.voidhandleNamespace(String prefix, String name) Handles a namespace declaration/definition.protected voidsetNamespace(String prefix, String name) protected voidwriteAttribute(String attName, String value) protected voidwriteAttribute(String namespace, String attName, String value) protected voidwriteCharacterData(String chars) Replace special characters in text with entities.protected voidWrite > or />protected voidWrite >protected voidwriteEndTag(String namespace, String localName) protected voidprotected voidWrite tabprotected voidWrite newline characterprotected voidwriteQuotedAttribute(String attName, String value) Write quoted attributeprotected voidwriteStartOfStartTag(String namespace, String localName) Methods inherited from class org.eclipse.rdf4j.rio.helpers.AbstractRDFWriter
checkWritingStarted, getFileFormat, getWriterConfig, handleStatement, isWritingStarted, set, setWriterConfig, startRDFMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.rdf4j.common.io.Sink
acceptsFileFormat, getFileFormat
-
Field Details
-
baseIRI
-
writer
-
defaultNamespace
-
headerWritten
protected boolean headerWritten -
lastWrittenSubject
-
quote
protected char quote -
entityQuote
protected boolean entityQuote
-
-
Constructor Details
-
RDFXMLWriter
Creates a new RDFXMLWriter that will write to the supplied OutputStream.- Parameters:
out- The OutputStream to write the RDF/XML document to.
-
RDFXMLWriter
Creates a new RDFXMLWriter that will write to the supplied OutputStream.- Parameters:
out- The OutputStream to write the RDF/XML document to.baseIRI- base URI
-
RDFXMLWriter
Creates a new RDFXMLWriter that will write to the supplied Writer.- Parameters:
writer- The Writer to write the RDF/XML document to.
-
RDFXMLWriter
Creates a new RDFXMLWriter that will write to the supplied Writer.- Parameters:
writer- The Writer to write the RDF/XML document to.baseIRI- base URI
-
-
Method Details
-
getRDFFormat
Description copied from interface:RDFWriterGets the RDF format that this RDFWriter uses.- Specified by:
getRDFFormatin interfaceRDFWriter
-
getWriter
Description copied from interface:CharSink -
getSupportedSettings
- Specified by:
getSupportedSettingsin interfaceRDFWriter- Overrides:
getSupportedSettingsin classAbstractRDFWriter- Returns:
- A collection of
RioSettings that are supported by this RDFWriter.
-
writeHeader
- Throws:
IOException
-
endRDF
Description copied from interface:RDFHandlerSignals the end of the RDF data. This method is called when all data has been reported.- Specified by:
endRDFin interfaceRDFHandler- Throws:
RDFHandlerException- If the RDF handler has encountered an unrecoverable error.
-
handleNamespace
Description copied from interface:RDFHandlerHandles 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:
handleNamespacein interfaceRDFHandler- Overrides:
handleNamespacein classAbstractRDFWriter- Parameters:
prefix- The prefix for the namespace, or an empty string in case of a default namespace.name- The URI that the prefix maps to.
-
setNamespace
-
consumeStatement
Description copied from class:AbstractRDFWriterConsume 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:
consumeStatementin classAbstractRDFWriter- Parameters:
st- the statement to consume.
-
handleComment
Description copied from interface:RDFHandlerHandles a comment.- Specified by:
handleCommentin interfaceRDFHandler- Parameters:
comment- The comment.- Throws:
RDFHandlerException- If the RDF handler has encountered an unrecoverable error.
-
flushPendingStatements
- Throws:
IOExceptionRDFHandlerException
-
writeStartOfStartTag
- Throws:
IOException
-
writeAttribute
- Throws:
IOException
-
writeAttribute
protected void writeAttribute(String namespace, String attName, String value) throws IOException, RDFHandlerException - Throws:
IOExceptionRDFHandlerException
-
writeQuotedAttribute
Write quoted attribute- Parameters:
attName- attribute namevalue- string value- Throws:
IOException
-
writeEndOfStartTag
Write >- Throws:
IOException
-
writeEndOfEmptyTag
Write > or />- Throws:
IOException
-
writeEndTag
- Throws:
IOException
-
writeCharacterData
Replace special characters in text with entities.- Parameters:
chars- text- Throws:
IOException
-
writeIndent
Write tab- Throws:
IOException
-
writeNewLine
Write newline character- Throws:
IOException
-
getValidNodeId
Create a syntactically valid node id from the supplied blank node id. This is necessary because RDF/XML syntax enforces the blank node id is a valid NCName.- Parameters:
bNode- a blank node identifier- Returns:
- the blank node identifier converted to a form that is a valid NCName.
- Throws:
IOException- See Also:
-