|
2 | 2 |
|
3 | 3 | from datetime import datetime
|
4 | 4 | from enum import Enum, IntEnum
|
| 5 | +from types import MappingProxyType |
5 | 6 | from typing import Any, Literal
|
6 | 7 |
|
7 | 8 | from ga4gh.core.models import MappableConcept
|
@@ -258,37 +259,39 @@ class NamespacePrefix(Enum):
|
258 | 259 | WIKIDATA = "wikidata"
|
259 | 260 |
|
260 | 261 |
|
261 |
| -# Source to URI. Will use OBO Foundry persistent URL (PURL) or source homepage |
262 |
| -NAMESPACE_TO_SYSTEM_URI: dict[NamespacePrefix, str] = { |
263 |
| - NamespacePrefix.ATC: "https://www.who.int/tools/atc-ddd-toolkit/atc-classification/", |
264 |
| - NamespacePrefix.CHEBI: "http://purl.obolibrary.org/obo/chebi.owl", |
265 |
| - NamespacePrefix.CHEMBL: "https://www.ebi.ac.uk/chembl/", |
266 |
| - NamespacePrefix.CHEMIDPLUS: "https://pubchem.ncbi.nlm.nih.gov/source/ChemIDplus", |
267 |
| - NamespacePrefix.CASREGISTRY: "https://pubchem.ncbi.nlm.nih.gov/source/ChemIDplus", |
268 |
| - NamespacePrefix.CVX: "https://www2a.cdc.gov/vaccines/iis/iisstandards/vaccines.asp?rpt=cvx", |
269 |
| - NamespacePrefix.DRUGBANK: "https://go.drugbank.com", |
270 |
| - NamespacePrefix.DRUGCENTRAL: "https://drugcentral.org", |
271 |
| - NamespacePrefix.DRUGSATFDA_ANDA: "https://www.fda.gov/drugs/types-applications/abbreviated-new-drug-application-anda", |
272 |
| - NamespacePrefix.DRUGSATFDA_NDA: "https://www.fda.gov/drugs/types-applications/new-drug-application-nda", |
273 |
| - NamespacePrefix.HEMONC: "https://hemonc.org", |
274 |
| - NamespacePrefix.INCHIKEY: "https://www.chemspider.com", |
275 |
| - NamespacePrefix.IUPHAR_LIGAND: "https://www.guidetopharmacology.org/GRAC/LigandListForward", |
276 |
| - NamespacePrefix.GUIDETOPHARMACOLOGY: "https://www.guidetopharmacology.org/GRAC/LigandListForward", |
277 |
| - NamespacePrefix.MMSL: "https://www.nlm.nih.gov/research/umls/rxnorm/sourcereleasedocs/mmsl.html", |
278 |
| - NamespacePrefix.MSH: "https://id.nlm.nih.gov/mesh/", |
279 |
| - NamespacePrefix.NCIT: "http://purl.obolibrary.org/obo/ncit.owl", |
280 |
| - NamespacePrefix.NDC: "https://dps.fda.gov/ndc", |
281 |
| - NamespacePrefix.PUBCHEMCOMPOUND: "https://pubchem.ncbi.nlm.nih.gov/docs/compounds", |
282 |
| - NamespacePrefix.PUBCHEMSUBSTANCE: "https://pubchem.ncbi.nlm.nih.gov/docs/substances", |
283 |
| - NamespacePrefix.RXNORM: "https://www.nlm.nih.gov/research/umls/rxnorm/index.html", |
284 |
| - NamespacePrefix.SPL: "https://www.fda.gov/industry/fda-data-standards-advisory-board/structured-product-labeling-resources", |
285 |
| - NamespacePrefix.UMLS: "https://www.nlm.nih.gov/research/umls/index.html", |
286 |
| - NamespacePrefix.UNII: "https://precision.fda.gov/uniisearch", |
287 |
| - NamespacePrefix.UNIPROT: "https://www.uniprot.org", |
288 |
| - NamespacePrefix.USP: "https://www.usp.org/health-quality-safety/compendial-nomenclature", |
289 |
| - NamespacePrefix.VANDF: "https://www.nlm.nih.gov/research/umls/sourcereleasedocs/current/VANDF", |
290 |
| - NamespacePrefix.WIKIDATA: "https://www.wikidata.org", |
291 |
| -} |
| 262 | +# Source to URI. Will use system prefix URL, OBO Foundry persistent URL (PURL) or source homepage |
| 263 | +NAMESPACE_TO_SYSTEM_URI: MappingProxyType[NamespacePrefix, str] = MappingProxyType( |
| 264 | + { |
| 265 | + NamespacePrefix.ATC: "https://atcddd.fhi.no/atc_ddd_index/?code=", |
| 266 | + NamespacePrefix.CHEBI: "https://www.ebi.ac.uk/chebi/searchId.do?chebiId=", |
| 267 | + NamespacePrefix.CHEMBL: "https://www.ebi.ac.uk/chembl/explore/compound/", |
| 268 | + NamespacePrefix.CHEMIDPLUS: "https://commonchemistry.cas.org/detail?cas_rn=", |
| 269 | + NamespacePrefix.CASREGISTRY: "https://commonchemistry.cas.org/detail?cas_rn=", |
| 270 | + NamespacePrefix.CVX: "https://www2a.cdc.gov/vaccines/iis/iisstandards/vaccines.asp?rpt=cvx", |
| 271 | + NamespacePrefix.DRUGBANK: "https://go.drugbank.com/drugs/", |
| 272 | + NamespacePrefix.DRUGCENTRAL: "https://drugcentral.org/drugcard/", |
| 273 | + NamespacePrefix.DRUGSATFDA_ANDA: "https://www.accessdata.fda.gov/scripts/cder/daf/index.cfm?event=overview.process&ApplNo=", |
| 274 | + NamespacePrefix.DRUGSATFDA_NDA: "https://www.accessdata.fda.gov/scripts/cder/daf/index.cfm?event=overview.process&ApplNo=", |
| 275 | + NamespacePrefix.HEMONC: "https://hemonc.org", |
| 276 | + NamespacePrefix.INCHIKEY: "https://www.chemspider.com", |
| 277 | + NamespacePrefix.IUPHAR_LIGAND: "https://www.guidetopharmacology.org/GRAC/LigandDisplayForward?ligandId=", |
| 278 | + NamespacePrefix.GUIDETOPHARMACOLOGY: "https://www.guidetopharmacology.org/GRAC/LigandDisplayForward?ligandId=", |
| 279 | + NamespacePrefix.MMSL: "https://www.nlm.nih.gov/research/umls/rxnorm/sourcereleasedocs/mmsl.html", |
| 280 | + NamespacePrefix.MSH: "https://id.nlm.nih.gov/mesh/", |
| 281 | + NamespacePrefix.NCIT: "https://ncit.nci.nih.gov/ncitbrowser/ConceptReport.jsp?dictionary=NCI_Thesaurus&code=", |
| 282 | + NamespacePrefix.NDC: "https://dps.fda.gov/ndc/searchresult?selection=finished_product&content=PRODUCTNDC&type=", |
| 283 | + NamespacePrefix.PUBCHEMCOMPOUND: "https://pubchem.ncbi.nlm.nih.gov/compound/", |
| 284 | + NamespacePrefix.PUBCHEMSUBSTANCE: "https://pubchem.ncbi.nlm.nih.gov/substance/", |
| 285 | + NamespacePrefix.RXNORM: "https://mor.nlm.nih.gov/RxNav/search?searchBy=RXCUI&searchTerm=", |
| 286 | + NamespacePrefix.SPL: "https://www.fda.gov/industry/fda-data-standards-advisory-board/structured-product-labeling-resources", |
| 287 | + NamespacePrefix.UMLS: "https://uts.nlm.nih.gov/uts/umls/concept/", |
| 288 | + NamespacePrefix.UNII: "https://precision.fda.gov/uniisearch/srs/unii/", |
| 289 | + NamespacePrefix.UNIPROT: "http://purl.uniprot.org/uniprot/", |
| 290 | + NamespacePrefix.USP: "https://www.usp.org/health-quality-safety/compendial-nomenclature", |
| 291 | + NamespacePrefix.VANDF: "https://www.nlm.nih.gov/research/umls/sourcereleasedocs/current/VANDF", |
| 292 | + NamespacePrefix.WIKIDATA: "https://www.wikidata.org/wiki/", |
| 293 | + } |
| 294 | +) |
292 | 295 |
|
293 | 296 | # URI to source
|
294 | 297 | SYSTEM_URI_TO_NAMESPACE = {
|
@@ -540,21 +543,21 @@ class NormalizationService(BaseNormalizationService):
|
540 | 543 | {
|
541 | 544 | "coding": {
|
542 | 545 | "code": "2555",
|
543 |
| - "system": "https://www.nlm.nih.gov/research/umls/rxnorm/index.html", |
| 546 | + "system": "https://mor.nlm.nih.gov/RxNav/search?searchBy=RXCUI&searchTerm=", |
544 | 547 | },
|
545 | 548 | "relation": "exactMatch",
|
546 | 549 | },
|
547 | 550 | {
|
548 | 551 | "coding": {
|
549 | 552 | "code": "C376",
|
550 |
| - "system": "http://purl.obolibrary.org/obo/ncit.owl", |
| 553 | + "system": "https://ncit.nci.nih.gov/ncitbrowser/ConceptReport.jsp?dictionary=NCI_Thesaurus&code=", |
551 | 554 | },
|
552 | 555 | "relation": "relatedMatch",
|
553 | 556 | },
|
554 | 557 | {
|
555 | 558 | "coding": {
|
556 | 559 | "code": "15663-27-1",
|
557 |
| - "system": "https://pubchem.ncbi.nlm.nih.gov/source/ChemIDplus", |
| 560 | + "system": "https://commonchemistry.cas.org/detail?cas_rn=", |
558 | 561 | },
|
559 | 562 | "relation": "relatedMatch",
|
560 | 563 | },
|
@@ -843,7 +846,7 @@ class SearchService(BaseModel):
|
843 | 846 | "data_license": "CC0 1.0",
|
844 | 847 | "data_license_url": "https://creativecommons.org/publicdomain/zero/1.0/",
|
845 | 848 | "version": "5.1.10",
|
846 |
| - "data_url": "https://go.drugbank.com/releases/latest#open-data", |
| 849 | + "data_url": "https://go.drugbank.com/drugs//releases/latest#open-data", |
847 | 850 | "rdp_url": "http://reusabledata.org/drugbank.html",
|
848 | 851 | "data_license_attributes": {
|
849 | 852 | "non_commercial": False,
|
|
0 commit comments