Re: Unified proposal for embedded triples (as per today's meeting)

Hi Dörthe,

If we have that :teaches is an equivalent property to :givesClass (and if equivalent property is  covered in our semantics), we can still conclude that from

<< :john :teaches :cs101 >> rdf:type :teaching ;
                          dct:Location dbr:Stanford_University ;
                          dct:PeriodOfTime :1st-term-2022 .
:john :teaches :cs101.

that

<< :john :givesClass :cs101 >> rdf:type :teaching ;
                          dct:Location dbr:Stanford_University ;
                          dct:PeriodOfTime :1st-term-2022 .
:john :teaches :cs101.

We can do similar things with the subject and the object of the triple if we know that they are equivalent to other triples. But what happens if we have that the whole triple is equivalent to another one? For example, if we know that

:john :teaches :cs101.
and
:cs101 :isTaughtBy :John.

have the exact same meaning. How would we get that

<< :cs101 :isTaughtBy :John. >> rdf:type :teaching ;
                          dct:Location dbr:Stanford_University ;
                          dct:PeriodOfTime :1st-term-2022 .

It does not follow directly from the current semantics.

Well, well, well.
You have first to specify exactly what is the semantics of “have the exact same meaning” or "the whole triple is equivalent to another one", and how to possibly express it.
Let’s try some possibilities.

If we assume that “having the exact same meaning” is stated (e.g., in OWL) as

IEXT(:teaches) = IEXT^{-1}(:isTaughtBy)

then it would not follow from the semantics.
But this is to be expected, since the above axiom constrains the two properties only in terms of their extensions, but not in terms of their intentions - namely the names of the properties themselves. The name of the property, as we know, is one of the three elements on which reification depends, together with the subject and the object of the embedded triple.

Let consider the following extension of your example, which shows my point in a clearer way.
Suppose that we are modelling a university where only and all the professors contributing to the syllabus of a course can teach that course, so that we write the constraint:

IEXT(:contributesToSyllabusOf) = IEXT(:teaches) = IEXT^{-1}(:isTaughtBy)

Clearly, the these two properties induce completely distinct events (i.e., teaching and contributingToSyllabus), and indeed the above derivation is not expected at all, and rightly so. The reason, as I was saying, is that inclusion of extensions of pairs of subjects and objects does not state at all that we are talking about the same property.
Note that the extended example is not equivalent to:

:contributesToSyllabus owl:sameas :teaches.

since this latter statement says that

I(:contributesToSyllabusOf) = I(:teaches)

which says that the two properties are really interpreted as the same property in the interpretation, and therefore in this case their reifications would be the same and would denote the same event, which is unwanted.

So, let’s try some other way to state that :john :teaches :cs101. and :cs101 :isTaughtBy :John. “have the exact same meaning”.
In my papers on reification (e.g., [1] and [2]), I show that (semantic) reification (in DL, UML, E/R, ORM) is based on the ability to represent a fact with semantically meaningful explicitly named roles.
This means that we should have the ability to write reified triples with “custom” semantically meaningful property names, as follows:

_:t1 :teaches-subject :john.
_:t1 unstar:property :teaches.
_:t1 :teaches-object :cs101.
_:t2 :isTaughtBy-subject :cs101.
_:t2 unstar:property : isTaughtBy.
_:t2 :isTaughtBy-object :john.

If we then write the appropriate equalities:

:teaches-subject owl:sameas :isTaughtBy-object.
:teaches-object owl:sameas :isTaughtBy-subject.
_:t1 owl:sameas _:t2.

we get eventually the result you want!
However, we can not deal with “custom” property names for reification in RDF-star, so we can conclude that there is no way in RDF and derivatives to even state something like “have the exact same meaning”.

My conclusion is that semantic reification is indeed fully “semantic” and fully “transparent” (whatever this last word actually means), but RDF, RDFS, OWL are languages which are not tailored to express directly the kind of knowledge of your example. But you could do it, for example, by using RDF-surfaces :-)

As an open question, I would also like to know, how you’d deal with logical consequences. So, what if :teaches is a sub property of :isInvolvedInCourse. Would we get any derivation triple containing a quoted triple or not? Do we want

<< :john :isInvolvedInCourse :cs101 >> rdf:type :teaching ;
                          dct:Location dbr:Stanford_University ;
                          dct:PeriodOfTime :1st-term-2022 .
:john :isInvolvedInCourse :cs101.

For this last example I have no opinion yet (apart from: no would be easier) and I think it would depend on the use cases. So,  to keep it open: how far should our referential transparency go?

In semantic modelling it would be wrong to get such a derivation.
Indeed, as I said above, stating that a property B is a sub-property of a property A implies ONLY that the pairs of resources denoted by B are a subset of the pairs of resources denoted by A, namely:
IEXT(B)⊆ IEXT(A)
written as
B rdfs:subproperty A.
and nothing is said about the property “names”.

Consider the example (taken from [1] and [2]) of modelling taxi drivers in Malesia, where a taxi driver MUST own her own taxi:

:drivesTaxi rdfs:subproperty :ownsTaxi.

where it is clear that an event of driving a taxi is NOT an event of owning a taxi…

Kind regards,
Dörthe

It is a pleasure to discuss technical details with you, please go on asking. This gives me the opportunity to clarify the ideas behind reification even more.
cheers
—e.

[1] Alessandro Artale, Enrico Franconi, Rafael Penaloza, Francesco Sportelli: A Decidable Very Expressive Description Logic for Databases. ISWC (1) 2017: 37-52.
[2] Alessandro Artale, Enrico Franconi: Towards a Logical Foundation of Reification in Modelling Languages. In: Ontology Makes Sense- Essays in honour of Nicola Guarino, IOS Press 2019: 242-256.


Am 03.03.2023 um 08:29 schrieb Franconi Enrico <franconi@inf.unibz.it<mailto:franconi@inf.unibz.it>>:

Hi Olaf,
sure, no problem, I’ll work on that.
—e.

On 3 Mar 2023, at 01:04, Olaf Hartig <olaf.hartig@liu.se<mailto:olaf.hartig@liu.se>> wrote:

Hi Enrico,

I want to pick up on the first question that Ora asked you during today's call and turn that question into a request
(not only to you but to the group in general).

I would very much prefer if proposals such as this one are presented not only in terms of an extension of Turtle (or any
other concrete syntax for representing RDF graphs) but also in terms of some structure or model that is defined using
mathematical concepts (e.g., sets, tuples, functions) and that expressions made in the concrete syntax can be mapped to.
I mean, the notion of an RDF graph [1] is such a structure, and so is the notion of an RDF-star graph [2]. I would like
to see definitions of such types of notions to be the basis of any proposal. The reason being that the definitions of a
model-theoretic semantics and of a query evaluation semantics would build on such notions (and not on expressions made
in the concrete syntax).

So, in this sense, what kind of a thing is it that you propose to write in the following form?

|<< :john :teaches :cs101 >>| :recorded "2021-07-07"^^xsd:date .

Similarly, what kind of thing would be written using the following form?

<< |:john| |:teaches| |:cs101| >> :recorded "2021-07-07"^^xsd:date .


Olaf

[1] https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.w3.org%2FTR%2Frdf11-concepts%2F%23dfn-rdf-graph&data=05%7C01%7Cfranconi%40inf.unibz.it%7Ccb27093faf804a68836d08db1b7ad0c8%7C9251326703e3401a80d4c58ed6674e3b%7C0%7C0%7C638133986518402021%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=6y47Df2e6Wz3xmb2eNQWbXCC32VPcyQpfmEAInNUs70%3D&reserved=0<https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.w3.org%2FTR%2Frdf11-concepts%2F%23dfn-rdf-graph&data=05%7C01%7Cfranconi%40inf.unibz.it%7Cb8b42bd01932450fe42f08db1c05d30c%7C9251326703e3401a80d4c58ed6674e3b%7C0%7C0%7C638134583563766007%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=XDl20s7ABEHHMeIw%2FJtaG5D4TenZDbJUSpRBri1pelo%3D&reserved=0>
[2] https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3c.github.io%2Frdf-star%2Fcg-spec%2F%23dfn-graph&data=05%7C01%7Cfranconi%40inf.unibz.it%7Ccb27093faf804a68836d08db1b7ad0c8%7C9251326703e3401a80d4c58ed6674e3b%7C0%7C0%7C638133986518558077%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=KxUl%2F0CLbYQxrKRapgY%2FWpM6K8hJGME24p1XGMm8jBM%3D&reserved=0<https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fw3c.github.io%2Frdf-star%2Fcg-spec%2F%23dfn-graph&data=05%7C01%7Cfranconi%40inf.unibz.it%7Cb8b42bd01932450fe42f08db1c05d30c%7C9251326703e3401a80d4c58ed6674e3b%7C0%7C0%7C638134583563766007%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Pvw8o%2BJEmHyqaRq1gGHGrl%2Fa8iUH20pAJWdEMMzbgto%3D&reserved=0>


On tor, 2023-03-02 at 17:59 +0000, Franconi Enrico wrote:
Semantic predication example:

<< :john :teaches :cs101 >> rdf:type :teaching ;
                          dct:Location dbr:Stanford_University ;
                          dct:PeriodOfTime :1st-term-2022 .
:john :teaches :cs101.

Syntactic predication example:

|<< :john :teaches :cs101 >>| rdf:type unstar:triple ;
                            :recorded "2021-07-07"^^xsd:date .

or

<< |:john| |:teaches| |:cs101| >> rdf:type unstar:triple ;
                                :recorded "2021-07-07"^^xsd:date .

Modal/epistemic predication example:

<< :john :teaches :cs101 >> rdf:type unstar:statement;
                          :accordingTo :employee22 .

Received on Tuesday, 7 March 2023 21:19:50 UTC