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

presynapticPopulation and postsynapticPopulation in projection are not parse as refcomponents but as attributes #17

Open
adrianq opened this issue Dec 11, 2015 · 1 comment

Comments

@adrianq
Copy link
Member

adrianq commented Dec 11, 2015

When parsing a neuroml doc with jlems, presynapticPopulation and postsynapticPopulation in projection component should be refcomponents. For instance, synapse attribute in a projection component is parse as a refcomponent. However pre and post synaptic population are just attributes.

@pgleeson I have created this issue in this repo as I guess it has to do with neuroml comp definition but maybe it makes more sense to move it to another repo.

@pgleeson
Copy link
Member

@adrianq, not really... The presynapticPopulation and postsynapticPopulation are defined using Path:

<ComponentType name="projection" ...>
    ...
    <ComponentReference name="synapse" type="baseSynapse"/>
    <Path name="presynapticPopulation"/>
    <Path name="postsynapticPopulation"/>
</ComponentType>

The difference when a component is referenced with Path and ComponentReference is:

  • Path: there is an existing component in place and this comp will be referring to it here
  • ComponentReference: there is an existing component, but this comp will be creating a personal copy of that for use here

So synapse will point to an existing syn component, but a new instance of this syn will be created at runtime inside this projection; pre/post pop will point to the existing populations, but they won't be copied.

As I say, this distinction is important at runtime, but not necessarily crucial for when the model is being converted into Geppetto equivalents. In each case if someone is reading/editing the projection, they may wish to see/link to/edit the original synapse or pre/post population. So maybe handle Path just like you handle ComponentReference....

@tarelli

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants