11:- module(wikipathways,
12 [
13 interaction/1,
14 pathway/1,
15 metabolite/1,
16 identifier/2,
17 part_of/2,
18 has_participant/2,
19 organism/2,
20 ontology_tag/2,
21
22 pairwise_interaction/2,
23 pairwise_interaction/3,
24
25 pathway_version/2
26 ]). 27
28:- use_module(library(sparqlprog/owl_types)). 29:- use_module(library(typedef)). 30
31:- sparql_endpoint( wikipathways, 'http://sparql.wikipathways.org'). 32
33:- rdf_register_prefix(dcterms,'http://purl.org/dc/terms/'). 34:- rdf_register_prefix(wp,'http://vocabularies.wikipathways.org/wp#'). 35:- rdf_register_prefix(pav,'http://purl.org/pav/'). 36:- rdf_register_prefix(ncbitaxon,'http://purl.obolibrary.org/obo/NCBITaxon_'). 37:- rdf_register_prefix(pw,'http://purl.obolibrary.org/obo/PW_'). 38
39:- type wp_pathway ---> atomic_iri.
40:- type wp_interaction ---> atomic_iri.
41
42
43interaction(X) :- rdf(X,rdf:type,wp:'Interaction').
44pathway(X) :- rdf(X,rdf:type,wp:'Pathway').
45metabolite(X) :- rdf(X,rdf:type,wp:'Metabolite').
46identifier(P,Id) :- rdf(P,dcterms:identifier,Id).
47part_of(P,W) :- rdf(P,dcterms:isPartOf,W).
48has_participant(P,X) :- rdf(P,wp:participants,X).
49organism(P,O) :- rdf(P,wp:organism,O).
50ontology_tag(P,O) :- rdf(P,wp:ontologyTag,O).
54pairwise_interaction(P1,P2) :-
55 pairwise_interaction(P1,P2,_).
56pairwise_interaction(P1,P2,I) :-
57 interaction(I),
58 has_participant(I,P1),
59 has_participant(I,P2).
65pathway_version(P,V) :-
66 rdf(P,pav:version,V)
wrapper for wikipathways endpoint
See https://www.wikipathways.org/index.php/Portal:Semantic_Web
https://www.wikipathways.org/index.php/Help:WikiPathways_Sparql_queries
https://www.wikipathways.org/index.php/Help:WikiPathways_Metabolomics
*/