Re: [ScalarExpressionsInTriplePatterns] [ScalarExpressionsInConstruct] inline scalar expressions

Hello Lee,

> As best I can see, [ScalarExpressionsInTriplePatterns] is purely surface 
> syntax, and can always be replaced by a variable plus a filter on that 
> variable. Is this right?

Yes, that's what the preprocessor is doing with them, one new unique
variable per expression.

> Also as best I can see, [ScalarExpressionsInConstruct] is not purely 
> surface syntax on its own, but becomes surface syntax if the group 
> chooses to pursue either Assignment or SubSelects+ProjectExpressions, 
> both of which give SPARQL the capability to give names (variables) to 
> values that don't explicitly occur in the query's RDF dataset graphs. Is 
> this right?

Yes, your scenario is correct again.

The reason for placing this syntax sugar is that it eliminates extra
variables. That's important because typos in variable names remain
undetected, they silently alter the meaning of the query.

Best Regards,

Ivan Mikhailov
OpenLink Software
http://virtuoso.openlinksw.com

Received on Thursday, 19 March 2009 18:08:49 UTC