• Like
ParliamentでGeoSPARQL
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

ParliamentでGeoSPARQL

  • 357 views
Published

Open Geospatial Consortiumが地理空間情報を含むLinked Dataの問合せ言語として標準化したのがGeoSPARQLです。このスライドは、ParliamentというRDFトリプルストア上で実装されているGeoSPARQLを動かすためのチュートリアルです。

Open Geospatial Consortiumが地理空間情報を含むLinked Dataの問合せ言語として標準化したのがGeoSPARQLです。このスライドは、ParliamentというRDFトリプルストア上で実装されているGeoSPARQLを動かすためのチュートリアルです。

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
357
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
5
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ParliamentでGeoSPARQL Mac OS X Lion編 Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 1 /11
  • 2. ダウンロード&インストール • Parliament Webサイトにアクセス – http://parliament.semwebcentral.org/ • [Download]をクリックし、自分の環境にあったファイル をDL(今回はMac OS Xで行います) CentOS→ centos Windows→ mcvc Mac OS X→ darwin Ubuntu→ ubuntu • DLしたファイルを解凍 Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 2 /11
  • 3. サーバーを立てる • ターミナルで、解凍したディレクトリにアクセスし、以 下のコマンドを実行 – ./StartParliament.sh • サーバーが立ちます 必ずexitコマンドで終 了 Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 3 /11
  • 4. Webブラウザからクエリする • Webブラウザからサーバのアドレスにアクセス – デフォルト: http://localhost:8080/parliament/ – 8080ポートが使用済みな場合、parliamentconfjetty.xmlで変更 できます • [Indexes]→[Create All]で、インデックスを構築 – 追加するデータやクエリでSpatial Indexが利用可能に • [Insert Data]でデータの追加、[Query]でクエリなど、 様々な機能が使用できるようになります Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 4 /11
  • 5. 論文で紹介されているクエリを実行する • 「GeoSPARQL: Enabling a Geospatial Semantic Web 」 で紹介されているクエリを実行します – 論文URL: http://www.semantic-webjournal.net/sites/default/files/swj176_0.pdf • 論文中のPrefixや述語の一部は、Parliamentの実装と異 なっていることに注意しながら実行 – geo: <http://www.opengis.net/ont/OGC-GeoSPARQL/1.0/>. → geo: <http://www.opengis.net/ont/geosparql#>. – WKTLiteral → wktLiteral Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 5 /11
  • 6. RDFを追加(1/2) • [Insert Data]でListing 2: Example Ontologyをストア – Turtle もしくは N3 フォーマットを選択 Listing 2: Example Ontology @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix ex: <http://example.org/PointOfInterest#>. @prefix geo: <http://www.opengis.net/ont/geosparql#> . ex:Restaurant a owl:Class; rdfs:subClassOf ex:Service . ex:Park a owl:Class; rdfs:subClassOf ex:Attraction . ex:Museum a owl:Class; rdfs:subClassOf ex:Attraction . ex:Monument a owl:Class; rdfs:subClassOf ex:Attraction . ex:Service a owl:Class; rdfs:subClassOf ex:PointOfInterest . ex:Attraction a owl:Class; rdfs:subClassOf ex:PointOfInterest . ex:PointOfInterest a owl:Class; rdfs:subClassOf geo:Feature . Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 6 /11
  • 7. RDFを追加(2/2) • 同様にListing 3: Washington Monumentをストア Listing 3: Washington Monument @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix ex: <http://example.org/PointOfInterest#>. @prefix geo: <http://www.opengis.net/ont/geosparql#>. @prefix sf: <http://www.opengis.net/ont/sf#>. ex:WashingtonMonument a ex:Monument; rdfs:label "Washington Monument"; geo:hasGeometry ex:WMPoint . ex:WMPoint a geo:Point; geo:asWKT "POINT(-77.03524 38.889468)"^^sf:wktLiteral . Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 7 /11
  • 8. クエリの実行 • [Query]でListing 7: Example Query 3を実行 Listing 3: Washington Monument PREFIX geo: <http://www.opengis.net/ont/geosparql#> PREFIX geof: <http://www.opengis.net/def/function/geosparql/> PREFIX sf: <http://www.opengis.net/ont/sf#> PREFIX ex: <http://example.org/PointOfInterest#> SELECT ?a WHERE { ?a geo:hasGeometry ?ageo . ?ageo geo:asWKT ?alit . FILTER( geof:sfWithin(?alit, "Polygon((-77.089005 38.913574,-77.029953 38.913574,-77.029953 38.886321,-77.089005 38.886321,-77.089005 38.913574))"^^sf:wktLiteral)) } – 結果のHTML出力 Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 8 /11
  • 9. クライアントからクエリする • クライアントプログラムからクエリを実行することもで きます – ここでは、Jena(http://jena.apache.org/)をつかった例を紹介 • 上記URLから、JenaのライブラリをDLし、Javaのプロ グラムでインポートします – クエリは以下の図のような記述で実行 Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 9 /11
  • 10. プログラムの例 • 簡単なプログラムの例 import com.hp.hpl.jena.query.QueryExecution; import com.hp.hpl.jena.query.QueryExecutionFactory; import com.hp.hpl.jena.query.ResultSet; import com.hp.hpl.jena.query.ResultSetFormatter; public class sample1 { public static void main(String[] args){ String sparqlSelectQuery = "PREFIX ex: <http://example.org/PointOfInterest#>" + "SELECT ?m " + "WHERE {" + "?m a ex:Attraction" + "}" ; QueryExecution qexec = QueryExecutionFactory.sparqlService( "http://localhost:8080/parliament/sparql", sparqlSelectQuery); ResultSet results = qexec.execSelect(); System.out.println(ResultSetFormatter.asText(results)); qexec.close(); } } WashingtonMonumentが出力される Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 10 /11
  • 11. 参考文献 • Parliament User Guide, November 8, 2012 – http://parliament.semwebcentral.org/ParliamentUserGuide.pdf • Setting up Parliament Triple Store with GeoSPARQL – http://lodum.de/setting-up-parliament-triple-store-with-geosparql/ • OGC GeoSPARQL - A Geographic Query Language for RDF Data – http://www.opengeospatial.org/standards/geosparql Teppei Inaba, Nagoya University Teppei Inaba 2013/10/18 11 /11