2011-06-13 11 views
9

Jak mogę użyć biblioteki semantycznej sieci Web SWI-Prolog do wysłania zapytania do pliku OWL/RDF i wyodrębnienia pewnych informacji?Jak wyszukiwać RDF/OWL przy użyciu semantycznej biblioteki internetowej SWI-Prolog?

Plik OWL/RDF zawiera informacje o wszystkich pakietach Debiana, więc muszę utworzyć zapytanie w celu znalezienia zależności pakietu.

na przykład:

Plik OWL ma następującą strukturę:

package: A 

Depends: 

package: B 

pacakge: C 

Jak mogę załadować sowa/plik RDF do skryptu Prolog i jaka jest składnia dokonać kwerendy w ramach Skrypt Prolog taki, że umieszczam A jako parametr, a skrypt wyprowadza B i C?

Odpowiedz

10

ten sposób można załadować semweb Biblioteka:

?- use_module(library(semweb/rdf_db)). 

ten sposób można przetworzyć plik/XML RDF i wracać nad wszystkimi jego przedmiot orzecznikowe obiektów trójek:

?- rdf_load('file.owl'), rdf(X, Y, Z). 
% Parsed "file.owl" in 0.06 sec; 2,107 triples 
X = 'http://www.co-ode.org/ontologies/pizza/pizza.owl', 
Y = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 
Z = 'http://www.w3.org/2002/07/owl#Ontology' ; 
X = 'http://www.co-ode.org/ontologies/pizza/pizza.owl', 
Y = 'http://www.w3.org/2002/07/owl#versionInfo', 
Z = literal(type('http://www.w3.org/2001/XMLSchema#string', 'version 1.5')) ; 
+0

dziękuję bardzo ... dokładnie tego właśnie szukałem. – codious

Powiązane problemy