├── pre-release ├── nwb_specification_language.docx └── nwb_file_format_specification.doc ├── version_1.0.0 ├── nwb_file_format_specification_v1.0.0.pdf └── nwb_core_v1.0.0.JSON ├── version_1.0.3 └── nwb_file_format_specification_v1.0.3.pdf ├── version_1.0.6 └── NWB_file_format_specification_1.0.6.pdf ├── version_1.0.4_beta └── nwb_file_format_specification_1.0.4_beta.pdf ├── version_1.0.5_beta ├── NWB_file_format_specification_1.0.5g_beta.pdf └── nwb_file_format_specification_1.0.5_beta.pdf └── README.md /pre-release/nwb_specification_language.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/pre-release/nwb_specification_language.docx -------------------------------------------------------------------------------- /pre-release/nwb_file_format_specification.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/pre-release/nwb_file_format_specification.doc -------------------------------------------------------------------------------- /version_1.0.0/nwb_file_format_specification_v1.0.0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/version_1.0.0/nwb_file_format_specification_v1.0.0.pdf -------------------------------------------------------------------------------- /version_1.0.3/nwb_file_format_specification_v1.0.3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/version_1.0.3/nwb_file_format_specification_v1.0.3.pdf -------------------------------------------------------------------------------- /version_1.0.6/NWB_file_format_specification_1.0.6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/version_1.0.6/NWB_file_format_specification_1.0.6.pdf -------------------------------------------------------------------------------- /version_1.0.4_beta/nwb_file_format_specification_1.0.4_beta.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/version_1.0.4_beta/nwb_file_format_specification_1.0.4_beta.pdf -------------------------------------------------------------------------------- /version_1.0.5_beta/NWB_file_format_specification_1.0.5g_beta.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/version_1.0.5_beta/NWB_file_format_specification_1.0.5g_beta.pdf -------------------------------------------------------------------------------- /version_1.0.5_beta/nwb_file_format_specification_1.0.5_beta.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NeurodataWithoutBorders/specification_nwbn_1_0_x/HEAD/version_1.0.5_beta/nwb_file_format_specification_1.0.5_beta.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # specification 2 | NWB format specification and schema 3 | 4 | [NWB format specification version 1.0.4_beta](https://github.com/NeurodataWithoutBorders/specification/tree/master/version_1.0.4_beta) is now available. 5 | -------------------------------------------------------------------------------- /version_1.0.0/nwb_core_v1.0.0.JSON: -------------------------------------------------------------------------------- 1 | { 2 | "core": { 3 | "structures": { 4 | "extracellular_ephys/": { 5 | "/": { 6 | "device": { 7 | "references": "/general/devices/devices//", 8 | "description": "Name of device(s) in /general/devices", 9 | "data_type": "text" 10 | }, 11 | "location": { 12 | "description": "Description of probe location", 13 | "data_type": "text" 14 | }, 15 | "description": { 16 | "description": "Description of probe or shank", 17 | "data_type": "text" 18 | }, 19 | "_description": "One folder for each electrode group. Name matches group_id" 20 | }, 21 | "impedance": { 22 | "description": "Impediance of electodes in electrode_map", 23 | "data_type": "text", 24 | "dimensions": [ 25 | "electrode_number" 26 | ] 27 | }, 28 | "filtering": { 29 | "description": "Description of filtering used. If this changes between TimeSeries, filter description should be stored as a text attribute for each TimeSeries.", 30 | "data_type": "text" 31 | }, 32 | "electrode_group": { 33 | "references": "/", 34 | "description": "Identification string for probe, shank or tetrode", 35 | "data_type": "text", 36 | "dimensions": [ 37 | "electrode_number" 38 | ] 39 | }, 40 | "electrode_map": { 41 | "xyz": { 42 | "type": "struct", 43 | "components": [ 44 | { 45 | "alias": "x", 46 | "unit": "meter" 47 | }, 48 | { 49 | "alias": "y", 50 | "unit": "meter" 51 | }, 52 | { 53 | "alias": "z", 54 | "unit": "meter" 55 | } 56 | ] 57 | }, 58 | "description": "Physical location of electrode, x,y,z in meters", 59 | "data_type": "number", 60 | "dimensions": [ 61 | "electrode_number", 62 | "xyz" 63 | ] 64 | } 65 | }, 66 | "protocol": { 67 | "description": "Experimetnal protocol, if applicable (e.g., IACUC)", 68 | "data_type": "text" 69 | }, 70 | "slices": { 71 | "description": "Description of slices, including information about preparation thickness, orientation, temperature and bath solution", 72 | "data_type": "text" 73 | }, 74 | "/": { 75 | "merge": [ 76 | "/" 77 | ], 78 | "data": { 79 | "dimensions": [ 80 | "timeIndex" 81 | ], 82 | "data_type": "number" 83 | }, 84 | "description": "General purpose time series", 85 | "attributes": { 86 | "ancestry": { 87 | "value": "TimeSeries", 88 | "data_type": "text" 89 | } 90 | } 91 | }, 92 | "LFP/": { 93 | "merge": [ 94 | "/" 95 | ], 96 | "include": { 97 | "/": { 98 | "data": { 99 | "semantic_type": "+LFP" 100 | } 101 | } 102 | }, 103 | "parent_attributes": { 104 | "interfaces": { 105 | "value": "+LFP", 106 | "data_type": "text" 107 | } 108 | } 109 | }, 110 | "/": { 111 | "merge": [ 112 | "/" 113 | ], 114 | "data": { 115 | "dimensions": [ 116 | "timeIndex" 117 | ], 118 | "data_type": "text" 119 | }, 120 | "description": "Stores user annotations made during an experiment.", 121 | "attributes": { 122 | "ancestry": { 123 | "value": "TimeSeries,AnnotationSeries", 124 | "data_type": "text" 125 | } 126 | } 127 | }, 128 | "": { 129 | "attributes": { 130 | "neurodata_type": { 131 | "value": "image", 132 | "data_type": "text" 133 | }, 134 | "description": { 135 | "description": "Descriptive text describing the image", 136 | "data_type": "text" 137 | }, 138 | "format": { 139 | "description": "Format of the image (eg, 'png', 'avi')", 140 | "data_type": "text" 141 | } 142 | }, 143 | "description": "Documentation image (or movie). Dimensions left unspecified", 144 | "data_type": "any" 145 | }, 146 | "/": { 147 | "merge": [ 148 | "/" 149 | ], 150 | "masked_imageseries/": { 151 | "description": "Link to ImageSeries that mask is applied to" 152 | }, 153 | "masked_imageseries_path": { 154 | "description": "Path to linked ImageSeries", 155 | "data_type": "text" 156 | }, 157 | "description": "An alpha mask that is applied to a presented visual stimulus.", 158 | "attributes": { 159 | "ancestry": { 160 | "value": "TimeSeries,ImageSeries,ImageMaskSeries", 161 | "data_type": "text" 162 | } 163 | } 164 | }, 165 | "/": { 166 | "attributes": { 167 | "interfaces": { 168 | "data_type": "text" 169 | }, 170 | "neurodata_type": { 171 | "value": "Module", 172 | "data_type": "text" 173 | } 174 | } 175 | }, 176 | "neurodata_version": { 177 | "description": "File version string. This will be the name of the format with trailing major, minor and patch numbers (e.g., NWB-0.4.18)", 178 | "data_type": "text" 179 | }, 180 | "EventWaveform/": { 181 | "merge": [ 182 | "/" 183 | ], 184 | "include": { 185 | "/*": {} 186 | }, 187 | "parent_attributes": { 188 | "interfaces": { 189 | "value": "+EventWaveform", 190 | "data_type": "text" 191 | } 192 | } 193 | }, 194 | "/": { 195 | "starting_time?": { 196 | "attributes": { 197 | "rate": { 198 | "description": "Data sampling or stimulus presentation rate (Hz)", 199 | "data_type": "float" 200 | }, 201 | "unit": { 202 | "value": "Seconds (all neurodata timestamps are in seconds)", 203 | "data_type": "text" 204 | } 205 | }, 206 | "unit": "second", 207 | "description": "In some edge cases it is not practical to store every timestamp (e.g., single-cell patch-clamp data sampled at 200KHz). For these cases, a field called starting_time is used instead of timestamps. The field starting_time stores the starting time of the timeseries along with the exact sampling rate.", 208 | "data_type": "float" 209 | }, 210 | "control?": { 211 | "references": "control_description.num_control_values", 212 | "description": "Numerical labels that apply to each element in data[]. Optional field. If present, the control array should have the same number of elements as data[]", 213 | "data_type": "int", 214 | "dimensions": [ 215 | "timeIndex" 216 | ] 217 | }, 218 | "control_description?": { 219 | "dimensions": [ 220 | "num_control_values" 221 | ], 222 | "data_type": "text", 223 | "description": "Description of each control value. Array length should be as long as the highest number in control minus one, generating an zero-based indexed array for control values" 224 | }, 225 | "description": "Times that are synced to data", 226 | "timestamps": { 227 | "description": "Timestamps for samples stored in data", 228 | "data_type": "float", 229 | "semantic_type": "timestamps", 230 | "attributes": { 231 | "rate": { 232 | "description": "Sampling rate if known", 233 | "data_type": "float" 234 | }, 235 | "interval": { 236 | "value": 1, 237 | "data_type": "int" 238 | } 239 | }, 240 | "unit": "Seconds (all neurodata timestamps are in seconds)", 241 | "dimensions": [ 242 | "timeIndex" 243 | ] 244 | }, 245 | "attributes": { 246 | "source": { 247 | "value": "Unspecified source", 248 | "data_type": "text" 249 | }, 250 | "neurodata_type": { 251 | "value": "TimeSeries", 252 | "data_type": "text" 253 | }, 254 | "ancestry": { 255 | "value": "TimeSeries", 256 | "data_type": "text" 257 | }, 258 | "description": { 259 | "data_type": "text" 260 | }, 261 | "data_link": { 262 | "description": "List of the paths of all TimeSeries that share a hard link to the same data field. Attribute is only present if links are present. List should include the path to this TimeSeries also", 263 | "data_type": "text" 264 | }, 265 | "help": { 266 | "description": "Displays the 'description' field of the time series stored in the specification file/language", 267 | "data_type": "text" 268 | }, 269 | "missing_fields": { 270 | "description": "List of fields defined as 'required' parts of the TimeSeries that are missing", 271 | "data_type": "text" 272 | }, 273 | "comments": { 274 | "data_type": "text" 275 | }, 276 | "timestamp_link": { 277 | "description": "List of the paths of all TimeSeries that share a hard link to the same timestamps field. Attribute is only present if links are present. List should include the path to this TimeSeries also", 278 | "data_type": "text" 279 | } 280 | }, 281 | "num_samples": { 282 | "description": "Number of samples valid for timestamp", 283 | "data_type": "int" 284 | }, 285 | "data": { 286 | "attributes": { 287 | "conversion": { 288 | "data_type": "float" 289 | }, 290 | "resolution": { 291 | "data_type": "number" 292 | }, 293 | "unit": { 294 | "data_type": "text" 295 | } 296 | } 297 | }, 298 | "sync/?": { 299 | "description": "Lab specific time and sync information" 300 | } 301 | }, 302 | "BehavioralTimeSeries/": { 303 | "merge": [ 304 | "/" 305 | ], 306 | "include": { 307 | "/*": { 308 | "data": { 309 | "semantic_type": "+BehavioralTimeSeries" 310 | } 311 | } 312 | }, 313 | "Description": "Behavoioral time series", 314 | "parent_attributes": { 315 | "interfaces": { 316 | "value": "+BehavorialEpochs", 317 | "data_type": "text" 318 | } 319 | } 320 | }, 321 | "optophysiology/": { 322 | "/*": { 323 | "reference_frame": { 324 | "description": "Describes position and reference frame of manifold based on position of first element in manifold.", 325 | "data_type": "text" 326 | }, 327 | "manifold": { 328 | "attributes": { 329 | "conversion": { 330 | "value": 1.0, 331 | "data_type": "float" 332 | }, 333 | "unit": { 334 | "value": "Meter", 335 | "data_type": "text" 336 | } 337 | }, 338 | "description": "Physical position of each pixel.", 339 | "data_type": "float", 340 | "dimensions": [ 341 | "height", 342 | "weight", 343 | "xyz" 344 | ] 345 | }, 346 | "description": "Folder one of possibly many folders describing an imaging plane. Name is arbitrary but should be meaningful. It is referenced by TwoPhotonSeries and also ImageSegmentation and DfOverF interfaces.", 347 | "imaging_rate": { 348 | "data_type": "text" 349 | }, 350 | "device": { 351 | "references": "/general/devices//", 352 | "description": "Name of device in /general/devices", 353 | "data_type": "text" 354 | }, 355 | "/": { 356 | "description": { 357 | "description": "Any notes or comments about the channel", 358 | "data_type": "text" 359 | }, 360 | "emission_lambda": { 361 | "description": "Emission lambda for channel", 362 | "data_type": "text" 363 | } 364 | }, 365 | "xyz": { 366 | "type": "struct", 367 | "components": [ 368 | { 369 | "alias": "x", 370 | "unit": "meter" 371 | }, 372 | { 373 | "alias": "y", 374 | "unit": "meter" 375 | }, 376 | { 377 | "alias": "z", 378 | "unit": "meter" 379 | } 380 | ] 381 | }, 382 | "excitation_lambda": { 383 | "description": "Excitation wavelength", 384 | "data_type": "text" 385 | }, 386 | "indicator": { 387 | "description": "Calcium indicator", 388 | "data_type": "text" 389 | }, 390 | "location": { 391 | "description": "Location of image plane", 392 | "data_type": "text" 393 | } 394 | } 395 | }, 396 | "UnitTimes/": { 397 | "unit_list": { 398 | "references": "/", 399 | "description": "List of units present", 400 | "data_type": "text", 401 | "dimensions": [ 402 | "num_units" 403 | ] 404 | }, 405 | "merge": [ 406 | "/" 407 | ], 408 | "description": "Event times of observed units (e.g. cell, synapse, etc.)", 409 | "/*": { 410 | "unit_description": { 411 | "description": "Description of the unit (e.g. cell type)", 412 | "data_type": "text" 413 | }, 414 | "source?": { 415 | "description": "Name, path or description of where unit times originatd", 416 | "data_type": "text" 417 | }, 418 | "times": { 419 | "unit": "second", 420 | "semantic_type": "timestamps", 421 | "description": "Spike time for the units", 422 | "data_type": "number", 423 | "dimensions": [ 424 | "eventIndex" 425 | ] 426 | } 427 | }, 428 | "parent_attributes": { 429 | "interfaces": { 430 | "value": "+UnitTimes", 431 | "data_type": "text" 432 | } 433 | } 434 | }, 435 | "surgery": { 436 | "description": "Narrative description about surgery/surgeries, including date(s) and who performed surgery", 437 | "data_type": "text" 438 | }, 439 | "/": { 440 | "description": "Stores 'snapshots' of spike events (e.g. threshold crossings).", 441 | "source": { 442 | "description": "Source of events (eg, timeseries, hardware) and description of event definition", 443 | "data_type": "text" 444 | }, 445 | "electrode_idx": { 446 | "references": "/general/extracellular_ephys/electrode_map.electrode_number", 447 | "description": "Indicies to electrodes in general/extracellular_ephys/electrode_map", 448 | "data_type": "int", 449 | "dimensions": [ 450 | "channelIndex" 451 | ] 452 | }, 453 | "merge": [ 454 | "/" 455 | ], 456 | "attributes": { 457 | "ancestry": { 458 | "value": "TimeSeries, SpikeEventSeries", 459 | "data_type": "text" 460 | } 461 | }, 462 | "data": { 463 | "unit": "volt", 464 | "semantic_type": "SpikeEventSeries", 465 | "description": "Spike waveforms", 466 | "data_type": "number", 467 | "dimensions": [ 468 | "timeIndex", 469 | "channelIndex", 470 | "sampleIndex" 471 | ] 472 | } 473 | }, 474 | "session_description": { 475 | "description": "One or two sentences describing the experiment and data in the file", 476 | "data_type": "text" 477 | }, 478 | "data_collection": { 479 | "description": "Notes about data collection and analysis", 480 | "data_type": "text" 481 | }, 482 | "Position/": { 483 | "merge": [ 484 | "/" 485 | ], 486 | "include": { 487 | "/*": {} 488 | }, 489 | "description": "Position data, whether along the x, x/y or x/y/z axis.", 490 | "parent_attributes": { 491 | "interfaces": { 492 | "value": "+Position", 493 | "data_type": "text" 494 | } 495 | } 496 | }, 497 | "/": { 498 | "merge": [ 499 | "/" 500 | ], 501 | "description": "Stores images or path to images on file system", 502 | "format": { 503 | "description": "Format of image. If this is 'external' then the field external_file contains the path or URL information to that file. For tiff, png, jpg, etc, the binary representation of the image is stored in data. If the format is raw then the fields bit_per_pixel and dimension are used. For raw images, only a single channel is stored (eg, red).", 504 | "data_type": "text" 505 | }, 506 | "attributes": { 507 | "ancestry": { 508 | "value": "TimeSeries,ImageSeries", 509 | "data_type": "text" 510 | } 511 | }, 512 | "bits_per_pixel": { 513 | "description": "Number of bit per image pixel", 514 | "data_type": "number" 515 | }, 516 | "data": { 517 | "description": "Either binary data containing image or empty", 518 | "data_type": "number", 519 | "dimensions": [ 520 | "frame", 521 | "x", 522 | "y" 523 | ] 524 | }, 525 | "dimension": { 526 | "description": "Number of pixels on x, y, (and z) axes", 527 | "data_type": "int", 528 | "dimensions": [ 529 | "rank" 530 | ] 531 | }, 532 | "external_file?": { 533 | "description": "Path or URL to external file. Field only present if format=external", 534 | "data_type": "text" 535 | } 536 | }, 537 | "devices/": { 538 | "*": { 539 | "description": "One of possibly many. Information about device and device description.", 540 | "data_type": "text" 541 | }, 542 | "description": "Description of hardware devices used during experiment." 543 | }, 544 | "FeatureExtraction/": { 545 | "description": { 546 | "description": "Description of each feature", 547 | "data_type": "text", 548 | "dimensions": [ 549 | "featureIndex" 550 | ] 551 | }, 552 | "electrode_idx": { 553 | "references": "/general/extracellular_ephys/electrode_map.electrode_number", 554 | "description": "Indicies to electrodes in general/extracellular_ephys/electrode_map", 555 | "data_type": "int", 556 | "dimensions": [ 557 | "channelIndex" 558 | ] 559 | }, 560 | "times": { 561 | "unit": "second", 562 | "semantic_type": "timestamps", 563 | "description": "Time of events that features correspond to", 564 | "data_type": "number", 565 | "dimensions": [ 566 | "eventIndex" 567 | ] 568 | }, 569 | "merge": [ 570 | "/" 571 | ], 572 | "parent_attributes": { 573 | "interfaces": { 574 | "value": "+FeatureExtraction", 575 | "data_type": "text" 576 | } 577 | }, 578 | "features": { 579 | "description": "Array of features extracted from each event", 580 | "data_type": "number", 581 | "dimensions": [ 582 | "eventIndex", 583 | "channelIndex", 584 | "featureIndex" 585 | ] 586 | } 587 | }, 588 | "FilteredEphys/": { 589 | "merge": [ 590 | "/" 591 | ], 592 | "include": { 593 | "/*": {} 594 | }, 595 | "parent_attributes": { 596 | "interfaces": { 597 | "value": "+FilteredEphys", 598 | "data_type": "text" 599 | } 600 | } 601 | }, 602 | "PupilTracking/": { 603 | "merge": [ 604 | "/" 605 | ], 606 | "include": { 607 | "/*": { 608 | "data": { 609 | "semantic_type": "PupilTracking" 610 | } 611 | } 612 | }, 613 | "description": "Eye-tracking data, representing pupil size.", 614 | "parent_attributes": { 615 | "interfaces": { 616 | "value": "+PupilTracking", 617 | "data_type": "text" 618 | } 619 | } 620 | }, 621 | "/": { 622 | "description": "Abstract features, such as quantitative descriptions of sensory stimuli.", 623 | "feature_units": { 624 | "description": "Units of each feature", 625 | "data_type": "text", 626 | "dimensions": [ 627 | "featureIndex" 628 | ] 629 | }, 630 | "feature": { 631 | "description": "Description of the features represented in TimeSeries::data", 632 | "data_type": "text", 633 | "dimensions": [ 634 | "timeIndex", 635 | "featureIndex" 636 | ] 637 | }, 638 | "merge": [ 639 | "/" 640 | ], 641 | "attributes": { 642 | "ancestry": { 643 | "value": "TimeSeries,AbstractFeatureSeries", 644 | "data_type": "text" 645 | } 646 | }, 647 | "data": { 648 | "dimensions": [ 649 | "timeIndex", 650 | "featureIndex" 651 | ], 652 | "data_type": "number" 653 | } 654 | }, 655 | "EventDetection/": { 656 | "merge": [ 657 | "/" 658 | ], 659 | "description": "Detected spike events from voltage trace(s).", 660 | "source_electricalseries_path": { 661 | "references": "/", 662 | "description": "Path to linked ElectricalSeries", 663 | "data_type": "text" 664 | }, 665 | "detection_method": { 666 | "description": "Description of how events were detected, such as voltage threshold, or dV/dT threshold, as well as relevant values", 667 | "data_type": "text" 668 | }, 669 | "times": { 670 | "unit": "second", 671 | "semantic_type": "timestamps", 672 | "description": "Spike time for the units", 673 | "data_type": "number", 674 | "dimensions": [ 675 | "eventIndex" 676 | ] 677 | }, 678 | "source_idx": { 679 | "references": "source_electrical_series/data.timeIndex", 680 | "description": "Indices into source TimeSeries::data array corresponding to time of event.", 681 | "data_type": "int", 682 | "dimensions": [ 683 | "eventIndex" 684 | ] 685 | }, 686 | "source_electricalseries/": { 687 | "description": "HDF5 link to TimeSeries that this data was calculated from." 688 | }, 689 | "parent_attributes": { 690 | "interfaces": { 691 | "value": "+EventDection", 692 | "data_type": "text" 693 | } 694 | } 695 | }, 696 | "notes": { 697 | "description": "Notes about the experiment, especially things particular to this experiment", 698 | "data_type": "text" 699 | }, 700 | "/": { 701 | "description": "ROI responses over an imaging plane. Each row in data[] should correspond to the signal from one ROI.", 702 | "segmentation_interface/": { 703 | "description": "HDF5 link to image segmentation module defining ROIs" 704 | }, 705 | "segmentation_interface_path": { 706 | "description": "Path to segmentation module", 707 | "data_type": "text" 708 | }, 709 | "roi_names": { 710 | "description": "List of ROIs represented, one name for each row of data[]", 711 | "data_type": "text", 712 | "dimensions": [ 713 | "RoiIndex" 714 | ] 715 | }, 716 | "merge": [ 717 | "/" 718 | ], 719 | "attributes": { 720 | "ancestry": { 721 | "value": "TimeSeries,RoiResponseSeries>", 722 | "data_type": "text" 723 | } 724 | }, 725 | "data": { 726 | "semantic_type": "RoiResponseSeries", 727 | "description": "Signals from ROIs", 728 | "data_type": "number", 729 | "dimensions": [ 730 | "timeIndex", 731 | "RoiIndex" 732 | ] 733 | } 734 | }, 735 | "stimulus": { 736 | "description": "Notes about stimuli, such as how and where presented", 737 | "data_type": "text" 738 | }, 739 | "/": { 740 | "merge": [ 741 | "/" 742 | ], 743 | "reference_frame": { 744 | "description": "Description defining what exactly 'straight-ahead' means", 745 | "data_type": "text" 746 | }, 747 | "data": { 748 | "semantic_type": "RoiResponseSeries", 749 | "description": "2-D array storing position or direction relative to some reference frame.", 750 | "data_type": "number", 751 | "dimensions": [ 752 | "timeIndex", 753 | "featureIndex" 754 | ] 755 | }, 756 | "description": "Direction, e.g., of gaze or travel, or position.", 757 | "attributes": { 758 | "ancestry": { 759 | "value": "TimeSeries,SpatialSeries>", 760 | "data_type": "text" 761 | } 762 | } 763 | }, 764 | "BehavioralEvents/": { 765 | "merge": [ 766 | "/" 767 | ], 768 | "include": { 769 | "/*": { 770 | "data": { 771 | "semantic_type": "+BehavorialEvents" 772 | } 773 | } 774 | }, 775 | "Description": "TimeSeries for storing behavioral irregular events", 776 | "parent_attributes": { 777 | "interfaces": { 778 | "value": "+BehavorialEvents", 779 | "data_type": "text" 780 | } 781 | } 782 | }, 783 | "EyeTracking/": { 784 | "merge": [ 785 | "/" 786 | ], 787 | "include": { 788 | "/*": {} 789 | }, 790 | "parent_attributes": { 791 | "interfaces": { 792 | "value": "+EyeTracking", 793 | "data_type": "text" 794 | } 795 | } 796 | }, 797 | "related_publications": { 798 | "description": "Publication information, such as PMID, DOI, URL, etc", 799 | "data_type": "text" 800 | }, 801 | "/": { 802 | "merge": [ 803 | "/" 804 | ], 805 | "electrode_name": { 806 | "references": "/general/intracellular_ephys//", 807 | "description": "Name of electrode entry in /general/intracellular_ephys", 808 | "data_type": "text" 809 | }, 810 | "data": { 811 | "semantic_type": "PatchClampSeries", 812 | "description": "Recorded voltage or current", 813 | "data_type": "number", 814 | "dimensions": [ 815 | "timeIndex" 816 | ] 817 | }, 818 | "description": "Stores stimulus or response current or voltage.", 819 | "attributes": { 820 | "ancestry": { 821 | "value": "TimeSeries,PatchClampSeries", 822 | "data_type": "text" 823 | } 824 | } 825 | }, 826 | "/": { 827 | "merge": [ 828 | "/" 829 | ], 830 | "data": { 831 | "unit": "none", 832 | "semantic_type": "IntervalSeries", 833 | "description": ">0 if interval started, <0 if interval ended", 834 | "data_type": "int", 835 | "dimensions": [ 836 | "timeIndex" 837 | ] 838 | }, 839 | "description": "Stores intervals of data.", 840 | "attributes": { 841 | "ancestry": { 842 | "value": "TimeSeries,IntervalSeries", 843 | "data_type": "text" 844 | } 845 | } 846 | }, 847 | "institution": { 848 | "description": "Institution(s) where experiment was performed", 849 | "data_type": "text" 850 | }, 851 | "/": { 852 | "site": { 853 | "references": "/general/optogenetics//", 854 | "description": "Name of site description in general/optogentics", 855 | "data_type": "text" 856 | }, 857 | "merge": [ 858 | "/" 859 | ], 860 | "data": { 861 | "unit": "watt", 862 | "description": "Applied power for optogenetic stimulus", 863 | "data_type": "number", 864 | "dimensions": [ 865 | "timeIndex" 866 | ] 867 | }, 868 | "description": "Optogenetic stimulus.", 869 | "attributes": { 870 | "ancestry": { 871 | "value": "TimeSeries,OptogeneticSeries", 872 | "data_type": "text" 873 | } 874 | } 875 | }, 876 | "/": { 877 | "description": "Stores current data recorded from intracellular voltage-clamp recordings. A corresponding VoltageClampStimulusSeries (stored separately as a stimulus) is used to store the voltage injected. The VoltageClampSeries has all of the datasets of an PatchClampSeries as well as the following:", 878 | "capacitance_slow": { 879 | "unit": "Farad", 880 | "description": "Capacitance slow", 881 | "data_type": "float" 882 | }, 883 | "resistance_comp_bandwidth": { 884 | "unit": "Hz", 885 | "description": "resistance_comp_bandwidth", 886 | "data_type": "number" 887 | }, 888 | "gain": { 889 | "unit": "Volt/Amp", 890 | "description": "gain", 891 | "data_type": "float" 892 | }, 893 | "whole_cell_series_resistance_comp": { 894 | "unit": "Ohm", 895 | "description": "whole_cell_series_resistance_comp", 896 | "data_type": "float" 897 | }, 898 | "merge": [ 899 | "/" 900 | ], 901 | "resistance_comp_prediction": { 902 | "unit": "%", 903 | "description": "resistance_comp_prediction", 904 | "data_type": "number" 905 | }, 906 | "attributes": { 907 | "ancestry": { 908 | "value": "TimeSeries,PatchClampSeries,VoltageClampSeries", 909 | "data_type": "text" 910 | } 911 | }, 912 | "resistance_comp_correction": { 913 | "unit": "%", 914 | "description": "resistance_comp_correction", 915 | "data_type": "number" 916 | }, 917 | "whole_cell_capacitance_comp": { 918 | "unit": "Farad", 919 | "description": "whole_cell_capacitance_comp", 920 | "data_type": "float" 921 | }, 922 | "capacitance_fast": { 923 | "unit": "Farad", 924 | "description": "Capacitance fast", 925 | "data_type": "float" 926 | } 927 | }, 928 | "lab": { 929 | "description": "Lab where experiment was performed", 930 | "data_type": "text" 931 | }, 932 | "CompassDirection/": { 933 | "merge": [ 934 | "/" 935 | ], 936 | "include": { 937 | "/*": {} 938 | }, 939 | "description": "A SpatialSeries object representing a floating point value for theta.", 940 | "parent_attributes": { 941 | "interfaces": { 942 | "value": "+CompassDirection", 943 | "data_type": "text" 944 | } 945 | } 946 | }, 947 | "/": { 948 | "indexed_timesereis_path": { 949 | "description": "Path to linked TimeSeries" 950 | }, 951 | "description": "Stores indices to image frames stored in an ImageSeries.", 952 | "indexed_timeseries/": { 953 | "description": "HDF5 link to TimeSeries containing images that are indexed" 954 | }, 955 | "merge": [ 956 | "/" 957 | ], 958 | "attributes": { 959 | "ancestry": { 960 | "value": "TimeSeries,IndexSeries", 961 | "data_type": "text" 962 | } 963 | }, 964 | "data": { 965 | "references": "indexed_timeseries/data.timeIndex", 966 | "dimensions": [ 967 | "timeIndex" 968 | ], 969 | "data_type": "int" 970 | } 971 | }, 972 | "virus": { 973 | "description": "Information about virus(es) used in experiments, including virus ID, source, date made, injection location, volume, etc", 974 | "data_type": "text" 975 | }, 976 | "BehavioralEpochs/": { 977 | "merge": [ 978 | "/" 979 | ], 980 | "include": { 981 | "/*": { 982 | "data": { 983 | "semantic_type": "+BehavorialEpochs" 984 | } 985 | } 986 | }, 987 | "Description": "TimeSeries for storing behavoioral epochs", 988 | "parent_attributes": { 989 | "interfaces": { 990 | "value": "+BehavorialEpochs", 991 | "data_type": "text" 992 | } 993 | } 994 | }, 995 | "experimenter": { 996 | "description": "Name of person who performed the experiment", 997 | "data_type": "text" 998 | }, 999 | "/": { 1000 | "attributes": { 1001 | "source": { 1002 | "references": "/", 1003 | "description": "Path to the origin of the data represented in this interface", 1004 | "data_type": "text" 1005 | } 1006 | } 1007 | }, 1008 | "/": { 1009 | "merge": [ 1010 | "/" 1011 | ], 1012 | "description": "Aliases to standard PatchClampSeries. Its functionality is to better tag PatchClampSeries for machine (and human) readability of the file.", 1013 | "attributes": { 1014 | "ancestry": { 1015 | "value": "TimeSeries,PatchClampSeries,CurrentClampStimulusSeries", 1016 | "data_type": "text" 1017 | } 1018 | } 1019 | }, 1020 | "/": { 1021 | "description": "A special case of optical imaging.", 1022 | "merge": [ 1023 | "/" 1024 | ], 1025 | "scan_line_rate": { 1026 | "data_type": "number", 1027 | "description": "Scan lines per second (Hz)", 1028 | "unit": "Hz" 1029 | }, 1030 | "pmt_gain": { 1031 | "description": "Photomultiplier gain", 1032 | "data_type": "number" 1033 | }, 1034 | "field_of_view": { 1035 | "whd": { 1036 | "type": "struct", 1037 | "components": [ 1038 | { 1039 | "alias": "width", 1040 | "unit": "meter" 1041 | }, 1042 | { 1043 | "alias": "height", 1044 | "unit": "meter" 1045 | }, 1046 | { 1047 | "alias": "depth", 1048 | "unit": "meter" 1049 | } 1050 | ] 1051 | }, 1052 | "description": "Width, height and depth of image, or imaged area (meters)", 1053 | "data_type": "float", 1054 | "dimensions": [ 1055 | "whd" 1056 | ] 1057 | }, 1058 | "attributes": { 1059 | "ancestry": { 1060 | "value": "TimeSeries,ImageSeries,TwoPhotonSeries", 1061 | "data_type": "text" 1062 | } 1063 | }, 1064 | "imaging_plane": { 1065 | "references": "/general/optophysiology/", 1066 | "description": "Name of imaging plane description in /general/optophysiology", 1067 | "data_type": "text" 1068 | } 1069 | }, 1070 | "session_start_time": { 1071 | "description": "Date and time experiment was started was created, UTC (ISO 8601). This serves as the reference time for data in the file. All timestamps in a neurodata file are stored as seconds after this reference time", 1072 | "data_type": "text" 1073 | }, 1074 | "DfOverF/": { 1075 | "merge": [ 1076 | "/" 1077 | ], 1078 | "include": { 1079 | "/*": {} 1080 | }, 1081 | "parent_attributes": { 1082 | "interfaces": { 1083 | "value": "+DfOverF", 1084 | "data_type": "text" 1085 | } 1086 | }, 1087 | "description": "dF/F information about a region of interest (ROI). Storage hierarchy of dF/F should be the same as for segmentation (ie, same names for ROIs and for image planes). DfOverF/" 1088 | }, 1089 | "pharmacology": { 1090 | "description": "Description of drugs used, including how and when they were administered", 1091 | "data_type": "text" 1092 | }, 1093 | "experiment_description": { 1094 | "description": "General description of the experiment", 1095 | "data_type": "text" 1096 | }, 1097 | "subject/": { 1098 | "genotype": { 1099 | "description": "Genotype of subject", 1100 | "data_type": "text" 1101 | }, 1102 | "weight": { 1103 | "description": "Weight at time of experiment, at time of surgery and at other important times", 1104 | "data_type": "text" 1105 | }, 1106 | "age": { 1107 | "description": "Age of subject", 1108 | "data_type": "text" 1109 | }, 1110 | "sex": { 1111 | "description": "Gender of subject", 1112 | "data_type": "text" 1113 | }, 1114 | "species": { 1115 | "description": "Species of subject", 1116 | "data_type": "text" 1117 | }, 1118 | "subject_id": { 1119 | "description": "ID of animal/person used/participating in experiment (lab convention)", 1120 | "data_type": "text" 1121 | }, 1122 | "description": { 1123 | "description": "Description of subject and where subject came from (e.g., breeder, if animal)", 1124 | "data_type": "text" 1125 | } 1126 | }, 1127 | "/": { 1128 | "merge": [ 1129 | "/" 1130 | ], 1131 | "description": "Aliases to standard PatchClampSeries. Its functionality is to better tag PatchClampSeries for machine (and human) readability of the file.", 1132 | "attributes": { 1133 | "ancestry": { 1134 | "value": "TimeSeries,PatchClampSeries,VoltageClampStimulusSeries", 1135 | "data_type": "text" 1136 | } 1137 | } 1138 | }, 1139 | "epochs/": { 1140 | "/": { 1141 | "description": { 1142 | "data_type": "text" 1143 | }, 1144 | "tags": { 1145 | "description": "User defined tags that help characterize an epoch", 1146 | "data_type": "text", 1147 | "dimensions": [ 1148 | "num_tags" 1149 | ] 1150 | }, 1151 | "start_time": { 1152 | "unit": "second", 1153 | "description": "Start time of epoch, in seconds", 1154 | "data_type": "number" 1155 | }, 1156 | "stop_time": { 1157 | "unit": "second", 1158 | "description": "Stop time of epoch, in seconds", 1159 | "data_type": "float" 1160 | }, 1161 | "attributes": { 1162 | "neurodata_type": { 1163 | "value": "Epoch", 1164 | "data_type": "text" 1165 | } 1166 | }, 1167 | "/*": { 1168 | "count": { 1169 | "description": "Number of entries in TimeSeries::data that overlaps with this epoch", 1170 | "data_type": "int" 1171 | }, 1172 | "timeseries/": { 1173 | "description": "Link to timeseries. Target timeseries can be anywhere in the file" 1174 | }, 1175 | "description": "Reference for zero or more time series that overlap with epoch", 1176 | "idx_start": { 1177 | "description": "First index in timeseries::data that overlaps with this epoch", 1178 | "data_type": "int" 1179 | } 1180 | } 1181 | }, 1182 | "description": "Top-level epochs group", 1183 | "links": { 1184 | "description": "A human-readable list mapping TimeSeries entries in the epoch to the path of the TimeSeries within the file.", 1185 | "data_type": "text" 1186 | }, 1187 | "tags": { 1188 | "description": "A list of the different tags used by epochs.", 1189 | "data_type": "text", 1190 | "dimensions": [ 1191 | "num_tags" 1192 | ] 1193 | } 1194 | }, 1195 | "ImageSegmentation/": { 1196 | "merge": [ 1197 | "/" 1198 | ], 1199 | "parent_attributes": { 1200 | "interfaces": { 1201 | "value": "+ImageSegmentation", 1202 | "data_type": "text" 1203 | } 1204 | }, 1205 | "/*": { 1206 | "roi_list": { 1207 | "references": "/", 1208 | "description": "List of ROIs in this imaging plane", 1209 | "data_type": "text", 1210 | "dimensions": [ 1211 | "num_rois" 1212 | ] 1213 | }, 1214 | "/*": { 1215 | "img_mask": { 1216 | "description": "ROI mask, represented in 2D ([y][x]) intensity image", 1217 | "data_type": "number", 1218 | "dimensions": [ 1219 | "numx", 1220 | "numy" 1221 | ] 1222 | }, 1223 | "roi_description": { 1224 | "description": "Description of this ROI", 1225 | "data_type": "text" 1226 | }, 1227 | "pix_mask": { 1228 | "attributes": { 1229 | "weight": { 1230 | "description": "Weight of each pixel", 1231 | "data_type": "int" 1232 | } 1233 | }, 1234 | "description": "List of pixels (x,y) that compose mask", 1235 | "data_type": "float", 1236 | "dimensions": [ 1237 | "2", 1238 | "numPixels" 1239 | ] 1240 | } 1241 | }, 1242 | "description": { 1243 | "description": "Description of image plane, recording wavelength, depth, etc", 1244 | "data_type": "text" 1245 | }, 1246 | "reference_images/": { 1247 | "include": { 1248 | "/*": {} 1249 | } 1250 | }, 1251 | "imaging_plane_name": { 1252 | "description": "Name of imaging plane under general/optophysiology", 1253 | "data_type": "text" 1254 | } 1255 | }, 1256 | "description": "Stores pixels in an image that represent different regions of interest (ROIs)." 1257 | }, 1258 | "session_id": { 1259 | "description": "Lab-specific ID for the session.", 1260 | "data_type": "text" 1261 | }, 1262 | "/": { 1263 | "electrode_idx": { 1264 | "references": "/general/extracellular_ephys/electrode_map.electrode_number", 1265 | "description": "Indicies to electrodes in general/extracellular_ephys/electrode_map", 1266 | "data_type": "int", 1267 | "dimensions": [ 1268 | "channelIndex" 1269 | ] 1270 | }, 1271 | "merge": [ 1272 | "/" 1273 | ], 1274 | "data": { 1275 | "unit": "volt", 1276 | "semantic_type": "ElectricalSeries", 1277 | "description": "Recorded voltage data", 1278 | "data_type": "number", 1279 | "dimensions": [ 1280 | "timeIndex", 1281 | "channelIndex" 1282 | ] 1283 | }, 1284 | "description": "Acquired voltage data from extracellular recordings.", 1285 | "attributes": { 1286 | "ancestry": { 1287 | "value": "TimeSeries, ElectricalSeries", 1288 | "data_type": "text" 1289 | } 1290 | } 1291 | }, 1292 | "MotionCorrection/": { 1293 | "merge": [ 1294 | "/" 1295 | ], 1296 | "/": { 1297 | "corrected/": { 1298 | "include": { 1299 | "/*": {} 1300 | }, 1301 | "description": "Image stack with frames shifted to the common coordinates" 1302 | }, 1303 | "/": { 1304 | "description": "HDF5 Link to image series that is being registered" 1305 | }, 1306 | "xy_translation/": { 1307 | "include": { 1308 | "/*": {} 1309 | }, 1310 | "description": "Stores the x,y delta necessary to align each frame to the common coordinates" 1311 | } 1312 | }, 1313 | "description": "An image stack where all frames are shifted (registered) to a common coordinate system, to account for movement and drift between frames.", 1314 | "parent_attributes": { 1315 | "interfaces": { 1316 | "value": "+MotionCorrection", 1317 | "data_type": "text" 1318 | } 1319 | } 1320 | }, 1321 | "/": { 1322 | "merge": [ 1323 | "/" 1324 | ], 1325 | "description": "Stores voltage data recorded from intracellular current-clamp recordings. A corresponding CurrentClampStimulusSeries (stored separately as a stimulus) is used to store the current injected. The CurrentClampSeries has all of the datasets of an PatchClampSeries as well as the following:", 1326 | "gain": { 1327 | "unit": "Volt/Volt", 1328 | "description": "gain", 1329 | "data_type": "float" 1330 | }, 1331 | "bias_current": { 1332 | "unit": "Amp", 1333 | "description": "Bias current", 1334 | "data_type": "float" 1335 | }, 1336 | "bridge_balance": { 1337 | "unit": "Ohm", 1338 | "description": "Bridge Balance", 1339 | "data_type": "float" 1340 | }, 1341 | "attributes": { 1342 | "ancestry": { 1343 | "value": "TimeSeries,PatchClampSeries,CurrentClampSeries", 1344 | "data_type": "text" 1345 | } 1346 | }, 1347 | "capacitance_compensation": { 1348 | "unit": "Farad", 1349 | "description": "Capacitance compensation", 1350 | "data_type": "float" 1351 | }, 1352 | "resistance_compensation": { 1353 | "unit": "Ohms", 1354 | "description": "Resistance compensation", 1355 | "data_type": "float" 1356 | } 1357 | }, 1358 | "optogenetics/": { 1359 | "/*": { 1360 | "device": { 1361 | "references": "/general/devices//", 1362 | "description": "Name of device in /general/devices", 1363 | "data_type": "text" 1364 | }, 1365 | "excitation_lambda": { 1366 | "description": "Excitation wavelength", 1367 | "data_type": "text" 1368 | }, 1369 | "location": { 1370 | "description": "Location of stimulation site", 1371 | "data_type": "text" 1372 | }, 1373 | "description": { 1374 | "data_type": "text" 1375 | }, 1376 | "_description": "One of possibly many folders describing an describing an optogenetic stimuluation site." 1377 | } 1378 | }, 1379 | "/": { 1380 | "distance": { 1381 | "unit": "meter", 1382 | "description": "Distance from camera/monitor to target/eye", 1383 | "data_type": "float" 1384 | }, 1385 | "orientation": { 1386 | "description": "Description of image relative to some reference frame (e.g., which way is up). Must also specify frame of reference.", 1387 | "data_type": "text" 1388 | }, 1389 | "merge": [ 1390 | "/" 1391 | ], 1392 | "field_of_view": { 1393 | "fov": { 1394 | "type": "structure", 1395 | "components": [ 1396 | { 1397 | "alias": "width", 1398 | "unit": "meter" 1399 | }, 1400 | { 1401 | "alias": "height", 1402 | "unit": "meter" 1403 | }, 1404 | { 1405 | "alias": "depth", 1406 | "optional": true, 1407 | "unit": "meter" 1408 | } 1409 | ] 1410 | }, 1411 | "description": "Width, height and depto of image, or imaged area (meters)", 1412 | "data_type": "float", 1413 | "dimensions": [ 1414 | "fov" 1415 | ] 1416 | }, 1417 | "attributes": { 1418 | "ancestry": { 1419 | "value": "TimeSeries,ImageSeries,OpticalSeries", 1420 | "data_type": "text" 1421 | } 1422 | }, 1423 | "description": "Image data that is presented or recorded. A stimulus template movie will be stored only as an image." 1424 | }, 1425 | "file_create_date": { 1426 | "attributes": { 1427 | "modification_time": { 1428 | "description": "Times that the file was modified. Only present if an existing file was modified. Each modificaiton time stored in ISO 8601 format.", 1429 | "data_type": "text" 1430 | } 1431 | }, 1432 | "description": "Date and time file was created, UTC (ISO 8601)", 1433 | "data_type": "text" 1434 | }, 1435 | "intracellular_ephys/": { 1436 | "filtering": { 1437 | "description": "Description of filtering used, including filter type, parameters, fall-off, etc. If this changes between Time-Series then filter descriptions should be stored with the data", 1438 | "data_type": "text" 1439 | }, 1440 | "/": { 1441 | "slice": { 1442 | "description": "Information about slice used for recording", 1443 | "data_type": "text" 1444 | }, 1445 | "description": "One of possibly many folders describing electrode properties. Name should be informative. This can optionally be a free-form text field that includes relevant description and metadata. (Using TAPI)", 1446 | "seal": { 1447 | "description": "Information about seal used for recording", 1448 | "data_type": "text" 1449 | }, 1450 | "device": { 1451 | "description": "Name(s) of devices in general/devices", 1452 | "data_type": "text" 1453 | }, 1454 | "attributes": { 1455 | "description": { 1456 | "description": "Recording description, description of electrode (e.g., whole-cell, sharp, etc)", 1457 | "data_type": "text" 1458 | } 1459 | }, 1460 | "resistance": { 1461 | "unit": "Ohm", 1462 | "data_type": "text", 1463 | "description": "Electrode resistance in ohms" 1464 | }, 1465 | "initial_access_resistance": { 1466 | "description": "Initial access resistance", 1467 | "data_type": "text" 1468 | }, 1469 | "location": { 1470 | "description": "Area, layer, comments on estimation, stereotaxis coordinates (if in vivo, etc)", 1471 | "data_type": "text" 1472 | } 1473 | } 1474 | }, 1475 | "identifier": { 1476 | "description": "A unique text identifier for the file", 1477 | "data_type": "text" 1478 | }, 1479 | "Fluorescence/": { 1480 | "merge": [ 1481 | "/" 1482 | ], 1483 | "include": { 1484 | "/*": {} 1485 | }, 1486 | "parent_attributes": { 1487 | "interfaces": { 1488 | "value": "+Fluorescence", 1489 | "data_type": "text" 1490 | } 1491 | } 1492 | }, 1493 | "ClusterWaveforms/": { 1494 | "merge": [ 1495 | "/" 1496 | ], 1497 | "waveform_sd": { 1498 | "description": "Stdev of waveforms for each cluster", 1499 | "data_type": "float", 1500 | "dimensions": [ 1501 | "num_clusters", 1502 | "num_samples" 1503 | ] 1504 | }, 1505 | "waveform_filtering": { 1506 | "description": "Filtering applied to data before generating mean/sd", 1507 | "data_type": "text" 1508 | }, 1509 | "description": "The mean waveform shape, including standard deviation, of the different clusters.", 1510 | "clustering_interface/": { 1511 | "description": "HDF5 link to Clustering interface that was the source of the clustered data" 1512 | }, 1513 | "clustering_interface_path": { 1514 | "description": "Path to linked clustering interface", 1515 | "data_type": "text" 1516 | }, 1517 | "waveform_mean": { 1518 | "description": "The mean waveform for each cluster", 1519 | "data_type": "float", 1520 | "dimensions": [ 1521 | "num_clusters", 1522 | "num_samples" 1523 | ] 1524 | }, 1525 | "parent_attributes": { 1526 | "interfaces": { 1527 | "value": "+ClusterWaveforms", 1528 | "data_type": "text" 1529 | } 1530 | } 1531 | }, 1532 | "Clustering/": { 1533 | "description": { 1534 | "description": "Description of clusters or clustering, e.g. cluster 0 is noise, ...", 1535 | "data_type": "text" 1536 | }, 1537 | "times": { 1538 | "unit": "second", 1539 | "semantic_type": "timestamps", 1540 | "description": "Time of clustered events", 1541 | "data_type": "number", 1542 | "dimensions": [ 1543 | "eventIndex" 1544 | ] 1545 | }, 1546 | "merge": [ 1547 | "/" 1548 | ], 1549 | "num": { 1550 | "description": "Cluster number of each event", 1551 | "data_type": "int", 1552 | "dimensions": [ 1553 | "eventIndex" 1554 | ] 1555 | }, 1556 | "parent_attributes": { 1557 | "interfaces": { 1558 | "value": "+Clustering", 1559 | "data_type": "text" 1560 | } 1561 | }, 1562 | "cluster_nums": { 1563 | "description": "List of cluster number that are a part of this set.", 1564 | "data_type": "int", 1565 | "dimensions": [ 1566 | "num_clusters" 1567 | ] 1568 | }, 1569 | "peak_over_rms": { 1570 | "description": "Maximum ration of waveform peak to RMS on any channel in the cluster", 1571 | "data_type": "float", 1572 | "dimensions": [ 1573 | "num_clusters" 1574 | ] 1575 | } 1576 | } 1577 | }, 1578 | "locations": { 1579 | "/": [ 1580 | "BehavioralEvents/", 1581 | "BehavioralEpochs/", 1582 | "BehavioralTimeSeries/", 1583 | "Clustering/", 1584 | "ClusterWaveforms/", 1585 | "CompassDirection/", 1586 | "DfOverF/", 1587 | "EventDetection/", 1588 | "EventWaveform/", 1589 | "EyeTracking/", 1590 | "FeatureExtraction/", 1591 | "FilteredEphys/", 1592 | "Fluorescence/", 1593 | "ImageSegmentation/", 1594 | "LFP/", 1595 | "MotionCorrection/", 1596 | "Position/", 1597 | "PupilTracking/", 1598 | "UnitTimes/" 1599 | ], 1600 | "/processing": [ 1601 | "/*" 1602 | ], 1603 | "/stimulus/presentation": [ 1604 | "/*", 1605 | "/*", 1606 | "/*", 1607 | "/*", 1608 | "/*", 1609 | "/*", 1610 | "/*", 1611 | "/*", 1612 | "/*", 1613 | "/*", 1614 | "/*", 1615 | "/", 1616 | "/*", 1617 | "/*", 1618 | "/*", 1619 | "/*", 1620 | "/*", 1621 | "/*" 1622 | ], 1623 | "/acquisition/images": [ 1624 | "*" 1625 | ], 1626 | "/acquisition/timeseries": [ 1627 | "/*", 1628 | "/*", 1629 | "/*", 1630 | "/*", 1631 | "/*", 1632 | "/*", 1633 | "/*", 1634 | "/*", 1635 | "/*", 1636 | "/*", 1637 | "/*", 1638 | "/", 1639 | "/*", 1640 | "/*", 1641 | "/*", 1642 | "/*", 1643 | "/*", 1644 | "/*" 1645 | ], 1646 | "/general": [ 1647 | "session_id!", 1648 | "experimenter!", 1649 | "institution", 1650 | "lab", 1651 | "related_publications", 1652 | "notes", 1653 | "experiment_description", 1654 | "data_collection", 1655 | "stimulus", 1656 | "pharmacology", 1657 | "surgery", 1658 | "protocol", 1659 | "subject/", 1660 | "virus", 1661 | "slices", 1662 | "intracellular_ephys/", 1663 | "extracellular_ephys/", 1664 | "optogenetics/", 1665 | "devices/", 1666 | "__custom" 1667 | ], 1668 | "/stimulus/templates": [ 1669 | "/*", 1670 | "/*", 1671 | "/*", 1672 | "/*", 1673 | "/*", 1674 | "/*", 1675 | "/*", 1676 | "/*", 1677 | "/*", 1678 | "/*", 1679 | "/*", 1680 | "/", 1681 | "/*", 1682 | "/*", 1683 | "/*", 1684 | "/*", 1685 | "/*", 1686 | "/*" 1687 | ], 1688 | "/": [ 1689 | "neurodata_version!", 1690 | "identifier!", 1691 | "file_create_date!", 1692 | "session_start_time", 1693 | "session_description", 1694 | "epochs/" 1695 | ] 1696 | } 1697 | } 1698 | } --------------------------------------------------------------------------------