ChEBI logo

ChEBI


    The database and ontology of Chemical Entities of Biological Interest

spacer

ChEBI Developer Manual

Search for only All in ChEBI



1 Lizensierung

Alle ChEBI-Daten, handle es sich nun um jene in der Datenbank oder auf dem FTP-Server, sind weder proprietät, noch wurden sie von einer proprietären Quelle bezogen. Der freie Zugriff auf die Daten ist somit gewährleistet. Zusätzlich lässt sich jedes Datenelement auf seine ursprüngliche Quelle / Version zurückverfolgen.

2 Downloads

2 Datenmodell

Alle zum Herunterladen freigegebenen Daten liegen dem internen Datenmodell zugrunde, welches in Diagramm a dargestellt ist. Die meisten Dateien entsprechen dabei direkt der Datenbankarchitektur und dem Datenmodell von ChEBI. Die hierbei verwendete Notationen ist jene der UML-Sprache (Unified Modelling Language), mit deren Hilfe sich die objekt-orientierte Natur der Daten plakativ beschreiben lässt. Weiter unten wird detailliert auf jede Tabelle eingegangen und deren Zweck erläutert.
 
Diagramm a: UML Notation des Datenmodells der zum Herunterladen freigegebenen Daten.

2.1.1 Compound

- Die Compound-Tabelle ist der Kern des ChEBI-Datenbankschemas. Ihre Einträge enthalten alle Referenzen zu den restlichen Daten-Objekten. Zusätzlich werden hier auch die von ChEBI empfohlenen Namen und Definitionen gespeichert.

Die Compound-Tabelle ist mit sich selbst assoziiert, was bedeutet, dass ein Compound-Objekt eine Referenz auf ein anderes besitzen kann. Dabei wird das referenzierende Objekt als Child (Kind-Objekt) und das referenzierte Objekt als Parent (Eltern-Objekt) bezeichnet. Ein Eltern-Objekt darf grundsätzlich von mehr als einem Kind-Objekt referenziert werden, jedoch ist es ihm nicht erlaubt gleichzeitig selbst Kind eines anderen Eltern-Objekts zu sein. Das jeweilige Eltern-Objekt bildet zusammen mit den das Eltern-Objekt referenzierenden Kind-Objekten einen ChEBI-Eintrag. Diese Kleinst-Hierarchie ist notwendig, da hierdurch den Kuratoren das Zusammenschliessen redundanter Einträge ermöglicht wird und dies ohne die fortdauernde Gültigkeit der einzelnenChEBI-Id's in irgend einer Weise zu gefährden. Als Beispiel möge der in Diagramm b dargestellte Auszug dienen. Aus diesem wird ersichtlich, dass der ChEBI-Eintrag über Wasser (CHEBI:15377) insgesamt vier Kind-Objekte, namentlich CHEBI:5585, CHEBI:27313, CHEBI:13352 und CHEBI:10743 besitzt (d.h. die parent_id wurde auf 15377 gesetzt). Daten, welche entweder mit dem Eltern-Objekt oder den Kind-Objekten assoziiert sind, werden automatisch als Teil des ChEBI-Eintrages angesehen. Z.B. wäre ein mit CHEBI:27313 erstelltes Synonym ebenfalls Teil des ganzen ChEBI-Eintrags. Zu beachten ist, dass bei Kind-Objekten der empfohlene Name und die optionale Definition ignoriert werden. Schliesslich sollten diese für einen ChEBI-Eintrag eindeutig sein. Ein Kind-Objekt enthält deswegen an diesen Stellen den Null-Wert.

ID STATUS CHEBI_ACCESSION SOURCE PARENT_ID NAME DEFINITION
15377 C CHEBI:15377 ChEBI null water null
5585 C CHEBI:5585 KEGG COMPOUND 15377 null null
27313 C CHEBI:27313 ChEBI 15377 null null
13352 C CHEBI:13352 IntEnz 15377 null null
10743 C CHEBI:10743 IntEnz 15377 null null
Diagramm b: Auszug aus der compounds.tsv Datei, die vom FTP-Server heruntergeladen werden kann.

Die compounds.tsv Datei enthält unter anderem eine Spalte mit dem Status des jeweiligen ChEBI-Eintrags. Falls dieser von einem Kurator überprüft und kontrolliert wurde, steht an dieser Stelle ein "C" für "checked" (kontrolliert). Alle anderen Einträge sind nur aus Gründen der Vollständigkeit bezüglich der Ontologie mit aufgeführt.

2.1.2 DatabaseAccession

Die DatabaseAccession-Tabelle speichert alle von den Kuratoren eingetragenen Datenbanklinks und Registriernummern. Ihre Einträge stehen mit der Compound-Tabelle in einer Kompositionsbeziehung, was bedeutet, dass ein DatabaseAccession-Objekt nicht ohne ein entsprechendes Compound-Objekt existieren kann.

2.1.3 CompoundName

Das CompoundName-Objekt beinhaltet Synonyme und IUPAC-Namen. Es gilt zu beachten, dass der Namenstyp "NAME" nicht etwa den empfohlenen Namen in ChEBI sondern denjenigen in der Quelldatenbank kennzeichnet. Es besteht eine Kompositions-Beziehung mit der Compounds-Tabelle

2.1.4 ChemicalData

Das ChemicalData-Objekt speichert alle in ChEBI vorkommenden Formeln. Es besteht eine Kompositions-Beziehung mit der Compounds-Tabelle.

2.1.5 Comment

In der Comment-Tabelle werden Kommentare der Kuratoren zu den jeweiligen ChEBI-Einträgen abgelegt. Es besteht eine Kompositions-Beziehung mit der Compounds-Tabelle.

2.1.6 Reference

Das Reference-Objekt enthält Daten über alle automatisch generierten Links zu anderen Datenbanken. Zwischen dem Reference-Objekt und dem Compound-Objekt besteht eine Kompositions-Beziehung.

2.1.7 Structure

Das Structure-Objekt enthält alle Strukturen eines Compound-Objekts. Zurzeit sind dies MDL molfiles, InChI's and SMILES. Es besteht eine Kompositions-Beziehung mit der Compounds-Tabelle.

2.1.8 DefaultStructure

Das DefaultStructure-Objekt besitzt eine Referenz auf ein MDL molfile in der Structure-Tabelle. Ein Compound-Objekt kann mehr als ein MDL Molfile besitzen, weswegen eine Unterscheidung zwischen ihnen notwendig ist. Die Default-Struktur bezeichnet dabei jenes MDL Molfile, welches nach Meinung der Kuratoren die Charakteristik des betreffenden Moleküls am besten repräsentiert. Dieses wird dann auf der Webseite zuerst angezeigt. Es besteht eine Kompositions-Beziehung mit der Compounds-Tabelle.

2.1.9 AutogenStructure

Eine Referenz auf dieses Objekt bedeutet, dass eine Struktur automatisch durch ein Programm generiert wurde. MDL Molfiles enthalten keine Referenz auf ein AutogenStructure-Objekt, da sie immer per Hand erstellt werden. SMILES und InChIs werden aufgrund ihrer meisten automatisch von der Default-Struktur abgleitet. Das AutogenStructure-Objekt besitzt eine Referenz zu seinem Structure-Objekt und kann ohne dies nicht existieren.

2.1.10 OntologyModel

Die OntologyModel-Tabelle beschreibt alle in ChEBI enthaltenen Ontologien.

2.1.11 Vertice

Das Vertice-Objekt (Vertice = engl. pl. Ecke [in einem Graphen]) verbindet Einträge der Compound-Tabelle mit der Ontologie. Jedes Vertice-Objekt steht dabei mit einem Compound-Objekt in einer Kompositions-Beziehung wo.

2.1.12 Relation

Das Relation-Objekt (Relation = engl. Beziehung [in einer Klassifikation]) stellt eine direkte ontologische Beziehung zwischen zwei ChEBI-Einträgen dar. Ein Relation-Objekt ist dabei mit zwei Vertice-Objekten über eine Kompositionsbeziehungen verknüpft wobei das eine Vertice-Objekt deren Anfang und das andere deren Ende repräsentiert.

2.2 Beispiele für SQL-Suchanfragen

Weiter unten findet sich eine Liste mit Beispielanfragen, die hoffentlich zum Verständnis des Datenmodells beitragen.

2.2.1 Suchanfragen für Namen und Synonyme

Eine Abfrage könnte beispielsweise alle Synonyme und ChEBI-Namen in der Datenbank suchen. Um einen vollständigen Satz von Namen zu erhalten, muss man die Anfrage für die Namen aller chemischen Verbindungen über deren parent_id zusammenführen. Der bevorzugte ChEBI-Name wird dabei immer in der compounds-Tabelle erscheinen, für die die parent_id null ist.
select distinct chebi_id, name from (
   select nvl(c.parent_id,c.id) chebi_id, n.name name from names n, compounds c where n.compound_id = c.id and c.status='C'
   UNION
   select c.id chebi_id, c.name name from compounds c where c.name is not null and c.status='C'
)

2.2.2 Abfrage von Datenbank-Querverweisen

Ein Abfrage könnte beispielsweise all ChEBI IDs und den ChEBI-Namen für einen bestimmten KEGG-Querverweise suchen. Hierbei ist zu beachten, dass mehrere Ergebnisse erhalten werden können, weil bisweilen mehrere Datensätze auf einen KEGG-Querverweise zeigen. Wie in Abschnitt 2.1.1 des Entwicklerhandbuches erläutert, werden redundante Verbindungen in Gruppen zusammengefügt. Um nun die gesammte Gruppe zu durchsuchen, muss man ¨berpr¨fen, ob der KEGG-Querverweis direkt mit der Mutterverbindung der Gruppe oder auf einzelne ihrer Mitglieder zeigt.

select distinct p.chebi_accession, p.name from database_accession d, compounds c, compounds p
   where p.status='C' and d.type='KEGG COMPOUND accession'
   and d.accession_number='C05279' and    (
      (d.compound_id = c.id and c.parent_id=p.id) or (d.compound_id = p.id and p.parent_id is null)
   )

3 Downloads

Die ChEBI-Daten liegen in vier verschiedenen Formaten auf dem ChEBI FTP Server zum Herunterladen bereit.

3.1 Flat-File Table-Dumps

Die ChEBI-Daten werden in einer relationalen Datenbank gespeichert und in der Form von Flat-Files zum Herunterladen bereit gestellt wobei als Delimiter das Tabulator-Zeichen verwendet wird. Die Dateien lassen sich mit einem beliebigen Tabellenkalkulationsprogramm bearbeiten oder in eine Datenbank importieren (entweder direkt oder über ein Zusatzprogramm). Die Verzeichnisstruktur entspricht dabei den einzelnen Tabellen oder, in anderen Worten, jedem Flat-File entspricht eine Tabelle in der Datenbank.

3.2 Binäre Table-Dumps (Oracle)

ChEBI stellt seine Daten auch als binäre Table-Dumps zur Verfügung. Diese können mithilfe des "imp"-Befehls in eine Oracle-Datenbank importiert werden wobei zu beachten gilt, dass sich die Parameterdatei import.par bei dessen Ausführung zusammen mit den Table-Dumps im Import-Verzeichnis befinden sollte. Der vollständige Befehl lautet wie folgt:
imp database_name/database_password@Instance_name PARFILE=import.par

3.3 Ontologie Format (OBO)

ChEBI stellt die ChEBI Ontologie im OBO-Format in der Version 1.2 bereit. Weitere Informationen über das OBO-Format finden sich auf der OBO-Webseite oder der Gene Ontology-Webseite. Ein zweckmässiges Programm zur Einsicht der OBO-Datei ist z.B. OBO-edit.

3.4 Generische SQL (Structured Query Language) Table-Dumps

Dies ist ein generischer, d.h. auf allen mit dem SQL-Standard kompatiblen Datenbanken ausführbarer, SQL-Dump bestehend aus Insert-Befehlsfolgen der SQL-Sprache. Das komprimierte Dateiarchiv generic_dump.zip besteht aus 12 Dateien in denen die Daten jeweils einer Datenbankentabelle in der Form von Insert-Befehlen vorliegen. Zu beachten ist, dass das Skript compounds.sql vor allen anderen ausgeführt werden sollte, da es andernfalls zu Problemen mit den Integritätsbedingungen (constraints) kommen kann. Im selben Dateiarchiv befinden sich zudem Tabellenerstellungsskripte für MySQL und PostgreSQL, welche aufgrund der generischen Eigenschaften der SQL-Sprache für alle damit kompatiblen Datenbanken verwendet werden können.


3.5 SDF-Dateiformat

ChEBI stellt seine chemischen Strukturen und zusätzlichen Daten im SDF-Format, Version 2000, zur Verfügung.
Das ChEBI-SDF-Format ist eine angepasste Version des offiziellen SDF-Formats.
Die hauptsächlichen Abweichungen vom Standard-SDF-Dateiformat sind die folgenden:
  • Jeder Eintrag kann länger sein als 80 Zeichen und hat keine Maximalgrösse.
  • Jede Zeile nach dem Data Header ist ein separater Eintrag. Zum Beispiel ist jede Zeile in den Synonymen ein einzelnes Synonym.

3.5.1 ChEBI_lite.sdf


Diese Datei enthält die chemische Struktur und zwei zusätzliche Bezeichner, nämlich die ChEBI-Id und den ChEBI-Namen.
Eine Beispieldatei für Wasser findet sich unten.


  Marvin 02220718252D

  3  2  0  0  0  0            999 V2000
   -0.4125    0.7145    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.0000    0.0000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   -0.4125   -0.7145    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
  2  1  1  0  0  0  0
  2  3  1  0  0  0  0
M  END
>  <ChEBI ID>
CHEBI:15377

>  <ChEBI Name>
water

$$$$

3.5.1 ChEBI_complete.sdf


Diese Datei einhält die chemische Struktur und zusätzliche Bezeichner, die die ChEBI-Datenelement beschreiben.
Folgende ChEBI-Datenelemente werden beschrieben:
  • ChEBI ID - der Hauptidentifizierer eines Eintrages, ist immer vorhanden.
  • ChEBI Name - der eindeutige Name, immer vorhanden.
  • Definition - eine Textbeschreibung des Eintrages, manchmal vorhanden.
  • Secondary ChEBI ID - wenn mehrere Eintr√§ge zur Vermeidung von Duplikaten zusammengezogen wurden, werden ihre zweitrangigen Identifizierer (so vorhanden) hier aufgelistet.
  • SMILES - manchmal vorhanden.
  • InChI - manchmal vorhanden.
  • InChIKey - manchmal vorhanden.
  • Charge - manchmal vorhanden.
  • Mass - manchmal vorhanden.
  • Formulae - manchmal vorhanden.
  • IUPAC Names - manchmal vorhanden.
  • Synonyms - manchmal vorhanden.
  • BRAND Names - manchmal vorhanden.
  • INN - manchmal vorhanden.
  • Registry Numbers - alphabetisch geordnet, manchmal vorhanden..
    1. Beilstein Registry Numbers
    2. CAS Registry Numbers
    3. Gmelin Registry Numbers
  • Database Links - alphabetisch geordnet, manchmal für bestimmte Datenbanken vorhanden. Der Eintrag besteht immer aus dem Datenbanknamen gefolgt von "Database Links". Zum Beispiel gibt es ArrayExpress-, BioModels- und Patent-Datenbanklinks. Eine vollständige Liste von Datenbank-Links in ChEBI finden Sie in den Datenquellen und den automatisch kreierten Querverweisen. Beachten Sie, dass die Reihenfolge sich ändern kann, wenn neue Querverweise hinzugefügt werden.
  • Last Modified - immer vorhanden.
  • Submitter Name - wenn der Eintrag ein Beitrag ist, dann wird das hier angezeigt.
Unten finden Sie eine Beispiel-Datei für den Eintrag Wasser. Bitte beachten Sie, dass der Inhalt nicht aktualisiert wird und deswegen veraltet sein kann.


  Marvin 02220718252D

  3  2  0  0  0  0            999 V2000
   -0.4125    0.7145    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.0000    0.0000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   -0.4125   -0.7145    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
  2  1  1  0  0  0  0
  2  3  1  0  0  0  0
M  END
>  <ChEBI ID>
CHEBI:15377

>  <ChEBI Name>
water

>  <Secondary ChEBI ID>
CHEBI:10743
CHEBI:13352
...
CHEBI:44819

>  <SMILES>
[H]O[H]

>  <InChI>
InChI=1/H2O/h1H2

>  <InChIKey>
InChIKey=XLYOFNOQVPJJNP-UHFFFAOYAF

>  <Formulae>
H2O

>  <Charge>
0

>  <Mass>
18.01528

>  <IUPAC Names>
oxidane
water

>  <Synonyms>
H(2)O
H2O
HOH
....
eau

>  <Beilstein Registry Numbers>
3587155

>  <CAS Registry Numbers>
7732-18-5

>  <Gmelin Registry Numbers>
117

>  <ArrayExpress Database Links>
E-TOXM-12
E-TOXM-14

>  <BioModels Database Links>
BIOMD0000000090

>  <IntEnz Database Links>
EC 1.1.1.115

>  <IntEnz Database Links>
EC 1.1.1.115
...
EC 6.6.1.2

>  <KEGG COMPOUND Database Links>
C00001

>  <MolBase Database Links>
1

>  <PDBeChem Database Links>
HOH

>  <Patent Database Links>
EP0769531
...
WO2008157552

>  <PubChem Database Links>
8145132

>  <Reactome Database Links>
REACT_10000
...
REACT_9996

>  <Rhea Database Links>
RHEA:10000
...
RHEA:26115

>  <SABIO-RK Database Links>
1000
...
15333

>  <UniProt Database Links>
1A1D_ENTCL
...
RHEA:26115

>  <Last Modified>
03 July 2008

$$$$


4 Web Services

Bitte referenzieren sie zur ChEBI Web Services. spacer
spacer