Conversion and validation of NIRS to SNIRF files
I am trying to convert a set of .nirs files to .snirf format. For that I used two approaches 1) Nirs2Snirf function in Homer3 and 2) code from the demo_snirf function in Homer3. The conversion with both approaches seems to work, as I don't get any errors and I am able to load the generated .snirf files into my workspace.
However, none of the files that I created passes the SNIRF validator https://github.com/BUNPC/pysnirf2. Most of the output errors that I get seem to be related with INVALID_DATASET_SHAPE in measurementList and in aux.
Data were acquired with a NIRx NIRScout system. Data acquisition software: NIRStar 14.1 Data were converted to .nirs format using Nirx2nirs function. Events field (s) is empty as this is a resting-state study with no markers. I uploaded an example dataset 'RS4_SL_4216_short.nirs'.
I would be grateful if someone could kindly provide me with support on this matter.
This validation result is because the SNIRF spec is in the process of being made more specific as to how data should be formatted (we expect to release SNIRF v1.1 soon). The Homer3 SNIRF writing code is outdated.
Assuming that "DATASET_SHAPE_INVALID" is the only message you see, there is nothing to be concerned about--your SNIRF file will work with Homer3.
To suppress these messages, the file can be made valid by resaving it with pysnirf2--the README should explain how to do this.