DICOM-Shaped Dataset — Element Table Reference (.csv)
Every element of the synthetic phantom dataset as tag, value representation, meaning and encoded length, in the ascending tag order the standard mandates. Diff a parser's element list against it to check both the ordering rule and the two different length encodings.
tag,vr,description,encoded_length_bytes
"(0008,0016)",UI,SOP Class UID (Secondary Capture),34
"(0008,0018)",UI,SOP Instance UID (synthetic),56
"(0008,0020)",DA,Study Date (fixed synthetic date),16
"(0008,0060)",CS,Modality: OT (other),10
"(0008,0070)",LO,Manufacturer,32
"(0008,1030)",LO,Study Description,32
"(0010,0010)",PN,Patient Name (not a person),26
"(0010,0020)",LO,Patient ID (not a real identifier),28
"(0010,0030)",DA,Patient Birth Date: deliberately empty,8
"(0010,0040)",CS,Patient Sex: O (other),10
"(0018,1000)",LO,Device Serial Number (fictional),26
"(0020,000D)",UI,Study Instance UID,54
"(0020,000E)",UI,Series Instance UID,56
"(0020,0010)",SH,Study ID,14
"(0020,0011)",IS,Series Number,10
"(0020,0013)",IS,Instance Number,10
"(0028,0002)",US,Samples per Pixel,10
"(0028,0004)",CS,Photometric Interpretation,20
"(0028,0010)",US,Rows,10
"(0028,0011)",US,Columns,10
"(0028,0100)",US,Bits Allocated,10
"(0028,0101)",US,Bits Stored,10
"(0028,0102)",US,High Bit,10
"(0028,0103)",US,Pixel Representation: unsigned,10
"(0028,1050)",DS,Window Center,12
"(0028,1051)",DS,Window Width,12
"(7FE0,0010)",OW,Pixel Data,2060
Specifications
- Elements
- 27
- Columns
- 4
- Order
- ascending tag, as DICOM requires
- Describes
- both the explicit-VR and implicit-VR files
- Pixel Data Bytes
- 2048
Testing contract
Reference control- Scenario
- Parse the explicit-VR file, list its elements in file order, and diff the result against this table.
- Expected result
- The tag sequence matches row for row and is strictly ascending, and each encoded_length_bytes accounts for the tag, the VR, the length field and any odd-length padding byte.
What is a .csv file?
CSV (Comma-Separated Values) is a plain-text tabular format where rows are lines and fields are separated by commas, with quoting rules for values that contain delimiters, quotes, or newlines. It has no formal type system and depends on encoding and dialect conventions. It is the most portable format for tabular data exchange.
How to use this file
Use an example CSV to test parsers against quoting and embedded-delimiter edge cases, header handling, encoding detection, and import pipelines into databases or spreadsheets.
How to use this file for testing
“DICOM-Shaped Dataset — Element Table Reference (.csv)” is a deterministic Novus Examples fixture for Scientific data, Conversion testing, Editor 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: 4 columns. 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.
Code examples
import pandas as pd
df = pd.read_csv("dicom-shaped-element-table.csv")
print(df.head())
print(df.dtypes)Related files
- csvChemistry Fixture Molecule Index (.csv)One row per molecule used across the chemistry fixtures, with formula, molecular weight, SMILES and the atom and bond counts each file should yield. It is the oracle a cheminformatics toolkit can be scored against without needing a second toolkit to generate the answers.

- molEthanol — MDL Molfile V2000 (.mol)Ethanol as a V2000 molfile with fixed-column 3D coordinates, a nine-atom counts line and an eight-bond block. The column widths are part of the format rather than a convention, so it is a genuine test of fixed-width parsing rather than of whitespace splitting.

- sdfEthanol — 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.

- smiEthanol — SMILES String (.smi)Ethanol as a single tab-delimited SMILES record, the most compressed member of this family: three heavy atoms with every hydrogen implicit and no geometry whatsoever. Round-tripping molfile to SMILES and back is the classic lossy conversion, and this pair is the reference for it.

- xyzEthanol — XYZ Cartesian Coordinates (.xyz)The same ethanol geometry in XYZ format: an atom count, a free-text comment line and one line of element and coordinates per atom. XYZ carries no connectivity at all, so converting to it from the molfile is a lossy operation that this pair makes measurable.

- fastaFASTA Contigs — One Line Per Record (.fasta)The same four contigs written one sequence per line rather than wrapped, which is how many pipelines emit FASTA and how many line-oriented parsers assume it always looks. Comparing against the wrapped twin proves a parser joins continuation lines instead of taking the first one.

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