# BIDS Core Workflows The twelve workflow areas in full, with worked code and commands: directory structure, `dataset_description.json`, querying with PyBIDS, validation (PyPI wrapper, Deno, legacy Node, and `.bidsignore`), entities and file naming, DICOM-to-BIDS conversion with HeuDiConv and dcm2bids, metadata sidecars, events files, the participants file, derivatives, advanced PyBIDS usage, and running BIDS-Apps. ## Core Workflows ### 1. BIDS Directory Structure A minimal BIDS dataset follows this layout: ``` my_dataset/ dataset_description.json # Required: name, BIDSVersion, etc. participants.tsv # Recommended: subject-level phenotypic data participants.json # Recommended: column descriptions README # Recommended: dataset documentation CHANGES # Recommended: version history .bidsignore # Optional: patterns to exclude from validation sub-01/ anat/ sub-01_T1w.nii.gz sub-01_T1w.json # Sidecar metadata func/ sub-01_task-rest_bold.nii.gz sub-01_task-rest_bold.json sub-01_task-rest_events.tsv # Event timing for task fMRI sub-01_task-rest_events.json dwi/ sub-01_dwi.nii.gz sub-01_dwi.json sub-01_dwi.bvec sub-01_dwi.bval fmap/ sub-01_phasediff.nii.gz sub-01_phasediff.json sub-01_magnitude1.nii.gz perf/ sub-01_asl.nii.gz sub-01_asl.json sub-01/ ses-pre/ anat/ sub-01_ses-pre_T1w.nii.gz func/ sub-01_ses-pre_task-nback_bold.nii.gz ses-post/ ... ``` **Key points:** - Every NIfTI file should have a corresponding `.json` sidecar - File names encode entities: `sub-