rdflib.plugins.serializers package

Submodules

rdflib.plugins.serializers.hext module

HextuplesSerializer RDF graph serializer for RDFLib. See <https://github.com/ontola/hextuples> for details about the format.

class rdflib.plugins.serializers.hext.HextuplesSerializer(store)[source]

Bases: Serializer

Serializes RDF graphs to NTriples format.

Parameters:

store (Union[Graph, ConjunctiveGraph]) –

__init__(store)[source]
Parameters:

store (Union[Graph, ConjunctiveGraph]) –

__module__ = 'rdflib.plugins.serializers.hext'
base: Optional[str]
encoding: str
serialize(stream, base=None, encoding='utf-8', **kwargs)[source]

Abstract method

Parameters:
store: Graph

rdflib.plugins.serializers.jsonld module

This serialiser will output an RDF Graph as a JSON-LD formatted document. See:

Example usage:

>>> from rdflib import Graph
>>> testrdf = '''
... @prefix dc: <http://purl.org/dc/terms/> .
... <http://example.org/about>
...     dc:title "Someone's Homepage"@en .
... '''

>>> g = Graph().parse(data=testrdf, format='n3')

>>> print(g.serialize(format='json-ld', indent=4))
[
    {
        "@id": "http://example.org/about",
        "http://purl.org/dc/terms/title": [
            {
                "@language": "en",
                "@value": "Someone's Homepage"
            }
        ]
    }
]
class rdflib.plugins.serializers.jsonld.JsonLDSerializer(store)[source]

Bases: Serializer

Parameters:

store (Graph) –

__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.jsonld'
base: Optional[str]
encoding: str
serialize(stream, base=None, encoding=None, **kwargs)[source]

Abstract method

Parameters:
store: Graph
rdflib.plugins.serializers.jsonld.from_rdf(graph, context_data=None, base=None, use_native_types=False, use_rdf_type=False, auto_compact=False, startnode=None, index=False)[source]

rdflib.plugins.serializers.longturtle module

LongTurtle RDF graph serializer for RDFLib. See <http://www.w3.org/TeamSubmission/turtle/> for syntax specification.

This variant, longturtle as opposed to just turtle, makes some small format changes to turtle - the original turtle serializer. It:

  • uses PREFIX instead of @prefix

  • uses BASE instead of @base

  • adds a new line at RDF.type, or ‘a’

  • adds a newline and an indent for all triples with more than one object (object list)

  • adds a new line and ‘;’ for the last triple in a set with ‘.’

    on the start of the next line

  • uses default encoding (encode()) is used instead of “latin-1”

  • Nicholas Car, 2023

class rdflib.plugins.serializers.longturtle.LongTurtleSerializer(store)[source]

Bases: RecursiveSerializer

__init__(store)[source]
__module__ = 'rdflib.plugins.serializers.longturtle'
addNamespace(prefix, namespace)[source]
doList(l_)[source]
endDocument()[source]
getQName(uri, gen_prefix=True)[source]
indentString = '    '
isValidList(l_)[source]

Checks if l is a valid RDF list, i.e. no nodes have other properties.

label(node, position)[source]
objectList(objects)[source]
p_default(node, position, newline=False)[source]
p_squared(node, position)[source]
path(node, position, newline=False)[source]
predicateList(subject, newline=False)[source]
preprocessTriple(triple)[source]
reset()[source]
s_default(subject)[source]
s_squared(subject)[source]
serialize(stream, base=None, encoding=None, spacious=None, **args)[source]

Abstract method

short_name = 'longturtle'
startDocument()[source]
statement(subject)[source]
verb(node, newline=False)[source]

rdflib.plugins.serializers.n3 module

Notation 3 (N3) RDF graph serializer for RDFLib.

class rdflib.plugins.serializers.n3.N3Serializer(store, parent=None)[source]

Bases: TurtleSerializer

Parameters:

store (Graph) –

__init__(store, parent=None)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.n3'
endDocument()[source]
getQName(uri, gen_prefix=True)[source]
indent(modifier=0)[source]

Returns indent string multiplied by the depth

p_clause(node, position)[source]
path(node, position, newline=False)[source]
preprocessTriple(triple)[source]
reset()[source]
s_clause(subject)[source]
short_name = 'n3'
statement(subject)[source]

rdflib.plugins.serializers.nquads module

class rdflib.plugins.serializers.nquads.NQuadsSerializer(store)[source]

Bases: Serializer

Parameters:

store (Graph) –

__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.nquads'
base: Optional[str]
encoding: str
serialize(stream, base=None, encoding=None, **args)[source]

Abstract method

Parameters:
store: Graph

rdflib.plugins.serializers.nt module

class rdflib.plugins.serializers.nt.NTSerializer(store)[source]

Bases: Serializer

Serializes RDF graphs to NTriples format.

Parameters:

store (Graph) –

__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.nt'
base: Optional[str]
encoding: str
serialize(stream, base=None, encoding='utf-8', **args)[source]

Abstract method

Parameters:
Return type:

None

store: Graph

rdflib.plugins.serializers.rdfxml module

class rdflib.plugins.serializers.rdfxml.PrettyXMLSerializer(store, max_depth=3)[source]

Bases: Serializer

Parameters:

store (Graph) –

__init__(store, max_depth=3)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.rdfxml'
base: Optional[str]
encoding: str
predicate(predicate, object, depth=1)[source]
Parameters:
Return type:

None

serialize(stream, base=None, encoding=None, **args)[source]

Abstract method

Parameters:
Return type:

None

store: Graph
subject(subject, depth=1)[source]
Parameters:
class rdflib.plugins.serializers.rdfxml.XMLSerializer(store)[source]

Bases: Serializer

Parameters:

store (Graph) –

__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.rdfxml'
base: Optional[str]
encoding: str
predicate(predicate, object, depth=1)[source]
Parameters:
Return type:

None

serialize(stream, base=None, encoding=None, **args)[source]

Abstract method

Parameters:
Return type:

None

store: Graph
subject(subject, depth=1)[source]
Parameters:
Return type:

None

rdflib.plugins.serializers.rdfxml.fix(val)[source]

strip off _: from nodeIDs… as they are not valid NCNames

Parameters:

val (str) –

Return type:

str

rdflib.plugins.serializers.trig module

Trig RDF graph serializer for RDFLib. See <http://www.w3.org/TR/trig/> for syntax specification.

class rdflib.plugins.serializers.trig.TrigSerializer(store)[source]

Bases: TurtleSerializer

Parameters:

store (Union[Graph, ConjunctiveGraph]) –

__init__(store)[source]
Parameters:

store (Union[Graph, ConjunctiveGraph]) –

__module__ = 'rdflib.plugins.serializers.trig'
indentString = '    '
preprocess()[source]
Return type:

None

reset()[source]
Return type:

None

serialize(stream, base=None, encoding=None, spacious=None, **args)[source]

Abstract method

Parameters:
short_name = 'trig'

rdflib.plugins.serializers.trix module

class rdflib.plugins.serializers.trix.TriXSerializer(store)[source]

Bases: Serializer

Parameters:

store (Graph) –

__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.trix'
base: Optional[str]
encoding: str
serialize(stream, base=None, encoding=None, **args)[source]

Abstract method

Parameters:
store: Graph

rdflib.plugins.serializers.turtle module

Turtle RDF graph serializer for RDFLib. See <http://www.w3.org/TeamSubmission/turtle/> for syntax specification.

class rdflib.plugins.serializers.turtle.RecursiveSerializer(store)[source]

Bases: Serializer

Parameters:

store (Graph) –

__annotations__ = {'roundtrip_prefixes': 'Tuple[Any, ...]'}
__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.turtle'
addNamespace(prefix, uri)[source]
Parameters:
Return type:

None

buildPredicateHash(subject)[source]

Build a hash key by predicate to a list of objects for the given subject

Parameters:

subject (Node) –

Return type:

Mapping[Node, List[Node]]

checkSubject(subject)[source]

Check to see if the subject should be serialized yet

Parameters:

subject (Node) –

Return type:

bool

indent(modifier=0)[source]

Returns indent string multiplied by the depth

Parameters:

modifier (int) –

Return type:

str

indentString = '  '
isDone(subject)[source]

Return true if subject is serialized

Parameters:

subject (Node) –

Return type:

bool

maxDepth = 10
orderSubjects()[source]
Return type:

List[Node]

predicateOrder = [rdflib.term.URIRef('http://www.w3.org/1999/02/22-rdf-syntax-ns#type'), rdflib.term.URIRef('http://www.w3.org/2000/01/rdf-schema#label')]
preprocess()[source]
Return type:

None

preprocessTriple(spo)[source]
Parameters:

spo (Tuple[Node, Node, Node]) –

Return type:

None

reset()[source]
Return type:

None

roundtrip_prefixes: Tuple[Any, ...] = ()
sortProperties(properties)[source]

Take a hash from predicate uris to lists of values. Sort the lists of values. Return a sorted list of properties.

Parameters:

properties (Mapping[Node, List[Node]]) –

Return type:

List[Node]

subjectDone(subject)[source]

Mark a subject as done.

Parameters:

subject (Node) –

Return type:

None

topClasses = [rdflib.term.URIRef('http://www.w3.org/2000/01/rdf-schema#Class')]
write(text)[source]

Write text in given encoding.

Parameters:

text (str) –

Return type:

None

class rdflib.plugins.serializers.turtle.TurtleSerializer(store)[source]

Bases: RecursiveSerializer

Parameters:

store (Graph) –

__init__(store)[source]
Parameters:

store (Graph) –

__module__ = 'rdflib.plugins.serializers.turtle'
addNamespace(prefix, namespace)[source]
Parameters:
Return type:

str

base: Optional[str]
doList(l_)[source]
Parameters:

l_ (Node) –

Return type:

None

encoding: str
endDocument()[source]
Return type:

None

getQName(uri, gen_prefix=True)[source]
Parameters:
Return type:

Optional[str]

indentString = '    '
isValidList(l_)[source]

Checks if l is a valid RDF list, i.e. no nodes have other properties.

Parameters:

l_ (Node) –

Return type:

bool

label(node, position)[source]
Parameters:
  • node (Node) –

  • position (int) –

Return type:

str

objectList(objects)[source]
Parameters:

objects (Sequence[Node]) –

Return type:

None

p_default(node, position, newline=False)[source]
Parameters:
  • node (Node) –

  • position (int) –

  • newline (bool) –

Return type:

bool

p_squared(node, position, newline=False)[source]
Parameters:
  • node (Node) –

  • position (int) –

  • newline (bool) –

Return type:

bool

path(node, position, newline=False)[source]
Parameters:
  • node (Node) –

  • position (int) –

  • newline (bool) –

Return type:

None

predicateList(subject, newline=False)[source]
Parameters:
Return type:

None

preprocessTriple(triple)[source]
Parameters:

triple (Tuple[Node, Node, Node]) –

Return type:

None

reset()[source]
Return type:

None

s_default(subject)[source]
Parameters:

subject (Node) –

Return type:

bool

s_squared(subject)[source]
Parameters:

subject (Node) –

Return type:

bool

serialize(stream, base=None, encoding=None, spacious=None, **args)[source]

Abstract method

Parameters:
Return type:

None

short_name = 'turtle'
startDocument()[source]
Return type:

None

statement(subject)[source]
Parameters:

subject (Node) –

Return type:

bool

store: Graph
stream: Optional[IO[bytes]]
verb(node, newline=False)[source]
Parameters:
Return type:

None

rdflib.plugins.serializers.xmlwriter module

class rdflib.plugins.serializers.xmlwriter.XMLWriter(stream, namespace_manager, encoding=None, decl=1, extra_ns=None)[source]

Bases: object

Parameters:
__dict__ = mappingproxy({'__module__': 'rdflib.plugins.serializers.xmlwriter', '__init__': <function XMLWriter.__init__>, '_XMLWriter__get_indent': <function XMLWriter.__get_indent>, 'indent': <property object>, '_XMLWriter__close_start_tag': <function XMLWriter.__close_start_tag>, 'push': <function XMLWriter.push>, 'pop': <function XMLWriter.pop>, 'element': <function XMLWriter.element>, 'namespaces': <function XMLWriter.namespaces>, 'attribute': <function XMLWriter.attribute>, 'text': <function XMLWriter.text>, 'qname': <function XMLWriter.qname>, '__dict__': <attribute '__dict__' of 'XMLWriter' objects>, '__weakref__': <attribute '__weakref__' of 'XMLWriter' objects>, '__doc__': None, '__annotations__': {'element_stack': 'List[str]'}})
__init__(stream, namespace_manager, encoding=None, decl=1, extra_ns=None)[source]
Parameters:
__module__ = 'rdflib.plugins.serializers.xmlwriter'
__weakref__

list of weak references to the object (if defined)

attribute(uri, value)[source]
Parameters:
  • uri (str) –

  • value (str) –

Return type:

None

element(uri, content, attributes={})[source]

Utility method for adding a complete simple element

Parameters:
Return type:

None

property indent: str
namespaces(namespaces=None)[source]
Parameters:

namespaces (Optional[Iterable[Tuple[str, str]]]) –

Return type:

None

pop(uri=None)[source]
Parameters:

uri (Optional[str]) –

Return type:

None

push(uri)[source]
Parameters:

uri (str) –

Return type:

None

qname(uri)[source]

Compute qname for a uri using our extra namespaces, or the given namespace manager

Parameters:

uri (str) –

Return type:

str

text(text)[source]
Parameters:

text (str) –

Return type:

None

Module contents