W3C home > Mailing lists > Public > public-rdf-wg@w3.org > October 2013

Re: reified statements in Turtle

From: Eric Prud'hommeaux <eric@w3.org>
Date: Wed, 16 Oct 2013 07:21:49 -0400
To: public-rdf-wg@w3.org, Ivan Herman <ivan@w3.org>
Message-ID: <20131016112148.GB25585@w3.org>
Thanks Ivan for the confirmation.

All, any objection to the PROPOSED REPLY 81 lines down?

* Ivan Herman <ivan@w3.org> [2013-10-15 17:37+0200]
> AFAIK, your interpretation is correct, and RDF/XML does give you a convenient way of creating reified statements. It is extremely rarely used. This is also mentioned in the 2004 edition of the RDF Primer:
> 
> http://www.w3.org/TR/rdf-primer/#reification
> 
> Ivan
> 
> 
> 
> On Oct 15, 2013, at 14:31 , Eric Prud'hommeaux <eric@w3.org> wrote:
> 
> > I got an action item last week to send a reply to a CR comment asking
> > for statements identifiers in Turtle. I wrote up the reply below but
> > I'd like to check with the WG to see if my understanding of RDF/XML
> > is correct:
> > 
> > RDF/XML parsing rules like resourcePropertyElt say that a statement
> > *is* reified.
> > [[
> > If the rdf:ID attribute a is given, the above statement is reified
> > with i := uri(identifier := resolve(e, concat("#", a.string-value)))
> > using the reification rules in section 7.3 and e.subject := i
> > ]] — <http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/#resourcePropertyElt>
> > Section 7.3 says to "add the following statements to the graph".
> > <http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/#section-Reification>
> > , (the entailment of which is only the reified triples).
> > 
> > So parsing
> > [[
> > <Foo rdf:ID="bar"><baz ID="r1">bip</baz></Foo>
> > ]]
> > yields
> > [[
> > <#bar> a <Foo> ; <baz> "bip" .
> > <r1> a rdf:Statement ;
> >  rdf:subject <#bar> ;
> >  rdf:predicate <baz> ;
> >  rdf:object "bip" .
> > ]], right?
> > 
> > It appears that IDs can appear on all types of propertyElt
> > <http://www.w3.org/2013/10/rdfxml.rnc#rnc_propertyElt> (my annocated
> > copy of the rnc 'cause why not have hyperlinks? feel free to add to
> > re-publication of RDF/XML.) and on nodeElement, where they don't have
> > a reification implication. So RDF/XML provides a convenient syntax to
> > auto-reify every arc except:
> > 
> >  list arcs, i.e. rdf:first, rdf:rest.
> >  type arcs from non-rdf:Description tags in a nodeElement.
> >  arcs from the bnode implied by parseType="Resource".
> >  arcs from the bnode implied by non-RDF attributes in a nodeElement.
> > 
> > (I note that parseTypeCollectionPropertyElt doesn't mention idAttr
> > <http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/#parseTypeCollectionPropertyElt>
> > so presumably the reification is on the arc to the head of the list.)
> > 
> > To: "Dr. A. Joseph Rockmore" <rockmore@cyladian.com>
> > Cc: public-rdf-comments@w3.org
> > Subject: Re: reified statements in Turtle
> > In-Reply-To: <FD3A070D-522D-4B3F-80F5-32057C58FB52@cyladian.com>
> > Date: ideally last month
> > 
> > * Dr. A. Joseph Rockmore <rockmore@cyladian.com> [2013-09-17 14:34-0700]
> >> i don't know if the period for comments on the turtle recommendation are closed (the w3.org web site is a bit inconsistent), but in case its not, i'd like to offer the following.
> >> 
> >> i would like to strongly suggest that the turtle recommendation include statement identifiers for reification.  in the work i am doing it is imperative to maintain provenance on all statements, and the only way i have been able to do this in turtle is via explicit reification, such as:
> >> 
> >> foo:statement1 a rdf:Statement ;
> >> 	rdf:subject thingID1 ;
> >> 	rdf:predicate propertyID1 ;
> >> 	rdf:object value1 ;
> >> 	foo:source value 2 ;
> >> 	foo:dateAsserted value 3 ;
> >> 	etc.
> >> 
> >> this is ugly and overly verbose.  we would like a mechanism like in RDF/XML that supports expressing the statementID explicitly so that reified statements can be made about the statement, without having to express the statements regarding the subject, predicate, and object separately.
> >> 
> >> thank you for considering this addition.

PROPOSED REPLY:

> > Dear Joe,
> > 
> > Thank you for your comment. I'm sorry to say that for the reasons
> > below, the RDF WG has decided not to develop a shorthand syntax for
> > reified statements in Turtle:
> > 
> >  There are no existing proposals. The Turtle REC will reflect current
> >  practice in existing Turtle parsers/serializers, except where the
> >  language is evolving to towards compatibility with SPARQL.
> > 
> >  The community is mostly using named graphs to address the use cases
> >  for which reification was intended.
> > 
> >  The RDF WG is almost at the end of its charter. Any changes at all
> >  would make if difficult to publish a Recommendation before the WG
> >  closes. A re-design of the language to enable reification would
> >  likely take a long time.
> > 
> > -- 
> > -ericP, on behalf of the RDF Working Group
> > 
> > 
> > office: +1.617.599.3509
> > mobile: +33.6.80.80.35.59
> > 
> > (eric@w3.org)
> > Feel free to forward this message to any list for any purpose other than
> > email address distribution.
> > 
> > There are subtle nuances encoded in font variation and clever layout
> > which can only be seen by printing this message on high-clay paper.
> > 
> 
> 
> ----
> Ivan Herman, W3C 
> Home: http://www.w3.org/People/Ivan/
> mobile: +31-641044153
> FOAF: http://www.ivan-herman.net/foaf.rdf
> 
> 
> 
> 
> 



-- 
-ericP

office: +1.617.599.3509
mobile: +33.6.80.80.35.59

(eric@w3.org)
Feel free to forward this message to any list for any purpose other than
email address distribution.

There are subtle nuances encoded in font variation and clever layout
which can only be seen by printing this message on high-clay paper.
Received on Wednesday, 16 October 2013 11:22:21 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:04:33 UTC