rdf triple store ontology curator harvester departmental web sites research grants databases query...

16

Upload: jordon-bracher

Post on 31-Mar-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester
Page 2: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

RDF triple store

Ontology

Curator

Harvester

DepartmentalWeb sites

Research grantsdatabases

Query system

Web interface

Harvester

Page 3: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester
Page 4: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

OpenKnowledgeplugin supplier

requestinteraction model

request plugin

interpret interaction model

Page 5: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

share interaction model

routing

Page 6: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

Peer p1

Peer p2

Peer p3

query_from(p(Y), p2)query_from(q(Z), p3)

know(p(a))

know(q(b))

ask(p(Y))

tell(p(a))

ask(q(Z))

tell(q(b))

1

2

34

Page 7: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

a(requester([q(ask(p(X)),p2),q(ask(q(Y)),p3)]), p1)

ask(p(X)) => a(informer, p2)

tell(p(a)) <= a(informer, p2)

a(requester([q(ask(q(Y)),p3)]), A)

ask(q(Y)) => a(informer, p3)

tell(q(b)) <= a(informer, p3)

a(informer, p2)

ask(p(X)) <= a(requester(([q(ask(p(X)),p2),q(ask(q(Y)),p3)]), p1)

tell(p(a)) <= a(requester(([q(ask(p(X)),p2),q(ask(q(Y)),p3)]), p1)

a(informer, p3)

ask(q(Y)) <= a(requester(([q(ask(q(Y)),p3)]), p1)

tell(q(b)) <= a(requester(([q(ask(q(Y)),p3)]), p1)

Page 8: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

a(r(A), X) ::= ( R(A, Ar) a(r(Ar), X) ) or ( P(A) )

a(r(A), X) ::= ( R(A, Ar) a(r(Ar), X) ) or ( P(A) )

a(r(A), X) ::= ( M => a(r2, p2) <-- A = [M|Ar] then a(r(Ar), X) ) or ( null <-- A = [] )

a(r(A), X) ::= ( M => a(r2, p2) <-- A = [M|Ar] then a(r(Ar), X) ) or ( null <-- A = [] )

Page 9: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

a(r(A), X) ::= ( M => a(r2, p2) <-- A = [M|Ar] then R <= a(r2, p2) then a(r(Ar), X) ) or ( null <-- A = [] )

a(r(A), X) ::= ( M => a(r2, p2) <-- A = [M|Ar] then R <= a(r2, p2) then a(r(Ar), X) ) or ( null <-- A = [] )

Page 10: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

a(r(A, B), X) ::= ( M => a(r2, p2) <-- A = [M|Ar] then B = [R|Br] <-- R <= a(r2, p2) then a(r(Ar, Br), X) ) or ( null <-- A = [] and B = [] )

a(r(A, B), X) ::= ( M => a(r2, p2) <-- A = [M|Ar] then B = [R|Br] <-- R <= a(r2, p2) then a(r(Ar, Br), X) ) or ( null <-- A = [] and B = [] )

Page 11: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

Curateddatabaseservices

Scientists

Service invocation

Page 12: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

sharing

Proxies (no need fordatabase curatorsto know)

data collating

Page 13: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

LCC Interaction Specification: Data Collatora(data_collator(Seq,Best), C) :: filter_results(Seq,Results,Best) a(poller(Seq,Peers,Results), C) sources(Peers)

a(poller(Seq,Peers,Results), C) :: ( a(data_seeker(Seq,D,Matches), C) Peers = [D|RestPeers] and Results = [r(D,Matches)|RestResults] then a(poller(Seq,RestPeers,RestResults), C) ) or null Peers = [] and Results = [].

a(data_seeker(Seq,D,Matches), S) :: query(Seq) => a(data_source, D) then filter_matches(Seq,Results,Matches) matched(Results) <= a(data_source, D).

data_source data_source data_source

You can be a data collator for a sequence, seeking the best matches of you can filter the results from polling your peers for their best matches

You can poll a set of your peers for their best results if you become a data seeker for the first of these peers and the matches from that peer are merged with the matches you get from polling the rest of the set of peers; or if the set of peers is empty you have no matches

You can be a data seeker asking a peer for a set of matches if you send a message to that peer asking it to be a data source then filter the matches it sends back to you in its response

Page 14: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

LCC Interaction Specification: Data Sharing

sharing

a(data_source, D) :: query(Seq) <= a(data_seeker(Seq,D,Matches), S) then ( matched(Results) => a(data_seeker(Seq,D,Matches), S) matching_sequences(Seq,Results) or ( a(data_collator(Seq,Results), D) not(matching_sequences(Seq,_)) then matched(Results) => a(data_seeker(Seq,D,Matches), S) ) ).

You can be a data source if you get a query from a data seeker and then you send out the matching sequences to the data seeker if these matching sequences can be obtained locally; or you become a data collator, seeking results from others if there are no local matching sequences and then you send out these matching sequences to the data seeker.

Page 15: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

Example: Yeast Protein Data

sharing

consistency checking

SWISS SAM ModBase

Page 16: RDF triple store Ontology Curator Harvester Departmental Web sites Research grants databases Query system Web interface Harvester

Environmentsimulator

Simulated agents

Interaction model

Coordinating peer