Re: New proposal for RDF* Semantics

I realized that it is not necessary to have special datatypes, as the
predicate can be used as a signal.  Here is a revised mapping:

Let rdf* be a namespace.

Define a mapping L on RDF literals and IRIs as follows:
For an RDF literal t with lexical form l, optional language tag t, and
datatype d, L(l) is the RDF literal with datatype xsd:string and lexical form
"l"^^<d> or "l"@t^^<d>, as appropriate.
For an IRI i, L(i) is the RDF literal with datatype xsd:string and lexical
form <i>.

Given a set of recognized datatypes, the mapping -* from RDF* graphs to RDF
graphs is defined as follows:

Pick some embedded triple ( s, p, o ) such that none of s, p, and o are
triples, replace all occurrences of it by a fresh blank node b, and add the
triples
  ( b, rdf:type, rdf:Statement )
  ( b, rdf:subject, s ) if s is not a malformed literal
  ( b, rdf*:subject, L(s) ) if s is not a blank node
  ( b, rdf:predicate, p ) if p is not a malformed literal
  ( b, rdf*:predicate, L(p) ) if p is not a blank node
  ( b, rdf:object, o ) if o is not a malformed literal
  ( b, rdf*:object, L(o) )  if o is not a blank node

Finish when there are no embedded triples left.

This assumes that IRIs cannot contain angle brackets.  If they can, then some
slight modifications are needed.


An RDF* graph G1 entails an RDF* graph G2 in RDF* iff G1-* entails G2-* in RDF.



peter





On 1/12/21 11:03 AM, Peter F. Patel-Schneider wrote:
> On 1/12/21 3:29 AM, Pierre-Antoine Champin wrote:
>>
>> On 08/01/2021 19:56, Peter F. Patel-Schneider wrote:
>>> Oops, I mixed up RDF graphs and RDF intepretations.  This makes some of my
>>> complaints incorrect.
>>>
>>>
>>> On 1/8/21 1:22 PM, Pierre-Antoine Champin wrote:
>>>
>>>> On 08/01/2021 17:05, Peter F. Patel-Schneider wrote:
>>>>> What advantages does this semantics have over a mapping to RDF reification?
>>>> RDF reification is referentially transparent, while this proposal keeps IRIs
>>>> and literals in embedded triples referentially opaque. 
>>> But it is possible to use an extended mapping to achieve referential opacity.
>> I am not sure what you mean by "extended mapping" here.

Received on Tuesday, 12 January 2021 22:00:34 UTC