You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ENH: Refactor atlas metadata from JSON to atlases.tsv pattern
Replace atlas-<label>_description.json with atlases.tsv for atlas metadata,
consistent with existing entity-specific TSV files (participants.tsv, sessions.tsv).
Key changes:
- atlases.tsv: placed at derivative dataset root or tpl-<label>/ directory
- Metadata fields converted to snake_case column names
- Array fields (authors, curators, funding, references_and_links) use JSON encoding
Schema changes:
- Add atlas_id and all atlas-specific columns to columns.yaml
- Add atlases suffix to suffixes.yaml
- Add Atlases rule to common_derivatives.yaml
- Add atlases file rule to tables.yaml
- Remove old atlas_description association, context, and metadata rules
- Delete atlas.yaml check and file rules
Documentation:
- Update atlas.md with atlases.tsv section and updated examples
- Add JSON-encoded array note
- Replace all atlas-<label>_description.json references with atlases.tsv
Closes: #2285
Related to: #2283
Related to: #1714
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <[email protected]>
For columns that represent arrays (such as `authors`, `curators`, `funding`,
320
+
and `references_and_links`), the value MUST be a JSON-encoded array of strings.
321
+
For example: `["Jane Doe", "John Doe"]`.
322
+
323
+
!!! tip "Recommendation"
324
+
325
+
The selected `<label>` in the `atlases.tsv` file is RECOMMENDED
326
+
for the [`atlas-<label>` entity](../appendices/entities.md#atlas)
327
+
in downstream derivatives from this particular atlas (see previous section
328
+
[Derivatives from atlases](imaging.md#derivatives-from-atlases)).
329
+
330
+
`atlases.tsv` example:
331
+
332
+
```tsv
333
+
atlas_id name license description authors species sample_size references_and_links
334
+
atlas-Diedrichsen2009 A probabilistic MR atlas of the human cerebellum LICENSE file Probabilistic atlas of the human cerebellum ["Jörn Diedrichsen", "Joshua H Balsters", "Jonathan Flavell", "Emma Cussans", "Narender Ramnani"] human 20 ["https://doi.org/10.1016/j.neuroimage.2009.01.045"]
335
+
atlas-Buckner2011 Atlas of the human cerebellum estimated by intrinsic functional connectivity LICENSE file Cerebellar atlas estimated by intrinsic functional connectivity ["Randy L Buckner", "Fenna M Krienen", "Angela Castellanos", "Julio C Diaz", "B T Thomas Yeo"] human 1000 ["https://doi.org/10.1152/jn.00339.2011"]
336
+
```
337
+
338
+
It is RECOMMENDED to accompany each `atlases.tsv` file with a sidecar
339
+
`atlases.json` file to describe the TSV column names and properties of their values
340
+
(see also the [section on tabular files](../common-principles.md#tabular-files)).
300
341
301
-
Example `atlas-MyAtlas2025_description.json`:
342
+
`atlases.json` example:
302
343
303
344
```JSON
304
345
{
305
-
"Name": "A new atlas of the human brain",
306
-
"Authors": [
307
-
"Jane Doe",
308
-
"John Doe"
309
-
],
310
-
"License": "CC0",
311
-
"RRID": "SCR_002823",
312
-
"Species": "Human"
346
+
"atlas_id": {
347
+
"Description": "Atlas identifier matching the atlas-<label> entity"
348
+
},
349
+
"name": {
350
+
"Description": "Name of the atlas"
351
+
},
352
+
"license": {
353
+
"Description": "License for the atlas"
354
+
},
355
+
"description": {
356
+
"Description": "Brief description of the atlas"
357
+
},
358
+
"authors": {
359
+
"Description": "JSON-encoded array of authors who created the atlas"
360
+
},
361
+
"species": {
362
+
"Description": "Species from which the atlas was derived"
363
+
},
364
+
"sample_size": {
365
+
"Description": "Number of participants used to create the atlas"
366
+
},
367
+
"references_and_links": {
368
+
"Description": "JSON-encoded array of references and links"
369
+
}
313
370
}
314
371
```
315
372
@@ -346,6 +403,7 @@ A guide for using macros can be found at
346
403
-->
347
404
{{ MACROS___make_filetree_example({
348
405
"suit-pipeline": {
406
+
"templates.tsv": "",
349
407
"tpl-SUIT": {
350
408
"anat": {
351
409
"tpl-SUIT_T1w.nii.gz": "",
@@ -373,7 +431,8 @@ A guide for using macros can be found at
373
431
-->
374
432
{{ MACROS___make_filetree_example({
375
433
"suit-pipeline": {
376
-
"atlas-Diedrichsen2009_description.json": "",
434
+
"atlases.tsv": "",
435
+
"templates.tsv": "",
377
436
"tpl-SUIT": {
378
437
"anat": {
379
438
"tpl-SUIT_T1w.nii.gz": "",
@@ -387,26 +446,11 @@ A guide for using macros can be found at
387
446
})
388
447
}}
389
448
390
-
where `atlas-Diedrichsen2009_description.json` could contain:
449
+
where `atlases.tsv` could contain:
391
450
392
-
```JSON
393
-
{
394
-
"Name": "A probabilistic MR atlas of the human cerebellum",
atlas_id name license description authors species sample_size references_and_links
453
+
atlas-Diedrichsen2009 A probabilistic MR atlas of the human cerebellum LICENSE file Probabilistic atlas of the human cerebellum ["Jörn Diedrichsen", "Joshua H Balsters", "Jonathan Flavell", "Emma Cussans", "Narender Ramnani"] human 20 ["https://doi.org/10.1016/j.neuroimage.2009.01.045"]
410
454
```
411
455
412
456
Later, in 2011 a second atlas was developed integrating new segmentations,
@@ -418,8 +462,8 @@ A guide for using macros can be found at
418
462
-->
419
463
{{ MACROS___make_filetree_example({
420
464
"suit-pipeline": {
421
-
"atlas-Buckner2011_description.json": "",
422
-
"atlas-Diedrichsen2009_description.json": "",
465
+
"atlases.tsv": "",
466
+
"templates.tsv": "",
423
467
"tpl-SUIT": {
424
468
"anat": {
425
469
"tpl-SUIT_T1w.nii.gz": "",
@@ -440,27 +484,12 @@ A guide for using macros can be found at
440
484
})
441
485
}}
442
486
443
-
where `atlas-Diedrichsen2009_description.json` remains as above,
444
-
and `atlas-Buckner2011_description.json` could contain:
487
+
where `atlases.tsv` now contains both atlases:
445
488
446
-
```JSON
447
-
{
448
-
"Name": "Atlas of the human cerebellum estimated by intrinsic functional connectivity",
449
-
"Authors": [
450
-
"Randy L Buckner",
451
-
"Fenna M Krienen",
452
-
"Angela Castellanos",
453
-
"Julio C Diaz",
454
-
"B T Thomas Yeo"
455
-
],
456
-
"SampleSize": 1000,
457
-
"License": "LICENSE file",
458
-
"ReferencesAndLinks": [
459
-
"https://doi.org/10.1152/jn.00339.2011",
460
-
"https://github.com/jdiedrichsen/suit"
461
-
],
462
-
"Species": "Human"
463
-
}
489
+
```tsv
490
+
atlas_id name license description authors species sample_size references_and_links
491
+
atlas-Buckner2011 Atlas of the human cerebellum estimated by intrinsic functional connectivity LICENSE file Cerebellar atlas estimated by intrinsic functional connectivity ["Randy L Buckner", "Fenna M Krienen", "Angela Castellanos", "Julio C Diaz", "B T Thomas Yeo"] human 1000 ["https://doi.org/10.1152/jn.00339.2011"]
492
+
atlas-Diedrichsen2009 A probabilistic MR atlas of the human cerebellum LICENSE file Probabilistic atlas of the human cerebellum ["Jörn Diedrichsen", "Joshua H Balsters", "Jonathan Flavell", "Emma Cussans", "Narender Ramnani"] human 20 ["https://doi.org/10.1016/j.neuroimage.2009.01.045"]
464
493
```
465
494
466
495
### Example: Deriving a new atlas referenced in an existing template
@@ -475,7 +504,8 @@ A guide for using macros can be found at
0 commit comments