簡體   English   中英

使用Pellet了解SPARQL和語義推理之間的區別

[英]Understanding the difference between SPARQL and semantic reasoning using Pellet

我有一個披薩本體,它定義了披薩的不同類型,成分以及它們之間的關系。 我只想了解一些基本知識:

  1. 如果我想獲取信息而沒有理由,應該使用SPARQL是否正確? 例如哪個比薩餅包含洋蔥?
  2. SPARQL和推理算法(例如Pellet)有什么區別? SPARQL不能回答哪些查詢,而Pellet可以回答哪些查詢? 有關披薩本體的一些查詢示例(類似問題)將很有幫助。
  3. 據我了解如何將Java的SPARQL與Jena一起使用,我應該將本體保存為RDF / XML格式。 但是,要將Pellet與Jena一起使用,我需要選擇哪種格式? Pellet使用OWL2 ...

SPARQL是一種查詢語言 ,即一種用於表達問題的語言。另一方面, 推理從現有數據獲取新信息的過程。 這是兩個不同的互補過程。

  1. 要從本體中檢索信息,請使用SPARQL。 您可以不進行推理,也可以與推理機結合使用。 如果您啟用了推理程序,這意味着您的查詢可能會更簡單,並且在某些情況下,推理機可以通過查詢獲得根本無法檢索的信息。

  2. 諸如Pellet之類的推理程序並沒有真正回答查詢,它們只是推理:他們弄清楚可以從原始事實中得出哪些隱式信息,並且可以執行諸如驗證事物是否一致(例如,數據中沒有邏輯矛盾)之類的事情。 。 佩萊(Pellet)可以弄清楚,如果您擁有類型為Car的Toyota,則您擁有車輛(因為Car是車輛的一種)。 或可以弄清楚,如果您定義一個具有“帕爾馬干酪”成分的比薩餅,那么您將擁有“奶酪”類型的比薩餅(因為它知道帕爾馬干酪是一種奶酪)。 因此,您使用諸如Pellet之類的推理機來派生此類隱式信息,然后使用諸如SPARQL之類的查詢語言來實際詢問:“好吧,請給我概述所有也有鳳尾魚的俗氣披薩”。

  3. 像Jena這樣的API都是將RDF視為抽象模型的工具箱。 用哪種語法格式保存文件並不重要,它幾乎可以讀取任何RDF語法。 一旦在Jena模型中讀取了它,就可以在其上執行Pellet推理程序-原始文件所使用的語法無關緊要。有關如何執行此操作的詳細信息,請參見Jena文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM