Re: RDF* semantics

Thomas,

I think the important part of Olaf's answer is the one you skipped,
with property domain range:

:claims a rdf:Property .
:claims rdfs:domain foaf:Person .
:claims rdfs:range foaf:Person .

this was your usage of :claims property, and it makes no sense to
"claim a person" (?!). It makes more sense however, to claim a
document:

:claims a rdf:Property .
:claims rdfs:domain foaf:Person .
:claims rdfs:range foaf:Document .

An example of claiming a document about Bob:

ex:Alice :claims [ a foaf:Document; foaf:primaryTopic [ a foaf:Person;
foaf:name "Bob" ] ] .

If we take :likes, then person is the range:

:likes a rdf:Property .
:likes rdfs:domain foaf:Person .
:likes rdfs:range foaf:Person .

Example:

ex:Alice :likes [ a foaf:Person; foaf:name "Bob" ] .

So I think it can be shown using basic inference that Olaf's
interpretation is correct here.


On Fri, Aug 30, 2019 at 10:25 PM thomas lörtsch <tl@rat.io> wrote:
>
>
>
> > On 30. Aug 2019, at 21:19, Olaf Hartig <olaf.hartig@liu.se> wrote:
> >
> > Thomas,
> >
> > On fredag 30 augusti 2019 kl. 19:03:16 CEST thomas lörtsch wrote:
> >> Am 30. August 2019 14:04:32 MESZ schrieb Olaf Hartig <olaf.hartig@liu.se>:
> >>> [...]
> >>>
> >>> <http://example.org/Alice>  rdf:type  foaf:Person .
> >>> <http://example.org/Alice>  foaf:name  "Alice" .
> >>> <http://example.org/Alice>  :claims  <http://example.org/Bob> .
> >>> <http://example.org/Bob>  rdf:type  foaf:Person .
> >>> <http://example.org/Bob>  foaf:name  "Bob" .
> >>> <http://example.org/Bob>  foaf:age "23"^^xsd:integer .
> >>>
> >>> Perhaps now it becomes more apparent that, according to this data,
> >>> person Alice claims the person Bob (who is of age 23). This is
> >>> different than saying that person Alice makes the following claim:
> >>> the thing denoted by IRI is a person named Bob who is of age 23.
> >>
> >> No, it's the same.
> >
> > To me it's not the same.
> >
> >> The situation may change when you want to describe
> >> Alice's claiming activity. Claiming something as such is no different from
> >> liking, being located in etc. You wouldn't insist on putting the objects of
> >> such statements in parentheses. Something like
> >>
> >>    ex:Alice ex:likes [ a foaf:Person; foaf:name "Bob" ]
> >>
> >> would be perfectly alright, wouldn't it?
> >
> > Assuming that the IRI ex:Alice is supposed to denote a person named Alice,
> > then the natural interpretation of these example triples (at least for me)
> > would be the following: Person Alice likes a person named Bob. Again, for me
> > that's different from saying: Person Alice likes that there exists a person
> > named Bob.
>
> It's not clear to me what you mean by "Person Alice likes that there exists a person named Bob.". There are different possible interpretations:
> It could mean "Alice doesn’t like Bob but she likes that he exists", maybe out of some libertarian sentiment.
> It could also mean, like before, "Person Alice likes a person named Bob" plus document that Alice celebrates a rather pompous style of speaking.
> This needs disambiguation even in plain english not to speak of RDF. RDF is not meant and can’t reasonably be expected to express such subtleties. To the contrary and that’s why I’m so insitant: this overloading of basic constructs needs to be rejected. RDF is "painfully simplistic" and for good reasons. It is wrong and even destructive to try to shoehorn some semantic precision into RDF that elevates the expressivity of basic constructs to the levels of poetry.
>
> If I wasn’t too lazy I would now check the RDF specifications as I’m sure there’s citable proof that blank nodes in RDF are not a means to speak about the shere existance of certain things but merely an utility to speak about subjects without explicitly minting a URI. All that "there exists" business is overloading the semantics of blank nodes in unintended ways and it complicates things unnecessarily. If you really needed to be so precise you would have to add more statements or even develop a suitable vocabulary. On that level you can do everything but not on the basic level of triples, blank nodes and graphs.
>
> Thomas
>
> > Olaf
> >
> >
> >> Actually we had a similar discussion already a few mails back and we agreed
> >> (I think) that you can model everything with pure triples. You don't *need*
> >> meta modelling (I never thought I would write that one day) if you nest
> >> your triples deep enough, although abstraction through meta modelling
> >> certainly can be very helpful. If the conversation itself is about meta
> >> modelling then it can be had with pure basic triples.
> >>
> >>
> >> Cheers,
> >> Thomas
> >
>
>

Received on Friday, 30 August 2019 20:41:51 UTC