From: Pierluigi Q. <pie...@un...> - 2017-12-17 21:07:27
|
Dear Otis, many thanks! If there is some specific site and manual on the web that I could read to learn the essentials of the web-negotiation programming, I will read it enthusiastically (in the spare time.... I am always involved in teaching or in the lab to synthesize molecules... ;) ). By looking on the web, concepts are spread "here and there" and it is difficult tfor me to learn exactly what one should do... The OPSIN REST services at http://opsin.ch.cam.ac.uk/ can: 1) give selected infos such as smiles, Inchi, image, Xml, JSON bi adding a specific tag at the end of the link: http://opsin.ch.cam.ac.uk/opsin/cyclopropane.smi (the problem is how to receive the data by javascript and not simply by a web browser, and to use it in the checking procedure) 2) establish a content negotiation, by specifying the kind of data is requested: e.g. chemical/x-daylight-smiles for SMILES (the problem, here, is that no examples were given on how to make the call, I could not find any info on this also looking at all pages on the OPSIN site. Probably this is clear for skilled people but it is quite complex for people who have just a little of skill in programming) By addressing a call directly to OPSIN at Cambridge would help, using the most recent version of OPSIN (2.3.0 instead of the 1.2.0 used at the Resolver). The call to check name by using Resolver would complete the possibilities we have until now to try to solve the problem. Even with all the concerns on the ability of OPSIN and Resolver, this should be the way of obtaining all we can with free open source resources. Many thanks again! Bye, Pierluigi Il 17/12/17 19:42, Otis Rothenberger ha scritto: > Pierluigi, > > That’s neat. I did not know that you could force an OPSIN only from > Resolver. Per the Blog, you’ll miss common names, but I don’t think > that’s an issue with what you are doing in this app. Note that what > you want from Resolver here is: > > https://cactus.nci.nih.gov/chemical/structure/(2R)-butan-2-ylsilane/smiles?resolver=name_by_opsin > <https://cactus.nci.nih.gov/chemical/structure/%282R%29-butan-2-ylsilane/smiles?resolver=name_by_opsin> > > Once you get that SMILES you’re almost finished with your objective. > > I’ll put together a bare bones page that does what I think you want. > I’ll try to do this so that the code is as straight-forward as > possible. Hopefully, you can use this base bones page to write your > own page. > > I’ll try to get back to you on this in a day or two. > > Otis > > -- > Otis Rothenberger > ot...@ch... <mailto:ot...@ch...> > http://chemagic.org > >> On Dec 17, 2017, at 1:10 PM, Pierluigi Quagliotto >> <pie...@un... >> <mailto:pie...@un...>> wrote: >> >> Dear Otis, >> >> many thanks for your help. >> >> My objective was exactly as you described: to let users to draw a >> molecule, to name it and to check if the name is correct. >> >> Since I saw the examples already made in JSMol (jsmetest.htm and >> jsmetest2.htm) I thought to get the results using the resolver since >> the search function for NCI database is already implemented in JSMol. >> >> Your analysis is important for me. Since some explanations I've found >> in the Resolver site, told about the chance to choose the method to >> be used in order to obtain the desired result >> (https://cactus.nci.nih.gov/blog/?p=841), i.e. by appending to the >> query the "?resolver=name-by_opsin" tag (example: >> http://cactus.nci.nih.gov/chemical/structure/hex-1-yne/image?resolver=name_by_opsin) >> I thought that OPSIN was always used first, unless the user will >> insert some particular name which could not be recognized by OPSIN, >> which, for students, should be highly improbable. The highest >> probability is to write the wrong name or write it in a bad way (e.g. >> misspelling, lacking - or , etc.). >> >> I thought to make a more compact page, by using the example >> jsmetest2.htm, since the two applets are superimposed (and hiding >> each other) and this could be useful for students, in order to have >> both a 2d and 3D visualization, to help them to comprehend possible >> mistakes (in writing and/or naming) from both the 2D and 3D side. >> >> Your proposal for making a very simple page is interesting and, >> probable, the best way to follow. Since both Resolver and OPSIN sites >> could be asked >> >> Unfortunately, I have no experience in writing such kind of calls (to >> Resolver or OPSIN). I saw some explanation on both sites, about way >> to ask the site by web browsers, but it is not clear to me how to >> send the proper request by using javascript and how to receive and >> interpret the results. Do you have any suggestion, like a simple >> function used in some JSMol project, to help me to comprehend how to >> write the calls and manage the incoming result data? >> >> Many thanks again for your help! >> >> >> Bye, >> >> >> Pierluigi >> >> >> >> >> >> >> >> Il 17/12/17 02:22, Otis Rothenberger ha scritto: >>> Pierluigi, >>> >>> Bob, let us know if I’m making any Jmol capability errors below. I >>> don’t think I am because I use these approaches in other contexts. >>> >>> Pierluige, I’m not sure that I completely understand your objective >>> yet, but I think your approach may be more complex than required. >>> Some IUPAC look-up points that may be relevant to your objective and >>> approach. I’m going to use an odd IUPAC to make the point: >>> (2R)-butan-2-ylsilane. >>> >>> >>> >>> 1. OPSIN will return the stereo SMILES for this name. >>> 2. Resolver will return the stereo SMILES also. I’m assuming this >>> is the case because Resolver uses OPSIN to screen IUPAC names. >>> 3. Resolver will NOT return an SDF for this name. This is important >>> with your approach. I think your approach relies on Resolver to >>> load a 3d model for a given IUPAC name. It does not always do >>> this. I THINK this is because Resolver must use look-up on all >>> names, even IUPAC. Again, I THINK, Resolver gets SMILES from >>> OPSIN for OPSIN identified IUPAC names. >>> >>> >>> If your objective is for users to draw a structure, name it, and >>> then check the name that they type, then you only need 1 JSME >>> instance and 1 JSmol Instance. If you want, The JSmol instance can >>> even be hidden. These steps should work: >>> >>> 1. Draw the structure in JSME. Its JSME SMILES is directly available. >>> 2. Type the IUPAC name in a text box. >>> 3. Send the text box name to Resolver to get the SMILES for the >>> IUPAC name. It could also be sent to OPSIN directly. >>> 4. Use the hidden (or visible) JSmol to compare the (1 or 2) SMILES >>> and the (3) SMILES. >>> >>> >>> You do not have to load the compound into JSmol. >>> >>> If you need further info on any of the above steps, don’t hesitate >>> to ask. >>> >>> — >>> Otis Rothenberger >>> http://CheMagic.ORG <http://chemagic.org/> --- Questa e-mail è stata controllata per individuare virus con Avast antivirus. https://www.avast.com/antivirus |