In [1]:
from biothings_explorer.user_query_dispatcher import FindConnection
from biothings_explorer.hint import Hint
In [7]:
estrogen = {'name': 'Estrogens',
'UMLS': 'C0014939',
'display': 'name(Estrogens) UMLS(C0014939) ',
'type': 'ChemicalSubstance',
'primary': {'identifier': 'UMLS',
'cls': 'ChemicalSubstance',
'value': 'C0014939'}}
In [8]:
tmprss2 = {'NCBIGene': '7113',
'name': 'transmembrane serine protease 2',
'SYMBOL': 'TMPRSS2',
'taxonomy': 9606,
'UMLS': 'C1336641',
'UNIPROTKB': 'O15393',
'HGNC': '11876',
'ENSEMBL': 'ENSG00000184012',
'display': 'entrez(7113) name(transmembrane serine protease 2) symbol(TMPRSS2) taxonomy(9606) umls(C1336641) uniprot(O15393) hgnc(11876) ensembl(ENSG00000184012) ',
'type': 'Gene',
'primary': {'identifier': 'NCBIGene', 'cls': 'Gene', 'value': '7113'}}
In [9]:
fc = FindConnection(estrogen, tmprss2, intermediate_nodes="ChemicalSubstance")
In [10]:
fc.connect(verbose=True)
==========
========== QUERY PARAMETER SUMMARY ==========
==========
BTE will find paths that join 'Estrogens' and 'TMPRSS2'. Paths will have 1 intermediate node.
Intermediate node #1 will have these type constraints: ChemicalSubstance
==========
========== QUERY #1 -- fetch all ChemicalSubstance entities linked to 'Estrogens' ==========
==========
==== Step #1: Query path planning ====
Because Estrogens is of type 'ChemicalSubstance', BTE will query our meta-KG for APIs that can take 'ChemicalSubstance' as input and 'ChemicalSubstance' as output
BTE found 1 apis:
API 1. semmed_chemical(13 API calls)
==== Step #2: Query path execution ====
NOTE: API requests are dispatched in parallel, so the list of APIs below is ordered by query time.
API 1.1: https://biothings.ncats.io/semmedchemical/query?fields=negatively_regulates (POST -d q=C0014939&scopes=umls)
API 1.9: https://biothings.ncats.io/semmedchemical/query?fields=coexists_with (POST -d q=C0014939&scopes=umls)
API 1.5: https://biothings.ncats.io/semmedchemical/query?fields=affects (POST -d q=C0014939&scopes=umls)
API 1.13: https://biothings.ncats.io/semmedchemical/query?fields=affected_by (POST -d q=C0014939&scopes=umls)
API 1.2: https://biothings.ncats.io/semmedchemical/query?fields=physically_interacts_with (POST -d q=C0014939&scopes=umls)
API 1.11: https://biothings.ncats.io/semmedchemical/query?fields=produced_by (POST -d q=C0014939&scopes=umls)
API 1.7: https://biothings.ncats.io/semmedchemical/query?fields=disrupted_by (POST -d q=C0014939&scopes=umls)
API 1.10: https://biothings.ncats.io/semmedchemical/query?fields=produces (POST -d q=C0014939&scopes=umls)
API 1.4: https://biothings.ncats.io/semmedchemical/query?fields=positively_regulated_by (POST -d q=C0014939&scopes=umls)
API 1.12: https://biothings.ncats.io/semmedchemical/query?fields=related_to (POST -d q=C0014939&scopes=umls)
API 1.8: https://biothings.ncats.io/semmedchemical/query?fields=negatively_regulated_by (POST -d q=C0014939&scopes=umls)
API 1.6: https://biothings.ncats.io/semmedchemical/query?fields=disrupts (POST -d q=C0014939&scopes=umls)
API 1.3: https://biothings.ncats.io/semmedchemical/query?fields=positively_regulates (POST -d q=C0014939&scopes=umls)
==== Step #3: Output normalization ====
API 1.1 semmed_chemical: 175 hits
API 1.2 semmed_chemical: 563 hits
API 1.3 semmed_chemical: 286 hits
API 1.4 semmed_chemical: No hits
API 1.5 semmed_chemical: No hits
API 1.6 semmed_chemical: No hits
API 1.7 semmed_chemical: No hits
API 1.8 semmed_chemical: No hits
API 1.9 semmed_chemical: 276 hits
API 1.10 semmed_chemical: No hits
API 1.11 semmed_chemical: No hits
API 1.12 semmed_chemical: No hits
API 1.13 semmed_chemical: No hits
After id-to-object translation, BTE retrieved 793 unique objects.
==========
========== QUERY #2 -- fetch all ChemicalSubstance entities linked to 'TMPRSS2' ==========
==========
==== Step #1: Query path planning ====
Because TMPRSS2 is of type 'Gene', BTE will query our meta-KG for APIs that can take 'Gene' as input and 'ChemicalSubstance' as output
BTE found 10 apis:
API 1. pharos(1 API call)
API 2. mychem(3 API calls)
API 3. scigraph(1 API call)
API 4. chembio(1 API call)
API 5. cord_gene(1 API call)
API 6. semmed_gene(10 API calls)
API 7. hmdb(1 API call)
API 8. dgidb(1 API call)
API 9. scibite(1 API call)
API 10. opentarget(1 API call)
==== Step #2: Query path execution ====
NOTE: API requests are dispatched in parallel, so the list of APIs below is ordered by query time.
API 2.1: https://mychem.info/v1/query?fields=drugbank.id&size=250 (POST -d q=TMPRSS2&scopes=drugbank.targets.gene_name)
API 6.7: https://biothings.ncats.io/semmedgene/query?fields=affected_by (POST -d q=C1336641&scopes=umls)
API 6.3: https://biothings.ncats.io/semmedgene/query?fields=disrupts (POST -d q=C1336641&scopes=umls)
API 5.1: https://biothings.ncats.io/cord_gene/query?fields=associated_with (POST -d q=11876&scopes=hgnc)
API 6.5: https://biothings.ncats.io/semmedgene/query?fields=physically_interacts_with (POST -d q=C1336641&scopes=umls)
API 6.6: https://biothings.ncats.io/semmedgene/query?fields=negatively_regulated_by (POST -d q=C1336641&scopes=umls)
API 2.2: https://mychem.info/v1/query?fields=drugbank.id&size=250 (POST -d q=TMPRSS2&scopes=drugbank.enzymes.gene_name)
API 2.3: https://mychem.info/v1/query?fields=chembl.molecule_chembl_id&size=250 (POST -d q=TMPRSS2&scopes=drugcentral.bioactivity.uniprot.gene_symbol)
API 6.8: https://biothings.ncats.io/semmedgene/query?fields=disrupted_by (POST -d q=C1336641&scopes=umls)
API 6.9: https://biothings.ncats.io/semmedgene/query?fields=affects (POST -d q=C1336641&scopes=umls)
API 6.4: https://biothings.ncats.io/semmedgene/query?fields=positively_regulated_by (POST -d q=C1336641&scopes=umls)
API 6.10: https://biothings.ncats.io/semmedgene/query?fields=related_to (POST -d q=C1336641&scopes=umls)
API 6.2: https://biothings.ncats.io/semmedgene/query?fields=negatively_regulates (POST -d q=C1336641&scopes=umls)
API 6.1: https://biothings.ncats.io/semmedgene/query?fields=positively_regulates (POST -d q=C1336641&scopes=umls)
API 8.1: http://dgidb.genome.wustl.edu/api/v2/interactions.json?genes=TMPRSS2
API 10.1: https://platform-api.opentargets.io/v3/platform/public/evidence/filter?target=ENSG00000184012&datasource=chembl&size=100&fields=drug
API 9.1: https://automat.renci.org/cord19_scibite_v2/gene/chemical_substance/NCBIGene:7113
API 7.1: https://automat.renci.org/hmdb/gene/chemical_substance/NCBIGene:7113
API 3.1: https://automat.renci.org/cord19_scigraph_v2/gene/chemical_substance/NCBIGene:7113
API 1.1: https://automat.renci.org/pharos/gene/chemical_substance/NCBIGene:7113
API 4.1: https://automat.renci.org/chembio/gene/chemical_substance/NCBIGene:7113
==== Step #3: Output normalization ====
API 10.1 opentarget: No hits
API 7.1 hmdb: No hits
API 3.1 scigraph: 19 hits
API 9.1 scibite: 14 hits
API 6.1 semmed_gene: No hits
API 6.2 semmed_gene: No hits
API 6.3 semmed_gene: No hits
API 2.1 mychem: No hits
API 1.1 pharos: 3 hits
API 2.2 mychem: No hits
API 5.1 cord_gene: 1 hits
API 6.4 semmed_gene: 2 hits
API 4.1 chembio: 4 hits
API 6.5 semmed_gene: 2 hits
API 6.6 semmed_gene: 1 hits
API 6.7 semmed_gene: No hits
API 6.8 semmed_gene: No hits
API 6.9 semmed_gene: No hits
API 6.10 semmed_gene: No hits
API 2.3 mychem: No hits
API 8.1 dgidb: No hits
After id-to-object translation, BTE retrieved 43 unique objects.
==========
========== Final assembly of results ==========
==========
BTE found 6 unique intermediate nodes connecting 'Estrogens' and 'TMPRSS2'
In [11]:
fc.display_table_view()
Out[11]:
input
input_type
pred1
pred1_source
pred1_api
pred1_pubmed
node1_type
node1_name
node1_id
pred2
pred2_source
pred2_api
pred2_pubmed
output_type
output_name
output_id
0
ESTROGEN
ChemicalSubstance
positively_regulates
SEMMED
SEMMED Chemical API
6474508
ChemicalSubstance
AREQUIN
name:AREQUIN
related_to
scigraph
Automat CORD19 Scigraph API
None
ChemicalSubstance
TMPRSS2
NCBIGene:7113
1
ESTROGEN
ChemicalSubstance
negatively_regulates
SEMMED
SEMMED Chemical API
4678850,463617,1109902,1109902,1011169,501815,...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
2
ESTROGEN
ChemicalSubstance
negatively_regulates
SEMMED
SEMMED Chemical API
7264512
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
3
ESTROGEN
ChemicalSubstance
physically_interacts_with
SEMMED
SEMMED Chemical API
19871058,14142405,12981152,13989191,6155068,61...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
4
ESTROGEN
ChemicalSubstance
physically_interacts_with
SEMMED
SEMMED Chemical API
2168876,11800164
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
5
ESTROGEN
ChemicalSubstance
positively_regulates
SEMMED
SEMMED Chemical API
163457,931543,521734,8501162,7920895,2249634,1...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
6
ESTROGEN
ChemicalSubstance
coexists_with
SEMMED
SEMMED Chemical API
13948933,7246802,1054902,147281,9004535,876887...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
7
ESTROGEN
ChemicalSubstance
coexists_with
SEMMED
SEMMED Chemical API
2521224,2137721,10025034
ChemicalSubstance
ANDROGENS
name:ANDROGENS
positively_regulated_by
SEMMED
SEMMED Gene API
11322890
ChemicalSubstance
TMPRSS2
NCBIGene:7113
8
ESTROGEN
ChemicalSubstance
negatively_regulates
SEMMED
SEMMED Chemical API
4678850,463617,1109902,1109902,1011169,501815,...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
9
ESTROGEN
ChemicalSubstance
negatively_regulates
SEMMED
SEMMED Chemical API
7264512
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
10
ESTROGEN
ChemicalSubstance
physically_interacts_with
SEMMED
SEMMED Chemical API
19871058,14142405,12981152,13989191,6155068,61...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
11
ESTROGEN
ChemicalSubstance
physically_interacts_with
SEMMED
SEMMED Chemical API
2168876,11800164
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
12
ESTROGEN
ChemicalSubstance
positively_regulates
SEMMED
SEMMED Chemical API
163457,931543,521734,8501162,7920895,2249634,1...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
13
ESTROGEN
ChemicalSubstance
coexists_with
SEMMED
SEMMED Chemical API
13948933,7246802,1054902,147281,9004535,876887...
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
14
ESTROGEN
ChemicalSubstance
coexists_with
SEMMED
SEMMED Chemical API
2521224,2137721,10025034
ChemicalSubstance
ANDROGENS
name:ANDROGENS
physically_interacts_with
SEMMED
SEMMED Gene API
21796535,24109594,24109594,24727384,25170998
ChemicalSubstance
TMPRSS2
NCBIGene:7113
15
ESTROGEN
ChemicalSubstance
positively_regulates
SEMMED
SEMMED Chemical API
14565844
ChemicalSubstance
5' UNTRANSLATED REGION
name:5' UNTRANSLATED REGION
physically_interacts_with
SEMMED
SEMMED Gene API
23472063
ChemicalSubstance
TMPRSS2
NCBIGene:7113
16
ESTROGEN
ChemicalSubstance
coexists_with
SEMMED
SEMMED Chemical API
19642097
ChemicalSubstance
5' UNTRANSLATED REGION
name:5' UNTRANSLATED REGION
physically_interacts_with
SEMMED
SEMMED Gene API
23472063
ChemicalSubstance
TMPRSS2
NCBIGene:7113
17
ESTROGEN
ChemicalSubstance
coexists_with
SEMMED
SEMMED Chemical API
18949358
ChemicalSubstance
INTERFERING RNA, SMALL
name:INTERFERING RNA, SMALL
negatively_regulated_by
SEMMED
SEMMED Gene API
26026052
ChemicalSubstance
TMPRSS2
NCBIGene:7113
In [ ]:
Content source: biothings/biothings_explorer
Similar notebooks: