Constructing a literal from another literal does not copy language or datatype tag · Issue #188 · RDFLib/rdflib (original) (raw)

Skip to content

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

@ghost

Description

@ghost

gromgull, 2012-01-15T18:20:03.000Z

In [15]: b=rdflib.Literal("2", datatype=rdflib.XSD.integer)

In [16]: b Out[16]: rdflib.term.Literal(u'2', datatype=rdflib.term.URIRef('http://www.w3.org/2001/XMLSchema#integer'))

In [17]: rdflib.Literal(b)==b Out[17]: False

In [18]: rdflib.Literal(b) Out[18]: rdflib.term.Literal(u'2')


In [9]: a=rdflib.Literal("cake",lang="en")

In [10]: a Out[10]: rdflib.term.Literal(u'cake', lang='en')

In [11]: rdflib.Literal(a)==a Out[11]: False

In [14]: rdflib.Literal(a) Out[14]: rdflib.term.Literal(u'cake')

The constructor thinks it's just a string - we should probably check for literals and copy it completely.

Comment 1 by gromgull Fixed in r7a4d65400beb