- From: Pierre-Antoine Champin <pierre-antoine@w3.org>
- Date: Thu, 16 Jun 2022 00:50:30 +0200
- To: Souripriya Das <souripriya.das@oracle.com>, "public-rdf-star@w3.org" <public-rdf-star@w3.org>
- Message-ID: <444ef38e-4f8f-213f-7712-14470e31ce3d@w3.org>
On 10/06/2022 15:05, Souripriya Das wrote:
> What would be the best ways to represent the two cases of the
> following sentence in RDF-star:
> Alice heard that Bob knew that Cindy read, from email and in
> paper, that Dan adores Eve
> i.e.,
> Alice heard []
> |
> Bob knew []
> |
> Cindy read {from email; in
> paper} []
> |
> Dan Adores Eve
>
For a start, I will neglect the "from email, in paper" part, see below.
> Case 1: The only asserted triple should be: Alice heard <something>.
> All the remaining triples (i.e., those that make up the <something>
> portion) should be quoted triples only (i.e., not asserted triples).
In Turtle-star, this would be
:alice :heard <<
:bob :knew <<
:cindy :read <<
:dan :adores :eve
>>
>>
>>.
>
> Case 2: Every triple used to represent this sentence should be an
> asserted (i.e., not just quoted) triple.
same as above + assert all the nested triples, i.e.
;bob :knew << :cindy :read << :dan :adores :eve >> >>.
:cindy :read << :dan :adores :eve >>.
:dan :adores :eve.
The annotation syntax can not be used to reduce redundancy here, because
it is designed for cases where the quoted triple is the *subject*, while
in your example they all appear in *object* position.
If we assumed an alternative vocabulary, where predicate would be in the
other direction, you could write it:
:dan :adores :eve {|
:readBy :cindy {|
:knownBy :bob {|
:heardBy :alice
|}
|}
|}.
----
Now, about "from email; in paper".
This makes the example tricky, because basically, what Bob knew can no
longer be represented by a single triple. We could model this by stating
that bob knew several triples:
;bob :knew
<< :cindy :read << :dan :adores :eve >> >> ;
<< << :cindy :read << :dan :adores :eve >> >> :from :email123 >> ;
<< << :cindy :read << :dan :adores :eve >> >> :from :paper456 >> .
But then in turn, that's 3 triples that alice must have heard of...
Another way to model this would be to *name* the set of beliefs of bob:
:alice :heard << :bob :knew :sb >> .
:sb :triples (
<< :cindy :read << :dan :adores :eve >> >>
<< << :cindy :read << :dan :adores :eve >> >> :from :email123 >>
<< << :cindy :read << :dan :adores :eve >> >> :from :paper456 >>
).
This can be seen as an RDF-star-encoded named graph.
best
>
> Thanks,
> Souri.
>
Attachments
- application/pgp-keys attachment: OpenPGP public key
Received on Wednesday, 15 June 2022 22:50:35 UTC