2009-12-07 89 views
6

進出口運行在包含如何從sparql查詢中刪除XML模式數據類型?

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

我只想返回名稱即「RJ」文件中的SPARQL查詢,但是當我進入我的查詢

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

,其中分配是正確的命名空間我返回這個:

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

沒有人有任何建議如何刪除sparql noob的XML模式類型?

在此先感謝

回答

8

無論你能做到這一點取決於你所使用的SPARQL實現。在SPARQL 1.0這是不可能的,但是與SPARQL 1.1這是目前廣受大多數實現支持已成爲2013年3月W3C推薦你可以使用Project Expressions如下:

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

基本上是一個項目表達式允許您使用任何有效的SPARQL表達式,您可以在其他位置根據先前綁定的變量計算新值。