Fork me on GitHub
#rdf
<
2023-08-12
>
Chip01:08:27

Cross posting here. Forgive me if I shouldn’t or there’s a better way to do it. https://clojurians.slack.com/archives/C053AK3F9/p1691801848781149

👍 2
tmprd03:08:49

I think you need reification so maybe RDF-Star might work? https://clojurians.slack.com/archives/C09GHBXRC/p1686243641289829 I haven't used it myself. The other option might be too complicated if you're relying on reasoners, though I haven't tried that yet either 😄

gratitude-thank-you 2
tmprd04:08:06

You can implement RDFS inference rules in datalog though, so it probably depends on how much reasoning you need

gratitude-thank-you 2
Chip12:08:39

Thank you. I don’t think I need more than what datalog can provide.

Eric Scott23:08:10

Depending on your implementation, this may also be a sign that what you thought you might model with a triple might better be modeled as an event. Maybe instead of myguy said something, it might make more sense to do:

mystatement a SayingSomething;
  speaker myguy;
  spoken "something";
  time "2023-08-14"^^xsd:date;
Later on you might find the need for 'usingMedium' 'inResponseTo' 'inConversation', etc. and you'd be well positioned to do that. Again, I'm not clear on the details of what you're doing, so this may be totally inappropriate to your needs.

Eric Scott23:08:56

One disadvantage is that you'd have to mint a URI for mystatement. That's fairly easy to do using sparql URI(...) and maybe a hashing function like MD5.

Chip23:08:01

Exactly. It is indeed an event.

Chip23:08:45

Thank you.

❤️ 2