Serializing turtle file with python3 causes TypeError: unorderable types: DocumentFragment() > DocumentFragment() · Issue #676 · RDFLib/rdflib (original) (raw)

from rdflib import Graph

g = Graph()
g.parse("test.ttl", format="turtle")

s = g.serialize(format='turtle')
print(s)
Traceback (most recent call last):
  File "serialize.py", line 7, in <module>
    s = g.serialize(format='turtle')
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/graph.py", line 942, in serialize
    serializer.serialize(stream, base=base, encoding=encoding, **args)
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/plugins/serializers/turtle.py", line 209, in serialize
    if self.statement(subject) and not firstTime:
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/plugins/serializers/turtle.py", line 270, in statement
    return self.s_squared(subject) or self.s_default(subject)
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/plugins/serializers/turtle.py", line 275, in s_default
    self.predicateList(subject)
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/plugins/serializers/turtle.py", line 370, in predicateList
    propList = self.sortProperties(properties)
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/plugins/serializers/turtle.py", line 107, in sortProperties
    objects.sort()
  File "/home/olivier/git/github.com/RDFLib/rdflib/build/py3_testing/rdflib/term.py", line 823, in __gt__
    return self.value > other.value
TypeError: unorderable types: DocumentFragment() > DocumentFragment()

It's specific to Python3 though. 2.7 will be fine.