Re: against injective annotations - Re: RDF-star "baseline" with IRI opacity

Hi Peter,

On Fri, Jun 14, 2024 at 5:01 PM Peter F. Patel-Schneider
<pfpschneider@gmail.com> wrote:
>
> It has been suggested in the previous version of the "baseline" that
> annotations should use a predicate that is injective, i.e., each annotation is
> for a single triple term.  But it is very common to want to provide provenance
> for not just one triple term but multiple triple terms at once.  Consider John
> married Suzy in Westminster as evidenced by the New York Times of Tuesday
> gathered by KRBOT on Wednesday.  Here the annotation is for the entire n-ary
> relationships John married Suzy in Westminster, not just for John married Suzy
> and not just for ... in Westminster. As in
>    _:b rdf:isAnnotationOf ( John married Suzy ) .
>    _:b rdf:isAnnotationOf ( ( John married Suzy ) in Westminster ) .
>    _:b :source _:nyt .
>    _:nyt :publication :NYT .
>    _:nyt :date Tuesday .
>    _:b :gathered _:krbot .
>    _:krbot :agent :KRBOT .
>    _:krbot :date Wednesday .
> So requiring annotations to be just for one triple term does not seem desirable.

I agree.

This is a case for many to many, and also for when opaque provenance
does not seem useful. Unless the New York Times publishes actual RDF
triples in its article issues (and even if so), I assume that this is
a case of provenance about a transparent interpretation.

Note that the example appears (if the parentheses are intended as
triple terms, not RDF lists) to repeat the seminal mistake, by
claiming the abstract relationship as the thing with a location. This
simple logical "axiom" does not have any spatiotemporal properties
(and is fortunately not to be allowed as a subject, not in the
well-formed syntax; reasonably not at all (well, apart from in the
generalized abstract form)).

More concretely, since they could be married many times, in many
places, let's therefore also clarify that John and Suzy married in
Westminster on Sunday; an event which reifies this simple fact.

Thus, the following assumes that this is what the KRBOT interprets, on
Wednesday, that NYT expressed on Tuesday:

    <John> :married <Suzy> {| :location <Westminster> ; :date <Sunday> |} .

i.e. sugar for:

    <John> :married <Suzy> .
    _:e rdf:reifies <<( <John> :married <Suzy> )>> .
    _:e :location <Westminster> .
    _:e :date <Sunday> .

The name `_:b` is used for the KRBOT interpretation, and links to the
newspaper issue and the ingest event:

    _:b :source _:nyt .
    _:b :gathered _:krbot .

    _:nyt :publication <NYT> .
    _:nyt :date <Tuesday> .

    _:krbot :agent <KRBOT> .
    _:krbot :date <Wednesday> .

This then is the key description, about the interpretation:

    _:b rdf:reifies <<( <John> :married <Suzy> )>> .
    _:b rdf:reifies <<( _:e rdf:reifies <<( <John> :married <Suzy> )>> )>> .
    _:b rdf:reifies <<( _:e :location <Westminster> )>> .
    _:b rdf:reifies <<( _:e :date <Westminster> )>> .

Note: There's a lot to be said about the current syntactic sugar
options for the above, including using RDF-star annotations to also
assert the interpretation (such as when you believe the KRBOT). But
that comes after deciding on how to support this use case in the
abstract syntax and semantics.

Note also that KRBOT chooses to reify a simpler statement, rather than
use a traditional event-based model, describing Marriages and spouses
thereof; like:

    _:e a :Marriage .
    _:e :spouse <John> .
    _:e :spouse <Suzy> .
    _:e :location <Westminster> .
    _:e :date <Sunday> .

With RDF-star in RDF 1.2, I suspect the reifying form may become a
more common design choice. I usually argue that this should only be
done when you have a simpler, coarse-grained model already in
production. But since model granularity is not an absolute (there's
always something more detailed), I've begun to tone that down. Of
course, for semantic interoperability, we should be able to use OWL to
bridge the model differences [1].

Best regards,
Niklas

[1]: <https://github.com/w3c/rdf-star-wg/wiki/Strawman-Proposal:-Triple-Tokens-Entailing-Reified-Statements#bridging-different-designs>



> peter
>
>
> On 6/14/24 08:20, Franconi Enrico wrote:
> > Hi,
> > after the discussions last week arguing the non-intuitiveness of fully opaque
> > triple terms as literals, and after the comments that opaque tripe terms
> > should have transparent bnodes, I have prepared a new version of the baseline
> > document, where opaque triple terms have opaque IRIs and transparent bnodes:
> > https://github.com/w3c/rdf-star-wg/wiki/RDF-star-"baseline-with-IRI-opacity”
> > <https://github.com/w3c/rdf-star-wg/wiki/RDF-star-"baseline-with-IRI-opacity">
> > Note that annotations are not anymore functional with opaque triple terms
> > anymore, since it would make little sense with transparent bnodes in opaque
> > triple terms. Still, as I already discussed privately with some of you, even
> > without functionality we should still be able to capture the LPG use cases.
> > See you later,
> > —e.
>

Received on Saturday, 15 June 2024 16:04:15 UTC