CINXE.COM
Scholia
<!DOCTYPE html> <html> <head> <title>Scholia</title> <meta charset="UTF-8"> <meta name="robots" content="index, nofollow"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="og:url" content="https://scholia.toolforge.org/chemical/Q27109180" /> <meta name="og:site_name" content="Scholia" /> <meta name="og:image" content="/static/images/scholia_social_media.png" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:site" content="@WDScholia" /> <!-- Bootstrap --> <link href="/static/css/bootstrap.min.css" rel="stylesheet"> <link rel="canonical" href="https://scholia.toolforge.org/chemical/Q27109180"> <link rel="stylesheet" type="text/css" href="/static/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="/static/jquery.dataTables.min.css"> <link rel="stylesheet" type="text/css" href="/static/css/scholia.css"> <link rel='stylesheet' type='text/css' href="/static/css/nightmode.css"> <!-- Generated with RealFaviconGenerator --> <link rel="apple-touch-icon" sizes="180x180" href="/static/favicon/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/static/favicon/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/static/favicon/favicon-16x16.png"> <link rel="manifest" href="/static/favicon/site.webmanifest"> <link rel="mask-icon" href="/static/favicon/safari-pinned-tab.svg" color="#09af8a"> <link rel="shortcut icon" href="/static/favicon/favicon.ico"> <meta name="apple-mobile-web-app-title" content="Scholia"> <meta name="application-name" content="Scholia"> <meta name="msapplication-TileColor" content="#09af8a"> <meta name="theme-color" content="#09af8a"> </head> <body> <nav class="navbar navbar-expand-lg" style="max-width: 1200px;"> <a class="navbar-brand" href="/"><img src="/static/images/scholia_wordmark.svg" width="112px" height="24px" alt="Scholia"></a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav mr-auto"> <li class="nav-item"><a class="nav-link" href="/author/">Author</a></li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="workDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Work </a> <div class="dropdown-menu" aria-labelledby="workDropdown"> <a class="dropdown-item" href="/work/">Work</a> <a class="dropdown-item" href="/venue/">Venue</a> <a class="dropdown-item" href="/series/">Series</a> <a class="dropdown-item" href="/catalogue/">Catalogue</a> <a class="dropdown-item" href="/publisher/">Publisher</a> <a class="dropdown-item" href="/printer/">Printer</a> </div> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="organisationDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Organization </a> <div class="dropdown-menu" aria-labelledby="organisationDropdown"> <a class="dropdown-item" href="/organization/">Organization</a> <a class="dropdown-item" href="/publisher/">Publisher</a> <a class="dropdown-item" href="/printer/">Printer</a> <a class="dropdown-item" href="/sponsor/">Sponsor</a> </div> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="locationDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Location </a> <div class="dropdown-menu" aria-labelledby="locationDropdown"> <a class="dropdown-item" href="/location/">Location</a> <a class="dropdown-item" href="/country/">Country</a> </div> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="eventDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Event </a> <div class="dropdown-menu" aria-labelledby="eventDropdown"> <a class="dropdown-item" href="/event/">Event</a> <a class="dropdown-item" href="/event-series/">Event series</a> </div> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="projectDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Project </a> <div class="dropdown-menu" aria-labelledby="projectDropdown"> <a class="dropdown-item" href="/clinical-trial/">Clinical trial</a> <a class="dropdown-item" href="/project/">Project</a> <a class="dropdown-item" href="/wikiproject/">WikiProject</a> </div> </li> <li class="nav-item"><a class="nav-link" href="/award/">Award</a></li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="topicDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Topic </a> <div class="dropdown-menu" aria-labelledby="projectDropdown"> <a class="dropdown-item" href="/topic/">General</a> <a class="dropdown-item" href="/disease/">Disease</a> <a class="dropdown-item" href="/taxon/">Taxon</a> <a class="dropdown-item" href="/gene/">Gene</a> <a class="dropdown-item" href="/protein/">Protein</a> <a class="dropdown-item" href="/pathway/">Pathway</a> <a class="dropdown-item" href="/chemical/">Chemical</a> <a class="dropdown-item" href="/chemical-element/">Chemical element</a> <a class="dropdown-item" href="/chemical-class/">Chemical class</a> <a class="dropdown-item" href="/lexeme/">Lexeme</a> <a class="dropdown-item" href="/ontology/">Ontology</a> <a class="dropdown-item" href="/software/">Software</a> <a class="dropdown-item" href="/use/">Use</a> </div> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="toolsDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Tools </a> <div class="dropdown-menu" aria-labelledby="toolsDropdown"> <a class="dropdown-item" href="/id-to-quickstatements">Identifier to Quickstatements</a> <a class="dropdown-item" href="/q-to-bibliography-templates">Q to Bibliography templates</a> <a class="dropdown-item" href="/text-to-topics">Text to topics</a> </div> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="helpDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Help </a> <div class="dropdown-menu" aria-labelledby="helpDropdown"> <a class="dropdown-item" href="/about">About</a> <a class="dropdown-item" href="/statistics">Statistics</a> <a class="dropdown-item" href="/faq">FAQ</a> </div> </li> </ul> <div class='nav nav-search'> <input class="form-control" type="text" id="searchterm" placeholder="Search..."/> </div> </div> </nav> <div class="content"> <div class="container d-flex justify-content-between"> <div class="dropdown" id="aspect-chooser"> </div> <div> <a id='curation-link' role="button" class="btn btn-outline-secondary d-none">Improve data</a> </div> </div> <div class="container"> <h1 id="h1">Chemical</h1> <script type="application/ld+json" id="bioschemas"></script> <div class="card-deck mb-3"> <div class="card mb-4 box-shadow"> <div class="card-body"> <div id="intro"></div> </div> </div> <div class="card mb-4 box-shadow"> <div class="card-body"> <img src="https://cdkdepict.toolforge.org/depict/bow/svg?smi=C%28%3DCC%28%3DC%28C%28%3DO%29O%29N%29C%28%3DO%29O%29C%3DO&abbr=on&hdisp=bridgehead&showtitle=false&zoom=2&annotate=cip" /> </div> </div> </div> <div id="wembedder"></div> <h2 id="structural-identifiers">Structural Information</h2> <table class="table table-hover" id="structural-identifiers-table"></table> <h2 id="identifiers">Identifiers</h2> <table class="table table-hover" id="identifiers-table"></table> <h2 id="related">Compounds with same connectivity</h2> (Including the compound itself) <table class="table table-hover" id="related-table"></table> <h2 id="physchem-properties">Physchem Properties</h2> <table class="table table-hover" id="physchem-properties-table"></table> <h2 id="recent-literature">Recently published works on the chemical <a href="/topic/Q27109180/latest-works/rss"><img height="24" width="48" src="/static/images/rss-40674_320.png" alt="RSS icon" /></a></h2> More details on literature about this chemical can found found on the <a href="/topic/Q27109180"><i>topic</i> aspect page</a>. <table class="table table-hover" id="recent-literature-table"></table> <h2 id="publications-per-year">Publications per year</h2> More details on literature about this chemical can found found on the <a href="/topic/Q27109180"><i>topic</i> aspect page</a>. <div class="embed-responsive embed-responsive-16by9"> <iframe class="embed-responsive-item" id="publications-per-year-iframe" ></iframe> </div> <h2 id="biological-processes">Biological processes in which the chemical is involved</h2> <table class="table table-hover" id="biological-processes-table"></table> <h2 id="found-in-matrix-np">Matrices that are natural products of taxa in which the chemical was found</h2> <table class="table table-hover" id="found-in-matrix-np-table"></table> <h2 id="found-in-taxon">Taxa in which the chemical was found</h2> <table class="table table-hover" id="found-in-taxon-table"></table> </div> </div> <div class="container footer"> <hr> Data from <a href="https://www.wikidata.org">Wikidata</a> and <a href="https://en.wikipedia.org">English Wikipedia</a> | Code from <a href="https://github.com/WDscholia/scholia">GitHub repository</a> | Hosted on <a href="https://toolforge.org/">Wikimedia Toolforge</a>, a <a href="https://wikimediafoundation.org">Wikimedia Foundation</a> service | License for content: CC0 for data, CC-BY-SA for text and media | Report technical problems at Scholia's <a href="https://github.com/WDscholia/scholia/issues">Issues</a> GitHub page. | Follow us on <a href="https://wikis.world/@wdscholia">Mastodon</a>. <hr> </div> <script src="/static/jquery.min.js"></script> <script src="/static/js/popper.min.js"></script> <script src="/static/js/bootstrap.min.js"></script> <script type="text/javascript" src="/static/d3.v5.min.js"></script> <script type="text/javascript" src="/static/d3-scale-chromatic.v1.min.js"></script> <script type="text/javascript" src="/static/jquery.dataTables.min.js"></script> <script type="text/javascript" src="/static/scholia.js"></script> <script type="text/javascript" src="/static/bootstrap-autocomplete.min.js"></script> <script type="text/javascript"> var url = 'https://www.wikidata.org/w/api.php?action=wbgetentities&ids=' + 'Q27109180' + '&format=json&callback=?'; const currentAspect = window.location.pathname.split("/")[1]; $.getJSON(url, function (data) { var item = data.entities["Q27109180"]; if ('en' in item.labels) { var title = item.labels.en.value; var wdtitle = item.labels.en.value; $("#h1").text(title); $(".self").text(title); $("title").text(title + " - Scholia"); var crossref_button = document.getElementById("check-crossref-button"); if (title && crossref_button) { crossref_button.onclick = () => {get_dois_from_crossref(wdtitle)} crossref_button.innerHTML = "Check Crossref" } } $("#h1").append(' (<a href="https://www.wikidata.org/wiki/Q27109180">Q27109180</a>)'); if ("P18" in item.claims) { // Find P18 claim which is not deprecated const p18Claim = item.claims.P18.find(function (claim) { return claim.rank !== "deprecated"; }); if (undefined !== p18Claim) { var imageName = p18Claim.mainsnak.datavalue.value; // spaces must be replaced by underscores in the file name imageName = imageName.replaceAll(" ", "_") var imageNameMd5 = md5(imageName); var imageURL = "https://upload.wikimedia.org/wikipedia/commons/thumb/" imageURL += imageNameMd5[0] + "/" + imageNameMd5.slice(0,2) + "/" var filetype = imageName.match(/\.(\w+)$/); var extension = filetype[1].toLowerCase() if (extension === "tif" || extension === "tiff") { imageURL += encodeURIComponent(imageName) + "/lossy-page1-500px-" + encodeURIComponent(imageName) + ".jpg"; } else if (extension === "svg") { imageURL += encodeURIComponent(imageName) + "/500px-" + encodeURIComponent(imageName) + ".png"; } else { imageURL += encodeURIComponent(imageName) + "/500px-" + encodeURIComponent(imageName); } var itemImage = document.getElementById("item-image"); if (itemImage) { itemImage.src = imageURL; itemImage.title = imageName.slice(0, imageName.lastIndexOf('.')); itemImage.setAttribute('alt', imageName); var link = document.createElement('a'); link.href = "https://commons.wikimedia.org/wiki/File:" + encodeURIComponent(imageName); link.style = "max-width: 50%" var parent = itemImage.parentNode; parent.replaceChild(link, itemImage); link.appendChild(itemImage); } } } if ("P10286" in item.claims) { var imageURL = item.claims.P10286[0].mainsnak.datavalue.value; var itemImage = document.getElementById("item-image"); if (itemImage) { itemImage.src = imageURL; } } function socialMediaLink(detailsList, user, site, logo = '') { var html = ''; if (logo) { html += '<a href="' + site.url + '"><img alt="' + site.name + ' logo" src="'; html += logo.src + '" width="16" height="16" hspace="4" /></a> '; } html += '<a href="' + site.url + encodeURI(user.name) + '">'; html += user.prefix + escapeHTML(user.name) + '</a>'; detailsList.push(html); } function sortRank(a, b) { const aRank = a["rank"]; const bRank = b["rank"]; if (aRank == bRank) { return 0; } if (aRank == "preferred" || bRank == "deprecated") { return -1; } if (bRank == "preferred" || aRank == "deprecated") { return 1; } return 0; } var detailsList = Array(); if ("P496" in item.claims) { var user = {name: item.claims.P496[0].mainsnak.datavalue.value, prefix: 'https://orcid.org/'}; var site = {name: "ORCID", url: "https://orcid.org/"}; var logo = {src: "/static/images/orcid.svg"}; socialMediaLink(detailsList, user, site, logo); } if ("P4033" in item.claims) { var mastodonAccount = item.claims.P4033[0].mainsnak.datavalue.value; var mastodonComponents = mastodonAccount.split("@"); if (mastodonComponents.length == 2) { // Mastodon user URLs start with @ var user = { name: '@' + mastodonComponents[0], prefix: '' }; var site = { name: "Mastodon", url: 'https://' + mastodonComponents[1] + '/' }; var logo = { src: "/static/images/mastodon.svg" }; socialMediaLink(detailsList, user, site, logo); } } if ("P2037" in item.claims) { var user = {name: item.claims.P2037[0].mainsnak.datavalue.value, prefix: "@"}; var site = { name: "GitHub", url: "https://github.com/" }; var logo = { src: "/static/images/github.svg" }; socialMediaLink(detailsList, user, site, logo); } if ("P6782" in item.claims) { var user = { name: item.claims.P6782[0].mainsnak.datavalue.value, prefix: 'https://ror.org/' }; var site = { name: "Research Organization Registry", url: 'https://ror.org/' }; var logo = { src: "/static/images/ror.svg" }; socialMediaLink(detailsList, user, site, logo); } if ("P2572" in item.claims) { var user = { name: item.claims.P2572[0].mainsnak.datavalue.value, prefix: '#' }; var site = { name: "Hashtag hub", url: 'https://hashtags-hub.toolforge.org/' }; socialMediaLink(detailsList, user, site); } /* Official homepage */ if ("P856" in item.claims) { var homepage = item.claims.P856.sort(sortRank)[0] var homepageURL = homepage.mainsnak.datavalue.value detailsList.push(' <a href="' + homepageURL + '">' + homepageURL + '</a>'); } if (detailsList.length > 0) { $('#details').append(detailsList.join(" | ")); } try { var doi = item.claims.P356[0].mainsnak.datavalue.value; $("head").append( '<meta name="citation_doi" content="' + doi + '"/>' ); } catch(e) {} /* BioSchemas annotation */ if (item.claims.P31 && ((item.claims.P31[0].mainsnak.datavalue.value.id == 'Q5'))) { try { /* Person */ bioschemasAnnotation = { "@context" : "https://schema.org", "@type" : "Person" , "http://purl.org/dc/terms/conformsTo": { "@type": "CreativeWork", "@id": "https://bioschemas.org/profiles/Person/0.2-DRAFT-2019_07_19/" }, "description" : "A person" , "identifier" : "Q27109180" , "mainEntityOfPage" : "http://www.wikidata.org/entity/Q27109180" } if ('en' in item.labels) { bioschemasAnnotation.name = item.labels.en.value; } $( '#bioschemas' ).append( JSON.stringify(bioschemasAnnotation) ); } catch(e) {} } else if (item.claims.P31 && ((item.claims.P31[0].mainsnak.datavalue.value.id == 'Q47461491') || (item.claims.P31[0].mainsnak.datavalue.value.id == 'Q967847'))) { try { /* ChemicalSubstance */ bioschemasAnnotation = { "@context" : "https://schema.org", "@type" : "ChemicalSubstance" , "http://purl.org/dc/terms/conformsTo": { "@type": "CreativeWork", "@id": "https://bioschemas.org/profiles/ChemicalSubstance/0.4-RELEASE/" }, "identifier" : "Q27109180" , "url" : "http://www.wikidata.org/entity/Q27109180" } if ('en' in item.labels) { bioschemasAnnotation.name = item.labels.en.value; } $( '#bioschemas' ).append( JSON.stringify(bioschemasAnnotation) ); } catch(e) {} } else if (item.claims.P225) { try { /* Taxon */ var taxonName = item.claims.P225[0].mainsnak.datavalue.value; bioschemasAnnotation = { "@context" : "https://schema.org", "@type" : "Taxon" , "http://purl.org/dc/terms/conformsTo": { "@type": "CreativeWork", "@id": "https://bioschemas.org/profiles/Taxon/0.6-RELEASE/" }, "name" : taxonName , "url" : "http://www.wikidata.org/entity/Q27109180" } if (item.claims.P105) { var taxonRank = item.claims.P105[0].mainsnak.datavalue.value.id; bioschemasAnnotation.taxonRank = "http://www.wikidata.org/entity/" + taxonRank ; } if (item.claims.P171) { var parent = item.claims.P171[0].mainsnak.datavalue.value.id; bioschemasAnnotation.parentTaxon = "http://www.wikidata.org/entity/" + parent ; } $( '#bioschemas' ).append( JSON.stringify(bioschemasAnnotation) ); // console.log(JSON.stringify(bioschemasAnnotation, "", 2)) } catch(e) {} } else if (item.claims.P235) { try { /* Chemical Compound */ var inchiKey = item.claims.P235[0].mainsnak.datavalue.value; bioschemasAnnotation = { "@context" : "https://schema.org", "@type" : "MolecularEntity" , "http://purl.org/dc/terms/conformsTo": { "@type": "CreativeWork", "@id": "https://bioschemas.org/profiles/MolecularEntity/0.5-RELEASE/" }, "identifier" : "Q27109180" , "inChIKey" : inchiKey , "url" : "http://www.wikidata.org/entity/Q27109180" } if ('en' in item.labels) { bioschemasAnnotation.name = item.labels.en.value; } if (item.claims.P234 && item.claims.P234[0].mainsnak.datavalue) { var inchi = item.claims.P234[0].mainsnak.datavalue.value; bioschemasAnnotation.inChI = inchi ; } if (item.claims.P274 && item.claims.P274[0].mainsnak.datavalue) { var chemformula = item.claims.P274[0].mainsnak.datavalue.value; bioschemasAnnotation.molecularFormula = chemformula ; } if (item.claims.P2017 && item.claims.P2017[0].mainsnak.datavalue) { var smiles = item.claims.P2017[0].mainsnak.datavalue.value; bioschemasAnnotation.molecularFormula = smiles.replace("\"", "\'\'") ; } else if (item.claims.P233 && item.claims.P233[0].mainsnak.datavalue) { var smiles = item.claims.P233[0].mainsnak.datavalue.value; bioschemasAnnotation.smiles = smiles.replace("\"", "\'\'") ; } $( '#bioschemas' ).append( JSON.stringify(bioschemasAnnotation) ); } catch(e) { console.error("Exception: " + e) } } else if (item.claims.P352) { // UniProt ID try { /* Protein */ var uniprot = item.claims.P352[0].mainsnak.datavalue.value; bioschemasAnnotation = { "@context" : "https://schema.org", "@type" : "Protein" , "http://purl.org/dc/terms/conformsTo": { "@type": "CreativeWork", "@id": "https://bioschemas.org/profiles/Protein/0.11-RELEASE/" }, "identifier" : "Q27109180" , "url" : "http://www.wikidata.org/entity/Q27109180" , "sameAs": "https://www.uniprot.org/uniprot/" + uniprot } if ('en' in item.labels) { bioschemasAnnotation.name = item.labels.en.value; } $( '#bioschemas' ).append( JSON.stringify(bioschemasAnnotation) ); } catch(e) { console.error("Exception: " + e) } } else if (item.claims.P351 || item.claims.P594) { // NCBI Gene or Ensembl try { /* Gene */ bioschemasAnnotation = { "@context" : "https://schema.org", "@type" : "Gene" , "http://purl.org/dc/terms/conformsTo": { "@type": "CreativeWork", "@id": "https://bioschemas.org/profiles/Gene/0.7-RELEASE/" }, "identifier" : "Q27109180" , "url" : "http://www.wikidata.org/entity/Q27109180" } if ('en' in item.labels) { bioschemasAnnotation.name = item.labels.en.value; } counter = 0 bioschemasAnnotation.sameAs = [] if (item.claims.P351 && item.claims.P351[0].mainsnak.datavalue) { var ncbi = item.claims.P351[0].mainsnak.datavalue.value; bioschemasAnnotation.sameAs[counter] = "https://www.ncbi.nlm.nih.gov/gene/" + ncbi; counter++ } if (item.claims.P594 && item.claims.P594[0].mainsnak.datavalue) { var ensembl = item.claims.P594[0].mainsnak.datavalue.value; bioschemasAnnotation.sameAs[counter] = "http://identifiers.org/ensembl/" + ensembl; } $( '#bioschemas' ).append( JSON.stringify(bioschemasAnnotation) ); } catch(e) { console.error("Exception: " + e) } } /* English Wikipedia */ if ('enwiki' in item.sitelinks) { var title = item.sitelinks.enwiki.title; var wikipediaApiUrl = 'https://en.wikipedia.org/api/rest_v1/page/summary/' + encodeURIComponent(title); var wikipediaUrl = 'https://en.wikipedia.org/wiki/' + encodeURIComponent(title) var headers = new Headers({"Api-User-Agent": "https://github.com/WDscholia/scholia"}); fetch(wikipediaApiUrl, {method: 'GET', headers: headers}) .then(response => response.json()) .then(data => { var html = " (<a href=\"" + wikipediaUrl + "\">Read more on English Wikipedia</a>)"; $("#intro").text(data.extract).append(html); }).catch(error => { var html = "<a href=\"" + wikipediaUrl + "\">View on English Wikipedia</a>"; $("#intro").append(html); console.error('Could not get summary from enwiki: ', error); }); } /* English Wikiversity */ if ('enwikiversity' in item.sitelinks) { var enwikiversityTitle = item.sitelinks.enwikiversity.title; var wikiversityApiUrl = 'https://en.wikiversity.org/w/api.php?' + 'action=query&prop=extracts&exsentences=3&exlimit=1&exintro=1&' + 'explaintext=1&callback=?&format=json&titles=' + encodeURIComponent(enwikiversityTitle); var wikiversityUrl = 'https://en.wikiversity.org/wiki/' + encodeURIComponent(enwikiversityTitle) $.getJSON(wikiversityApiUrl, function(data) { var pages = data.query.pages; var text = pages[Object.keys(pages)[0]].extract; if (text) { var html = "... (from the <a href=\"" + wikiversityUrl + "\">English Wikiversity</a>)"; } else { var html = "Read on the <a href=\"" + wikiversityUrl + "\">English Wikiversity</a>"; } $("#wikiversity-extract").text(text).append(html); }).fail(function(d, textStatus, error) { var html = "Read on the <a href=\"" + wikiversityUrl + "\">English Wikiversity</a>"; $("#wikiversity-extract").append(html); console.error("getJSON failed, status: " + textStatus + ", error: "+error) }); } }); var curationElement = document.getElementById("curation-link"); curationElement.href = "/" + currentAspect + "/Q27109180/curation"; curationElement.classList.remove("d-none"); // this query opens the Wikidata item as a different aspect var endpointUrl = 'https://query.wikidata.org/sparql'; if ("".length) { var query = ` SELECT DISTINCT ?aspect WHERE { { [] wdt:P17 wd:Q27109180 . BIND("country" AS ?aspect) } UNION { wd:Q27109180 wdt:P159? / wdt:P625 [] . BIND("location" AS ?aspect) } UNION { [] wdt:P1416 | wdt:P108 wd:Q27109180 . BIND("organization" AS ?aspect) } } `; } else { var query = ` SELECT DISTINCT ?aspect WHERE { { [] wdt:P50 wd:Q27109180 . BIND("author" AS ?aspect) } UNION { [] wdt:P166 wd:Q27109180 . BIND("award" AS ?aspect) } UNION { wd:Q27109180 wdt:P31 / wdt:P279? wd:Q22325163 . BIND("complex" AS ?aspect) } UNION { [] wdt:P17 wd:Q27109180 . BIND("country" AS ?aspect) } UNION { [] wdt:P972 wd:Q27109180 . BIND("catalogue" AS ?aspect) } UNION { wd:Q27109180 wdt:P235 [] . BIND("chemical" AS ?aspect) } UNION { wd:Q27109180 ^wdt:P31/wdt:P235 [] . BIND("chemical-class" AS ?aspect) } UNION { wd:Q27109180 wdt:P644 [] . BIND("gene" AS ?aspect) } UNION { wd:Q27109180 wdt:P159? / wdt:P625 [] . BIND("location" AS ?aspect) } UNION { [] wdt:P1416 | wdt:P108 wd:Q27109180 . BIND("organization" AS ?aspect) } UNION { wd:Q27109180 wdt:P31 wd:Q2996394 . BIND("pathway" AS ?aspect) } UNION { wd:Q27109180 wdt:P31 wd:Q4915012 . BIND("pathway" AS ?aspect) } UNION { [] wdt:P872 wd:Q27109180 . BIND("printer" AS ?aspect) } UNION { wd:Q27109180 wdt:P31 wd:Q8054 . BIND("protein" AS ?aspect) } UNION { [] wdt:P123 wd:Q27109180 . BIND("publisher" AS ?aspect) } UNION { [] wdt:P179 wd:Q27109180 . BIND("series" AS ?aspect) } UNION { wd:Q27109180 wdt:P31 / wdt:P279* wd:Q7397 . BIND("software" AS ?aspect) } UNION { [] wdt:P859 wd:Q27109180 . BIND("sponsor" AS ?aspect) } UNION { wd:Q27109180 wdt:P225 [] . BIND("taxon" AS ?aspect) } UNION { [] wdt:P921 wd:Q27109180 . BIND("topic" AS ?aspect) } UNION { [] wdt:P4510 wd:Q27109180 . BIND("use" AS ?aspect) } UNION { [] wdt:P1433 wd:Q27109180 . BIND("venue" AS ?aspect) } UNION { wd:Q27109180 wdt:P50 | wdt:P2093 [] . BIND("work" AS ?aspect) } } `; } settings = { headers: { Accept: 'application/sparql-results+json' }, data: { query: query } }; $.ajax(endpointUrl, settings).then(function (data) { createDropdownButton("aspect-chooser", 'aspectMenuButton', currentAspect, data, "Q27109180") if (data.results.bindings.length > 1) { addDropdownList("aspect-chooser", 'aspectMenuList', currentAspect, data) } }).then(function () { if ("".length) { var endpointUrl = 'https://query.wikidata.org/sparql'; var query = "SELECT DISTINCT ?aspect WHERE {" query += '{ [] wdt:P921 wd:Q27109180 . BIND("topic" AS ?aspect) } }'; settings = { headers: { Accept: 'application/sparql-results+json' }, data: { query: query } }; $.ajax(endpointUrl, settings).then(function (data) { var aspectLabel = " / <a href='/" + currentAspect + "/Q27109180'>Q27109180</a> / " document.getElementById("aspect-chooser-label").innerHTML = aspectLabel; var currentSubAspect = window.location.pathname.split("/")[3]; document.querySelectorAll("#aspectMenuList a").forEach((link) => link.href += "/" + currentSubAspect + "/") createDropdownButton("aspect-chooser", 'aspectMenuButton', currentSubAspect, data, "") if (data.results.bindings.length > 1) { addDropdownList("aspect-chooser", 'aspectMenuList', currentSubAspect, data) } }).fail(function (jqXHR, textStatus, errorThrown) { console.error("Subaspect chooser failed to generate. " + textStatus + " " + errorThrown) }); } }).fail(function (jqXHR, textStatus, errorThrown) { console.error("Aspect chooser failed to generate. " + textStatus + " " + errorThrown) }); function createDropdownButton(parent, id, currentAspect, data, q) { var aspectDropdown = document.createElement('button'); aspectDropdown.type = 'button'; aspectDropdown.id = id; aspectDropdown.classList = 'btn btn-outline-secondary'; // only show aspects which have a curation page with author-disambig or wikidata links var validCurationPages = ["author", "award", "organization", "topic", "venue"] if (data.results.bindings.length > 1) { aspectDropdown.classList.add('dropdown-toggle'); aspectDropdown.setAttribute('data-toggle', 'dropdown'); aspectDropdown.setAttribute('aria-haspopup', 'true'); aspectDropdown.setAttribute('aria-expanded', 'false'); } aspectDropdown.innerText = currentAspect; document.getElementById(parent).append(aspectDropdown); aspectDropdown.insertAdjacentHTML("afterend", '<span id="aspect-chooser-label" style="color: #6C757D; vertical-align: middle;margin: 2px;"> / '+ q + '</span>') } function addDropdownList(parent, id, currentAspect, data) { var aspectDropdownMenu = document.createElement('div'); aspectDropdownMenu.classList = 'dropdown-menu'; aspectDropdownMenu.setAttribute('aria-labelledby', 'aspectMenuButton'); aspectDropdownMenu.id = id data.results.bindings.forEach(function (entry) { var aspect = entry.aspect.value; if (aspect != currentAspect) { var dropdownItem = document.createElement('a'); dropdownItem.classList = 'dropdown-item'; dropdownItem.href = "/" + aspect + '/Q27109180'; dropdownItem.innerText = aspect; aspectDropdownMenu.append(dropdownItem); } }); document.getElementById(parent).append(aspectDropdownMenu); } /* Wembedder */ var wembedderUrl = "https://wembedder.toolforge.org/api/most-similar/Q27109180"; $.ajax({ url: wembedderUrl, success: function (data) { var html = `<hr>` + `<span data-toogle="tooltip" ` + `title="Related items from Wembedder knowledge graph embedding.">` + `<a alt="Wembedder about page" ` + `href="https://wembedder.toolforge.org/about">Related</a>:</span> `; $( '#wembedder' ).append(html); // Make list with results data.most_similar.forEach(function(entry, idx, array) { var listed_q = entry.item; var language = 'en'; if (idx !== 0) { $( '#wembedder' ).append( ' · '); } var html = '<a href="../' + listed_q + '"><span id="wembedder-result-' + listed_q + '">' + listed_q + '</span></a> ' $( '#wembedder' ).append( html ); // Convert Q identifier to labels $.getJSON("https://www.wikidata.org/w/api.php?callback=?", { action: "wbgetentities", ids: listed_q, language: language, uselang: language, format: "json", strictlanguage: true, }, function (data) { if (listed_q in data.entities) { label = entityToLabel(data.entities[listed_q], language=language); $('#wembedder-result-' + listed_q).empty(); $('#wembedder-result-' + listed_q).text(label); } }); }); $( '#wembedder' ).append( '<hr>' ); }, error: function (jqXHR, textStatus, errorThrown) { console.error("Wembedder failed. " + textStatus + " " + errorThrown) }, }); $(document).ready(function () { $('#searchterm').autoComplete({ minLength: 2, resolver: 'custom', events: { search: debounce((searchTerm, callback) => { var url = "https://www.wikidata.org/w/api.php?callback=?"; var settings = { dataType: 'jsonp', data: { search: searchTerm, action: "wbsearchentities", language: "en", uselang: "en", format: "json", strictlanguage: true } }; $.ajax(url, settings).then(function (data) { if (data.search.length) { let results = ['Show all results for "' + searchTerm + '"'] for (let item of data.search) { results.push(item.label + " - " + item.description + " (" + item.title + ")"); } callback(results) } else { callback([]) } }).fail(function (jqXHR, textStatus, errorThrown) { callback(["Search failed"]) console.error("Search failed. " + textStatus + " " + errorThrown) }); }, 200) } }); $("#searchterm").on("autocomplete.select", (event, item) => { handleSearch(item) }); $("#searchterm").on("keydown", function (event) { switch (event.key) { case "Enter": handleSearch(this.value); break; default: } }); $("#searchbutton").on("click", () => { handleSearch(document.getElementById("searchterm").value) }) function handleSearch(item) { // headerSearch and authorIndexAutocomplete reference where the two formats come from let headerSearch = item.match(/ \((Q\d+)\)$/); if (headerSearch) { window.location.href = "/" + headerSearch[1]; } else { let authorIndexAutocomplete = item.match(/\/\w+\/Q\d+$/); if (authorIndexAutocomplete) { window.location.href = item; } else { let search_text = item.match(/Show all results for "(.+)"$/) if (search_text) { window.location.href = "/search?q=" + search_text[1]; } else { window.location.href = "/search?q=" + item; } } } } function debounce(callback, wait) { let timeout; return (...args) => { clearTimeout(timeout); timeout = setTimeout(function () { callback.apply(this, args); }, wait); }; } // Add table of content var headings = document.querySelectorAll("h2,h3"); if (headings.length >= 3) { var tocParent = document.createElement("div"); tocParent.className = "table-of-contents" var toc = document.createElement("div"); tocTitle = document.createElement("b"); tocTitle.innerText = "Table of Contents" toc.appendChild(tocTitle) var tocList = document.createElement("ul"); var sublist = ""; for (let i = 0; i < headings.length; i++) { const element = headings[i]; if (!element.id) { element.id = element.innerText.replaceAll(" ", "-"); } if (element.tagName === "H3" && !sublist) { var sublist = document.createElement("ul"); } tocListItem = document.createElement("li"); tocEntry = document.createElement("a"); tocEntry.setAttribute("href", "#" + element.id); tocEntry.innerText = headings[i].innerText; tocListItem.appendChild(tocEntry); if (element.tagName === "H3") { sublist.appendChild(tocListItem); if (i == headings.length - 1) { tocList.appendChild(sublist); } } else { if (sublist) { tocList.appendChild(sublist); sublist = ""; } tocList.appendChild(tocListItem); } } toc.appendChild(tocList) var itemImage = document.createElement("img"); itemImage.id = "item-image"; itemImage.alt = ""; itemImage.href = ""; itemImage.onclick = function () { window.location.href = itemImage.href; }; tocParent.appendChild(toc); tocParent.appendChild(itemImage); document.querySelector("h2").insertAdjacentElement("beforebegin", tocParent) itemImage.height = toc.clientHeight } // Add anchor links to all headings var headers = document.querySelectorAll('h2[id], h3[id]') if (headers) { headers.forEach(element => { var title = element.innerText; element.removeChild(element.childNodes[0]) element.insertAdjacentHTML('afterbegin', `<a href="#${element.id}" class="hlink" ariaLabel="Anchor">${title}</a>`) }) } // structural-identifiers table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> # title: structural identifiers for this chemical structure SELECT ?Structural_identifier ?Structural_identifierLabel ?idLit (SAMPLE(?idUrls) as ?idUrl) WITH { SELECT ?Structural_identifier ?idLit ?formatterurl WHERE { VALUES ?Structural_identifier { wd:P233 wd:P234 wd:P2017 } target: ?IDdir ?idLit . ?Structural_identifier wikibase:directClaim ?IDdir ; wdt:P31 wd:Q19833835 . OPTIONAL { ?Structural_identifier wdt:P1630 ?formatterurl . } } LIMIT 500 } AS %RESULTS { INCLUDE %RESULTS BIND(IRI(REPLACE(?formatterurl, '\\\\$1', str(?idLit))) AS ?idUrls). SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en". } } GROUP BY ?Structural_identifier ?Structural_identifierLabel ?idLit ORDER BY ASC(?ID_TypeLabel) `, "#structural-identifiers-table", "chemical_structural-identifiers.sparql", options={}); // identifiers table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> # title: identifiers for this chemical SELECT ?Identifier ?IdentifierLabel ?Value (SAMPLE(?idUrls) as ?ValueUrl) ?IdentifierDescription WITH { SELECT ?Identifier ?Value ?formatterurl WHERE { target: ?IDdir ?Value . ?Identifier wikibase:directClaim ?IDdir ; wdt:P31 wd:Q19833835 . OPTIONAL { ?Identifier wdt:P1630 ?formatterurl . } FILTER (?Identifier != wd:P233) FILTER (?Identifier != wd:P234) FILTER (?Identifier != wd:P2017) } LIMIT 500 } AS %RESULTS { { SELECT * WHERE { INCLUDE %RESULTS FILTER (?Identifier = wd:P234) BIND(IRI(REPLACE(?formatterurl, '\\\\$1', ENCODE_FOR_URI(str(?Value)))) AS ?idUrls). } } UNION { SELECT * WHERE { INCLUDE %RESULTS FILTER (?Identifier != wd:P234) BIND(IRI(REPLACE(?formatterurl, '\\\\$1', str(?Value))) AS ?idUrls). } } SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en". } } GROUP BY ?Identifier ?IdentifierLabel ?IdentifierDescription ?Value ORDER BY ASC(?IdentifierLabel) `, "#identifiers-table", "chemical_identifiers.sparql", options={}); // physchem-properties table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> # title: physicochemical properties of this chemical SELECT DISTINCT ?propEntity ?propEntityLabel ?value ?units ?unitsLabel ?qualifiers ?source ?sourceLabel ?doi WITH { SELECT DISTINCT ?propEntity ?value ?units ?source ?doi (GROUP_CONCAT(?qualifierStr; separator=", ") AS ?qualifiers) WHERE { target: ?propp ?statement . ?statement a wikibase:BestRank ; ?proppsv [ wikibase:quantityAmount ?value ; wikibase:quantityUnit ?units ] . OPTIONAL { ?statement prov:wasDerivedFrom/pr:P248 ?source . OPTIONAL { ?source wdt:P356 ?doi . } } ?property wikibase:claim ?propp ; wikibase:statementValue ?proppsv ; wdt:P1629 ?propEntity ; wdt:P31 wd:Q21077852 . OPTIONAL { { ?qualifierProp wikibase:qualifier ?qualifier ; rdfs:label ?qProplabel; FILTER (lang(?qProplabel) = "en") . ?qualifier a owl:DatatypeProperty . ?statement ?qualifier ?qualifierVal . BIND (CONCAT(str(?qProplabel), ": ", str(?qualifierVal)) AS ?qualifierStr) } UNION { ?qualifierProp wikibase:qualifier ?qualifier ; rdfs:label ?qProplabel; FILTER (lang(?qProplabel) = "en") . ?qualifier a owl:ObjectProperty . ?statement ?qualifier ?qualifierVal . ?qualifierVal rdfs:label ?qVallabel; FILTER (lang(?qVallabel) = "en") . BIND (CONCAT(str(?qProplabel), ": ", str(?qVallabel)) AS ?qualifierStr) } } } GROUP BY ?propEntity ?value ?units ?source ?doi } AS %result WHERE { INCLUDE %result SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en". } } ORDER BY ASC(?propEntityLabel) `, "#physchem-properties-table", "chemical_physchem-properties.sparql", options={}); // related table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> # title: related chemical structures SELECT ?mol ?molLabel ?InChIKey ?CAS ?ChemSpider ?PubChem_CID WITH { SELECT ?queryKey ?srsearch ?filter WHERE { target: wdt:P235 ?queryKey . BIND (CONCAT(substr($queryKey,1,14), " haswbstatement:P235") AS ?srsearch) BIND (CONCAT("^", substr($queryKey,1,14)) AS ?filter) } } AS %MOLS WITH { SELECT ?mol ?InChIKey WHERE { INCLUDE %MOLS SERVICE wikibase:mwapi { bd:serviceParam wikibase:endpoint "www.wikidata.org"; wikibase:api "Search"; mwapi:srsearch ?srsearch; mwapi:srlimit "max". ?mol wikibase:apiOutputItem mwapi:title. } ?mol wdt:P235 ?InChIKey . FILTER (regex(str(?InChIKey), ?filter)) FILTER (?InChIKey != ?queryKey) } } AS %MOLS2 { INCLUDE %MOLS2 OPTIONAL { ?mol wdt:P231 ?CAS } OPTIONAL { ?mol wdt:P661 ?ChemSpider } OPTIONAL { ?mol wdt:P662 ?PubChem_CID } SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en" . } } `, "#related-table", "chemical_related.sparql", options={}); // recent-literature table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia # title: recent literature about this chemical PREFIX target: <http://www.wikidata.org/entity/Q27109180> SELECT ?date ?work ?workLabel ?type ?via ?topics WITH { SELECT DISTINCT ?work ?via ?topic WHERE { { VALUES ?topic { target:} ?work wdt:P921 ?topic . BIND ("main topic" AS ?via) } UNION { ?work wdt:P921 ?topic . ?topic ((^wdt:P361)+) target: . BIND ("part" AS ?via) } UNION { ?work wdt:P921 ?topic . ?topic (wdt:P31* / wdt:P279* ) target: . BIND ("subclass" AS ?via). FILTER (?topic != target:) } UNION { ?work wdt:P921 ?topic . ?topic (wdt:P1269+ ) target: . BIND ("facet" AS ?via)} UNION { target: ?propp ?statement . ?statement a wikibase:BestRank ; prov:wasDerivedFrom/pr:P248 ?work . BIND ("statement" AS ?via) } } } AS %works WITH { SELECT (MAX(?dates) as ?datetime) ?work (GROUP_CONCAT(DISTINCT ?type_label; separator=", ") AS ?type) ?via (GROUP_CONCAT(DISTINCT ?topic_label; separator=" // ") AS ?topics) WHERE { INCLUDE %works ?work wdt:P921 ?topic . OPTIONAL { ?work wdt:P31 ?type_ . ?type_ rdfs:label ?type_label . FILTER (LANG(?type_label) = 'en') } OPTIONAL { ?work wdt:P577 ?dates . } ?topic rdfs:label ?topic_label . FILTER (lang(?topic_label) = 'en') } GROUP BY ?work ?via } AS %result WHERE { INCLUDE %result BIND(xsd:date(?datetime) AS ?date) SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en" . } } ORDER BY DESC(?date) LIMIT 500 `, "#recent-literature-table", "chemical_recent-literature.sparql", options={}); // publications-per-year iframe sparqlToIframe2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", "https://query.wikidata.org/embed.html#", `# tool: scholia #defaultView:BarChart PREFIX target: <http://www.wikidata.org/entity/Q27109180> # title: publications per year for this chemical # Inspired from LEGOLAS - http://abel.lis.illinois.edu/legolas/ # Shubhanshu Mishra, Vetle Torvik select ?year (count(?work) as ?number_of_publications) where { { select (str(?year_) as ?year) (0 as ?pages) where { # default values = 0 ?year_item wdt:P31 wd:Q577 . ?year_item wdt:P585 ?date . bind(year(?date) as ?year_) { select (min(?year_) as ?earliest_year) where { { ?work wdt:P921/wdt:P31*/wdt:P279* target: . } union { ?work wdt:P921/(^wdt:P361)+ target: . } union { ?work wdt:P921/wdt:P1269+ target: . } union { target: ?propp ?statement . ?statement a wikibase:BestRank ; prov:wasDerivedFrom/pr:P248 ?work . } ?work wdt:P577 ?publication_date . bind(year(?publication_date) as ?year_) } } bind(year(now()) as ?next_year) filter (?year_ >= ?earliest_year && ?year_ <= ?next_year) } } union { select ?work (min(?years) as ?year) where { { ?work wdt:P921/wdt:P31*/wdt:P279* target: . } union { ?work wdt:P921/wdt:P527+ target: . } union { ?work wdt:P921/wdt:P1269+ target: . } union { target: ?propp ?statement . ?statement a wikibase:BestRank ; prov:wasDerivedFrom/pr:P248 ?work . } ?work wdt:P577 ?dates . bind(str(year(?dates)) as ?years) . } group by ?work } } group by ?year order by ?year`, "#publications-per-year-iframe", "chemical_publications-per-year.sparql"); // biological-processes table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> SELECT DISTINCT ?pathway ?pathwayLabel (CONCAT("/pathway/", SUBSTR(STR(?pathway), 32)) AS ?pathwayUrl) ?pathwayDescription WHERE { ?pathway wdt:P527 target: ; wdt:P31 wd:Q2996394 . target: wdt:P361 ?pathway . SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en". } } ORDER BY ASC(?pathwayLabel) LIMIT 250 `, "#biological-processes-table", "chemical_biological-processes.sparql", options={}); // found-in-matrix-np table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> SELECT DISTINCT ?matrix ?matrixLabel ?taxon ?taxonLabel (CONCAT("/taxon/", SUBSTR(STR(?taxon), 32)) AS ?taxonUrl) WHERE { VALUES ?chemical { target: } ?chemical wdt:P361 ?matrix. ?matrix (wdt:P279*/wdt:P1582) ?taxon . ?matrix wdt:P527 ?chemical. SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en". } } ORDER BY ASC(?taxonLabel) LIMIT 250 `, "#found-in-matrix-np-table", "chemical_found-in-matrix-np.sparql", options={}); // found-in-taxon table sparqlToDataTable2("https://query.wikidata.org/sparql", "https://query.wikidata.org/#", `# tool: scholia PREFIX target: <http://www.wikidata.org/entity/Q27109180> SELECT DISTINCT ?taxon ?taxonLabel (CONCAT("/taxon/", SUBSTR(STR(?taxon), 32)) AS ?taxonUrl) ?source ?sourceLabel (CONCAT("/work/", SUBSTR(STR(?source), 32)) AS ?sourceUrl) ?doi WHERE { VALUES ?chemical { target: } ?chemical p:P703 ?taxonStatement . ?taxonStatement ps:P703 ?taxon . OPTIONAL { ?taxonStatement prov:wasDerivedFrom/pr:P248 ?source . OPTIONAL { ?source wdt:P356 ?doi . } } SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],mul,en". } } ORDER BY ASC(?taxonLabel) LIMIT 250 `, "#found-in-taxon-table", "chemical_found-in-taxon.sparql", options={}); }); </script> </body> </html>