In SPARQL 1.1 you'll be able to do this with a subquery, though it's not as succinct:

 PREFIX anrecs: <http://www.snee.com/ns/analystRatings#>
 PREFIX fn: <http://www.w3.org/2005/xpath-functions#>
 CONSTRUCT {
   ?company anrecs:company ?coNameWithLanguageTag .
 }
 WHERE {
   {
     SELECT (fn:concat(?coName,"@en") AS ?coNameWithLanguageTag) WHERE {
       ?company anrecs:company ?coName .
   }
 }

(fn:concat is not currently defined by SPARQL -- I expect a concatenation function like this will be defined and (as in this example) imported from XPath.)

Lee

On 5/23/2010 6:11 PM, Bob DuCharme wrote:
Does anyone have any suggestions about how a SPARQL CONSTRUCT query
might add language tags without using extensions? The query below works
with ARQ, but it uses the Jena extension LET and the concat() function:

PREFIX anrecs: <http://www.snee.com/ns/analystRatings#>
PREFIX fn: <http://www.w3.org/2005/xpath-functions#>
CONSTRUCT {
?company anrecs:company ?coNameWithLanguageTag .
}
WHERE {
?company anrecs:company ?coName .
LET (?coNameWithLanguageTag := fn:concat(?coName,"@en")) .
}

thanks,

Bob



Reply via email to