Skip to main content

SMILES und SMARTS Nomenklatur

SMILES

SMILES eine einfache aber gut verständliche chemische Nomenklatur.

SMILES ist ein Akronym und bedeutet: Simplified Molecular Input Line Entry Specification.

SMILES ist eine weitverbreitete und universell einsetzbare chemische Nomenklatur und ein Datenaustauschformat. Dennoch unterscheidet sich SMILES in verschiedenen grundlegenden Aspekten von den meisten chemischen Nomenklaturen und anderen chemischen Formaten.

SMARTS

Die Unterstruktur- bzw. Teilstruktursuche, also der Prozess ein bestimmtes Muster (subgraph) in einem Molekül (graph) zu finden, ist eine der wichtigsten Aufgaben der Computer in der Chemie. Diese Funktion wird in nahezu jeder Anwendung benötigt in der eine digitale Repräsentation eines Moleküls verwebdet wird. Dazu gehören speziell die Darstellung (Hervorhebung einer bestimmten funktionellen Gruppe), Arzneimittelforschung (Durchsuchen der Datenbank nach ähnlichen Strukturen und Wirkungen), analytische Chemie (Vergleich unbekannter Substanzen mit zuvor charakterisierten Substanzen), und unzählige weitere Problemstellungen.

SMARTS ist eine Sprache die es erlaubt durch Regeln die eine direkte Erweiterung von SMILES sind, Unterstrukturen zu definieren. Soll zum Beispiel eine Datenbank nach Strukturen mit einem Phenolsubstituenteten durchsucht werden, würde die SMART-Zeichenkette "[OH]c1ccccc1" verwendet werden, die SMILES kundigen Benutzern bekannt vorkommen sollte. Tatsächlich sind fast alle SMILES Spezifikationen gültige SMARTS Ziele ("SMARTS Ausnahmen", siehe unten). Mit der Hilfe von SMARTS können flexible und effiziente Spezifikationen für die Unterstruktursuche aufgestellt werden, die für Chemiker verständlich sind.

In der SMILES Sprache gibt es zwei fundamentale Symboltypen: Atome und Bindungen. Mit diesen SMILES Symbolen kann eine Moleküldarstellung (dessen "Knoten" und "Kanten") spezifiziert werden und den einzelnen Komponenten der Darstellung können "Beschriftungen" (z.B. welches Atom ein Knoten darstellt und welche Art von Bindung die Kante bildet) angehängt werden.

Dies gielt auch für SMARTS: Man verwendet Atom- und Bindungssymbole um eine Darstellung zu definieren. Die Beschriftungen der Knoten und Kanten (der Atome und Bindungen) in SMARTS können allerdings zusätzlich logische Operatoren und spezielle Atom- und Bindungssymbole enthalten. Dies ermöglicht SMARTS Atomen und Bindungen deutlich allgemeiner zu sein. Zum Beispiel: Das SMARTS Atomsymbol [C,N] kann ein aliphatisches C oder aliphatischen N sein; das  SMARTS Bindungssymbol "~" (tilde) stellt eine beliebige Bindung dar.

Atom-Stammsymbole

SMARTS gibt eine Zahl an Stammsymbolen vor, die die Atomeigenschaften zusätzlich zu den in SMILES verwendeten Symbolen (Atomsymbol, Ladung, und Isotopspezifikationen) beschreiben. Die folgende Tabelle listet die in SMARTS verwendeten Atom-Stammsymbole auf (alle SMILES Atomsymbole sind ebenso erlaubt). In dieser Tabelle repräsentiert <n&gt eine Ziffer und <c&gt eine chirale Klasse.

 SMARTS Atom-Stammsymbole

Platzhalter

1Das Stammsymbol "H" hat zwei Bedeutungen. Einmal bezeichnet es eine Eigenschaft, oder aber auch das Element selbst. **[H]** bedeutet Wasserstoffatom. **[*H2]** bedeutet ein beliebiges Atom mit genau zwei gebundenen Wasserstoffatomen.

Beispiele:

aliphatisches Kohlenstoffatom

Bindungs-Stammsymbole

Verschieden Bindungssymbole beschreiben die Verbindungen zwischen Atome. Ein fehlendes Bindungssymbol wird als "Einfach- oder aromatische Bindung" interpretiert.

 SMARTS Bindungs-Stammsymbole

Einfachbindung (aliphatisch)

Beispiele:

beliebiger aliphatischer Kohlenstoff

Logische Operatoren

Atom- und Bindungsymbole können mit logischen Operatoren zu Ausdrücken verknüpft werden. In der folgenden Tabelle stellt "e" einen Atom- oder Bindungs- SMARTS Ausdruck dar (kann ein Stammsymbol sein). Die logischen Operatoren werden nach absteigender Priorität aufgelistet (Operatoren hoher Priorität werden zuerst ausgeführt).

 SMARTS Logische Operatoren

!e1

Alle Atomausdrücke die nicht einfachen Stammsymbolen entsprechen müssen in Klammern gesetzt werden. Die Standardoperation ist `&' ("und" - hohe Priorität), folglich müssen zwei angrenzende Stammsymbole ohne dazwischen liegenden logischen Operator beide wahr werden, damit der Ausdruck (oder Unterausdruck) als wahr ausgewertet wird.

Die Möglichkeit Ausdrücke zu bilden, gibt dem SMARTS Benutzer eine leistungsfähige Methode zur genauen Beschreibung in die Hand. Die beiden Formen des UND Operators dienen in SMARTS als Gruppenoperatoren.

Beispiele:

aliphatischer Kohlenstoff mit zwei Wasserstoffatomen ( Methylenkohlenstoff)

Rekursive SMARTS

Jeder SMARTS Ausdruck kann verwendet werden um eine Atomumgebung zu definieren. Das SMARTS wird beginnend mit dem gewünschten Atom in folgender Form aufgestellt:

$(SMARTS)

Solche Definitionen können als Atomeigenschaften angesehen werden und können in der selben Form wie die Stammsymbole verwendet und auch verschachtelt werden.

mit einem Methyl- (oder Methylen-) Kohlenstoff verbundenes Atom

Die zusätzliche Leistungsfähigkeit dieser Ausdrücke wird im folgenden Beispiel demonstriert. Es wird ein Ausdruck für Methylkohlenstoffe definert, die ortho zu Sauserstoff und meta zu Stickstoff an einen aromatischen Ring gebunden sind.

C ortho zu O

Gruppierung von SMARTS auf der Komponentenebene

SMARTS kann "Null-Level" Klammern enthalten, die zur Gruppierung von punktgetrennten Fragmenten verwendet werden können. Diese Gruppierung erlaubt die Aufstellung leistungsfähigerer Komponenten-Abfragen. Generell kann ein einfacher Satz von Klammern jeden beliebigen gültigen SMARTS Ausdruck umgeben. Zwei oder mehr dieser Ausdrücke zu einem komlexeren SMARTS kombiniert werden:

(SMARTS)**
(SMARTS).(SMARTS)
(SMARTS).SMARTS**

Sie Semantik der "Null-Level" Klammern impliziert, dass alle Atom- und Bindungsausdrücke innerhalb dieser Klammern auf eine einzelne Komponenten des Ziels zutreffen müssen.

SMILES

Die Gruppenoperatoren auf Komponentenebene wurden speziell für die Reaktionsbeschreibung eingeführt. Ohne diese Konstrukt wäre es unmöglich zwischen inter- und intramolekularen Reaktionen zu unterscheiden. Zum Beispiel:

Übereinstimmung

SMARTS vs. SMILES

Alle SMILES Ausdrücke sind ebenfalls gültige SMARTS Ausdrücke, aber die Semantik ändert sich, da SMILES Moleküle beschreibt und SMARTS dagegen Muster beschreibt. Das durch einen SMILES Ausdruck beschriebene Molekül wird normalerweise, aber nicht immer, durch den gleichen SMARTS Ausdruck beschrieben.

SMILES wird als Molekül interpretiert und das resultierende Molekül (und nicht der SMILES Ausdruck) wird zur Suche verwendet. Gleichermassen wird SMARTS als Muster interpretiert und dieses Muster und nicht der SMARTS Ausdruck wird zur Suche verwendet. Zum Beispiel: Das SMILES "C1=CC=CC=C1" (cyclohexatrien) wird als Benzolmolekül interpretiert. Das entspricht dem SMARTS c1ccccc1, das als Muster "6 aromatische Kohlenstoffe in einem Ring" interpretiert wird. Das  SMARTS "C1=CC=CC=C1" ergibt ein Muster ("sechs aliphatische Kohlenstoffe in einem Ring mit alternierenden Einfach- und Doppelbindungen") welches NICHT mit Benzol übereinstimmt. Es stimmt allerdings mit dem nicht aromatischen Phenylat-Kation mit dem SMILES C1=CC=CC=[CH+]1 überein.

Werden Atome in SMILES ohne eckige Klammern angegeben, dann werden die Standardwerte verwendet. In SMARTS sind unbestimmte Eigenschaften nicht als Teil des Musters definiert. Zum Beispiel: Das SMILES O bezeichnet einen aliphatischen Sauerstoff mit der Ladung null und zwei Wasserstoffatomen, also Wasser. In SMARTS bezeichnet der gleiche Ausdruck einen aliphatischen Sauerstoff, aber unabhängig von der Ladung, der Wasserstoffanzahl etc. Folglich stimmt dieser Ausdruck mit dem Sauerstoff in Wasser überein, aber auch mit dem in Ethanol, Aceton, molekularem Sauerstoff, Hydroxy- und Hydronium-Ionen etc. Wird dagegen [OH2] spezifiziert, wird das Muster auf Wasser beschränkt (dies ist ausserdem das voll spezifizierte SMILES für Wasser).

In vielen SMILES-Interpretern gibt es einige Anachronismen die zu Verwirrung führen können. Manche SMILES-Interpreter erlauben implizite Wasserstoffatome als explizite Atome in der Eingabe als Abkürzung. Zum Beipiel: Das SMILES für 1H-Pyrrol ist "[nH]1cccc1". Dies entspricht dem SMARTS und auch "n1cccc1". Der aktuelle Daylight SMILES-Interpreter akzeptiert auch "Hn1cccc1" aus Gründen der Rückwärtskompatibilität. Dies erzeugt dasselbe (Wasserstoff unterdrückte) Molekül wie "[nH]1cccc1" und entspricht auch dem selben SMARTS. Allerdings stimmt das SMARTS "Hn1cccc1" nicht mit diesem Molekül überein.

Die meisten SMARTS Ausdrücke sine keine gültigen SMILES Ausdrücke. Beispielweise ist der Ausdruck "cOc" ein gültiger SMARTS und stimmt mit einem aliphatischen Sauerstoff gebunden an zwei aromatische Kohlenstoffe als Teil eines gröߟeren Moleküls überein (z.B. Diphenylether). Allerdings beschreibt "cOc" kein Molekül an sich und ist damit kein gültiges SMILES.

Effizienz Erwägungen

Der Daylight 4.x SMARTS Toolkit stellt die Funktion dt_smarts_opt() zur Verfügung, die einen SMARTS Ausdruck automatisch durch umstellen, erweitern, und / oder verdichten der Atom- und Bindungsausdrücke optimiert. Programme die diese Funktion verwenden (z.B. das Merlin Programm) können im Bezug auf die Suchzeit als optimal angesehen werden.

Wird diese Optimierung nicht verwendet, dann gibt es zusätzliche Regeln die eine effiziente und schnelle Suche über SMARTS ermöglichen. Es ist wichtig zu beachten, dass SMARTS Zeichenketten strikt von links nach rechts verarbeitet werden. Aus diesem Grund können beachtliche Verbesserungen der Suchgewschwindigkiet erzielt werden, wenn folgende Richtlinien beachtet werden:

  • Ungewöhnliche Atom- oder Bindungskombinationen sollten am Anfang der SMARTS Zeichenkette stehen.

  • In einem "Und-Ausdruck" sollten die seltenen Atom- oder Bindungsspezifikationen am Anfang stehen.

  • In einem "Oder-Ausdruck" sollten die seltenen Atom- oder Bindungsspezifikationen am Ende stehen.

Beispiele

beliebiges Paar verbundener aromatischer Kohlenstoffe

References

"SMILES 1. Introduction and Encoding Rules", Weininger, D., J. Chem. Inf. Comput. Sci., 1988, 28, 31.

Daylight Chemical Information Systems, Inc.