お問い合わせ
2 分で読むことができます

【SPARQL】STR関数

執筆者 Sakurai 更新日時 2020年8月11日

STR関数実行結果

Linked Dataの基盤技術となるRDFへ問い合わせを行う言語、SPARQLには様々な関数が用意されています。今回は使用頻度も高いと思われるSTR関数をご紹介いたします。

STR関数とは?

STR関数とはダブルコーテーションや言語タグを除いて、純粋な文字列だけを取得するための関数です。

使い方

STR関数は以下のように使用します。

(STR(元の変数名) as 純粋な文字列を取得した値を格納する変数名)

実際の使用方法は以下となります。

使用例

まずは日本語版DBpediaのSPARQL例にある"全国の地域限定"ゆるキャラ"のサンプルクエリを実行してみます。使用クエリと結果は以下のようになります。

<SPQRQLクエリ>

SELECT DISTINCT ?mascot ?name
WHERE {
?areamascots skos:broader <http://ja.dbpedia.org/resource/Category:地域限定のマスコット> ;
rdfs:label ?areaname .
?mascot dbpedia-owl:wikiPageWikiLink ?areamascots ;
rdfs:label ?name.
}

 

<実行結果>

STR関数使用前

ご覧の通り、"name"で表されるrdfs:labelにはダブルコーテーションと@jaという言語タグが表示されています。

ではSTR関数を使用してみましょう。

<SPQRQLクエリ>

SELECT DISTINCT ?mascot (STR(?name) as ?name_str) #nameを純粋な文字列として取得
WHERE {
?areamascots skos:broader <http://ja.dbpedia.org/resource/Category:地域限定のマスコット> ;
rdfs:label ?areaname .
?mascot dbpedia-owl:wikiPageWikiLink ?areamascots ;
rdfs:label ?name.
}

 

<実行結果>

STR関数使用後

このようにSPARQLエンドポイントからデータを取得する際に文字列だけ欲しい場合はSTR()を使用して不要な部分は除くことができます。

Sakurai

執筆者 Sakurai

INSIGHT LAB入社後、多くのデータ分析基盤案件をこなし、INSIGHT LAB ISRAELへ出向、現在は新潟研究開発センターにて技術部門を担当。趣味はロードバイク、トライアスロン2回完走。

 

こちらの記事もおすすめです

2 分で読むことができます。

物体検出の開発経過 その1

2 分で読むことができます。

☆祝☆ 新潟研究開発センター開設!

2 分で読むことができます。

物体検出の開発経過 その2