INFO: Given that the Si elegans GUI doesn't delete Cylinder / Cube / Hexagon when changed from one to the other, to keep values that were set, it has been relaxed in the following from choice to minOccurs="0" and maxOccurs="1", the bad part is that xmls having neither of them will also validate
TODO: When upgrading to XSD1.1 check that based on shape the corresponding Cylinder / Cube / Hexagon exists
INFO: Here instead of xs:all as in other elements, sequence + choice is used, since the Si elegans GUI doesn't allow to change type once an element is added, so multiple objects option is not possible
TODO: When upgrading to XSD1.1 check that based on experimentCategory the corresponding chemotaxis / galvanotaxis / mechanosensation / phototaxis / termotaxis exists
INFO: Given that the Si elegans GUI doesn't delete staticPointSourceConf / osmoticRing / chemotaxisQuadrants1 / chemotaxisQuadrants2 / chemotaxisQuadrants4 when changed from one to the other, to keep values that were set, it has been relaxed in the following from choice to minOccurs="0" and maxOccurs="1", the bad part is that xmls having neither of them will also validate
TODO: Once set chemicalCategory or chemotaxisType for all in the Si elegans Behavioural experiment model, only leave one and set minOccurs="1" for it
TODO: When upgrading to XSD1.1 check that based on chemotaxisType the corresponding staticPointSourceConf / osmoticRing / chemotaxisQuadrants1 / chemotaxisQuadrants2 / chemotaxisQuadrants4 exists
INFO: Given that the Si elegans GUI doesn't delete plateTap / directTouch when changed from one to the other, to keep values that were set, it has been relaxed in the following from choice to minOccurs="0" and maxOccurs="1", the bad part is that xmls having neither of them will also validate
TODO: When upgrading to XSD1.1 check that based on interactionType the corresponding plateTap or directTouch exists
INFO: Given that the Si elegans GUI doesn't delete temperatureChangeInTime / pointSourceHeatAvoidance when changed from one to the other, to keep values that were set, it has been relaxed in the following from choice to minOccurs="0" and maxOccurs="1", the bad part is that xmls having neither of them will also validate
TODO: When upgrading to XSD1.1 check that based on termotaxisType the corresponding pointSourceHeatAvoidance or pointSourceHeatAvoidance exists
Temporal fix to support Sielegans 2016 implementation. I've defined this type since when exporting from Django Rest Framework exports it as True/False, while XSD boolean accepts true/false
Male
Female Hermaphrodites
water
gelatin
agar
cylinder
cube
hexagon
Electric shocks
Static point source
Static point source
chemicalquadrants1
chemicalquadrants2
chemicalquadrants4
osmoticring
plateTap
directWormTouch
EYEBROW
VONFREYHAIR
PLATINIUMWIRE
pointsourcelight
linearThermalGradient
temperatureChangeInTime
pointsourceheatavoidance
mechanosensation
chemotaxis
termotaxis
galvanotaxis
phototaxis