- SPARQL Query
- 參考:
- 基本格式:
- # prefix declarations:定義字首(選擇資料庫)
- PREFIX foo: <http://example.com/resources/>
- # dataset definition:定義要使用的資料集(資料庫裏的部分資料集合)
- # result clause:選擇要顯示/擷取的結果
- # query pattern:擷取條件
- # query modifiers:修飾結果
- ORDER BY ...排序
- LIMIT 設定顯示極限
- 大綱:
- 設定字首(NameSpace) PREFIX
- 選取顯示結果 SELECT
- CONSTRUCT (將結果設為RDF graph)
- 過瀘結果 FILTER
- 設定字首: PREFIX
- SELECT:選擇要那些結果
- ASK (回傳TRUE或FALSE)
- DESCRIBE(搜尋關於某條件的資料)
- CONSTRUCT(傳回一個樹狀結構的部分分枝)
- WHERE:設定篩選條件 (有時省略,放在{ }裏)
- 主詞 動詞 受詞 (三段式)
- Domain Property Range
- 任何一段都可以被設成詢問的變數(變數名稱可以自定)
- 利用 ?a 設定要查詢的部分,例如:(注意「?」不要打成全型)
- SELECT ?a {?a 見 ?b}
- 將「見」的主詞設為 變數a;受詞設為 變數b
- 結果顯示 變數a
- 顯示結果為一張HTML的表格,每一個變數為一個欄位
- FROM:從那個資料庫選資料
- 例子:
- 1
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
- SELECT ?name
- WHERE {
- ?person foaf:name ?name .
- }
- 2
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
- SELECT *
- WHERE {
- ?person foaf:name ?name .
- ?person foaf:mbox ?email .
- }
- 3
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
- SELECT ?craft ?homepage
- {
- ?craft foaf:name "Apollo 7" .
- ?craft foaf:homepage ?homepage
- }
- 4
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
- PREFIX card: <http://www.w3.org/People/Berners-Lee/card#>
- SELECT ?homepage
- FROM <http://www.w3.org/People/Berners-Lee/card>
- WHERE {
- card:i foaf:knows ?known .
- ?known foaf:homepage ?homepage .
- }
- 5
- SELECT DISTINCT ?concept
- WHERE {
- ?s a ?concept .
- } LIMIT 50
- 匯合兩個以上的ontology
- 第一個表格標籤(Active Ontology)下方有表格標籤「Ontology imports」,下面會顯示已經匯入的ontologies。如果要新增,可以按下方「Direct imports」旁邊的加號,來選取要匯入的檔案。
- 點選豖能表的「Refactor」最下方的「Merge」來進行匯合程序。
- (比較兩個ontology)
- 示範ontology的用處。
- 漢祥報告他的ontology。
- 現場實做自己的ontology。