化学文件格式

本文討論了一些常見的**分子檔案格式**，以及它們之間的使用和轉換。

## 區分這些格式

化學資訊通常以檔案或流（stream）的形式提供，人們已經建立了許多格式，分別具有不同詳細程度的文件。格式通過以下三種方式表示（參見 "Chemical MIME" 部分）

* _副檔名_（通常為 3 個字母）。這不是十分可靠，因為包括非化學檔案在內的許多檔案類型共享這些常見的字尾，例如「.mol」和「.dat」。
* 檔案中包含格式資訊的_自描述_檔案。例如 CIF 和 CML。
* 可以傳輸化學資訊的伺服器傳輸的 Chemical/MIME 流。

## 化學標記式語言（CML）

化學標記式語言（CML） 是一種用於表示分子和其他化學資料的開源格式。其開源專案包含 XML Schema、用於解析和使用 CML 資料的一整套原始碼以及一個活躍的社群。許多工具都相容 CML 資料檔案，包括 JChemPaint、Jmol、XDrawChem 和 MarvinView。

## 蛋白質資料庫（PDB）

PDB 格式通常用於蛋白質，但也可用於其他類型的分子。它最初的設計為固定列寬格式，因此具有最大原子數、殘基數和鏈數的限制；這導致較大的結構（例如核糖體）需要被拆分為多個檔案。但是也有許多工具可以讀取超出這些限制的檔案。例如，E.coli 70S 核糖體 在 2009 年被分割為 4 個 PDB 檔案： 3I1M （頁面存檔備份，存於網際網路檔案館）、3I1N （頁面存檔備份，存於網際網路檔案館）、3I1O 和 3I1P，在 2014 年又被合併為一個檔案 4V6C （頁面存檔備份，存於網際網路檔案館） 。

一些 PDB 檔案擁有描述原子連接性和位置的可選功能。因為這些檔案有時用於描述大分子組裝體或在顯式溶劑中表示的分子，所以它們的體積會非常大且被壓縮。一些工具，例如 Jmol 和 KiNG， 可以讀取 .gz 格式的 PDB 檔案。 wwPDB 制定並維護 PDB 及其 XML 替代方案 PDBML 的規範。 2007 年 8 月，PDB 格式規範（版本 3.0）發生了相當大的變化，並且修復了現有資料庫中的許多檔案問題。 PDB 檔案的典型副檔名是_.pdb_ ，一些較舊的檔案也可能使用_.ent_ 或_.brk_ 。一些分子建模工具根據自己的需要調整基本格式為非標準的 PDB 樣式檔案。

## GROMACS

GROMACS 系列檔案格式是為與分子類比軟體套件 GROMACS 一起使用而建立的。它與 PDB 格式非常相似，但允許額外的數值精度，並可選擇保留有關粒子速度以及類比軌跡中給定點的位置的資訊。這是因為它被設計用於儲存分子動力學類比的輸出。GROMACS 不允許儲存連接資訊，這些資訊是從單獨的分子和系統拓撲檔案中獲得的。 GROMACS 檔案的典型副檔名是_.gro_ 。

## CHARMM

CHARMM 分子動力學軟體套件可以讀寫多種標準的化學和生化檔案格式；但 CARD（coordinate, 坐標）和 PSF（Protein Structure File, 蛋白質結構檔案）幾乎是 CHARMM 獨有的。 CARD 格式是固定列寬的，類似於 PDB 格式，專門用於儲存原子坐標。 PSF 檔案包含原子連接資訊（即描述原子之間的鍵），這在在開始分子動力學類比之前是必需的。使用的典型副檔名分別是_.crd_ 和_.psf_ 。

## GSD（General Simulation Data）

通用類比資料（General Simulation Data, GSD）格式用於高效地讀取和寫入主要來自（但不限於）_HOOMD-blue_ 的粒子類比資料。該軟體套件包含的一個 python 模組可以以易於使用的語法讀取和寫入 HOOMD 模式的 gsd 檔案。 [1]

## Ghemical

_Ghemical 軟體_可以使用 OpenBabel 匯入和匯出多種檔案格式，預設使用 GPR 格式。該檔案由幾個部分組成，由 `!Header` `!Info` `!Atoms` `!Bonds` `!Coord` `!PartialCharges` `!End` 分隔。

這種格式的推薦 MIME 類型為 _application/x-ghemical_ 。

## SYBYL 線性字串（SYBYL Line Notation，SLN）

SYBYL 線性字串（SYBYL Line Notation, SLN）是一種用字串表示化學結構的方法。因其基於 SMILES，所以包含用於特定相對立體化學的完整表示方式。 SLN 具有豐富的查詢語法，允許查詢 Markush 結構，還支援 ChemDraw 組合庫的規範。

_例：_

## 簡化分子線性輸入規範（SMILES）

**S**implified **M**olecular **I**nput **L**ine **E**ntry **S**pecification（簡化分子線性輸入規範，SMILES）用一串字元描述分子。 SMILES 字串包括連接情況，但不包括 2D 和 3D 坐標。

氫原子會被略去，原子用在方括號內的化學元素符號表示，例如 [Au] 表示「金」。有機物中的 **C**、**N**、**O**、**P**、**S**、**Br**、**Cl**、**I** 等原子可以省略方括號，其他元素必須包括在方括號之內。離子用方括號括起，用元素符號和電荷表示，"+" 表示正電荷、"-" 表示負電荷，電荷數跟在正負號之後。如果該原子與氫原子相連，氫原子寫在元素符號後面。

符號「=」表示雙鍵，「#」表示三鍵。 () 表示分支。如果結構中有環，則要打開。斷開處的兩個原子用同一個數字標記，表示原子間有鍵相連。

芳環中的 **C**、**O**、**S**、**N** 原子分別用用小寫字母 **c**,**o**,**s**,**n** 表示。如苯表示為 c**1ccccc1**

_例：_

## XYZ

XYZ 是一種簡單的格式，通常在第一行給出原子數，在第二行給出注釋，然後是幾行原子符號（或原子序數）和坐標參數。

## MDL 編號

MDL 編號包含每個反應和變化的唯一標識號。格式為 RXXXnnnnnnnn。 R 表示一個反應（reaction），XXX 表示哪個資料庫包含反應記錄。數字部分 nnnnnnnn 是一個 8 位數字。

## 其他常見格式

最广泛使用的工业标准之一是化学表格文件（{{tsl|en|Chemical\_table\_file|Chemical\_table\_file|Chemical table file}}）格式，例如_結構資料格式_(Structure Data Format，SDF) 檔案。這些文字檔案遵循著嚴格格式，用於表示多個化學結構和相關資料。該格式最初由 Molecular Design Limited (MDL) 開發和發布。 MOL 是 MDL 的另一種檔案格式。它記錄在 _CTfile 格式_的第 4 章中。 

PubChem 還有 XML 和 ASN1 格式，是 PubChem 線上資料庫的匯出選項。二者均基於文字（ASN1 通常是二進位格式）。

下表列出了大量其他格式

## 格式轉換

OpenBabel 和 JOELib 是免費提供的開源工具，專門被設計用來將檔案在各種格式之間轉換。他們的化學專家系統（chemical expert systems）支援大型的檔案轉換。

OpenBabel 的基本命令是

　
: `babel -i _input\_format_ _input\_file_ -o _output\_format_ _output\_file_`

例如，要將 SDF 中的 _腎上腺素.sdf_ 檔案轉換為 CML 格式：

　
: `babel -i sdf epinephrine.sdf -o cml epinephrine.cml`

生成的檔案是 _腎上腺素.cml_

IOData （頁面存檔備份，存於網際網路檔案館）是一個免費的開源 Python 庫，用於解析、儲存和轉換量子化學、分子動力學和平面波密度泛函理論軟體程式常用的各種檔案格式。它還能為各種軟體套件生成匯入檔案的靈活框架。有關支援格式的完整列表，請存取 https://iodata.readthedocs.io/en/latest/formats.html 。

許多用於檢視和編輯分子結構的工具能夠讀取多種格式的檔案並以其他格式輸出。例如：JChemPaint（基於 Chemistry Development Kit）、XDrawChem（基於 OpenBabel）、Chime、Jmol、Mol2mol  和 Discovery Studio。

## 化學 MIME 專案

「化學 MIME」是一種將化學資訊流附加到 MIME 類型的方法。

> 該專案於 1994 年 1 月開始，並於 1994 年 5 月在 CERN 舉行的第一屆 WWW 國際會議的化學研討會上首次宣布。…… 草案的第一個版本在 1994 年 5 月至 10 月期間發布，第二個修訂版在 1995 年 4 月至 9 月期間發布。在 1996 年 8 月的 IUPAC 會議上提交給 CPEP（印刷和電子出版物委員會）的論文尚待商榷。 
> 
> 

1998 年該檔案在 JCIM 上正式發表。 

## 化學資料來源

以下是部分免費提供的分子資料來源。網際網路上的資源比此處列出的要多得多。下面的參考資料中給出了這些來源的連結。

1. 美國國家衛生研究院 PubChem 資料庫是一個巨大的化學資料來源。所有資料都是二維的。資料包括 SDF、SMILES、PubChem XML 和 PubChem ASN1 格式。
2. 全球蛋白質資料庫（wwPDB （頁面存檔備份，存於網際網路檔案館））是蛋白質和核酸分子坐標資料的極好來源。資料是三維的，以蛋白質資料庫（PDB）格式提供。
3. eMolecules 是一個用於分子資料的商業資料庫。資料包括每個化合物的二維結構圖和微笑字串。 eMolecules 支援基於部分分子結構的快速子結構搜尋。
4. ChemExper 是用於分子資料的商業資料庫。搜尋結果包括許多化合物的二維結構圖和莫耳檔案。
5. 紐約大學 3-D 分子結構圖書館 （頁面存檔備份，存於網際網路檔案館）。
6. 美國環境保護署的分散式結構可搜尋毒性（DSSTox）資料庫網路是 EPA 計算毒理學計劃的一個專案。該資料庫提供 SDF 分子檔案，重點關注致癌物質和其他有毒物質。

## 另請參見

* 檔案格式
* OpenBabel,JOELib, OELib
* 化學開發工具包（Chemistry Development Kit）
* 化學標記式語言
* 分子建模軟體（Software for molecular modeling）
* NCI/CADD 化學識別碼解析器 （頁面存檔備份，存於網際網路檔案館）

## 參考文獻