Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various complextypes are missing from the LEMS definitions, and so not included in the docs (IncludeType is an example) #157

Open
sanjayankur31 opened this issue Jun 10, 2021 · 1 comment
Assignees
Labels
C: NeuroML2 standard Component: NeuroML 2 standard T: bug Type: bug

Comments

@sanjayankur31
Copy link
Member

Describe the bug
There are some componenttypes in the XSD file which are not mentioned in the LEMS definition files (and vice versa?). Since we're using LEMS definition files to generate the schema/standard documentation here, these are also not included here.

Here's the diff:

--- schema-complex-types.txt	2021-06-10 15:49:30.090325097 +0100
+++ schema-component-types.txt	2021-06-10 15:50:08.352969178 +0100
@@ -4,32 +4,56 @@
 alphacurrsynapse
 alphasynapse
 annotation
-base
+baseblockmechanism
+basebqbiol
 basecell
+basecellmembpot
 basecellmembpotcap
+basecellmembpotdl
+basechanneldensity
+basechanneldensitycond
+basechannelpopulation
 baseconductancebasedsynapse
 baseconductancebasedsynapsetwo
-baseconnection
-baseconnectionnewformat
-baseconnectionoldformat
+baseconductancescaling
+baseconductancescalingcadependent
 basecurrentbasedsynapse
-basenonnegativeintegerid
-baseprojection
+basegate
+basegradedsynapse
+basehhrate
+basehhvariable
+baseiaf
+baseiafcapcell
+baseionchannel
+baseplasticitymechanism
+basepointcurrent
+basepointcurrentdl
+basepopulation
 basepynncell
 basepynniafcell
 basepynniafcondcell
 basepynnsynapse
+baseq10settings
+basespikesource
+basespikingcell
+basestandalone
 basesynapse
+basesynapsedl
+basevoltageconcdeprate
+basevoltageconcdeptime
+basevoltageconcdepvariable
+basevoltagedeppointcurrent
+basevoltagedeppointcurrentdl
+basevoltagedeppointcurrentspiking
+basevoltagedeprate
 basevoltagedepsynapse
-basewithoutid
+basevoltagedeptime
+basevoltagedepvariable
 biophysicalproperties
 biophysicalproperties2capools
 blockingplasticsynapse
-blockmechanism
-case
 cell
 cell2capools
-cellset
 channeldensity
 channeldensityghk
 channeldensityghk2
@@ -40,63 +64,63 @@
 channeldensitynonuniformnernst
 channeldensityvshift
 channelpopulation
+channelpopulationnernst
 closedstate
-componenttype
 compoundinput
 compoundinputdl
-conditionalderivedvariable
+concentrationmodel
 connection
 connectionwd
-constant
 continuousconnection
 continuousconnectioninstance
 continuousconnectioninstancew
 continuousprojection
 decayingpoolconcentrationmodel
-derivedvariable
-distaldetails
+display
+distal
+distalproperties
 doublesynapse
-dynamics
 electricalconnection
 electricalconnectioninstance
 electricalconnectioninstancew
 electricalprojection
+eventoutputfile
+eventselection
 expcondsynapse
 expcurrsynapse
+explicitconnection
 explicitinput
 exponesynapse
-exposure
 expthreesynapse
 exptwosynapse
-extracellularproperties
-extracellularpropertieslocal
-fitzhughnagumo1969cell
 fitzhughnagumocell
 fixedfactorconcentrationmodel
+fixedfactorconcentrationmodeltraub
 fixedtimecourse
 forwardtransition
+from
 gapjunction
+gate
 gatefractional
-gatefractionalsubgate
 gatehhinstantaneous
 gatehhrates
 gatehhratesinf
 gatehhratestau
 gatehhratestauinf
 gatehhtauinf
-gatehhundetermined
 gateks
 gradedsynapse
-gridlayout
-hhrate
-hhtime
-hhvariable
+hhexplinearrate
+hhexplinearvariable
+hhexprate
+hhexpvariable
+hhsigmoidrate
+hhsigmoidvariable
 iafcell
 iafrefcell
 iaftaucell
 iaftaurefcell
 include
-includetype
 inhomogeneousparameter
 inhomogeneousvalue
 initmembpotential
@@ -104,60 +128,60 @@
 inputlist
 inputw
 instance
-instancerequirement
 intracellularproperties
 intracellularproperties2capools
 ionchannel
 ionchannelhh
 ionchannelks
-ionchannelscalable
+ionchannelpassive
 ionchannelvshift
 izhikevich2007cell
 izhikevichcell
-layout
+ksstate
+kstransition
+line
 lineargradedsynapse
 location
 member
 membraneproperties
 membraneproperties2capools
 morphology
-nameddimensionaltype
-nameddimensionalvariable
 network
-neuromldocument
+networkwithtemperature
+notes
 openstate
-parameter
+outputcolumn
+outputfile
+parent
 path
 pinskyrinzelca3cell
-plasticitymechanism
 point3dwithdiam
+pointcellcondbased
+pointcellcondbasedca
 poissonfiringsynapse
 population
+populationlist
 projection
 property
-proximaldetails
+proximal
+proximalproperties
 pulsegenerator
 pulsegeneratordl
 q10conductancescaling
-q10settings
+q10exptemp
+q10fixed
 rampgenerator
 rampgeneratordl
-randomlayout
-reactionscheme
+rectangularextent
 region
-requirement
 resistivity
-reversalpotential
 reversetransition
 segment
-segmentendpoint
 segmentgroup
-segmentparent
 silentsynapse
+simulation
 sinegenerator
 sinegeneratordl
-space
-spacestructure
 species
 specificcapacitance
 spike
@@ -168,16 +192,19 @@
 spikegeneratorrefpoisson
 spikesourcepoisson
 spikethresh
-standalone
-statevariable
+stdpsynapse
+subgate
 subtree
 synapticconnection
+synapticconnectionwd
 tauinftransition
-timederivative
 timedsynapticinput
+to
 transientpoissonfiringsynapse
-unstructuredlayout
-valueacrosssegorseggroup
+tsodyksmarkramdepfacmechanism
+tsodyksmarkramdepmechanism
 variableparameter
+vhalftransition
 voltageclamp
 voltageclamptriple
+voltageconcdepblockmechanism

Commands (note to self!)

# For xml definition files
grep -h -E -o "ComponentType name=\"([[:alnum:]])+\"" *.xml | sed -e 's/ComponentType.*name="\(.*\)"/\L\1/' | sort -h | uniq > schema-component-types.txt

# For xsd schema file
grep -h -E -o "xs:complexType name=\"([[:alnum:]])+\"" NeuroML_v2.1.xsd | sed -e 's/xs:complexType.*name="\(.*\)"/\L\1/' | sort -h | uniq > schema-complex-types.txt

# and then diff -ur file1 file2

The two files are:
schema-complex-types.txt
schema-component-types.txt

@sanjayankur31
Copy link
Member Author

The script from #172 confirms this:

Following component types are defined in the XML but not the XSD: {'basespikingcell', 'simulation', 'display', 'eventselection', 'populationlist', 'rdf_rdf', 'baseq10settings', 'bqbiol_hasproperty', 'notes', 'bqbiol_occursin', 'hhexprate', 'hhexplinearvariable', 'vhalftransition', 'to', 'basestandalone', 'pointcellcondbased', 'baseconductancescaling', 'basecellmembpot', 'basevoltagedeppointcurrent', 'q10exptemp', 'voltageconcdepblockmechanism', 'ksstate', 'bqmodel_isdescribedby', 'channelpopulationnernst', 'eventoutputfile', 'basehhvariable', 'rdf_description', 'tsodyksmarkramdepfacmechanism', 'rdf_bag', 'gate', 'hhexpvariable', 'hhsigmoidvariable', 'networkwithtemperature', 'rectangularextent', 'basevoltagedeprate', 'basespikesource', 'basevoltageconcdepvariable', 'parent', 'fixedtimecourse', 'baseconductancescalingcadependent', 'distalproperties', 'explicitconnection', 'proximal', 'basebqbiol', 'basevoltageconcdeptime', 'baseiafcapcell', 'basevoltagedeppointcurrentdl', 'from', 'basechannelpopulation', 'proximalproperties', 'bqmodel_isderivedfrom', 'basepointcurrentdl', 'pointcellcondbasedca', 'hhexplinearrate', 'tsodyksmarkramdepmechanism', 'baseiaf', 'basechanneldensity', 'basevoltagedeppointcurrentspiking', 'outputcolumn', 'concentrationmodel', 'bqbiol_ispartof', 'basechanneldensitycond', 'stdpsynapse', 'line', 'basepointcurrent', 'basevoltagedepvariable', 'basevoltagedeptime', 'baseblockmechanism', 'basehhrate', 'bqbiol_encodes', 'bqbiol_hasversion', 'distal', 'bqbiol_isversionof', 'rdf:li', 'basegate', 'baseplasticitymechanism', 'basecellmembpotdl', 'baseionchannel', 'synapticconnectionwd', 'bqbiol_ispropertyof', 'hhsigmoidrate', 'bqbiol_isdescribedby', 'q10fixed', 'basevoltageconcdeprate', 'bqbiol_haspart', 'basesynapsedl', 'bqmodel_is', 'bqbiol_isencodedby', 'outputfile', 'bqbiol_is', 'basegradedsynapse', 'subgate', 'fixedfactorconcentrationmodeltraub', 'basepopulation', 'bqbiol_hastaxon', 'kstransition', 'ionchannelpassive', 'bqbiol_ishomologto'}

Following component types are defined in the XSD but not the XML: {'case', 'hhvariable', 'baseconnectionoldformat', 'segmentendpoint', 'reactionscheme', 'componenttype', 'baseconnection', 'gridlayout', 'ionchannelscalable', 'q10settings', 'nameddimensionaltype', 'conditionalderivedvariable', 'basenonnegativeintegerid', 'gatehhundetermined', 'statevariable', 'space', 'baseprojection', 'cellset', 'exposure', 'standalone', 'extracellularproperties', 'derivedvariable', 'parameter', 'requirement', 'includetype', 'concentrationmodel_d', 'hhtime', 'extracellularpropertieslocal', 'gatefractionalsubgate', 'dynamics', 'base', 'timederivative', 'spacestructure', 'distaldetails', 'nameddimensionalvariable', 'segmentparent', 'unstructuredlayout', 'baseconnectionnewformat', 'lems_property', 'layout', 'proximaldetails', 'instancerequirement', 'neuromldocument', 'blockmechanism', 'plasticitymechanism', 'hhrate', 'basewithoutid', 'randomlayout', 'constant'}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: NeuroML2 standard Component: NeuroML 2 standard T: bug Type: bug
Projects
Status: 🔖 Ready
Development

No branches or pull requests

2 participants