クエリーの範囲外の情報を追加しながらSPARQL構文を実行することは可能ですか?例えば、私はこのような列挙情報を定義しながら、SPARQLを構築実行したい:列挙型のカスタムSPARQLコンストラクト
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
construct {
?s a skos:Concept
?s ex:index <enumeration starting from 1 -- this is just a sample>
}
where {
?s a skos:Concept
}
は、純粋なSPARQLでそのような何かをすることは可能ですか?代替案は何ですか?
*追加情報*
おそらく私は基本的に私は(その例を想定して:インデックスが有効DatatypePropertyのです):以下を達成したい、明らかに私の問題を説明していないです
==イニシャルRDFは== == RDFは、SPARQLアップデートの実行後にトリプルを
@prefix skos:<http://www.w3.org/2004/02/skos/core#>
@prefix ex: <http://example.org/> .
ex:abc rdf:type skos:Concept .
ex:def rdf:type skos:Concept .
...
ex:endOfSample rdf:type skos:Concept .
==を3倍
@prefix skos:<http://www.w3.org/2004/02/skos/core#>
@prefix ex: <http://example.org/> .
ex:abc rdf:type skos:Concept ;
ex:index 1 .
ex:def rdf:type skos:Concept ;
ex:index 2 .
...
ex:endOfSample rdf:type skos:Concept ;
ex:index <endOfSampleNumber> .
SPARQLを処理するために何を使用していますか? SPARQLは宣言型であるため、この種の列挙はクエリ言語だけでは不可能です。データを繰り返し処理し、更新クエリを実行して、順序付けられた数値を追加することができます(どの基準で?)。 OTOHでは、SPARQLは宣言型であるため、データの列挙は通常は必要ありません。多分、一歩後退し、より高いレベルの要件が何であるかを説明してください。 – scotthenninger
@scottheningerあなたが言ったように、純粋なSPARQLにこの順序を持たせることはできないようです。あなたの提案ごとに問題を解決し、Jenaを使用してクエリ結果を処理し、クエリ結果を反復するときにex:インデックスを追加します。 – FJE