7

を含むファイルでsparqlクエリを実行しています

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

「RJ」という名前だけを返したいのですが、クエリを入力すると

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

ここで、assignは正しい名前空間です。これを返します。

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

sparql noobのxmlスキーマタイプを削除する方法について誰かアドバイスがありますか?

前もって感謝します

4

1 に答える 1

10

これを実行できるかどうかは、使用している SPARQL 実装によって異なります。SPARQL 1.0 ではこれは不可能ですが、2013 年 3 月に W3C 勧告となったほとんどの実装で広くサポートされているSPARQL 1.1 では、次のようにプロジェクト式を使用できます。

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

基本的に、プロジェクト式を使用すると、他の場所で使用できる有効な SPARQL 式を使用して、以前にバインドされた変数に基づいて新しい値を計算できます。

于 2009-12-07T21:56:14.843 に答える