Skip to content
Novus Examples
sdf2 KB

Three-Molecule SDfile Library — Multi-Record (.sdf)

Three molecules of different sizes in one SDfile, each with its own connection table and four data fields, separated by the $$$$ terminator. It is the fixture for streaming SDfile readers that have to split on the terminator rather than load the whole file.

Preview — first 50 linessdf
methane
  NovusEx 3D  synthetic idealised geometry
Idealised geometry, synthetic fixture.
  5  4  0  0  0  0  0  0  0  0999 V2000
    0.0000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.6290    0.6290    0.6290 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.6290   -0.6290    0.6290 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.6290    0.6290   -0.6290 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.6290   -0.6290   -0.6290 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0
  1  3  1  0
  1  4  1  0
  1  5  1  0
M  END
> <NAME>
methane

> <FORMULA>
CH4

> <MOLECULAR_WEIGHT>
16.043

> <SMILES>
C

$$$$
water
  NovusEx 3D  synthetic idealised geometry
Idealised geometry, synthetic fixture.
  3  2  0  0  0  0  0  0  0  0999 V2000
    0.0000    0.0000    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
    0.7570    0.5860    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7570    0.5860    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0
  1  3  1  0
M  END
> <NAME>
water

> <FORMULA>
H2O

> <MOLECULAR_WEIGHT>
18.015

> <SMILES>
O

$$$$
86 lines total — download for the full file.

Specifications

Records
3
Molecules
methane, water, ethanol
Atoms Per Record
5, 3, 9
Data Fields Per Record
4
Record Terminator
$$$$
Total Atoms
17

Testing contract

Expected to pass
Scenario
Stream the file record by record and report the atom count and NAME field of each without loading it whole.
Expected result
Three records are found in order — methane with 5 atoms, water with 3 and ethanol with 9 — and each terminates on its own $$$$ line.

What is a .sdf file?

SDF (Structure-Data File) is MDL's multi-record chemistry format. Each record is a molfile — a counts line, an atom block, and a bond block — followed by tagged data fields written as `> <NAME>` lines with their values, and terminated by a `$$$$` delimiter. It is how compound libraries with per-molecule properties are shipped between cheminformatics tools.

How to use this file

Use an example .sdf file to test cheminformatics readers and property extractors, verifying record splitting on the `$$$$` delimiter, that data fields are associated with the right structure, and that a malformed record does not consume the rest of the file.

How to use this file for testing

“Three-Molecule SDfile Library — Multi-Record (.sdf)” is a deterministic Novus Examples fixture for Scientific data, Editor testing, Data import. Citation catalogs (BibTeX, RIS), chemistry structures (MDL Molfile, PDB), and gridded binary data (NetCDF, FITS) — for testing reference managers, molecule viewers, and scientific-data loaders.

Documented properties for this file: 3 records. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Scientific fixtures are small, valid, and fully synthetic — no real organism, patient, sample, or observation. Point your parser or loader at the file and check it reads the documented records, variables, or headers; binary formats ship a readable twin or metadata listing for comparison.

Generated by generation/scientific.py. Free for any use, no attribution required — license.