Currently the literal factory returns xsd:String-literals for strings (the
literal factory only produces typed literals). By contrast EasyGraph (which
is imported by default on the shell converts to Plain Literals as the
following Tests shows:

@Test
    def useStringAsObject {
        val t = new TripleImpl(new UriRef(("http://example.org/subject";)),
new UriRef(("http://example.org/predicate";)), "a value")
        Assert.assertEquals(new PlainLiteralImpl("a value"), t.getObject)
    }

I think for strings that are not natural language it is better to use
xsd:String, so I suggest only to convert literals with a specified language
implicitly to plain literals and use xsd:String otherwise.

Any other opinion on this?

Cheers,
Reto

Reply via email to