Fork me on GitHub
#clara
<
2023-11-17
>
Joel04:11:28

It looks like there might be some knowledge of Clara EAV here, although I know @claudius.nicolae would be the ideal responder… I’m wondering why I can’t create an EAV with a nil value. In it’s spec it has

(s/def ::v some?)
where ::v is the value. So this doesn’t work:
(clara-eav.eav/->EAV -1 :some-keyword nil)
Since I can’t insert (“upsert”) this then I can’t write a rule about it AFAICT. So I’m trying to figure out how to work with this the way it is as it appears intentional.

apbleonard08:11:25

I don't know much about clara eav, but I do think I know that, in clojure/datomic/rdf circles, setting any attribute of any entity to nil is commonly seen as semantically equivalent to not setting it at all. A nil attribute is to be interpreted as "I know nothing (new) about this attribute". This feels like a loss of expression but is actually very useful in practical terms when flowing values through functions that use nil punning. If you want to "unset" an attribute to have no value after it was previously set, you have to perhaps think about it as "retracting" a previously known fact, and find a way of doing that in your context.

clyfe16:12:53

fixed in snapshot

💯 1
Joel16:12:13

Saw that, thanks!