quoll/donatello

Blank node generation doesn't work with `typed-literal`

Opened this issue · 0 comments

write-blank-object! recognizes a rdf/->TypedLiteral object as a map and tries to serialize it as another blank object

This test fails

(is (= "[:p \"foo\"^^xsd:token]"
       (first (write #'ttl/write-blank-object!
                     {:p (rdf/typed-literal "foo" :xsd/token)}
                     0))))

It generates:

[:p [:value \"foo\"; :datatype xsd:token]]

I believe the issue might be in the (if (map? check

Maybe changing it to (satisfies? Serializable o) solves the problem