CommentResponse:N3-1

From SPARQL Working Group
Jump to: navigation, search


Link to comment

SPARQL paths and N3 paths: some quick thoughts

Status

Draft for discusssion.

Response

I should have copied the comments list last Friday when I started this
thread...
http://lists.w3.org/Archives/Public/public-cwm-talk/2010JanMar/0002.html

Dan,

Thank you for pointing out the thread on public-cwm-talk.

On the specific issue of character use, the property paths draft follows N3 in using ^ for backwards paths. It uses "/" for forward paths. The "!" character is used in filter functions in SPARQL as the "not" operator. That does not preclude the use of "!" in property paths although it does carry a very different meaning. On balance, the working group feels that "/" is more appropriate.

By the way, we have also received a comment (1) that makes a suggestion for describing sets of properties by exclusion.

In (2) there is discussion of including expressions in N3. Property paths already use * and + for their regex meanings. Adding expressions as well overloads several characters so possibly requiring syntax to delimit an expression.

Andy
on behalf of the SPARQL Working Group

(1) http://lists.w3.org/Archives/Public/public-rdf-dawg-comments/2010Feb/0000.html
(2) http://www.w3.org/DesignIssues/N3Alternatives#Syntax

On Tue, 2010-01-26 at 09:17 -0600, Dan Connolly wrote:
> On Tue, 2010-01-26 at 12:39 +0100, Tim Berners-Lee wrote:
> > Paths have been in N3 for a long time and much
> > discussed.
> > 
> > The characters used are "!" and "^".
> > A discussion of the options is in 
> > http://www.w3.org/DesignIssues/N3Alternatives#Syntax
> > 
> > It would be a really bad idea not to use the same punctuation in SPARQL.
> > 
> > Could you pass that on?
> 
> As the message from Any shows, the WG is aware of N3 path syntax.
> 
> I'm not sure I agree N3 paths have been "much discussed",
> and using / seems quite reasonable to me.
> 
> > 
> > Tim
> > 
> > PS: Note also ^ is related to ^^ in that ^^ can be regarded 
> > as ^ if you want to reify datatypes -- to make an RDF
> > system which uses only strings.
> > 
> > On 2010-01 -22, at 22:10, Dan Connolly wrote:
> > 
> > > The SPARQL WG is looking at paths...
> > > http://www.w3.org/2009/sparql/docs/property-paths/Overview.xml
> > > 
> > > ... which is quite important for querying, e.g. lists:
> > > 
> > > select ?elt where { <alist> rdf:rest*/rdf:first ?elt }
> > > 
> > > Meanwhile, they're using / where n3 uses ., I think.
> > > 
> > > They use ^ both as N3 uses it and to do the is/of thing.
> > > 
> > > They also include regex syntax such as +,*, ? and {n,m}
> > > and ()s (but not for match groups).
> > > 
> > > It's pretty hard to argue against this in SPARQL; people
> > > have been asking for it from the very start of the SPARQL
> > > design.
> > > 
> > > Perhaps N3 should adapt in this direction?
> > > 
> > > The one place I'm inclined to push on is is/of; I'd
> > > hate to lose that from N3. Though... with the @keywords
> > > mechanism, maybe it's not so much of a conflict.