Re: RDF* semantics

Kingsley,

On fredag 30 augusti 2019 kl. 15:50:48 CEST Kingsley Idehen wrote:
> On 8/30/19 3:12 PM, Olaf Hartig wrote:
> > On fredag 30 augusti 2019 kl. 12:13:27 CEST Kingsley Idehen wrote:
> [...]
> >> Here's a fixed version of my example. I've rebased identifiers for Alice
> >> and Bob using an indexical
> >> <https://www.lexico.com/en/definition/indexical#this> relative to
> >> document (context provider)  (as per my very first example).
> >> 
> >> ## Turtle Start ##
> >> 
> >> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
> >> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
> >> @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
> >> @prefix foaf: <http://xmlns.com/foaf/0.1/> .
> >> @prefix : <#> .
> >> 
> >> <> a foaf:Document .
> >> <> foaf:name "Document about Alice"@en .
> >> <> foaf:primaryTopic :Alice .
> >> 
> >> :Alice  rdf:type  foaf:Person .
> >> :Alice  foaf:name  "Alice" .
> >> :
> >> :Bob  rdf:type  foaf:Person .
> >> :Bob  foaf:name  "Bob" .
> >> :Bob  foaf:age "23"^^xsd:integer .
> >> 
> >> # Context clarity regarding :claims relation
> >> 
> >> :claims a rdf:Property .
> >> :claims rdfs:domain foaf:Person .
> >> :claims rdfs:range rdf:Statement .
> >> 
> >> # Olaf would like the following to as syntax-sugar (*rather than change
> >> to
> >> existing RDF semantics*): # :Alice :claims << :Bob foaf:age
> >> "23"^^xsd:integer >> .
> >> # for what follows
> >> 
> >> :Alice  :claims  [ a rdf:Statement;
> >> :
> >>                      rdf:subject :Bob ;
> >>                      rdf:predicate foaf:age ;
> >>                      rdf:object "23"^^xsd:integer
> >>                   
> >>                   ] .
> >> 
> >> ## Turtle End ##
> > 
> > Yes.
> > 
> > Now, notice that the :claims property you are using here is different from
> > the :claims property as used in your earlier examples. That is, your
> > earlier examples used the :claims property as if it was defined as follows:
> >
> > :claims a rdf:Property .
> > :claims rdfs:domain foaf:Person .
> > :claims rdfs:range foaf:Person .
> > 
> > -Olaf
> 
> We can't simply assume that :claim denotes an rdf:Property that has
> range rdf:Statement. Basically, to speak about any rdf:Property instance
> we have to be clear about its rdfs:domain and rdfs:range for appropriate
> context.

I agree.

> [...]
> As I see it, the issue we are debating is primarily about reification
> and syntax sugar for articulation convenience i.e., does this actually
> constitute what's denoted as RDF* Semantics

On one hand, RDF* may be used as syntax sugar. On the other hand, it also is 
an abstract data model. In the context of the latter, we may define a model-
theoretic semantics for RDF* graphs (similar to the definition of the semantics 
of RDF graphs). This semantics is what I mean by "RDF* semantics" and my draft 
of it can be found at:

http://htmlpreview.github.io/?https://github.com/w3c/EasierRDF/blob/master/

RDFstar/RDFstarSemantics.html

> (for which I am currently unconvinced, bearing in mind what exists
> regarding the roles of RDF [DDL] and SPARQL [DML] which offers
> Named Graphs as a solution).

Using (single-triple) Named Graphs is an alternative option for representing 
and querying metadata about individual triples. The downside of this option, 
however, is that this option makes it difficult to also represent and query 
metadata about specific sets of triples (graphs) at the same time (i.e., within 
the same dataset).

Olaf

Received on Sunday, 1 September 2019 18:23:23 UTC