![]() ![]() ![]() The developer of the page may not have any a priori information about what structure is present. Perhaps it is a structure loaded into JSmol on a web page, perhaps from a student drawing a 2D structure with an editor. To keep this in perspective, imagine that we have before us a single molecular structure. Jmol SMARTS similarly adds these same modifications to OpenSMARTS, as well as several additional “primitives” and elements of syntax specifically tuned to the investigation of 3D structural models. Jmol SMILES is a superset of OpenSMILES, allowing a freer format, with optional comments and whitespace, optional “processing directives” that specify the meaning of certain aspects of SMILES processing such as aromaticity, a more complete treatment of stereochemistry, and several other minor additions. Jmol SMILES most closely resembles OpenSMILES, while Jmol SMARTS is based on OpenSMARTS. As such, Jmol SMILES and Jmol SMARTS could be implemented if desired in any 3D molecular visualization platform, such as PyMOL, VMD, or Chimera. The dialects of SMILES and SMARTS implemented here are referred to as “Jmol SMILES” and “Jmol SMARTS” respectively, but there is nothing specific to Jmol in those descriptions. The reference implementation for this article is Jmol 14.6.1_2016.07.11. It is available in three formats: as a stand-alone desk-top or batch-driven Java program, a Java applet, and an HTML5 JavaScript-only equivalent (JSmol). ![]() The Jmol application is written in Java and implemented (in parallel) in both Java and JavaScript. Jmol has been used in a broad range of contexts, including small organic and inorganic molecules, biomolecules, and crystallographic structures crossing the boundaries of biology, chemistry, physics, and materials science. The context for this work is Jmol, a widely used open-source community-driven program for the visualization and analysis of molecular structure. This article focuses on the development of SMILES and SMARTS dialects that can be used specifically in the context of a 3D molecular visualization environment to answer not only the typical questions such as whether two structures and/or SMILES strings match or whether a particular 3D structure and/or SMILES string contain some particular 3D substructure (practical examples 1 and 2, below), but also more challenging questions (practical examples 3–8, below) such as: Some of these languages have very powerful methods of matching molecular structures or substructures with query criteria. And certainly programs such as Jmol, PyMOL, VMD, and Chimera all have some sort of native selection language. Alternatives to SMARTS-based molecular querying include Sybyl Line Notation (SLN), which itself is an adaption of SMILES, the relatively underdeveloped Molecular Query Language (MQL), and the XML-based Chemical Subgraphs and Reactions Markup Language (CSRML). In addition, SMILES has been extended in the form of CHUCKLES and CHORTLES (an extension of CHUCKLES), both for biopolymers, and CurlySMILES (an annotated version of SMILES). Developed in the late 1980s, these languages have found wide application, particularly in relation to small primarily organic molecules. The Simplified Molecular-Input Line-Entry System (SMILES) and SMILES Arbitrary Target Specification (SMARTS) have been of tremendous value in the area of cheminformatics. While developed specifically for Jmol, these dialects of SMILES and SMARTS are independent of the Jmol application itself. The result is an expansion of the capabilities of SMILES and SMARTS primarily for use in 3D molecular analysis, allowing a broader range of matching involving any combination of 3D molecular structures, SMILES strings, and SMARTS patterns. Jmol SMARTS similarly adds these same modifications to OpenSMARTS, but also adds a number of additional “primitives” and elements of syntax tuned to matching 3D molecular structures and selecting their atoms. Jmol SMILES is a superset of OpenSMILES, allowing a freer format, including whitespace and comments, the addition of “processing directives” that modify the meaning of certain aspects of SMILES processing such as aromaticity and stereochemistry, a more extensive treatment of stereochemistry, and several minor additions. The dialects most closely resemble OpenSMILES and OpenSMARTS. The specifications of “Jmol SMILES” and “Jmol SMARTS” are described. ![]()
0 Comments
Leave a Reply. |