Skip to content

Convert Range into Levels for  #447

@yarikoptic

Description

@yarikoptic

deno based validator in

fails with

Validating dataset fnirs_automaticity/: Running  bids-validator fnirs_automaticity --json --ignoreNiftiHeaders
  [
    {
      "key": "TSV_VALUE_INCORRECT_TYPE",
      "severity": "error",
      "reason": "A value in a column did match the acceptable type for that column headers specified format.",
      "files_1": [
        {
          "name": "participants.tsv",
          "path": "/participants.tsv",
          "evidence": "'10' {
    name: \"handedness\",
    display_name: \"Subject handedness\",
    description: 'String value indicating one of \"left\", \"right\", \"ambidextrous\".\n' +
      \"\n\" +
      'For \"left\", use one of these values'... 216 more characters,
    type: \"string\",
    enum: [
      \"left\",         \"l\",
      \"L\",            \"LEFT\",
      \"Left\",         \"right\",
      \"r\",            \"R\",
      \"RIGHT\",        \"Right\",
      \"ambidextrous\", \"a\",
      \"A\",            \"AMBIDEXTROUS\",
      \"Ambidextrous\", \"n/a\"
    ]
  }"
        }
      ]
    }
  ]

since values there are numeric 9 and 10:

❯ mlr --itsv  cut -f handedness fnirs_automaticity/participants.tsv | sort | uniq -c
     19 handedness=10
      5 handedness=9

and .json contains some ad-hoc Range thus trying to change default "Levels" assigned to that column.

❯ jq .handedness < fnirs_automaticity/participants.json
{
  "Description": "handedness of the participant as a score on the Dutch Handedness Questionnaire",
  "TermURL": "doi:1765/956",
  "Range": "-10 (left) to + 10 (right)"
}

I think it is easy to resolve by providing Levels. Alternative is to extend BIDS with support for range, but that is in the future and thus not feasible as a quick fix here.

attn @sappelhoff @rob-luke @robertoostenveld who mastered the original PR as depicted in e84c122

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions