Re: Three ideas

Hi Anthony,

you wrote

 > that the temporal validity of any statement is implicitly 
lower-bounded by the existence of the things that it talks about, so 
technically the birth-date example is only valid after the birth date of 
the person

Ok, let's take another example:

:theWebConf2022 a s:Event ;
     s:startDate "2022-04-25"^^xsd:date ;
     s:endDate "2022-04-29"^^xsd:date .

would you consider that those triple will only be valid on 2022-04-25? 
Or would you argue that this event already exists, even though it has 
not occurred yet?

Without starting to count angels on pinpoints (wondering if a 
yet-to-be-born person exists or not), let's be pragmatic: does it make 
your knowledge base inconsistent in any way to consider that such 
triples about future events are already valid? I don't think so.

So I am still not convinced that triples are the right level of 
granularity for /systematically /attaching contextual metadata. 
Following Pat, I prefer to keep rdf-statements dead-simple (1), and 
model more complex things (like anthony-statements) with a bunch of triples.

   pa

(1) even if, arguably, RDF-star makes them a little more complex that 
they originally were.

On 13/01/2022 03:51, Anthony Moretti wrote:
> Earlier I wrote:
>
>     the temporal validity of any statement is implicitly lower-bounded
>     by the existence of the things that it talks about
>
>
> I wouldn't mind some feedback on this, but I think the temporal 
> validity of every statement has an implicit upper bound too:
>
> Implicit lower bound: Existence of the things being described.
> Implicit upper bound: Stated time of assertion, otherwise the present.
>
> If that's correct, I can use it to demonstrate optional time and space 
> positions:
>
> It's 2010, and Pierre-Antoine sends me a graph. He puts a timestamp on 
> his graph by upper-bounding the temporal validity:
>
> {
>     :BarackObama :presidentOf :UnitedStates 2009 _,
>     :JoeBiden :vicePresidentOf :UnitedStates 2009 _,
>     :HillaryClinton :secretaryOfStateOf :UnitedStates 2009 _,
> }
>     _ 2010
>
> It's now 2022, and I'm working on my own graph:
>
> {
>     :JoeBiden :presidentOf :UnitedStates 2021 _,
>     :KamalaHarris :vicePresidentOf :UnitedStates 2021 _,
>     :AntonyBlinken :secretaryOfStateOf :UnitedStates 2021 _,
> }
>
> I trust Pierre-Antoine and remember that he sent me a graph a long 
> time ago. I do the laziest thing possible and import it unmodified as 
> a compound statement. The information is incomplete but the OWA means 
> everything is ok, and the graph is still valid:
>
> {
>     {
> :BarackObama :presidentOf :UnitedStates 2009 _,
> :JoeBiden :vicePresidentOf :UnitedStates 2009 _,
> :HillaryClinton :secretaryOfStateOf :UnitedStates 2009 _,
> }
> _ 2010,
>     :JoeBiden :presidentOf :UnitedStates 2021 _,
>     :KamalaHarris :vicePresidentOf :UnitedStates 2021 _,
>     :AntonyBlinken :secretaryOfStateOf :UnitedStates 2021 _,
> }
>
> I do automated flattening of the graph. The information is incomplete, 
> but the graph is still valid:
>
> {
> :BarackObama :presidentOf :UnitedStates 2009 2010,
> :JoeBiden :vicePresidentOf :UnitedStates 2009 2010,
> :HillaryClinton :secretaryOfStateOf :UnitedStates 2009 2010,
>     :JoeBiden :presidentOf :UnitedStates 2021 _,
>     :KamalaHarris :vicePresidentOf :UnitedStates 2021 _,
>     :AntonyBlinken :secretaryOfStateOf :UnitedStates 2021 _,
> }
>
> I finally get the motivation and I update Pierre Antoine's statements. 
> The information is now up to date and the graph is still valid:
>
> {
> :BarackObama :presidentOf :UnitedStates 2009 2017,
> :JoeBiden :vicePresidentOf :UnitedStates 2009 2017,
> :HillaryClinton :secretaryOfStateOf :UnitedStates 2009 2013,
>     :JoeBiden :presidentOf :UnitedStates 2021 _,
>     :KamalaHarris :vicePresidentOf :UnitedStates 2021 _,
>     :AntonyBlinken :secretaryOfStateOf :UnitedStates 2021 _,
> }
>
> I decide to send it back to Pierre-Antoine, and I put a timestamp on 
> my graph:
>
> {
> :BarackObama :presidentOf :UnitedStates 2009 2017,
> :JoeBiden :vicePresidentOf :UnitedStates 2009 2017,
> :HillaryClinton :secretaryOfStateOf :UnitedStates 2009 2013,
>     :JoeBiden :presidentOf :UnitedStates 2021 _,
>     :KamalaHarris :vicePresidentOf :UnitedStates 2021 _,
>     :AntonyBlinken :secretaryOfStateOf :UnitedStates 2021 _,
> }
>     _ 2022
>
> And so it could continue. Spatial validity would be handled similarly.
>
> It's very easy to reason about temporal/spatial validity when the 
> approach to statements is unified and optional time and space 
> positions can be used everywhere.
>
> Regards
> Anthony
>
> On Wed, Jan 12, 2022 at 12:48 PM Anthony Moretti 
> <anthony.moretti@gmail.com> wrote:
>
>     Correction, I was a bit sloppy:
>
>         In both cases I would leave the time and space positions blank
>         anyway, so RDF-as-usual.
>
>     In the second example the space position would be blank, but not
>     the time positions. I was just trying to agree that yes the second
>     example isn't place-dependent.
>
>     Regards
>     Anthony
>
>     On Wed, Jan 12, 2022 at 12:44 PM Anthony Moretti
>     <anthony.moretti@gmail.com> wrote:
>
>         Hi Pierre-Antoine
>
>             What is not entirely clear to me is how you see the ideas
>             below interact with RDF-star —or RDF, for that matter...
>
>             1) Do you want to modify the core of RDF / RDF-star,
>             replacing their notion of statement by the one you propose
>             here (time+place annotated, complex and/or compound)?
>
>             2) Or do you want to explore how your proposed notion of
>             statement could be expressed *on top* of RDF / RDF-star,
>             with no or minimal modification to them?
>
>             If the answer is 2 (my favorite option, by the way), then
>             the idea is to model anthony-statements using a set of
>             rdf-statements (possibly extended with RDF-star).
>
>
>         Ideally:
>         RDF: Time and space positions.
>         RDF-Star: Simple, compound, and complex statements.
>
>         It would be ideal to put the time and space positions at the
>         RDF level because, as Pat and Fabio seem to agree, some
>         triples are time/space dependent and make no sense without
>         that information. They're not edge cases either, it might seem
>         like that because so far there hasn't been a way to express
>         them, but there are infinitely many just as there are
>         infinitely many that aren't time/space constrained. Also, the
>         order of assertion is important for time/space dependent
>         triples, if anything is to be said about them, additional data
>         or metadata, then the time/space constraints need to be
>         asserted first, and time and space positions ensure that order
>         of assertion.
>
>             I think it would help the discussion a lot to a)
>             acknowledge that the word "statement" in this discussion
>             is ambiguous, and b) to be as explicit as possible about
>             which kind we are talking about.
>
>
>         I'm using the word "statement" as a direct replacement for
>         "sentence", so maybe "sentence" is a better term:
>
>         sentence:
>         /a set of words that is complete in itself, typically
>         containing a subject and predicate, conveying a statement,
>         question, exclamation, or command, and consisting of a main
>         clause and sometimes one or more subordinate clauses./
>
>             I am uncomfortable with "hard-coding" these 4 dimensions,
>             and only them, in every possible statement. I think that
>             the relevant dimensions depend on the relation itself
>             (e.g., the birth-date of a person is neither time nor
>             place dependent; the president of a country is not place
>             dependent...). And I don't think that any list of
>             contextual dimension can be exhaustive.
>
>             Especially regarding certainty, there are many ways to
>             model uncertainty (not all of them modelling it with a
>             single value between 0 and 1, by the way).
>
>
>         On the first example you gave, my thoughts are that the
>         temporal validity of any statement is implicitly lower-bounded
>         by the existence of the things that it talks about, so
>         technically the birth-date example is only valid after the
>         birth date of the person, the birth date happens to be the
>         object of the statement in this case but the idea would apply
>         to any statement. On the second example, yes I agree its
>         spatial validity is unbound. In both cases I would leave the
>         time and space positions blank anyway, so RDF-as-usual.
>
>         I'm happy to drop "certainty" for the reasons you stated. I've
>         included it so far because it's another example of where order
>         of assertion becomes important, for it to make sense it needs
>         to be asserted after time and space but before metadata. But
>         yes, let's drop it for now.
>
>         And yes for sure, no list of contextual dimensions can be
>         exhaustive, but if time and space positions are allowed it
>         ensures those assertions are made first and the whole
>         framework becomes scalable and easier to reason about.
>
>             Do you have any clear definition, or at least guidelines,
>             to decide whether a piece of information is additional
>             data or metadata?
>
>
>         My quick take would be: additional data continues the
>         description, whereas metadata is description of the description.
>
>         No widespread need, but logically it could continue,
>         descriptions of descriptions of descriptions and so on:
>
>         Simple statement
>             { Additional data }
>             {| First-order metadata |}
>             {| Second-order metadata |}
>             ...
>
>         Fabio has a good idea with the note containing examples of
>         good modeling.
>
>         Regards
>         Anthony
>
>         On Wed, Jan 12, 2022 at 8:02 AM Fabio Vitali
>         <fabio.vitali@unibo.it> wrote:
>
>             Dear Pierre-Antoine,
>
>             > 1) Do you want to modify the core of RDF / RDF-star,
>             replacing their notion of statement by the one you propose
>             here (time+place annotated, complex and/or compound)?
>
>
>             I think with you that RDFstar already provides a lot of
>             what has been discussed so far.
>
>             Yet Anthony explicitly mentions (and I agree with him)
>             that RDFstar has the right approach for single triples,
>             but is lacking in supporting the needs for complex and
>             compound statements. Working towards some suggestions to
>             integrate these needs would enrich and complete the
>             RDFstar proposal.
>
>             My preference would go towards exploiting named graphs,
>             explicitly introducing unasserted named graphs that can
>             then be used in RDFstar in the same way of unasserted
>             triples.
>
>             > 2) Or do you want to explore how your proposed notion of
>             statement could be expressed *on top* of RDF / RDF-star,
>             with no or minimal modification to them?
>
>             I do not know Anthony's point of view on this, but I
>             believe that it would be useful to think of a resource
>             providing some thoughtful and general guidelines on how
>             RDFstar's quoted and annotated triples (as well as,
>             hopefully, the RDFstar's quoted and annotated named graphs
>             that I envision) could help in expressing conditional,
>             time-dependent, location-dependent, uncertain, opinionated
>             and competing statements.
>
>             What I am thinking is something like, say, a W3C note, on
>             the lines of https://www.w3.org/TR/swbp-n-aryRelations/ :
>             a document introducing no new features, but explaining and
>             making examples on how to use the existing features in a
>             possibly unexpected and innovative way.
>
>             What do you think?
>
>             Fabio
>
>             --
>
>             > On 11 Jan 2022, at 15:43, Pierre-Antoine Champin
>             <pierre-antoine.champin@ercim.eu> wrote:
>             >
>             > Hi Anthony,
>             >
>             > thanks for the summary. It's hard to catch up for those
>             of us who went offline during the break :-)
>             >
>             > On 08/01/2022 10:40, Anthony Moretti wrote:
>             >> Hi
>             >>
>             >> I thought I'd put the ideas I shared during the longer
>             discussion in one place to make it easier for people to
>             read and give feedback. I love what's been achieved so
>             far, I just want whatever is released to be the best
>             possible thing that could be released.
>             > What is not entirely clear to me is how you see the
>             ideas below interact with RDF-star —or RDF, for that matter...
>             >
>             > 1) Do you want to modify the core of RDF / RDF-star,
>             replacing their notion of statement by the one you propose
>             here (time+place annotated, complex and/or compound)?
>             >
>             > 2) Or do you want to explore how your proposed notion of
>             statement could be expressed *on top* of RDF / RDF-star,
>             with no or minimal modification to them?
>             >
>             > If the answer is 2 (my favorite option, by the way),
>             then the idea is to model anthony-statements using a set
>             of rdf-statements (possibly extended with RDF-star). I
>             think it would help the discussion a lot to a) acknowledge
>             that the word "statement" in this discussion is ambiguous,
>             and b) to be as explicit as possible about which kind we
>             are talking about.
>             >
>             > I also have a few comments on the two first ideas:
>             >
>             >> (...)
>             >>
>             >> Summary:
>             >> 1. Optional time, space, and certainty positions.
>             > I am uncomfortable with "hard-coding" these 4
>             dimensions, and only them, in every possible statement. I
>             think that the relevant dimensions depend on the relation
>             itself (e.g., the birth-date of a person is neither time
>             nor place dependent; the president of a country is not
>             place dependent...). And I don't think that any list of
>             contextual dimension can be exhaustive.
>             >
>             > Especially regarding certainty, there are many ways to
>             model uncertainty (not all of them modelling it with a
>             single value between 0 and 1, by the way). On that
>             particular topic, you might be interested in this paper:
>             https://hal.inria.fr/hal-02167174/file/Publishing_Uncertainty_on_the_Semantic_Web__Bursting_the_LOD_bubbles__Final_Version_.pdf

>             >
>             >> 2. Separating additional data from metadata.
>             > Do you have any clear definition, or at least
>             guidelines, to decide whether a piece of information is
>             additional data or metadata?
>             >
>             >   best
>             >
>             >> 3. Simple, compound, and complex statements.
>             >> - - -
>             >>
>             >> 1. Optional time, space, and certainty positions
>             >>
>             >> We exist in time and space, and this type of modeling
>             could possibly be easier. A statement would have four
>             optional positions, leaving the time and space positions
>             blank would mean "unbounded", and leaving the last
>             position blank would mean 1.0:
>             >>
>             >> Subject Relation Object T1 T2 SpatialBound Certainty
>             >>
>             >> Examples:
>             >>
>             >> :RichardB :marriedTo :LizT 1964 1974
>             >> :RichardB :marriedTo :LizT 1975 1976
>             >>
>             >> :BigMac :price-USD 7.30 T1 T2 :Switzerland
>             >> :BigMac :price-USD 1.62 T1 T2 :India
>             >>
>             >> If anybody has worked with temporal databases they
>             might see an analogy with "valid times". By extension, the
>             spatial bound could be thought of as a "valid place".
>             >>
>             >> 2. Separating additional data from metadata
>             >>
>             >> This would remove a lot of ambiguity and creates a
>             clear order of assertion. It also seems to match the
>             Wikidata data model.
>             >>
>             >> Example:
>             >>
>             >> :LizT :starredIn :JaneEyre
>             >>     {
>             >>         :role :HelenBurns,
>             >>         :pay-USD 10000,
>             >>     }
>             >>     {|
>             >>         :statedBy :Bob,
>             >>         :statedIn :Wikipedia,
>             >>     |}
>             >>
>             >> 3. Simple, compound, and complex statements
>             >>
>             >> Taking inspiration from linguistics, there could be
>             four different types of statements:
>             >>
>             >> 1. Simple statement
>             >> 2. Compound statement
>             >> 3. Complex statement
>             >> 4. Compound-complex statement
>             >>
>             >> Simple statement (binary relationship):
>             >> S R O T1 T2 SB C
>             >>
>             >> Compound statement (graph):
>             >> {
>             >>     S R O T1 T2 SB C,
>             >>     S R O T1 T2 SB C,
>             >>     S R O T1 T2 SB C,
>             >> }
>             >>     T1 T2 SB C
>             >>
>             >> Complex statement (n-ary relationship):
>             >> S R O T1 T2 SB C
>             >>     {
>             >>         R O T1 T2 SB C,
>             >>         R O T1 T2 SB C,
>             >>     }
>             >>
>             >> Compound-complex statement (n-ary relationship):
>             >> {
>             >>     S R O T1 T2 SB C,
>             >>     S R O T1 T2 SB C,
>             >>     S R O T1 T2 SB C,
>             >> }
>             >>     T1 T2 SB C
>             >>     {
>             >>         R O T1 T2 SB C,
>             >>         R O T1 T2 SB C,
>             >>     }
>             >>
>             >> This creates consistency, and makes it easy to reason
>             about the temporal/spatial validity of any graph.
>             >>
>             >> The existing RDF-Star "<<" and ">>" delimiters could be
>             applied to statements of any type to say that a statement
>             was "neutrally asserted", as I think Pat has described it
>             before. Maybe for completeness, and based on something Pat
>             published, other delimiters could be created that would
>             mean "negatively asserted", something like "<!" and "!>"
>             for example.
>             >>
>             >> The existing RDF-Star "{|" and "|}" delimiters could be
>             applied to statements of any type to add metadata. The
>             example in Section 2 of this email is an example of a
>             complex statement with metadata.
>             >>
>             >> And I'm not sure, but it seems that nesting statements
>             could be a general solution to contexts, the deepest
>             nested statements would be in the most specific contexts.
>             I haven't examined it properly though.
>             >>
>             >> If you've made it here thanks for reading! If you need
>             more examples please ask and I'll do my best. I love
>             everything done so far, I just want to bounce around these
>             additional ideas with the hope that they're constructive.
>             Please reply with any feedback at all, good and bad, it's
>             all welcome!
>             >>
>             >> Regards
>             >> Anthony
>             > <OpenPGP_0x9D1EDAEEEF98D438.asc>
>

Received on Thursday, 13 January 2022 16:04:37 UTC