2009-12-07 17 views
6

Im Sadece isim ie 'RJ' dönmek istiyorumXML şema veri türünü sparql sorgusundan nasıl kaldırabilirsiniz?

<User rdf:about="#RJ"> 
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">RJ</hasName> 
</User> 

içeren bir dosya üzerinde bir sparql sorguyu çalıştıran ancak benim sorguyu girdiğinde atama doğru ad ı

SELECT ?name 
FROM <example.com> 
WHERE { 
     assign:RJ assign:hasName ?name . 
} 

olduğu return bu:

"RJ" ^^<http://www.w3.org/2001/XMLSchema#string> 

herkes sparql noob xml şema türü kaldırmak konusunda herhangi bir tavsiye var mı? Bunu yapabileceğini olsun şimdiden

cevap

8

yılında

sayesinde kullandığınız SPARQL uygulanmasına bağlıdır.

SELECT (STR(?name) AS ?StringName) 
FROM <example.com> 
WHERE { 
    assign:RJ assign:hasName ?name 
} 

Temelde bir proje ifadesi kullanmak sağlar: SPARQL 1.0 altında bu artık yaygın aşağıdaki gibi Project Expressions kullanabilirsiniz Mart 2013 yılında W3C tarafından haline sahip çoğu uygulamalarında tarafından desteklenen SPARQL 1.1 ile ancak mümkün değildir Daha önce bağlı olan değişkenlere dayanarak yeni bir değer hesaplamak için başka bir yerde kullanabileceğiniz geçerli bir SPARQL ifadesi.