openMetadataInitiative / openMINDS_controlledTerms

Metadata model for the consistent registration of well-defined terms as well as a corresponding library of terminologies (including links to ontological terms where applicable).
MIT License
7 stars 12 forks source link

Stimulation approach / Stimulus type: add visual #64

Closed eapapp closed 2 years ago

eapapp commented 2 years ago

Hello Lyuba and Ulrike,

I'm in the process of migrating a dataset in which visual stimuli have been applied, but the KGE only lists auditory stimulation and direct current as possible options for Stimulation approach / Stimulus type. Could you please add visual stimulation? For stimulus type, the authors describe "visual target stimulus (CS+) and distracter stimulus (CS−)" in their paper, if that makes sense to add.

All the best, Eszter

UlrikeS91 commented 2 years ago

Thanks for the request @eapapp! As you see from the draft PR, the stimulationApproach will be added.

The stimulusType is a bit more difficult. I had a look at the paper you linked. Here a short summary to save others time:

Rats were trained to perform a two-choice visual discrimination task on a figure-8 maze (an elevated platform that is shaped like an 8). At one end of that maze are two screens where two visual stimuli were presented simultaneously (every time both). The stimuli were black and white images (a diamond and a plane), equiluminant and with same proportions of black/white pixels. One image was rewarded (CS+), the other not (CS-).
They additionally had tactile cues provided by smooth vs. rough sandpaper attached to the side-arms of the maze. When choosing the rough sandpaper path in combination with CS+, they would receive a larger reward compared to smooth & CS+.

So, for those experiments, I would choose to create a behavioralProtocol with 2 stimulations. Stimulation 1: stimulusApproach: tactile stimulation stimulusType: something along the lines of "texturalStimulus"
Stimulation 2: stimulusApproach: visual stimulation stimulusType: something along the lines of "blackAndWhiteDigitalImage"

Any opinions/thoughts, @lzehl, @eapapp?

lzehl commented 2 years ago

@UlrikeS91 thanks for responding so quickly. @eapapp thanks for raising the issue :)

@eapapp you should not be able to select any Stimulation Approach / Stimulus Type at the moment in the KGE because they are not connected to any v4 schema. @UlrikeS91 this is a bug we have to fix.

For StimulationApproach things are clear I think. And for now I would suggest to also purely stick to those.

For StimulusType: We need to discuss this carefully with the ontology group. I would not like to rush this now and end up with something too painful to maintain. Independent of that here some points: A) I can't tell from the description if it is a black diamond or plane on a white background or the other way around. This should be more detailed. B) "texturalStimulus" is way too unspecific or "blackAndWhiteDigitalImage" is way too specific. Either we would go with

UlrikeS91 commented 2 years ago

@eapapp you should not be able to select any Stimulation Approach / Stimulus Type at the moment in the KGE because they are not connected to any v4 schema. @UlrikeS91 this is a bug we have to fix.

@eapapp, ignore this comment. There was a confusion and we resolved this offline. The schema, of course, exists and you should get controlled terms added for the stimulusType.

A) I can't tell from the description if it is a black diamond or plane on a white background or the other way around. This should be more detailed.

It's white on black background.

B) "texturalStimulus" is way too unspecific or "blackAndWhiteDigitalImage" is way too specific. Either we would go with

  • "texturedWalls" and "black/whiteDigitalImages" OR go for
  • "blackDiamondOnWhiteBackground", "blackPlaneOnWhiteBackground", "roughSandpaperWall", "smoothSandpaperWall"

I'm not sure if we really want to be that specific. I would prefer higher-level terms that can actually be reused for several (behavioral)Protocols. And I truly doubt that many studies use sandpaper as a tactile stimulus... So, I would prefer the first option (with some modifications):

lzehl commented 2 years ago

@UlrikeS91 thanks for keeping in eye on things if I'm getting confused :sweat_smile:

For the StimulusType: if we keep it high level if defeats a bit the purpose of listing all used stimuli I think... I wonder though if we should do it anyway highlevel and rather add a free text description field for the stimulation schema. Example for @eapapp case:

1) diamond stimulation:

@UlrikeS91 & @eapapp & @tgbugs what do you think? [@UlrikeS91 if that could be a solution than the stimulation schema should also get a lookup label]

apdavison commented 2 years ago

for information, @Peyman-N is working on a "stimulation" extension for openMINDS, so I would support keeping the related controlled terms fairly general; where further details are needed, the curators should make use of the extension.

lzehl commented 2 years ago

The parts we currently have in were introduced in discussion with @Peyman-N. So the upper part should not collide, unless @Peyman-N did not use these part to build up the extension? @Peyman-N would that fit? I assumed the stimulation extension would go much more into detail with required parameters for each stimulation approach (e.g. duration, strength, etc)

UlrikeS91 commented 2 years ago

Based on this, we will keep the StimulusTypes rather high-level and added a description field (and a lookupLabel) to the stimulation schema to give users the option to specify more details about the stimulation.

The PRs are made and ready for review. As soon as those are integrated and @olinux has retiggered the KG to ingest the new terms/schema change,@eapapp you could do the following in your specific case:

Add one behaviouralProtocol describing the visual discrimiation task in general and add these 4 stimulations to it:

  1. lookupLabel: DiamondVisualStimulation

    • stimApproach: visual stimulation
    • stimType: static symbol
    • description: digital image of a white diamond symbol on black background
  2. lookupLabel: PlaneVisualStimulation

    • stimApproach: visual stimulation
    • stimType: static symbol
    • description: digital image of a white plane symbol on black background
  3. lookupLabel: SmoothSandpaperTactileStimulation

    • stimApproach: tactile stimulation
    • stimType: textured surface
    • description: smooth sandpaper attached to the ground of a maze side arm that subject must walk over
  4. lookupLabel: RoughSandpaperTactileStimulation

    • stimApproach: tactile stimulation
    • stimType: textured surface
    • description: rough sandpaper attached to the ground of a maze side arm that subject must walk over

Please, see those as suggestions. If you don't think they fit, you'd like to specify more or needs some adjustments, please do so ☺️

lzehl commented 2 years ago

@UlrikeS91 looks good from my side. @apdavison / @Peyman-N I guess this level leaves a lot of in-depth parts open, correct? @eapapp does this fit your needs a bit better as well?

eapapp commented 2 years ago

Thank you for all the work put into this @lzehl & @UlrikeS91. Good to have the stimulations soon in place. Based on the dataset keywords in the KG v2, I would organize this into two behavioral protocols: "Visual discrimination task" with stimuli 1-2. from above, and "Spatial navigation task" with stimuli 3-4. (tactile stimulation is not visual in my understanding).

By the way, what is the difference between a behavioral protocol and a behavioral task? (I see both listed on the dataset version)

UlrikeS91 commented 2 years ago

By the way, what is the difference between a behavioral protocol and a behavioral task? (I see both listed on the dataset version)

That's a remnant and deprecated. It was what we had before the behaviouralProtocol but as a simple controlled term which caused problems. It's kept in the system because some datasets have used it in between and we don't want to lose the information before it has been transferred :)