From d72584bef2e3772ae39791b1fc1eb23467e953c0 Mon Sep 17 00:00:00 2001 From: Andrew Davison Date: Sun, 30 Sep 2018 20:06:28 +0200 Subject: [PATCH 1/2] First attempt at a schema for two-photon fluorescence imaging --- .../experiment/cranialwindow/v0.1.0.json | 60 + .../experiment/craniotomy/v0.1.0.json | 50 + .../fluorescencetrace/v0.1.0.json | 38 + .../optophysiology/imagesequence/v0.1.0.json | 62 + .../motioncorrection/v0.1.0.json | 45 + .../regionofinterest/v0.1.0.json | 149 ++ .../optophysiology/roiselection/v0.1.0.json | 45 + .../timeseriesextraction/v0.1.0.json | 45 + .../twophotonimaging/v0.1.0.json | 105 + .../twophotoncalciumimaging-prov-template.svg | 1830 +++++++++++++++++ 10 files changed, 2429 insertions(+) create mode 100644 modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/cranialwindow/v0.1.0.json create mode 100644 modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/craniotomy/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/imagesequence/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/motioncorrection/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/regionofinterest/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/roiselection/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0.json create mode 100644 modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json create mode 100644 provpatterns/assets/twophotoncalciumimaging-prov-template.svg diff --git a/modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/cranialwindow/v0.1.0.json b/modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/cranialwindow/v0.1.0.json new file mode 100644 index 00000000..2c1dc946 --- /dev/null +++ b/modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/cranialwindow/v0.1.0.json @@ -0,0 +1,60 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/experiment/cranialwindow/v0.1.1/shapes/" + } + ], + "@type": "nxv:Schema", + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0", + "{{base}}/schemas/neurosciencegraph/commons/brainlocation/v0.1.1", + "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2" + ], + "shapes": [ + { + "@id": "this:CranialWindowShape", + "@type": "sh:NodeShape", + "label": "Cranial window shape definition", + "targetClass": "nsg:CranialWindow", + "nodeKind": "sh:BlankNodeOrIRI", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0/shapes/EntityShape" + }, + { + "property": [ + { + "path": "nsg:brainLocation", + "name": "Brain location", + "description": "Brain location information of the cranial window", + "node": "{{base}}/schemas/neurosciencegraph/commons/brainlocation/v0.1.1/shapes/BrainLocationShape" + }, + { + "path": "nsg:windowType", + "name": "Window type", + "in": [ + "open window", + "thinned skull", + "chronically implanted glass window" + ], + "description": "The type of window." + }, + { + "path": "nsg:diameter", + "name": "Diameter", + "description": "Diameter of the window", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2/shapes/QuantitativeValueShape" + }, + { + "path": "nsg:labellingMethod", + "name": "Fluorescence labelling", + "datatype": "xsd:string", + "description": "Details of the labelling method (for example, injection of a viral construct)." + } + ] + } + ] + } + ] + } diff --git a/modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/craniotomy/v0.1.0.json b/modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/craniotomy/v0.1.0.json new file mode 100644 index 00000000..654f3445 --- /dev/null +++ b/modules/experiment/src/main/resources/schemas/neurosciencegraph/experiment/craniotomy/v0.1.0.json @@ -0,0 +1,50 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/experiment/craniotomy/v0.1.0/shapes/" + } + ], + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4" + ], + "@type": "nxv:Schema", + "shapes": [ + { + "@id": "this:CraniotomyShape", + "@type": "sh:NodeShape", + "label": "Craniotomy shape definition", + "description": "Surgical procedure to give optical access through the skull to the brain (dura).", + "nodeKind": "sh:BlankNodeOrIRI", + "targetClass": "nsg:Craniotomy", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4/shapes/ActivityShape" + }, + { + "property": [ + { + "path": "prov:used", + "description": "The subject used", + "class": "nsg:Subject", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "prov:generated", + "description": "The cranial window(s) generated", + "class": "nsg:CranialWindow", + "minCount": 1 + }, + { + "path": "nsg:anesthesia", + "name": "Anesthesia", + "description": "Anaesthesia used during the procedure.", + "datatype": "xsd:string" + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0.json new file mode 100644 index 00000000..e9721861 --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0.json @@ -0,0 +1,38 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/fluorescencetrace/v1.0.0/shapes/" + } + ], + "@type": "nxv:Schema", + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0", + "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2" + ], + "shapes": [ + { + "@id": "this:FluorescenceTraceShape", + "@type": "sh:NodeShape", + "label": "Fluorescence trace shape definition.", + "targetClass": "nsg:FluorescenceTrace", + "nodeKind": "sh:BlankNodeOrIRI", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0/shapes/EntityShape" + }, + { + "property": [ + { + "path": "nsg:timeStep", + "name": "Time step", + "description": "Time step (inverted sampling frequency) of data", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2/shapes/QuantitativeValueShape", + "maxCount": 1 + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/imagesequence/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/imagesequence/v0.1.0.json new file mode 100644 index 00000000..85af01c4 --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/imagesequence/v0.1.0.json @@ -0,0 +1,62 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/imagesequence/v0.1.0/shapes/" + } + ], + "@type": "nxv:Schema", + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0", + "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.0" + ], + "shapes": [ + { + "@id": "this:ImageSequenceShape", + "@type": "sh:NodeShape", + "label": "Optophysiology image sequence definition.", + "targetClass": "nsg:ImageSequence", + "nodeKind": "sh:BlankNodeOrIRI", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0/shapes/EntityShape" + }, + { + "property": [ + { + "path": "nsg:imageSize", + "name": "Image size", + "description": "Image size in pixels (assumed square)", + "datatype": "xsd:integer", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:imageCount", + "name": "Image count", + "description": "Number of images in the series", + "datatype": "xsd:integer", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:frameRate", + "name": "Frame rate", + "description": "Frame rate of data", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.0/shapes/QuantitativeValueShape", + "maxCount": 1 + }, + { + "path": "prov:wasGeneratedBy", + "name": "Was generated by", + "description": "Optophysiology experiment that generated trace", + "class": "nsg:TwoPhotonImaging", + "minCount": 1, + "maxCount": 1 + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/motioncorrection/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/motioncorrection/v0.1.0.json new file mode 100644 index 00000000..a839dfce --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/motioncorrection/v0.1.0.json @@ -0,0 +1,45 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/motioncorrection/v0.1.0/shapes/" + } + ], + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4" + ], + "@type": "nxv:Schema", + "shapes": [ + { + "@id": "this:MotionCorrectionShape", + "@type": "sh:NodeShape", + "label": "Motion correction shape definition", + "description": "Correction for x-y movement in image frames.", + "nodeKind": "sh:BlankNodeOrIRI", + "targetClass": "nsg:MotionCorrection", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4/shapes/ActivityShape" + }, + { + "property": [ + { + "path": "prov:used", + "name": "Before", + "description": "The image sequence used", + "class": "nsg:ImageSequence", + "minCount": 1 + }, + { + "path": "prov:generated", + "name": "After", + "description": "The corrected image sequence generated", + "class": "nsg:ImageSequence", + "minCount": 1 + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/regionofinterest/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/regionofinterest/v0.1.0.json new file mode 100644 index 00000000..0dd1a9c1 --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/regionofinterest/v0.1.0.json @@ -0,0 +1,149 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/shapes/" + } + ], + "@type": "nxv:Schema", + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0", + "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.0", + "{{base}}/schemas/neurosciencegraph/commons/typedlabeledontologyterm/v0.1.0" + ], + "shapes": [ + { + "@id": "this:RegionOfInterestShape", + "@type": "sh:NodeShape", + "label": "A region of interest within an image sequence.", + "targetClass": "nsg:RegionOfInterest", + "nodeKind": "sh:BlankNodeOrIRI", + "seeAlso": "{{base}}/schemas/neurosciencegraph/atlas/regionofinterest/v0.1.0/shapes/RegionOfInterestShape", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/entity/v0.1.0/shapes/EntityShape" + }, + { + "property": [ + { + "path": "nsg:position", + "name": "Position", + "node": "this:PositionShape", + "description": "Position of the origin of the ROI within the image sequence (pixels). Origin is bottom-left corner for square and rectangle, centre for circles and ellipses.", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:geometry", + "name": "Shape", + "in": [ + "circle", + "square", + "rectangle", + "ellipse" + ], + "description": "Shape of the ROI." + }, + { + "path": "nsg:size", + "name": "Size", + "or": [ + { + "node": "this:RectangleSizeShape" + }, + { + "datatype": "xsd:double", + "comment": "if shape is circle" + }, + { + "node": "this:EllipseSizeShape" + } + ], + "description": "Size of the ROI in pixels." + }, + { + "path": "nsg:classification", + "name": "Classification", + "datatype": "xsd:string", + "description": "What is represented or captured by the ROI, e.g. “cell body”" + } + ] + } + ] + }, + { + "@id": "this:PositionShape", + "@type": "sh:NodeShape", + "label": "Position shape definition", + "property": [ + { + "path": "nsg:origin", + "name": "Origin of the coordinate system", + "in": [ + "centre", + "bottom-left", + "top-right" + ], + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:x", + "name": "x-coordinate", + "datatype": "xsd:double", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:y", + "name": "y-coordinate", + "datatype": "xsd:double", + "minCount": 1, + "maxCount": 1 + } + ] + }, + { + "@id": "this:RectangleSizeShape", + "@type": "sh:NodeShape", + "label": "Rectangle size shape definition", + "property": [ + { + "path": "nsg:width", + "name": "Width", + "datatype": "xsd:double", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:height", + "name": "Height", + "datatype": "xsd:double", + "minCount": 1, + "maxCount": 1 + } + ] + }, + { + "@id": "this:EllipseSizeShape", + "@type": "sh:NodeShape", + "label": "Ellipse size shape definition", + "property": [ + { + "path": "nsg:semiMajorAxis", + "name": "Semi-major axis", + "datatype": "xsd:double", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "nsg:semiMinorAxis", + "name": "Semi-minor axis", + "datatype": "xsd:double", + "minCount": 1, + "maxCount": 1 + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/roiselection/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/roiselection/v0.1.0.json new file mode 100644 index 00000000..0d3c52aa --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/roiselection/v0.1.0.json @@ -0,0 +1,45 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/roiselection/v0.1.0/shapes/" + } + ], + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4" + ], + "@type": "nxv:Schema", + "shapes": [ + { + "@id": "this:ROISelectionShape", + "@type": "sh:NodeShape", + "label": "Region of interest selection shape definition", + "description": "Process of selecting regions of interest, may be manual, semi-automated, or fully automated.", + "nodeKind": "sh:BlankNodeOrIRI", + "targetClass": "nsg:RegionOfInterestSelection", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4/shapes/ActivityShape" + }, + { + "property": [ + { + "path": "prov:used", + "name": "Image sequence", + "description": "The image sequence used", + "class": "nsg:ImageSequence", + "minCount": 1 + }, + { + "path": "prov:generated", + "name": "Regions", + "description": "The ROIs generated", + "class": "nsg:RegionOfInterest", + "minCount": 1 + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0.json new file mode 100644 index 00000000..5d7e977d --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0.json @@ -0,0 +1,45 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0/shapes/" + } + ], + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4" + ], + "@type": "nxv:Schema", + "shapes": [ + { + "@id": "this:TimeSeriesExtractionShape", + "@type": "sh:NodeShape", + "label": "Time series extraction shape definition", + "description": "Process of transforming the series of fluorescence responses within a Region of Interest into a ΔF/F signal.", + "nodeKind": "sh:BlankNodeOrIRI", + "targetClass": "nsg:TimeSeriesExtraction", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/activity/v0.1.4/shapes/ActivityShape" + }, + { + "property": [ + { + "path": "prov:used", + "name": "Region of interest", + "description": "The region of interest within an image sequence from which the time series is calculated.", + "class": "nsg:RegionOfInterest", + "minCount": 1 + }, + { + "path": "prov:generated", + "name": "Trace", + "description": "The fluorescence activity trace generated by this process.", + "class": "nsg:Trace", + "minCount": 1 + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json new file mode 100644 index 00000000..87d4a232 --- /dev/null +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json @@ -0,0 +1,105 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/schema/v0.1.0", + { + "this": "{{base}}/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0/shapes/" + } + ], + "@type": "nxv:Schema", + "imports": [ + "{{base}}/schemas/neurosciencegraph/commons/experimentalactivity/v0.1.0", + "{{base}}/schemas/neurosciencegraph/commons/typedlabeledontologyterm/v0.1.1" + ], + "shapes": [ + { + "@id": "this:TwoPhotonImagingShape", + "@type": "sh:NodeShape", + "label": "Two-photon-excited fluorescence laser-scanning microscopy experiment shape definition", + "targetClass": "nsg:TwoPhotonImaging", + "nodeKind": "sh:BlankNodeOrIRI", + "and": [ + { + "node": "{{base}}/schemas/neurosciencegraph/commons/experimentalactivity/v0.1.0/shapes/ActivityShape" + }, + { + "property": [ + { + "path": "prov:used", + "name": "Cranial window", + "description": "Cranial window used for two-photon imaging", + "node": "{{base}}/schemas/neurosciencegraph/optophysiology/cranialwindow/v0.1.0/shapes/CranialWindowShape", + "class": "nsg:CranialWindow", + "minCount": 1 + }, + { + "path": "prov:generated", + "name": "Image sequence", + "description": "The image sequence recorded", + "class": "nsg:ImageSequence", + "minCount": 1 + }, + { + "path": "nsg:microscope", + "name": "Microscope", + "description": "Microscope used for two-photon imaging", + "datatype": "xsd:string", + "minCount": 1 + }, + { + "path": "nsg:brainState", + "name": "Brain state", + "in": [ + "awake", + "anesthetized" + ], + "description": "The state of consciousness of the subject during the procedure.", + "datatype": "xsd:string" + }, + { + "path": "nsg:anesthesia", + "name": "Anesthesia", + "description": "Anaesthesia used during the procedure, if any.", + "datatype": "xsd:string" + }, + { + "path": "nsg:laser", + "name": "Laser", + "datatype": "xsd:string", + "description": "Laser used for two-photon imaging." + }, + { + "path": "nsg:excitationWavelength", + "name": "Excitation wavelength", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2/shapes/QuantitativeValueShape", + "description": "Wavelength produced by the laser." + }, + { + "path": "nsg:laserpower", + "name": "Power at objective", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2/shapes/QuantitativeValueShape", + "description": "Laser power at microscope objective." + }, + { + "path": "nsg:collectionWavelength", + "name": "Collection wavelength", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2/shapes/QuantitativeValueShape", + "description": "Wavelength detected by photomultiplier tube." + }, + { + "path": "nsg:imagingDepth", + "name": "Imaging depth", + "node": "{{base}}/schemas/neurosciencegraph/commons/quantitativevalue/v0.1.2/shapes/QuantitativeValueShape", + "description": "Depth of imaging plane below brain surface." + }, + { + "path": "nsg:Stimulus", + "description": "The stimulus", + "node": "{{base}}/schemas/neurosciencegraph/stimulation/stimulus/v0.1.2/shapes/StimulusShape", + "class": "nsg:Stimulus" + } + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/provpatterns/assets/twophotoncalciumimaging-prov-template.svg b/provpatterns/assets/twophotoncalciumimaging-prov-template.svg new file mode 100644 index 00000000..1d52054e --- /dev/null +++ b/provpatterns/assets/twophotoncalciumimaging-prov-template.svg @@ -0,0 +1,1830 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + Agent + + + Agent + + + + + + + + + + Protocol + + + Protocol + + + + + + + + + + Subject + + + Subject + + + + + + + + + BrainSlicing + + + Craniotomy + + + + + + + + + + + + + + + + + + + + + + + + + + + + Subject + + + CranialWindow + + + + + + + + + + Subject + + + ImageSequence + + + + + + + + + + Subject + + + + MotionCorrected + ImageSequence + + + + + + + + + + + Subject + + + RegionOfInterest + + + + + + + + + + Subject + + + FluorescenceTrace + + + + + + + + + + BrainSlicing + + + TwoPhotonImaging + + + + + + + + + + + + BrainSlicing + + + MotionCorrection + + + + + + + + + + BrainSlicing + + + + RegionOfInterest + Selection + + + + + + + + + + + + + + + + + + + + + + Protocol + + + Protocol + + + + + + + + + + + + + + + + + + + + + + + + + Protocol + + + Protocol + + + + + + + + + + + + + + Agent + + + Agent + + + + + + + + + + + + + + Agent + + + Agent + + + + + + + + + + + + + + + + + + + + + + + + + BrainSlicing + + + + TimeSeries + Extraction + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Activity + + + Activity + + + + + + + + Entity + + + Entity + + + + + + + + Agent + + + Agent + + + + + + + + Generation + + + Generation + + + + + + + + + + + + + + + + + + + + + Protocol + + + Protocol + + + + + + + + + + + + + + Agent + + + Agent + + + + + + + + + + + + + + Protocol + + + Protocol + + + + + + + + + + + + + + Agent + + + Agent + + + + + + + + wasAssociatedWith + hadProtocol + used + generated + one or many + + + + + + + BrainSlicing + + + VisualStimulation + + + + + + + + wasInformedBy + + + + + + + + + + + + + Subject + + + VisualStimulus + + + + + + + + + + Protocol + + + Protocol + + + + + + + + + From b4cc3d0e56f731e0b82cbef15d45a0788a748301 Mon Sep 17 00:00:00 2001 From: Andrew Davison Date: Sun, 30 Sep 2018 20:59:06 +0200 Subject: [PATCH 2/2] Test files for optophysiology shapes --- .../cranialwindow/v0.1.0/example.json | 16 +++++++ .../experiment/craniotomy/v0.1.0/example.json | 24 ++++++++++ .../twophotonimaging/v0.1.0.json | 2 +- .../fluorescencetrace/v0.1.0/example.json | 14 ++++++ .../imagesequence/v0.1.0/example.json | 23 ++++++++++ .../motioncorrection/v0.1.0/example.json | 23 ++++++++++ .../regionofinterest/v0.1.0/example.json | 21 +++++++++ .../roiselection/v0.1.0/example.json | 23 ++++++++++ .../timeseriesextraction/v0.1.0/example.json | 23 ++++++++++ .../twophotonimaging/v0.1.0/example.json | 46 +++++++++++++++++++ 10 files changed, 214 insertions(+), 1 deletion(-) create mode 100644 modules/experiment/src/test/resources/data/neurosciencegraph/experiment/cranialwindow/v0.1.0/example.json create mode 100644 modules/experiment/src/test/resources/data/neurosciencegraph/experiment/craniotomy/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/motioncorrection/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/roiselection/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0/example.json create mode 100644 modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0/example.json diff --git a/modules/experiment/src/test/resources/data/neurosciencegraph/experiment/cranialwindow/v0.1.0/example.json b/modules/experiment/src/test/resources/data/neurosciencegraph/experiment/cranialwindow/v0.1.0/example.json new file mode 100644 index 00000000..337d3008 --- /dev/null +++ b/modules/experiment/src/test/resources/data/neurosciencegraph/experiment/cranialwindow/v0.1.0/example.json @@ -0,0 +1,16 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "prov:Entity", + "nsg:CranialWindow" + ], + "name": "Window1", + "nsg:windowType": "thinned skull", + "nsg:diameter": { + "unitText": "mm", + "value": "3.0" + }, + "nsg:labellingMethod": "injection of the viral construct AAV1.Syn.GCaMP6m.WPRE.SV40" +} diff --git a/modules/experiment/src/test/resources/data/neurosciencegraph/experiment/craniotomy/v0.1.0/example.json b/modules/experiment/src/test/resources/data/neurosciencegraph/experiment/craniotomy/v0.1.0/example.json new file mode 100644 index 00000000..b5198e5d --- /dev/null +++ b/modules/experiment/src/test/resources/data/neurosciencegraph/experiment/craniotomy/v0.1.0/example.json @@ -0,0 +1,24 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "nsg:Craniotomy", + "prov:Activity" + ], + "generated": { + "@id": "{{base}}/data/neurosciencegraph/experiment/cranialwindow/v0.1.1/87a00313-e95b-4282-8a84-94afc639d47e", + "@type": [ + "nsg:CranialWindow", + "prov:Entity" + ] + }, + "used": { + "@id": "{{base}}/data/neurosciencegraph/experiment/subject/v0.1.0/c33d5541-ac7a-4214-8928-f4edc48e893e", + "@type": [ + "nsg:Subject", + "prov:Entity" + ] + }, + "nsg:anesthesia": "1–2% isoflurane" + } \ No newline at end of file diff --git a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json index 87d4a232..82b9bb3f 100644 --- a/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json +++ b/modules/optophysiology/src/main/resources/schemas/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0.json @@ -27,7 +27,7 @@ "path": "prov:used", "name": "Cranial window", "description": "Cranial window used for two-photon imaging", - "node": "{{base}}/schemas/neurosciencegraph/optophysiology/cranialwindow/v0.1.0/shapes/CranialWindowShape", + "node": "{{base}}/schemas/neurosciencegraph/experiment/cranialwindow/v0.1.0/shapes/CranialWindowShape", "class": "nsg:CranialWindow", "minCount": 1 }, diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0/example.json new file mode 100644 index 00000000..e2874c62 --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/fluorescencetrace/v0.1.0/example.json @@ -0,0 +1,14 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "prov:Entity", + "nsg:FluorescenceTrace" + ], + "name": "trace01", + "nsg:timeStep": { + "unitText": "ms", + "value": "69.444" + } +} diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/example.json new file mode 100644 index 00000000..e20d72df --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/example.json @@ -0,0 +1,23 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "prov:Entity", + "nsg:ImageSequence" + ], + "name": "seq002", + "nsg:imageSize": 512, + "nsg:imageCount": 700, + "nsg:frameRate": { + "unitText": "Hz", + "value": "14.4" + }, + "prov:wasGeneratedBy": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0/c33d5541-ac7a-4214-8928-f4edc48e893e", + "@type": [ + "nsg:TwoPhotonImaging", + "prov:Activity" + ] + } +} diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/motioncorrection/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/motioncorrection/v0.1.0/example.json new file mode 100644 index 00000000..d04af1c7 --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/motioncorrection/v0.1.0/example.json @@ -0,0 +1,23 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "nsg:MotionCorrection", + "prov:Activity" + ], + "generated": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/87a00313-e95b-4282-8a84-94afc639d47e", + "@type": [ + "nsg:ImageSequence", + "prov:Entity" + ] + }, + "used": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/c33d5541-ac7a-4214-8928-f4edc48e893e", + "@type": [ + "nsg:ImageSequence", + "prov:Entity" + ] + } +} \ No newline at end of file diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/example.json new file mode 100644 index 00000000..967679b3 --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/example.json @@ -0,0 +1,21 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "prov:Entity", + "nsg:RegionOfInterest" + ], + "name": "ROI3", + "nsg:position": { + "nsg:origin": "bottom-left", + "nsg:x": 87, + "nsg:y": 145 + }, + "nsg:shape": "rectangle", + "nsg:size": { + "nsg:width": 32, + "nsg:height": 56 + }, + "nsg:classification": "proximal dendrite" +} diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/roiselection/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/roiselection/v0.1.0/example.json new file mode 100644 index 00000000..45e106e0 --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/roiselection/v0.1.0/example.json @@ -0,0 +1,23 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "nsg:RegionOfInterestSelection", + "prov:Activity" + ], + "generated": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/87a00313-e95b-4282-8a84-94afc639d47e", + "@type": [ + "nsg:RegionOfInterest", + "prov:Entity" + ] + }, + "used": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/c33d5541-ac7a-4214-8928-f4edc48e893e", + "@type": [ + "nsg:ImageSequence", + "prov:Entity" + ] + } +} diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0/example.json new file mode 100644 index 00000000..7458f7d2 --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/timeseriesextraction/v0.1.0/example.json @@ -0,0 +1,23 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "nsg:TimeSeriesExtraction", + "prov:Activity" + ], + "used": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/regionofinterest/v0.1.0/87a00313-e95b-4282-8a84-94afc639d47e", + "@type": [ + "nsg:RegionOfInterest", + "prov:Entity" + ] + }, + "generated": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/fluoresencetrace/v0.1.0/c33d5541-ac7a-4214-8928-f4edc48e893e", + "@type": [ + "nsg:FluorescenceTrace", + "prov:Entity" + ] + } +} \ No newline at end of file diff --git a/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0/example.json b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0/example.json new file mode 100644 index 00000000..3a73e12e --- /dev/null +++ b/modules/optophysiology/src/test/resources/data/neurosciencegraph/optophysiology/twophotonimaging/v0.1.0/example.json @@ -0,0 +1,46 @@ +{ + "@context": [ + "{{base}}/contexts/neurosciencegraph/core/data/v0.1.0" + ], + "@type": [ + "nsg:TwoPhotonImaging", + "prov:Activity" + ], + "generated": { + "@id": "{{base}}/data/neurosciencegraph/optophysiology/imagesequence/v0.1.0/87a00313-e95b-4282-8a84-94afc639d47e", + "@type": [ + "nsg:ImageSequence", + "prov:Entity" + ] + }, + "used": { + "@id": "{{base}}/data/neurosciencegraph/experiment/cranialwindow/v0.1.0/c33d5541-ac7a-4214-8928-f4edc48e893e", + "@type": [ + "nsg:CranialWindow", + "prov:Entity" + ] + }, + "nsg:microscope": "Leica SP5 resonant laser scanning microscope", + "nsg:brainState": "anesthetized", + "nsg:anesthesia": "1–2% isoflurane anesthesia", + "nsg:laser": "Spectra-Physics Mai Tai high-performance mode-locked Ti:sapphire", + "nsg:excitationWavelength": { + "unitText": "nm", + "min": 900, + "max": 940 + }, + "nsg:laserpower": { + "unitText": "mW", + "min": 14, + "max": 21 + }, + "nsg:collectionWavelength": { + "unitText": "nm", + "value": 525 + }, + "nsg:imagingDepth": { + "unitText": "µm", + "min": 140, + "max": 200 + } + } \ No newline at end of file