06第六堂課

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