-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathNetworks.xml
233 lines (162 loc) · 9.14 KB
/
Networks.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
<Lems xmlns="http://www.neuroml.org/lems/0.7.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.neuroml.org/lems/0.7.1 ../../LEMS/Schemas/LEMS/LEMS_v0.7.1.xsd"
description="Network descriptions in NeuroML 2. Describes _network_ elements containing _population_s ">
<!-- A number of network elements for use in NeuroML 2 documents -->
<Include file="NeuroMLCoreDimensions.xml"/>
<Include file="Synapses.xml"/>
<ComponentType name="network" description="Network containing _population_s, _projection_s and lists of _explicitConnection_s (either directly between components of the populations or via synapses)">
<Children name="regions" type="region"/>
<Children name="populations" type="basePopulation"/>
<Children name="projections" type="projection"/>
<Children name="synapticConnections" type="explicitConnection"/> <!-- Connection either directly between cells or to synapse attachment on post cell-->
<Children name="explicitInputs" type="explicitInput"/>
<Children name="inputs" type="inputList"/>
</ComponentType>
<ComponentType name="networkWithTemperature" description="Network containing _population_s, _projection_s and lists of _explicitConnection_s (either directly between components of the populations or via synapses), and an explicit temperature" extends="network">
<Parameter name="temperature" dimension="temperature"/>
</ComponentType>
<ComponentType name="basePopulation" description="A population of cells (anything which extends _baseCell_)">
<Child name="notes" type="notes"/>
<Child name="annotation" type="annotation"/>
<ComponentReference name="component" type="baseCell"/>
</ComponentType>
<ComponentType name="population" extends="basePopulation" description="A population of components, with just one parameter for the _size">
<Parameter name="size" dimension="none" description="Number of instances of this Component to create when the population is instantiated"/>
<ComponentReference name="component" type="Component"/>
<Structure>
<MultiInstantiate number="size" component="component"/>
</Structure>
</ComponentType>
<ComponentType name="populationList" extends="basePopulation" description="An explicit list of the cells in the population. Work in progress...">
<Children name="instances" type="instance"/>
<ComponentReference name="component" type="baseCell"/>
</ComponentType>
<ComponentType name="instance" description="Initial attempt to specify instances in populations. Work in progress...">
<Child name="location" type="location"/>
<Structure>
<ChildInstance component="../component"/>
</Structure>
</ComponentType>
<ComponentType name="location" description="Initial attempt to specify instances in populations. Work in progress...">
<Parameter name="x" dimension="none"/>
<Parameter name="y" dimension="none"/>
<Parameter name="z" dimension="none"/>
</ComponentType>
<ComponentType name="region" description="Initial attempt to specify 3D region for placing cells. Work in progress...">
<Child name="rectangularExtent" type="rectangularExtent"/>
</ComponentType>
<ComponentType name="rectangularExtent" description="For defining a 3D rectangular box">
<Parameter name="xStart" dimension="none"/>
<Parameter name="yStart" dimension="none"/>
<Parameter name="zStart" dimension="none"/>
<Parameter name="xLength" dimension="none"/>
<Parameter name="yLength" dimension="none"/>
<Parameter name="zLength" dimension="none"/>
</ComponentType>
<ComponentType name="projection"
description="Projection from one population to another. Currently it's better to define an explicit list of connections, using _explicitConnection_. Work in progress...">
<!--TODO: allow more than one...-->
<Child name="synapseComponent" type="synapseComponent"/>
<Children name="connections" type="connection"/>
<ComponentReference name="synapse" type="baseSynapse"/>
<Path name="presynapticPopulation"/>
<Path name="postsynapticPopulation"/>
</ComponentType>
<ComponentType name="synapseComponent" description="Work in progress...">
<ComponentReference name="component" type="baseSynapse"/>
</ComponentType>
<ComponentType name="connection"
description="Explicit event connection directly between named components, which gets processed via a new instance of a _synapse component which is created on the target component. Normally contained inside a _projection_ element.">
<Path name="preCellId"/>
<Path name="postCellId"/>
<Text name="destination"/>
<Structure>
<With instance="preCellId" as="a"/>
<With instance="postCellId" as="b"/>
<EventConnection from="a" to="b" receiver="../synapse" receiverContainer="destination" sourcePort="sourcePort" targetPort="targetPort"/>
</Structure>
</ComponentType>
<ComponentType name="explicitConnection"
description="Explicit event connection between components">
<Path name="from"/>
<Path name="to"/>
<Text name="targetPort"/>
</ComponentType>
<ComponentType name="synapticConnection"
description="Explicit event connection between named components, which gets processed via a new instance of a _synapse component which is created on the target component"
extends="explicitConnection">
<ComponentReference name="synapse" type="baseSynapse"/>
<Path name="from"/>
<Path name="to"/>
<Text name="destination"/>
<Structure>
<With instance="from" as="a"/>
<With instance="to" as="b"/>
<EventConnection from="a" to="b" receiver="synapse" receiverContainer="destination" sourcePort="sourcePort" targetPort="targetPort"/>
<!--<EventConnection from="a" to="b" receiver="synapse"/>-->
</Structure>
</ComponentType>
<ComponentType name="synapticConnectionWD"
description="Explicit event connection between named components, which gets processed via a new instance of a _synapse component which is created on the target component, includes setting of _weight and _delay for the synaptic connection"
extends="synapticConnection">
<Parameter name="weight" dimension="none"/>
<Parameter name="delay" dimension="time"/>
<Path name="from"/>
<Path name="to"/>
<Structure>
<With instance="from" as="a"/>
<With instance="to" as="b"/>
<!--<EventConnection from="a" to="b" receiver="synapse" receiverContainer="destination" sourcePort="sourcePort" targetPort="targetPort" delay="delay">-->
<EventConnection from="a" to="b" receiver="synapse" delay="delay">
<!--TODO: put back in! -->
<Assign property="weight" value="weight"/>
</EventConnection>
</Structure>
</ComponentType>
<!-- Not yet stable...
<Component Type name="EventConnectivity">
<Child name="Connections" type="ConnectionPattern"/>
<Link name="source" type="population"/>
<Link name="target" type="population"/>
</ComponentType>
<Component Type name="ConnectionPattern">
</ComponentType>
<Component Type name="AllAll" extends="ConnectionPattern">
<Dynamics>
<Build>
<ForEach instances="../source" as="a">
<ForEach instances="../target" as="b">
<EventConnection from="a" to="b"/>
</ForEach>
</ForEach>
</Build>
</Dynamics>
</ComponentType>-->
<ComponentType name="explicitInput" description="An explicit input (anything which extends _basePointCurrent_) to a target cell in a population">
<ComponentReference name="input" type="basePointCurrent"/>
<Path name="target"/>
<Text name="destination"/>
<Text name="sourcePort"/>
<Text name="targetPort"/>
<Structure>
<With instance="target" as="a"/>
<With instance="target" as="b"/>
<EventConnection from="a" to="b" receiver="input" receiverContainer="destination"/>
</Structure>
</ComponentType>
<ComponentType name="inputList" description="An explicit list of inputs. Not yet stable...">
<Children name="inputs" type="input"/>
<ComponentReference name="component" type="basePointCurrent"/>
<Text name="population"/>
</ComponentType>
<ComponentType name="input" description="Initial attempt to specify input lists. Work in progress...">
<Path name="target"/>
<Text name="destination"/>
<Structure>
<With instance="target" as="a"/>
<With instance="target" as="b"/>
<EventConnection from="a" to="b" receiver="../component" receiverContainer="destination"/>
</Structure>
</ComponentType>
</Lems>