MangroveNP v0.6
数据字典 / Data dictionary
中文
本页说明 MangroveNP v0.6 公开下载文件中的全部字段。所有文件为 UTF-8 编码,以 CC BY 4.0 发布。
1. 通用约定
- 多值字段:外部标识符与候选 CAS 相关字段以
;分隔;structure_from 与 also_listed_in 在所有 JSON 文件中(包括 data/mangrovenp-v0.6-public.json)均为字符串数组,只有 CSV 以;连接(均按原始来源顺序);NPClassifier 类别以|分隔。 - 来源生物类型(检索参数 org)的定义取值为 plant、fungus、bacterium、protist、alga、animal、other;其中 alga、animal、other 为保留值,本版本没有对应记录。检索界面只显示本版本有记录的四种类型(plant、fungus、bacterium、protist)。一条记录可能属于多种类型,因此各类型的记录数相加会超过记录总数。
- 外部标识符按 InChIKey 给出,InChIKey 相同的记录显示相同的值。
- JSON 中缺失值为
null、""或[](各字段见下表);CSV 与 TSV 中缺失值一律为空单元格。
2. 公开结构层:data/mangrovenp-v0.6-public.json
顶层字段:
| 字段 | 类型 | 说明 | 取值与空值 |
|---|---|---|---|
schema |
字符串 | 文件结构标识 | — |
release |
字符串 | 版本名称 | — |
license |
字符串 | 数据许可 | CC BY 4.0 |
licenseUrl |
字符串 | 许可协议网址 | — |
builtAt |
字符串 | 构建时间(ISO 8601,含时区) | — |
recordCount |
整数 | 记录数 | — |
uniqueInchikeyCount |
整数 | 唯一 InChIKey 数 | — |
excludedErrataCount |
整数 | 本版本移除的勘误记录数 | — |
notice |
字符串 | 关于本文件的英文说明 | — |
searchFields |
字符串数组 | 综合检索所用的记录字段名 | — |
identifierFields |
字符串数组 | 外部标识符相关的记录字段名 | — |
inchiProvenance |
字符串 | 说明 InChI 列生成方式的英文文字,内容为:标准 InChI 由 RDKit 2026.03.6(InChI 库 1.07.3,默认选项)从 isomeric_smiles 离线计算;另注明来源文件名及其 sha256;全部 6,234 条记录由 inchi 得到的 InChIKey 与 inchikey 一致 | — |
records |
对象数组 | 记录列表,字段见下表 | — |
records 中每条记录有 50 个字段,顺序如下:
| 字段 | 类型 | 说明 | 取值与空值 |
|---|---|---|---|
id |
字符串 | MangroveNP 记录号,格式为 mangrove- 加 4–6 位数字 |
不为空 |
name |
字符串 | 化合物名称(按原始文献) | 不为空 |
smiles |
字符串 | 结构 SMILES,结构图由此字段绘制;绝大多数不含立体描述。与 isomeric_smiles 的连接方式相同(两者去除立体信息后的规范 SMILES 在全部记录中一致),isomeric_smiles 另含立体与同位素标记;inchi / inchikey、SDF / SMI 下载文件与结构检索索引均基于 isomeric_smiles | 不为空 |
isomeric_smiles |
字符串 | 含立体信息的同分异构 SMILES | 不为空 |
inchikey |
字符串 | 由标准化结构计算的标准 InChIKey | 不为空 |
inchi |
字符串 | 标准 InChI,由 isomeric_smiles 用 RDKit 2026.03.6 生成;由其计算的 InChIKey 与 inchikey 字段全部一致。生成时的提示(如未定义立体中心)不作为错误显示。JSON 与 CSV 中字段名均为 inchi |
不为空 |
formula |
字符串 | 由结构计算的分子式 | 不为空 |
formula_source |
字符串 | 来源报道的分子式 | 空 = null(来源无可比较分子式) |
formula_check |
字符串 | 原文分子式比对结果 | 一致(一致)/ 仅电荷或盐形式不同(仅电荷或盐形式不同)/ 不一致(不一致)/ 无原文分子式(无原文分子式);不为空 |
structure_from |
字符串数组 | 结构来源:结构仅取自 COCONUT、LOTUS 或由 OPSIN 生成;有多个来源时按原始来源顺序列出 | 元素为 COCONUT / LOTUS / OPSIN;不为空 |
also_listed_in |
字符串数组 | 同一结构也见于的交叉引用数据库,按原始来源顺序列出;仅作交叉引用,不再分发这些数据库的结构或其他数据。该字段只出现在单条记录详情文件(data/db/records/)和下载文件中,不出现在网站概况与列表文件中 | 元素为 NPAtlas / NPASS / IMPPAT / CMNPD / PubChem;没有时为 [] |
match_method |
字符串 | 名称与结构的匹配方式 | exact_name(精确名称)/ normalized_name(规范化名称)/ name_without_trailing_parenthetical(去掉末尾括号说明的名称)/ exact_name+pubchem、normalized_name+pubchem(按精确名称或规范化名称在结构数据库中命中,且 PubChem 名称查询返回的结构与选定结构的 InChIKey 相同,因此加注 +pubchem)/ opsin_systematic_name(OPSIN 由系统名生成);不为空 |
tier |
字符串 | 匹配置信度(英文) | high / medium / low;不为空 |
confidence |
字符串 | 匹配置信度(中文),与 tier 一一对应 | 高 / 中 / 低;不为空 |
structure_origin |
字符串 | 结构产生方式 | database(数据库查询)/ name_to_structure(OPSIN 名称转结构);不为空 |
opsin_version |
字符串 | OPSIN 版本 | OPSIN 2.8.0;空 = null(非 OPSIN 结构) |
systematic_name_used |
字符串 | 用于 OPSIN 转换的系统名 | 空 = null(非 OPSIN 结构) |
si_name_hit |
字符串(JSON 文本) | 来源文献补充材料表格中与本记录同名的条目:doi 为该文献的 DOI,si_name 为补充材料中的名称;部分条目另有 mz、rt_min、adduct(表中的质荷比、保留时间(分钟)和加合离子)、superclass(补充材料给出的类别)和 plant_part(对应部位)。这只是名称匹配,补充材料未给出结构编码,不作为结构依据 | 空 = null |
plant_part |
字符串 | 依据补充材料表格确定的植物部位 | leaf;空 = null |
plant_part_basis |
字符串 | plant_part 的依据(英文说明) | 空 = null |
stereo_class |
字符串 | 立体化学完整性(RDKit FindPotentialStereo) | fully_defined(完全定义)/ partly_defined(部分定义)/ fully_undefined(完全未定义)/ no_stereo_elements(无立体元素);不为空 |
stereo_class_carbon_only |
字符串 | 同上,只统计碳原子四面体立体中心(保留全部双键) | 同 stereo_class |
stereocenters_unassigned |
整数 | 未指定的立体中心数 | 不为空 |
stereo_dbonds_unassigned |
整数 | 未指定构型的立体双键数 | 不为空 |
ambiguous_category |
字符串 | 结构候选歧义的类别(英文描述) | conflicting database structures (different molecular formulas) / constitutional isomer candidates / salt/hydrate/tautomer differences (tautomer) / conflicting database structures (different molecular formulas) + enantiomer/diastereomer candidates within a skeleton / constitutional isomer candidates + enantiomer/diastereomer candidates within a skeleton;空 = null |
ambiguous_proposed_status |
字符串 | 只用于名称对应多个候选结构的记录:若全部候选经 RDKit 规范互变异构后骨架相同(且 PubChem 名称查询没有返回不同骨架),规范化后只剩一个完整 InChIKey 为 resolved_proposed,剩多个为 resolved_connectivity_only;其他情况下,若只有一个骨架同时有数据库主名称命中和物种一致、且就是当前结构,为 ambiguous_leaning(本版未出现),否则为 ambiguous |
ambiguous / resolved_proposed / resolved_connectivity_only / ambiguous_leaning;空 = null |
source_organism_type |
字符串 | 来源生物类型 | plant_only(仅植物)/ microbe_only(仅微生物)/ plant_and_microbe(植物与微生物);不为空 |
misparse_adjudication |
字符串 | OPSIN 误解析扫描的判定(仅 OPSIN 结构) | misparse_confirmed / no_error_found / false_positive / name_ambiguous / undetermined;空 = null(未被扫描标记) |
misparse_action |
字符串 | 对误解析的处理 | correct(已改正)/ demote_annotate(降级并加注)/ undetermined(未定);空 = null |
structure_provenance |
字符串 | 结构来源的英文说明,格式为 Structure taken from: <structure_from>; also listed in: <also_listed_in>,句中多个来源以 ; 连接;also_listed_in 为空时省略后半句 |
不为空 |
si_name_confirmed |
布尔 | 有 si_name_hit 时为 true,否则为 false;只表示名称出现在补充材料中,不表示结构有原文依据 | true / false;CSV 中为 True / False |
species |
字符串数组 | 文献证据中的生物名称(部分条目附原文说明) | 不为空;CSV 中以 ; 连接(名称说明中也可能含 ;,需准确拆分时请用 JSON) |
dois |
字符串数组 | 文献 DOI | 空 = [];CSV 中以 ; 连接,空则为空单元格 |
evidence |
对象数组 | 逐条文献证据(仅 JSON):organism(生物名称)、organismType(plant / fungus / bacterium / protist)、plantPart(部位或样品说明)、doi、pmid(PubMed ID,用于生成 PubMed 链接;没有时为 "") |
至少一条;plantPart 空 = "" |
license |
字符串 | 数据许可 | CC BY 4.0 |
structure_caution |
字符串 | 结构提示标记(不是勘误):ambiguous_name 表示结构由名称推断、原文不足以唯一确定;demoted_annotation 表示结构由名称推断、取代基位置或异构体无法由原文确定,仅供参考 |
ambiguous_name / demoted_annotation;空 = "" |
ik_mangrove_ids |
字符串 | InChIKey 相同的全部记录号(含本记录),以 ; 分隔 |
不为空 |
cas_status |
字符串 | 候选 CAS 状态 | has_candidate_cas(有至少一个通过校验位的候选 CAS)/ no_cas_found(未找到候选 CAS)/ no_cas_found_partial(同义词快照未覆盖该结构的全部 CID,无候选只是部分结果)/ no_cid(未匹配到 PubChem CID);不为空 |
cas_candidates |
字符串 | 候选 CAS 号(校验位通过),以 ; 分隔;不是 CAS 官方授权数据 |
空 = "" |
cas_primary |
字符串 | 候选 CAS(主):仅当该 InChIKey 的全部候选 CAS 都已按 strict 规则分类、且恰有一个被判为 exact 时给出;只要还有候选未能分类,即使已有一个 exact,也不给出。CAS 号均为候选 | 空 = "" |
cas_strict_classes |
字符串 | 每个通过校验位的候选 CAS 号及其 strict 类别,格式为 CAS号:类别,多个以 ; 分隔。类别由程序自动判定:先用 PubChem compound 按 CAS 号查到的化合物,查不到再用 PubChem substance;把查到的结构与本记录的 InChIKey 比较。exact 为 InChIKey 完全相同,且该 CAS 的名称没有下述盐、水合物等标注,也不是只标注同位素或离子形式;stereo_variant 为骨架相同(InChIKey 前 14 位相同)但立体、同位素或离子形式不同,InChIKey 完全相同但该 CAS 的名称只标注同位素或离子形式的也归入此类;salt_or_mixture_or_polymer 为 PubChem 的母体或组分中含本记录骨架,或结构上判为 exact/stereo_variant 但该 CAS 的名称普遍标注为盐、水合物、混合物、提取物、聚合物或外消旋体(本记录结构不含立体信息时,外消旋体标注不计);different_compound 为以上都不满足;unclassified 为没有可比较的结构或查询不完整。候选号可以来自 Wikidata,但全量分类未使用 Wikidata;有 5 对沿用试点阶段的分类(见 cas_class_from_pilot_wd)。exact 不是人工核实结果。 |
类别:exact / stereo_variant / salt_or_mixture_or_polymer / different_compound / unclassified;空 = "" |
cas_sources |
字符串 | 每个候选 CAS 的来源,格式 CAS号:来源,以 ; 分隔 |
来源:wikidata / pubchem / both;空 = "" |
check_digit_pass |
字符串 | 候选 CAS 校验位是否通过 | yes;空 = ""(无候选) |
cas_parent_skipped_by_design |
字符串 | 候选 CAS 中,按设计未查询 PubChem 母体/组分关系的 CAS 号,以 ; 分隔。当 PubChem 为该候选返回的某个化合物与本记录骨架不同(InChIKey 前 14 位不同),但与本库中另一条有候选 CAS 的记录骨架相同时,程序不查该化合物的母体/组分;这些候选的类别照常由 PubChem 结果给出。该标记表示按规则跳过了母体/组分查询,由后处理步骤加上。 |
空 = "" |
cas_class_from_pilot_wd |
字符串 | strict 类别沿用试点阶段结果的候选 CAS 号,以 ; 分隔。全量分类未查询 Wikidata,而这几对在试点阶段的分类依赖 Wikidata 条目,因此沿用试点分类。 |
空 = "" |
cid_primary |
字符串 | 主 PubChem CID;多个时以 ; 分隔 |
空 = ""(无 CID) |
cid_all_exact_ik |
字符串 | InChIKey 完全一致的全部 PubChem CID,以 ; 分隔 |
空 = ""(无 CID) |
multi_cid |
字符串 | 是否有多个 CID | true / false;空 = ""(无 CID) |
wikidata_qid |
字符串 | Wikidata QID,多个时以 ; 分隔 |
空 = "" |
chebi_id |
字符串 | ChEBI ID(仅数字,不含前缀),多个时以 ; 分隔 |
空 = "" |
3. 公开结构层:data/mangrovenp-v0.6-public.csv
- 逗号分隔,首行为列名,每条记录一行(6,234 行)。
- 共 50 列,顺序如下(从 1 起计):1
id, 2name, 3smiles, 4isomeric_smiles, 5inchikey, 6inchi, 7formula, 8formula_source, 9formula_check, 10structure_from, 11also_listed_in, 12match_method, 13tier, 14confidence, 15structure_origin, 16opsin_version, 17systematic_name_used, 18si_name_hit, 19plant_part, 20plant_part_basis, 21stereo_class, 22stereo_class_carbon_only, 23stereocenters_unassigned, 24stereo_dbonds_unassigned, 25ambiguous_category, 26ambiguous_proposed_status, 27source_organism_type, 28misparse_adjudication, 29misparse_action, 30structure_provenance, 31si_name_confirmed, 32structure_caution, 33ik_mangrove_ids, 34cas_status, 35cas_candidates, 36cas_primary, 37cas_strict_classes, 38cas_sources, 39check_digit_pass, 40cas_parent_skipped_by_design, 41cas_class_from_pilot_wd, 42cid_primary, 43cid_all_exact_ik, 44multi_cid, 45wikidata_qid, 46chebi_id, 47species, 48dois, 49pmids, 50license。 - 与 JSON 记录相比:CSV 不含
evidence,另有pmids列(第 49 列):该记录全部文献证据的 PMID,以;连接,按数值排序;没有时为空单元格(不是空格)。 - 数组字段 species、dois、structure_from 与 also_listed_in 以
;连接(pmids 同样以;连接);also_listed_in 没有时为空单元格;布尔字段 si_name_confirmed 写作True/False;缺失值为空单元格。
4. 文献证据层:data/mangrovenp-v0.6-literature.json
顶层字段:
| 字段 | 类型 | 说明 |
|---|---|---|
schemaVersion |
整数 | 文件结构版本 |
scope |
对象 | 收录范围说明:title、checkedAt、coverage、description、structureStatus |
sources |
对象数组 | 文献来源,每篇一条(901 篇) |
compounds |
对象数组 | 逐化合物文献证据条目,每条公开记录一条(6,234 条) |
metadata |
对象 | 文件说明:generatedAt、compoundCount、sourceCount、evidenceCount(证据明细条数)、identityStatus、completeness、missingStructureCount、warnings、notice、release、license、excludedErrataCount、buildNote、countNote |
sources 中每篇文献的字段(多数为可选字段,可缺省):
| 字段 | 类型 | 说明 | 取值与空值 |
|---|---|---|---|
id |
字符串 | 文献来源编号,被 evidence.referenceId 引用 | 不为空 |
title |
字符串 | 文献标题 | 不为空 |
url |
字符串 | 文献链接 | 不为空 |
kind |
字符串 | 来源类型 | primary / dataset |
doi |
字符串 | DOI | 空 = null |
year |
整数 | 发表年份 | 不为空 |
accessLevel |
字符串 | 整理时可获取的文本层级 | primary_abstract / primary_full_text / abstract_indexed / full_text / publisher_abstract / publisher_full_text / abstract / author_uploaded_full_text / author_manuscript_full_text / primary_supplementary_data / full_text_author_copy / publisher_abstract_and_indexed_text |
verificationNote |
字符串 | 整理者对查阅内容的英文说明 | 不为空 |
pmid |
字符串 | PubMed ID | 可缺省;空 = null |
pmcid |
字符串或字符串数组 | PubMed Central ID | 可缺省;空 = null |
publisherUrl |
字符串或字符串数组 | 出版社页面链接 | 可缺省;空 = null |
compounds |
数组的数组 | 每项为原文报告的化合物名称 | 可缺省 |
evidenceNotes |
字符串 | 证据说明(英文) | 可缺省 |
organism |
字符串 | 来源生物 | 可缺省 |
organismType |
字符串 | 来源生物类型 | plant / fungus / bacterium / protist;可缺省或 null |
plantPart |
字符串 | 部位或样品说明 | 可缺省;空 = null |
evidenceType |
字符串 | 证据类型 | primary_full_text / primary_abstract / primary_supplementary_data;可缺省或 null |
compoundListNote |
字符串 | 化合物列表说明 | 可缺省 |
publicationReliability |
对象 | 出版方关于该文献的声明(如关注声明):status、noticeDoi、noticeUrl、noticeDate、checkedAt、reason |
可缺省 |
license / licence |
字符串 | 文献本身的许可(个别条目拼写为 licence) | 可缺省 |
licenseUrl |
字符串 | 文献许可网址 | 可缺省 |
relatedPublicationDoi |
字符串 | 相关文献 DOI | 可缺省 |
relatedPublicationUrl |
字符串 | 相关文献链接 | 可缺省 |
compounds 中每条的字段:
| 字段 | 类型 | 说明 | 取值与空值 |
|---|---|---|---|
id |
字符串 | MangroveNP 记录号,与公开结构层的 id 对应 | 不为空 |
name |
字符串 | 化合物名称 | 不为空 |
synonyms |
字符串数组 | 同义名 | 空 = [] |
chemicalClass |
字符串 | 整理时记录的化合物类别文本:可为来源给出的上级类别(superclass)、作者给出的类别,或占位值 Class pending normalization / Undefined |
空 = null |
molecularFormula |
字符串 | 来源报道的分子式;有值时与公开结构层的 formula_source 相同,不是由结构计算的分子式 |
空 = null |
smiles / inchiKey / pubchemCid |
— | 本文件中均为 null;结构与标识符见公开结构层文件 |
始终为 null |
identityStatus |
字符串 | 本文件中名称记录的状态 | name_only_pending_structure_validation |
evidence |
对象数组 | 文献证据明细,字段见下表 | 至少一条 |
compounds[].evidence 中每条证据的字段:
| 字段 | 类型 | 说明 | 取值与空值 |
|---|---|---|---|
organism |
字符串 | 来源生物 | 不为空 |
organismType |
字符串 | 来源生物类型 | plant / fungus / bacterium / protist |
plantPart |
字符串 | 部位或样品说明 | 空 = null |
referenceId |
字符串 | 文献来源编号,对应 sources[].id | 不为空 |
referenceUrl |
字符串 | 文献链接 | 不为空 |
doi |
字符串 | DOI | 空 = null |
evidenceType |
字符串 | 证据类型 | primary_full_text / primary_abstract / primary_supplementary_data |
notes |
字符串 | 整理说明(中文) | 可为 "" |
checkedAt |
字符串 | 整理日期(YYYY-MM-DD) | 不为空 |
identificationLevel |
字符串 | 分析注释的 MSI 鉴定等级(仅分析注释条目) | msi_level_1_standard(MSI Level 1,标准品匹配)/ msi_level_2_tentative(MSI Level 2,推定注释);可缺省 |
5. 描述符表:data/mangrovenp-v0.6-descriptors.tsv
制表符分隔,首行为列名,每个 InChIKey 一行(5,773 行)。描述符由 RDKit 计算;数值列为十进制数字。
| 列 | 说明 | 取值与空值 |
|---|---|---|
inchikey |
InChIKey,表的键 | 不为空 |
smiles |
结构 SMILES | 不为空 |
formula |
分子式 | 不为空 |
mw_average |
平均分子量 | 不为空 |
mw_exact |
单同位素精确质量 | 不为空 |
logp_crippen |
Crippen logP | 不为空 |
tpsa |
拓扑极性表面积 | 不为空 |
hbd |
氢键供体数 | 不为空 |
hba |
氢键受体数 | 不为空 |
rotatable_bonds |
可旋转键数 | 不为空 |
lipinski_violations |
Lipinski 五规则违规数 | 0–4 |
veber_pass |
是否符合 Veber 规则 | true / false |
heavy_atoms |
重原子数 | 不为空 |
ring_count |
环数 | 不为空 |
fsp3 |
sp3 杂化碳比例(Fsp3) | 不为空 |
murcko_scaffold |
Murcko 骨架 SMILES | 无环结构为空单元格 |
np_likeness |
天然产物相似度评分;用 RDKit 2026.03.6 计算,采用 RDKit Contrib 中的 NP_Score(Ertl 等,2008) | 不为空 |
ik_recomputed |
由公开结构重新计算的 InChIKey | 不为空 |
ik_match |
重新计算的 InChIKey 是否与发布的 InChIKey 一致 | true / false |
6. NPClassifier 分类表:data/mangrovenp-v0.6-npclassifier.tsv
制表符分隔,首行为列名,每个 InChIKey 一行(5,773 行)。
| 列 | 说明 | 取值与空值 |
|---|---|---|
inchikey |
InChIKey,表的键 | 不为空 |
pathway |
NPClassifier pathway;多个以 | 分隔 |
Alkaloids / Amino acids and Peptides / Carbohydrates / Fatty acids / Polyketides / Shikimates and Phenylpropanoids / Terpenoids;未分类为空单元格 |
superclass |
NPClassifier superclass;多个以 | 分隔 |
未分类为空单元格 |
class |
NPClassifier class;多个以 | 分隔 |
未分类为空单元格 |
isglycoside |
是否为糖苷 | true / false |
- 网站按类别浏览时:最高一级(pathway)为空的记录显示为「未分类 / Unclassified」;下一级(superclass 或 class)为空的记录显示为「未细分 / Not further classified」。有多个类别的记录在其每个类别下各出现一次。
7. 结构文件:data/mangrovenp-v0.6-structures.sdf 与 data/mangrovenp-v0.6-structures.smi
mangrovenp-v0.6-structures.sdf:SDF 格式的结构文件(chemical/x-mdl-sdfile)。mangrovenp-v0.6-structures.smi:SMILES 格式的结构文件(chemical/x-daylight-smiles)。- 两个文件均为每条公开记录一条(共 6,234 条),结构取自 isomeric_smiles;InChIKey 相同的记录各有自己的条目。
- SDF:二维坐标由 RDKit.js 2026.9.1 生成;每条的标题行为记录号;属性为
mangrove_id、name、inchikey、inchi、formula、isomeric_smiles、pubchem_cid、chebi_id、wikidata_qid、permalink、license,其中pubchem_cid、chebi_id、wikidata_qid为空时省略;permalink为该记录的永久链接。 - SMI:第一行为表头,列名依次为
#isomeric_smiles、mangrove_id、inchikey、name;其后每条记录一行,各列以制表符分隔。
8. 校验文件:data/SHA256SUMS
每行为 sha256 值、两个空格和相对于 data/ 目录的文件路径。SHA256SUMS 覆盖 data/ 目录下除其自身以外的全部文件:各下载文件、每条记录的 SVG 结构图(data/svg/)、网站数据文件(data/db/)与结构检索索引(data/struct/)等。校验方法见"帮助"页。
9. 外部数据库名录:data/resources.json
本站引用的外部数据库名录,记录各库的名称、用途及其各自许可,仅作说明;所列各库的内容不随本站再分发,其许可以各库自己的声明为准。本文件(名录本身)按 CC BY 4.0 发布。文件为对象数组,每个对象含 id、name、url、role、license、checkedAt、description、accessNote、importStatus:url 为 null 或表示链接已移除的固定文字;role 为中文用途标签;license 为该库自己的许可;checkedAt 为检查日期;description、accessNote、importStatus 为字符串。
English
This page describes every field in the MangroveNP v0.6 public download files. All files are UTF-8 encoded and released under CC BY 4.0.
1. General conventions
- Multi-value fields: external identifier and candidate CAS fields use
;; structure_from and also_listed_in are arrays of strings in all JSON files, including data/mangrovenp-v0.6-public.json; only the CSV joins them with;(in the original source order in both); NPClassifier classes use|. - The source organism type (search parameter org) is defined with the values plant, fungus, bacterium, protist, alga, animal and other; alga, animal and other are reserved values with no records in this release. The search interface shows only the four types that have records in this release (plant, fungus, bacterium, protist). A record may belong to more than one type, so the per-type counts add up to more than the total number of records.
- External identifiers are given per InChIKey; records sharing an InChIKey show the same values.
- In JSON, missing values are
null,""or[](see each field below); in CSV and TSV, missing values are always empty cells.
2. Public structure layer: data/mangrovenp-v0.6-public.json
Top-level fields:
| Field | Type | Description | Values and empty values |
|---|---|---|---|
schema |
string | file schema identifier | — |
release |
string | release name | — |
license |
string | data licence | CC BY 4.0 |
licenseUrl |
string | licence URL | — |
builtAt |
string | build time (ISO 8601, with time-zone offset) | — |
recordCount |
integer | number of records | — |
uniqueInchikeyCount |
integer | number of unique InChIKeys | — |
excludedErrataCount |
integer | number of erratum records removed in this release | — |
notice |
string | English notice about this file | — |
searchFields |
array of strings | record fields used by the any-field search | — |
identifierFields |
array of strings | record fields that hold external identifiers | — |
inchiProvenance |
string | English text recording how the inchi column was produced: standard InChI computed offline from isomeric_smiles with RDKit 2026.03.6 (InChI library 1.07.3, default options); it also names the source file and its sha256, and states that the InChIKey derived from inchi equals inchikey for all 6,234 records | — |
records |
array of objects | list of records; fields in the table below | — |
Each record in records has 50 fields, in this order:
| Field | Type | Description | Values and empty values |
|---|---|---|---|
id |
string | MangroveNP record ID: mangrove- followed by 4–6 digits |
never empty |
name |
string | compound name (as reported in the original publication) | never empty |
smiles |
string | structure SMILES used to draw the structure image; almost always without stereo descriptors. Same connectivity as isomeric_smiles (the canonical non-stereo SMILES of the two are identical for all records); isomeric_smiles additionally carries stereo and isotope labels; inchi / inchikey, the SDF / SMI downloads and the structure-search index all use isomeric_smiles | never empty |
isomeric_smiles |
string | isomeric SMILES including stereochemistry | never empty |
inchikey |
string | standard InChIKey computed from the standardized structure | never empty |
inchi |
string | standard InChI generated from isomeric_smiles with RDKit 2026.03.6; the InChIKey computed from it matches the inchikey field for all records. Generation warnings (for example undefined stereocentres) are not shown as errors. The field is named inchi in both JSON and CSV |
never empty |
formula |
string | molecular formula computed from the structure | never empty |
formula_source |
string | molecular formula reported by the source | empty = null (no comparable source formula) |
formula_check |
string | result of the source-formula comparison | 一致 (consistent) / 仅电荷或盐形式不同 (charge or salt form only) / 不一致 (inconsistent) / 无原文分子式 (no comparable source formula); never empty |
structure_from |
array of strings | source of the structure: structures come only from COCONUT or LOTUS or were generated with OPSIN; several sources are listed in the original source order | elements COCONUT / LOTUS / OPSIN; never empty |
also_listed_in |
array of strings | cross-reference databases in which the same structure is also listed, in the original source order; cross-reference only, no structures or other data from these databases are redistributed. This field appears only in the per-record detail files (data/db/records/) and the download files, not in the site overview or list files | elements NPAtlas / NPASS / IMPPAT / CMNPD / PubChem; [] when there is none |
match_method |
string | how the name was matched to the structure | exact_name (exact name) / normalized_name (normalized name) / name_without_trailing_parenthetical (name without a trailing parenthetical note) / exact_name+pubchem, normalized_name+pubchem (the exact or normalized name matched a structure database, and the PubChem name lookup returned a structure with the same InChIKey as the chosen one, hence the "+pubchem" suffix) / opsin_systematic_name (generated by OPSIN from the systematic name); never empty |
tier |
string | match confidence (English) | high / medium / low; never empty |
confidence |
string | match confidence (Chinese), one-to-one with tier | 高 (high) / 中 (medium) / 低 (low); never empty |
structure_origin |
string | how the structure was obtained | database (database lookup) / name_to_structure (OPSIN name-to-structure); never empty |
opsin_version |
string | OPSIN version | OPSIN 2.8.0; empty = null (not an OPSIN structure) |
systematic_name_used |
string | systematic name used for the OPSIN conversion | empty = null (not an OPSIN structure) |
si_name_hit |
string (JSON text) | entry in the source paper's supplementary table whose name matches this record: doi is the paper's DOI and si_name the name as printed in the supplementary material; some entries also have mz, rt_min and adduct (the table's m/z, retention time in min and adduct), superclass (the class given there) and plant_part (the corresponding plant part). This is a name-only match; the supplementary material gives no structure encoding, so it is not structure evidence | empty = null |
plant_part |
string | plant part assigned from a supplementary table | leaf; empty = null |
plant_part_basis |
string | basis for plant_part (English note) | empty = null |
stereo_class |
string | stereochemical completeness (RDKit FindPotentialStereo) | fully_defined / partly_defined / fully_undefined / no_stereo_elements; never empty |
stereo_class_carbon_only |
string | as above, counting only tetrahedral centres on carbon (all double bonds kept) | same as stereo_class |
stereocenters_unassigned |
integer | number of unassigned stereocentres | never empty |
stereo_dbonds_unassigned |
integer | number of unassigned stereo double bonds | never empty |
ambiguous_category |
string | category of structure-candidate ambiguity (English description) | conflicting database structures (different molecular formulas) / constitutional isomer candidates / salt/hydrate/tautomer differences (tautomer) / conflicting database structures (different molecular formulas) + enantiomer/diastereomer candidates within a skeleton / constitutional isomer candidates + enantiomer/diastereomer candidates within a skeleton; empty = null |
ambiguous_proposed_status |
string | set only for records whose name corresponds to several candidate structures: if all candidates share one skeleton after RDKit canonical tautomerization (and the PubChem name lookup did not return a different skeleton), resolved_proposed when one full InChIKey remains and resolved_connectivity_only when several remain; otherwise ambiguous_leaning when exactly one skeleton has both a database primary-name hit and taxon agreement and it is the current structure (does not occur in this release), else ambiguous |
ambiguous / resolved_proposed / resolved_connectivity_only / ambiguous_leaning; empty = null |
source_organism_type |
string | source organism type | plant_only / microbe_only / plant_and_microbe; never empty |
misparse_adjudication |
string | verdict of the OPSIN misparse scan (OPSIN structures only) | misparse_confirmed / no_error_found / false_positive / name_ambiguous / undetermined; empty = null (not flagged by the scan) |
misparse_action |
string | action taken on a misparse | correct / demote_annotate (demoted with annotation) / undetermined; empty = null |
structure_provenance |
string | English sentence on where the structure came from, in the form Structure taken from: <structure_from>; also listed in: <also_listed_in>, with several sources joined by ;; the second clause is omitted when also_listed_in is empty |
never empty |
si_name_confirmed |
boolean | true when si_name_hit is present, otherwise false; it means only that the name appears in the supplementary material, not that the structure is supported by the paper | true / false; True / False in the CSV |
species |
array of strings | organism names from the literature evidence (some entries carry a note from the source) | never empty; joined with ; in the CSV (notes inside a name may also contain ;, so use the JSON for exact lists) |
dois |
array of strings | publication DOIs | empty = []; joined with ; in the CSV, empty cell when none |
evidence |
array of objects | literature evidence entries (JSON only): organism, organismType (plant / fungus / bacterium / protist), plantPart (part or sample note), doi, pmid (PubMed ID, used to build PubMed links; "" when there is none) |
at least one entry; empty plantPart = "" |
license |
string | data licence | CC BY 4.0 |
structure_caution |
string | structure caution flag (not an erratum): ambiguous_name means the structure was inferred from the name and the publication is not sufficient to determine it uniquely; demoted_annotation means the structure was inferred from the name and the substituent position or isomer cannot be determined from the publication, indicative only |
ambiguous_name / demoted_annotation; empty = "" |
ik_mangrove_ids |
string | all record IDs sharing this InChIKey (including this one), separated by ; |
never empty |
cas_status |
string | candidate CAS status | has_candidate_cas (has at least one candidate CAS that passes the check digit) / no_cas_found (no candidate found) / no_cas_found_partial (synonym snapshot does not cover all CIDs of the structure; partial result) / no_cid (no matching PubChem CID); never empty |
cas_candidates |
string | candidate CAS numbers (check digit passed), separated by ;; not an official CAS Registry product |
empty = "" |
cas_primary |
string | primary candidate CAS: 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 | empty = "" |
cas_strict_classes |
string | Each candidate CAS RN that passes the check digit, with its strict class, as CAS:class, separated by ;. Classes are assigned automatically: the compound found for the CAS RN in PubChem Compound is used, or PubChem Substance if Compound finds nothing, and its structure is compared with this record's InChIKey. exact: identical InChIKey, and names for the CAS RN carry none of the salt, hydrate or similar designations below and do not denote only an isotopic or ionic form. stereo_variant: same skeleton (first 14 InChIKey characters) but a different stereo, isotopic or ionic form; this also covers an identical InChIKey when names for the CAS RN denote only an isotopic or ionic form. salt_or_mixture_or_polymer: the PubChem parent or components contain this record's skeleton, or the structure matches as exact/stereo_variant but names for the CAS RN commonly denote a salt, hydrate, mixture, extract, polymer or racemate (racemate is not counted when this record's structure has no stereo information). different_compound: none of the above. unclassified: no comparable structure or an incomplete lookup. Candidate RNs may come from Wikidata, but the full classification did not use Wikidata; 5 pairs keep their pilot-stage class (see cas_class_from_pilot_wd). exact is not the result of manual checking. |
classes: exact / stereo_variant / salt_or_mixture_or_polymer / different_compound / unclassified; empty = "" |
cas_sources |
string | source of each candidate, as CAS:source, separated by ; |
sources: wikidata / pubchem / both; empty = "" |
check_digit_pass |
string | whether the candidate CAS numbers pass the check digit | yes; empty = "" (no candidate) |
cas_parent_skipped_by_design |
string | Candidate CAS RNs for which the PubChem parent/component lookup was skipped by design, separated by ;. The lookup is skipped for a compound that PubChem returns for the candidate when its skeleton (first 14 InChIKey characters) differs from this record's but matches the skeleton of another record in this database that has a candidate CAS RN; the class is still assigned from the PubChem result. The flag means the parent/component lookup was skipped by rule; it is added in post-processing. |
empty = "" |
cas_class_from_pilot_wd |
string | Candidate CAS RNs whose strict class is taken from the pilot stage, separated by ;. The full classification did not query Wikidata, and the pilot class of these pairs relied on Wikidata items, so the pilot class is kept. |
empty = "" |
cid_primary |
string | primary PubChem CID; several are separated by ; |
empty = "" (no CID) |
cid_all_exact_ik |
string | all PubChem CIDs with exactly the same InChIKey, separated by ; |
empty = "" (no CID) |
multi_cid |
string | whether there is more than one CID | true / false; empty = "" (no CID) |
wikidata_qid |
string | Wikidata QID; several are separated by ; |
empty = "" |
chebi_id |
string | ChEBI ID (digits only, no prefix); several are separated by ; |
empty = "" |
3. Public structure layer: data/mangrovenp-v0.6-public.csv
- Comma-separated, header row first, one row per record (6,234 rows).
- 50 columns, in this order (1-based): 1
id, 2name, 3smiles, 4isomeric_smiles, 5inchikey, 6inchi, 7formula, 8formula_source, 9formula_check, 10structure_from, 11also_listed_in, 12match_method, 13tier, 14confidence, 15structure_origin, 16opsin_version, 17systematic_name_used, 18si_name_hit, 19plant_part, 20plant_part_basis, 21stereo_class, 22stereo_class_carbon_only, 23stereocenters_unassigned, 24stereo_dbonds_unassigned, 25ambiguous_category, 26ambiguous_proposed_status, 27source_organism_type, 28misparse_adjudication, 29misparse_action, 30structure_provenance, 31si_name_confirmed, 32structure_caution, 33ik_mangrove_ids, 34cas_status, 35cas_candidates, 36cas_primary, 37cas_strict_classes, 38cas_sources, 39check_digit_pass, 40cas_parent_skipped_by_design, 41cas_class_from_pilot_wd, 42cid_primary, 43cid_all_exact_ik, 44multi_cid, 45wikidata_qid, 46chebi_id, 47species, 48dois, 49pmids, 50license. - Compared with the JSON record: the CSV has no
evidencecolumn but has apmidscolumn (column 49): the PMIDs of all literature evidence of the record, joined with;and sorted numerically; empty cell (not a space) when there is none. - The array fields species, dois, structure_from and also_listed_in are joined with
;(pmids likewise uses;); also_listed_in is an empty cell when there is none; the boolean field si_name_confirmed is writtenTrue/False; missing values are empty cells.
4. Literature evidence layer: data/mangrovenp-v0.6-literature.json
Top-level fields:
| Field | Type | Description |
|---|---|---|
schemaVersion |
integer | file schema version |
scope |
object | scope note: title, checkedAt, coverage, description, structureStatus |
sources |
array of objects | literature sources, one per paper (901) |
compounds |
array of objects | per-compound evidence entries, one per public record (6,234) |
metadata |
object | file notes: generatedAt, compoundCount, sourceCount, evidenceCount (number of evidence items), identityStatus, completeness, missingStructureCount, warnings, notice, release, license, excludedErrataCount, buildNote, countNote |
Fields of each paper in sources (most are optional and may be absent):
| Field | Type | Description | Values and empty values |
|---|---|---|---|
id |
string | source ID, referenced by evidence.referenceId | never empty |
title |
string | publication title | never empty |
url |
string | link to the publication | never empty |
kind |
string | source kind | primary / dataset |
doi |
string | DOI | empty = null |
year |
integer | publication year | never empty |
accessLevel |
string | level of text available during curation | primary_abstract / primary_full_text / abstract_indexed / full_text / publisher_abstract / publisher_full_text / abstract / author_uploaded_full_text / author_manuscript_full_text / primary_supplementary_data / full_text_author_copy / publisher_abstract_and_indexed_text |
verificationNote |
string | curator note (English) on what was consulted | never empty |
pmid |
string | PubMed ID | may be absent; empty = null |
pmcid |
string or array of strings | PubMed Central ID | may be absent; empty = null |
publisherUrl |
string or array of strings | publisher page link | may be absent; empty = null |
compounds |
array of arrays | each item is a compound name as reported in the source | may be absent |
evidenceNotes |
string | evidence note (English) | may be absent |
organism |
string | source organism | may be absent |
organismType |
string | source organism type | plant / fungus / bacterium / protist; may be absent or null |
plantPart |
string | part or sample note | may be absent; empty = null |
evidenceType |
string | evidence type | primary_full_text / primary_abstract / primary_supplementary_data; may be absent or null |
compoundListNote |
string | note on the compound list | may be absent |
publicationReliability |
object | publisher notice about the paper (for example an expression of concern): status, noticeDoi, noticeUrl, noticeDate, checkedAt, reason |
may be absent |
license / licence |
string | licence of the publication itself (spelled licence in one entry) | may be absent |
licenseUrl |
string | URL of the publication licence | may be absent |
relatedPublicationDoi |
string | DOI of a related publication | may be absent |
relatedPublicationUrl |
string | link to a related publication | may be absent |
Fields of each entry in compounds:
| Field | Type | Description | Values and empty values |
|---|---|---|---|
id |
string | MangroveNP record ID, matching id in the public structure layer | never empty |
name |
string | compound name | never empty |
synonyms |
array of strings | synonyms | empty = [] |
chemicalClass |
string | class text recorded at curation: a superclass label from the source, a class given by the authors, or a placeholder (Class pending normalization / Undefined) |
empty = null |
molecularFormula |
string | molecular formula reported by the source; when present it equals formula_source in the public structure layer, and it is not computed from the structure |
empty = null |
smiles / inchiKey / pubchemCid |
— | always null in this file; structures and identifiers are in the public structure layer files |
always null |
identityStatus |
string | status of the name record in this file | name_only_pending_structure_validation |
evidence |
array of objects | evidence items; fields in the table below | at least one item |
Fields of each evidence item in compounds[].evidence:
| Field | Type | Description | Values and empty values |
|---|---|---|---|
organism |
string | source organism | never empty |
organismType |
string | source organism type | plant / fungus / bacterium / protist |
plantPart |
string | part or sample note | empty = null |
referenceId |
string | source ID, matching sources[].id | never empty |
referenceUrl |
string | link to the publication | never empty |
doi |
string | DOI | empty = null |
evidenceType |
string | evidence type | primary_full_text / primary_abstract / primary_supplementary_data |
notes |
string | curator note (Chinese) | may be "" |
checkedAt |
string | curation date (YYYY-MM-DD) | never empty |
identificationLevel |
string | MSI identification level (analytical annotations only) | msi_level_1_standard (MSI Level 1, standard match) / msi_level_2_tentative (MSI Level 2, tentative annotation); may be absent |
5. Descriptor table: data/mangrovenp-v0.6-descriptors.tsv
Tab-separated, header row first, one row per InChIKey (5,773 rows). Descriptors were computed with RDKit; numeric columns are decimal numbers.
| Column | Description | Values and empty values |
|---|---|---|
inchikey |
InChIKey; key of the table | never empty |
smiles |
structure SMILES | never empty |
formula |
molecular formula | never empty |
mw_average |
average molecular weight | never empty |
mw_exact |
monoisotopic exact mass | never empty |
logp_crippen |
Crippen logP | never empty |
tpsa |
topological polar surface area | never empty |
hbd |
hydrogen-bond donors | never empty |
hba |
hydrogen-bond acceptors | never empty |
rotatable_bonds |
rotatable bonds | never empty |
lipinski_violations |
number of Lipinski rule-of-five violations | 0–4 |
veber_pass |
whether the Veber rule is met | true / false |
heavy_atoms |
heavy atoms | never empty |
ring_count |
ring count | never empty |
fsp3 |
fraction of sp3 carbons (Fsp3) | never empty |
murcko_scaffold |
Murcko scaffold SMILES | empty cell for acyclic structures |
np_likeness |
natural-product-likeness score; computed with RDKit 2026.03.6, using NP_Score from RDKit Contrib (Ertl et al., 2008) | never empty |
ik_recomputed |
InChIKey recomputed from the published structure | never empty |
ik_match |
whether the recomputed InChIKey equals the published InChIKey | true / false |
6. NPClassifier table: data/mangrovenp-v0.6-npclassifier.tsv
Tab-separated, header row first, one row per InChIKey (5,773 rows).
| Column | Description | Values and empty values |
|---|---|---|
inchikey |
InChIKey; key of the table | never empty |
pathway |
NPClassifier pathway; several separated by | |
Alkaloids / Amino acids and Peptides / Carbohydrates / Fatty acids / Polyketides / Shikimates and Phenylpropanoids / Terpenoids; empty cell when not classified |
superclass |
NPClassifier superclass; several separated by | |
empty cell when not classified |
class |
NPClassifier class; several separated by | |
empty cell when not classified |
isglycoside |
whether the structure is a glycoside | true / false |
- When browsing by class on the website: records with an empty top level (pathway) are shown as 「未分类 / Unclassified」; records with an empty lower level (superclass or class) are shown as 「未细分 / Not further classified」. A record with several labels appears once under each of its labels.
7. Structure files: data/mangrovenp-v0.6-structures.sdf and data/mangrovenp-v0.6-structures.smi
mangrovenp-v0.6-structures.sdf: structure file in SDF format (chemical/x-mdl-sdfile).mangrovenp-v0.6-structures.smi: structure file in SMILES format (chemical/x-daylight-smiles).- Both files have one entry per public record (6,234 in total), with the structure taken from isomeric_smiles; records that share an InChIKey each get their own entry.
- SDF: 2D coordinates generated with RDKit.js 2026.9.1; the title line of each entry is the record ID; properties are
mangrove_id,name,inchikey,inchi,formula,isomeric_smiles,pubchem_cid,chebi_id,wikidata_qid,permalinkandlicense, wherepubchem_cid,chebi_idandwikidata_qidare omitted when empty;permalinkis the permanent link of the record. - SMI: the first line is a header with the column names
#isomeric_smiles,mangrove_id,inchikeyandname; it is followed by one line per record, with columns separated by tabs.
8. Checksum file: data/SHA256SUMS
Each line holds a sha256 value, two spaces and a file path relative to the data/ directory. SHA256SUMS covers every file under the data/ directory except itself: the download files, the per-record SVG structure images (data/svg/), the site data files (data/db/) and the structure-search index (data/struct/), among others. See the Help page for how to check checksums.
9. Directory of external databases: data/resources.json
A directory of the external databases referred to by this site, giving each database's name, role and its own licence, for information only. The contents of the listed databases are not redistributed by this site, and their licences are as stated by each database. This file (the directory itself) is released under CC BY 4.0. The file is an array of objects, each with id, name, url, role, license, checkedAt, description, accessNote and importStatus: url is null or a fixed text where the link was removed; role is a role label in Chinese; license is that database's own licence; checkedAt is the date checked; description, accessNote and importStatus are strings.
数据许可:CC BY 4.0 · Data licence: CC BY 4.0 — 许可与引用 · License & citation