Skip to content
Novus Examples
sdf1 KB

Ethanol — SDfile With Data Fields (.sdf)

An SDfile wrapping the identical ethanol molfile plus five tagged data fields and the mandatory $$$$ terminator. The property block syntax — a header line, a value and a blank line — is where SDfile parsers usually diverge from molfile parsers.

Preview — first 39 linessdf
ethanol
  NovusEx 3D  synthetic idealised geometry
Idealised geometry. Property block follows the connection table.
  9  8  0  0  0  0  0  0  0  0999 V2000
   -1.2456    0.2436    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.0000   -0.5876    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.1636    0.2296    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
   -2.1345   -0.3861    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.2734    0.8797    0.8837 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.2734    0.8797   -0.8837 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.0384   -1.2270    0.8850 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.0384   -1.2270   -0.8850 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.9524   -0.3175    0.0000 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  1  0
  2  3  1  0
  1  4  1  0
  1  5  1  0
  1  6  1  0
  2  7  1  0
  2  8  1  0
  3  9  1  0
M  END
> <NAME>
ethanol

> <FORMULA>
C2H6O

> <MOLECULAR_WEIGHT>
46.069

> <SMILES>
CCO

> <SOURCE>
Novus Examples synthetic fixture (idealised geometry)

$$$$

Specifications

Format
MDL SDfile
Records
1
Data Fields
5
Record Terminator
$$$$
Field Syntax
> <NAME> then value then a blank line
Embedded Molfile
identical to the paired .mol

Testing contract

Expected to pass
Scenario
Parse the record, extract the embedded connection table and read all five tagged data fields.
Expected result
The connection table is byte-identical to the paired molfile, the five fields parse with FORMULA equal to C2H6O, and the record terminates on $$$$ rather than at end of file.

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

“Ethanol — SDfile With Data Fields (.sdf)” is a deterministic Novus Examples fixture for Scientific data, Editor testing, Conversion testing. 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: 1 records · MDL SDfile. 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.