MangroveNP v0.6
方法 / Methods
中文
本页用通俗语言说明 MangroveNP 的结构整理与计算方法。完整方法见论文:论文投稿中,DOI 即将公布。本页数字除特别注明外均指 v0.6 公开层(6,234 条记录 / 5,773 个唯一 InChIKey)。
1. 收录范围
- 收录单位为原始研究论文中报道的"化合物–来源–文献"关联:从红树林植物,或从具有可追溯红树林来源(宿主、组织、采样地点或潮间带沉积物/土壤)的真菌、细菌/放线菌等微生物中分离鉴定的化合物。
- 综述、名录以及仅凭名称的数据库匹配不作为原始证据;粗提物、未归属的特征峰和仅到化合物类别的推断不收录。MSI Level 1/2 分析注释只有在对应明确样品和表格条目时才收录,并与分离鉴定分开标注。
- 部分记录来自 GC-MS 谱库匹配的挥发物分析,属推定注释,未经标准品确认;谱库匹配结果可能包含样品处理或仪器带入的物质。
- 公共结构数据库只用于为已从文献收录的记录提供结构,不用于决定是否收录。本库不声称穷尽收录。
2. 结构从哪里来
- 结构不手工绘制。整理时先按名称在结构数据库中查找(精确名称、规范化名称、去掉名称末尾括号说明后的名称,部分记录辅以 PubChem 名称查询);找不到时,若原文给出系统名,则用 OPSIN 2.8.0 将系统名转换为结构。
- 公开层结构:公开文件中的结构仅取自 CC0 来源(COCONUT 与 LOTUS),或由 OPSIN 2.8.0 根据原始文献报道的系统名生成;每条记录的结构来源字段(structure_from)只列出 COCONUT、LOTUS 或 OPSIN。NPAtlas、CMNPD、IMPPAT、NPASS 与 PubChem 在整理过程中用于结构交叉核对;同一结构也见于这些数据库时,列于交叉引用字段(also_listed_in),仅作交叉引用。除交叉引用标识符(PubChem CID、Wikidata QID、ChEBI ID 与候选 CAS 号)外,不再分发这些来源的结构或其他数据。
- 每条结构附匹配置信度(高 / 中 / 低)。置信度反映名称与结构匹配的把握程度,不是逐条人工审核结论。
3. 结构标准化
所有 SMILES 经同一 RDKit 流程处理(RDKit 2026.09.1,MolStandardize 模块,默认参数),顺序如下:
- 解析 SMILES,无法解析的输入弃用;
- 清理(Cleanup);
- 保留最大的共价片段(去除反离子与溶剂片段);
- 中和电荷(Uncharger)。
随后由标准化结构计算规范同分异构 SMILES、去立体信息的规范 SMILES、标准 InChIKey 和分子式。立体化学按来源记录保留;不做互变异构体规范化、立体异构体枚举或同位素去除,因此化合物身份以完整标准 InChIKey 定义。InChIKey 相同的记录作为独立条目保留,不合并。人工审查后,部分记录改用更正后的 SMILES。永久带电或两性离子结构不会被中和,因此少数记录保留形式电荷。
标准 InChI:由 isomeric_smiles 用 RDKit 2026.03.6(InChI 1.07.3)生成;由其计算的 InChIKey 与记录的 InChIKey 全部一致。InChI 生成时的提示(如未定义立体中心)不作为错误显示。字段名:inchi(public.json 中紧随 inchikey;public.csv 第 6 列),生成方式另见顶层键 inchiProvenance。
可重复性:在 v0.5 全库 7,444 条记录上分别用 RDKit 2026.03.6 与 2026.09.1 重跑流程,标准化 SMILES 与 InChIKey 零差异。
4. 立体化学完整性
用 RDKit FindPotentialStereo 评估每个结构的潜在立体元素,分为四类:完全定义、部分定义、完全未定义、无立体元素。另给出只统计碳原子立体中心(保留全部双键)的敏感性分类。未指定的立体中心数与双键数也逐条给出。
5. OPSIN 名称转结构的质控
对 OPSIN 生成的结构做了基于规则的误解析扫描,并人工确认。确认误解析的记录按原文改正为有依据的连接方式(去除立体信息);取代位置或异构体无法由原文确定的记录降级并加注,带结构提示标记 demoted_annotation。
6. 原文分子式比对
对来源报道了可比较分子式的公开记录,将原文分子式与由结构计算的分子式比对,并给出标签:
| 标签 | 公开层记录数 |
|---|---|
| 一致 | 1,195 |
| 仅电荷或盐形式不同 | 14 |
| 不一致 | 23 |
| 无原文分子式 | 5,002 |
可比较的记录共 1,232 条。"不一致"只表示两个分子式不同,原因可能在原文名称或分子式本身,也可能在记录的结构;它本身不等于结构错误。此项比对发现的结构与原文不符的记录已列入勘误(见"勘误"页)。
7. 准确度抽样
论文所用 v0.5 的修正后独立盲审抽样,在明确判定的样本中为 59/60 = 0.983(Wilson 95% CI 0.911–0.997)。该数字只描述该抽样,不代表每条记录都正确。
8. 计算描述符与分类
- 描述符(data/mangrovenp-v0.6-descriptors.tsv,每个 InChIKey 一行,共 5,773 行):用 RDKit 2026.03.6 由公开结构计算,包括平均分子量与单同位素质量、Crippen logP、TPSA、氢键供体/受体数、可旋转键数、Lipinski 违规数、Veber 规则、重原子数、环数、Fsp3、Murcko 骨架和天然产物相似度评分(np_likeness,采用 RDKit Contrib 中的 NP_Score,Ertl 等,2008)。表中另附由公开结构重新计算的 InChIKey 及其与发布 InChIKey 是否一致。
- NPClassifier 分类(data/mangrovenp-v0.6-npclassifier.tsv,每个 InChIKey 一行,共 5,773 行):pathway / superclass / class 以及是否为糖苷。一个结构可能有多个类别,以
|分隔。分类用 NPClassifier(Kim 等,2021)官方代码 commit 78e52f1 与 V1 模型权重(Zenodo 5068687),离线运行(Python 3.7、RDKit 2019.09.3、TensorFlow 2.3,用 tf.keras 直接加载模型)。 - PAINS 提示:论文分析中用 RDKit FilterCatalog(PAINS A/B/C)做了仅标注、不删除的筛查;该标注不在下载文件中。
- 结构图:每条记录的 SVG 结构图由 RDKit 2026.03.6(MolDraw2DSVG,480×320)在构建时绘制。
9. 外部标识符
- 候选 CAS 来自 Wikidata 与 PubChem,均为校验位通过的候选号,并附 strict_class 与来源;strict 分类仅依据 PubChem,Wikidata 待复核。候选 CAS(主)仅当该 InChIKey 的全部候选 CAS 都已按 strict 规则分类、且恰有一个被判为 exact 时给出;只要还有候选未能分类,即使已有一个 exact,也不给出。CAS 号均为候选。本站不提供 CAS 号链接。
- PubChem CID、Wikidata QID 与 ChEBI ID 由自动交叉匹配生成,按 InChIKey 给出(InChIKey 相同的记录显示相同的值)。
- 覆盖情况(截至 2026-10-19,分母为 5,773 个公开 InChIKey):候选 CAS 3,055(52.92%)/ 候选 CAS(主)2,419(41.90%)/ PubChem CID 5,504(95.34%)/ Wikidata QID 4,626(80.13%)/ ChEBI 3,389(58.70%)。
10. 结构检索
- 相似性检索:用 Morgan 指纹(半径 2,2,048 位)表示结构,返回 Tanimoto 相似度 ≥ 0.6(含 0.6)的结构,按 Tanimoto 相似度排序;阈值默认 0.6,可在 0.30–0.90 之间以 0.05 为步长调整;超出范围的阈值按边界值处理。
- 子结构检索:查询可以是 SMILES 或 SMARTS,返回含该子结构的记录。
- 两种检索均用 RDKit.js 2026.9.1 在浏览器中计算,结构查询不发送到服务器。
- 有 4 个 InChIKey 各对应多条记录,这些记录的 SMILES 是不同的互变异构体写法。结构检索索引中,每个这样的 InChIKey 只使用记录号最小的那条记录的结构;记录详情页仍显示各记录自己的结构。
- 结构检索结果默认每页 20 条;每个命中为一个 InChIKey,列出具有该 InChIKey 的全部记录。相似性检索结果按 Tanimoto 相似度降序、再按记录号排列;子结构检索结果按记录号排列。
11. 软件版本
| 软件 | 版本 | 用途 |
|---|---|---|
| RDKit | 2026.09.1 | 结构标准化、InChIKey 与分子式计算、立体化学评估 |
| RDKit | 2026.03.6 | 描述符、标准 InChI、PAINS 提示、结构图;标准化流程重跑对照 |
| InChI | 1.07.3 | 标准 InChI(经 RDKit 2026.03.6 调用) |
| OPSIN | 2.8.0 | 系统名转结构 |
| RDKit.js | 2026.9.1 | 结构检索(在浏览器中计算) |
| NPClassifier | 官方代码 commit 78e52f1 + V1 权重(Zenodo 5068687) | 天然产物类别 |
代码公开方式与许可:即将公布
English
This page explains in plain language how MangroveNP structures were curated and computed. For the full methods, see the paper: Manuscript under submission; DOI coming soon. Unless stated otherwise, numbers on this page refer to the v0.6 public layer (6,234 records / 5,773 unique InChIKeys).
1. Scope
- The unit of inclusion is a compound–source–publication association reported in a primary research article: compounds isolated and identified from mangrove plants, or from fungi, bacteria/actinomycetes and other microorganisms with traceable mangrove provenance (host, tissue, site, or intertidal sediment/soil).
- Reviews, catalogues and name-only database matches are not treated as primary evidence; crude extracts, unassigned features and class-level inferences are excluded. Analytical annotations at MSI Level 1/2 are admitted only when tied to a defined sample and table entry, and are labelled separately from isolation-based identifications.
- Some records come from volatile-compound analyses based on GC-MS library matching; these are putative annotations that have not been confirmed against reference standards, and library matches may include substances introduced during sample handling or by the instrument.
- Public structure databases were used only to supply structures for records already included from the literature, not to decide inclusion. Exhaustive coverage is not claimed.
2. Where the structures come from
- No structure was drawn by hand. Compound names were first looked up in structure databases (exact name, normalized name, name without a trailing parenthetical note, for some records supported by a PubChem name lookup). When no match was found and the publication reports a systematic name, the structure was generated from that name with OPSIN 2.8.0.
- Public-layer structures: Structures in the public files come only from CC0 sources (COCONUT and LOTUS) or were generated with OPSIN 2.8.0 from the systematic names reported in the original publications; the structure source field of each record (structure_from) lists only COCONUT, LOTUS or OPSIN. NPAtlas, CMNPD, IMPPAT, NPASS and PubChem were used for structure cross-checking during curation; when the same structure is also listed in these databases, they appear in the cross-reference field (also_listed_in), for cross-reference only. No structures or other data from these sources are redistributed, except the cross-reference identifiers (PubChem CID, Wikidata QID, ChEBI ID and candidate CAS numbers).
- Every structure carries a match-confidence label (high / medium / low). The label describes how confidently the name was matched to the structure; it is not the result of an individual manual review.
3. Structure standardization
Every SMILES was processed with one RDKit routine (RDKit 2026.09.1, MolStandardize module, default parameters), in this order:
- parse the SMILES and discard inputs that cannot be parsed;
- clean up (Cleanup);
- keep the largest covalent fragment (removes counter-ions and solvent fragments);
- neutralize charges (Uncharger).
From the standardized structure we computed the canonical isomeric SMILES, a canonical SMILES without stereochemistry, the standard InChIKey and the molecular formula. Stereochemistry was kept as encoded in the source; no tautomer canonicalization, stereoisomer enumeration or isotope removal was done, so compound identity is defined by the full standard InChIKey. Records that share an InChIKey are kept as separate entries, not merged. After manual review, some records were replaced by corrected SMILES. Permanently charged or zwitterionic structures are not neutralized, so a small number of records keep formal charges.
Standard InChI: generated from isomeric_smiles with RDKit 2026.03.6 (InChI 1.07.3); the InChIKey computed from it matches the stored InChIKey for all records. InChI generation warnings (for example undefined stereocentres) are not shown as errors. Field name: inchi (right after inchikey in public.json; column 6 of public.csv); how it was produced is recorded in the top-level key inchiProvenance.
Reproducibility: re-running the routine on all 7,444 v0.5 records with RDKit 2026.03.6 and 2026.09.1 gave zero differences in standardized SMILES and InChIKeys.
4. Stereochemical completeness
Potential stereo elements were assessed with RDKit FindPotentialStereo, and each structure is placed in one of four classes: fully defined, partly defined, fully undefined, or no stereo elements. A sensitivity class counts only tetrahedral centres on carbon (all double bonds kept). The numbers of unassigned stereocentres and double bonds are also given per record.
5. Quality control of OPSIN name-to-structure conversions
OPSIN-derived structures were screened with a rule-based misparse scan, with manual confirmation. Confirmed misparses were corrected to source-backed connectivity (stereochemistry removed); records whose substituent position or isomer could not be fixed from the publication were demoted with an annotation and carry the structure caution flag demoted_annotation.
6. Source-formula comparison
For public records whose sources report a comparable molecular formula, the reported formula was compared with the formula computed from the structure and labelled:
| Label | Public-layer records |
|---|---|
| consistent | 1,195 |
| charge or salt form only | 14 |
| inconsistent | 23 |
| no comparable source formula | 5,002 |
1,232 records have a comparable source formula. "Inconsistent" only means the two formulas differ; the cause may lie in the source's own name or formula, or in the recorded structure, and the label alone does not mean the structure is wrong. Records found by this comparison whose structure does not match the source are listed in the errata (see the Errata page).
7. Accuracy sample
For v0.5 (the release used in the paper), the post-correction independent blind sample gave 59/60 = 0.983 (Wilson 95% CI 0.911–0.997) among definitive verdicts. That figure describes the sample only and does not mean every record is correct.
8. Computed descriptors and classes
- Descriptors (data/mangrovenp-v0.6-descriptors.tsv, one row per InChIKey, 5,773 rows): computed from the public structures with RDKit 2026.03.6: average and monoisotopic molecular weight, Crippen logP, TPSA, hydrogen-bond donors/acceptors, rotatable bonds, Lipinski violations, Veber rule, heavy atoms, ring count, Fsp3, Murcko scaffold and a natural-product-likeness score (np_likeness; uses NP_Score from RDKit Contrib, Ertl et al., 2008). The table also gives the InChIKey recomputed from the public structure and whether it equals the published InChIKey.
- NPClassifier classes (data/mangrovenp-v0.6-npclassifier.tsv, one row per InChIKey, 5,773 rows): pathway / superclass / class and whether the structure is a glycoside. A structure may receive more than one class; multiple values are separated by
|. Classes were assigned with NPClassifier (Kim et al., 2021), official code at commit 78e52f1 with the V1 model weights (Zenodo 5068687), run offline (Python 3.7, RDKit 2019.09.3, TensorFlow 2.3, model loaded directly with tf.keras). - PAINS alerts: the paper's analysis screened structures with RDKit FilterCatalog (PAINS A/B/C), flag only, with no records removed; these flags are not part of the download files.
- Structure images: the per-record SVG images were drawn at build time with RDKit 2026.03.6 (MolDraw2DSVG, 480×320).
9. External identifiers
- Candidate CAS numbers come from Wikidata and PubChem. All are check-digit-passing candidates and carry strict_class and source; the strict classification relies on PubChem only, and Wikidata-based review is pending. A primary candidate CAS is given only when every candidate CAS for the InChIKey has a strict class and exactly one is classed exact; not given if any candidate is unclassified, even when one exact candidate exists. All CAS numbers are candidates. This site does not link CAS numbers.
- PubChem CIDs, Wikidata QIDs and ChEBI IDs are produced by automated cross-matching and are given per InChIKey (records sharing an InChIKey show the same values).
- Coverage (as of 2026-10-19; denominator 5,773 public InChIKeys): candidate CAS 3,055 (52.92%) / primary candidate CAS 2,419 (41.90%) / PubChem CID 5,504 (95.34%) / Wikidata QID 4,626 (80.13%) / ChEBI 3,389 (58.70%).
10. Structure search
- Similarity search: structures are represented by Morgan fingerprints (radius 2, 2,048 bits); structures with Tanimoto ≥ 0.6 (0.6 included) are returned, ranked by Tanimoto similarity. The threshold defaults to 0.6 and can be set from 0.30 to 0.90 in steps of 0.05; a threshold outside this range is treated as the nearest boundary value.
- Substructure search: the query can be SMILES or SMARTS; records containing the substructure are returned.
- Both searches are computed in your browser with RDKit.js 2026.9.1; structure queries are not sent to the server.
- For 4 InChIKeys, the records sharing the InChIKey carry different tautomeric SMILES. The structure-search index uses, for each such InChIKey, the structure of the record with the smallest record number; each record's detail page still shows that record's own structure.
- Structure-search results are shown 20 per page by default; each hit is one InChIKey and lists all records with that InChIKey. Similarity hits are sorted by Tanimoto similarity (descending), then by record number; substructure hits are sorted by record number.
11. Software versions
| Software | Version | Used for |
|---|---|---|
| RDKit | 2026.09.1 | structure standardization, InChIKey and formula calculation, stereochemistry assessment |
| RDKit | 2026.03.6 | descriptors, standard InChI, PAINS alerts, structure images; reproducibility re-run of the standardization |
| InChI | 1.07.3 | standard InChI (via RDKit 2026.03.6) |
| OPSIN | 2.8.0 | name-to-structure conversion |
| RDKit.js | 2026.9.1 | structure search (computed in your browser) |
| NPClassifier | official code commit 78e52f1 + V1 weights (Zenodo 5068687) | natural-product classes |
Code availability and licence: Coming soon
数据许可:CC BY 4.0 · Data licence: CC BY 4.0 — 许可与引用 · License & citation