Binding subcomp to child/ren
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 20/100
Direzione di ricerca
Inizia dalla documentazione collegata di example1 e dalla discussione nell’issue 2 di org.lemsml.model, quindi esamina i punti di ingresso del parser o dell’interprete che gestiscono gli elementi XML Component e Child. L’issue richiede una regola definita e coerente per il binding dei figli prima che l’implementazione possa essere considerata completata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
According to the docs, the shorthand notation for defining components consists in using ComponentType as the xml-element name instead of <Component type=...>:
[...] Once the units are available it is possible to define a component. There are two equivalent ways of doing this: either by using the Component element and setting its type, or by using the type as a new XML element [...]
In the same example, though, we find
<HHGate id="n" power="4">
<Forward type="HHExpLinearRate" rate="0.1per_ms" midpoint="-55mV" scale="10mV" />
<Reverse type="HHExpRate" rate="0.125per_ms" midpoint="-65mV" scale="-80mV" />
</HHGate>
Where <Forward> and <Reverse> are not Component Types (they even have a type attribute), but the name attribute of a Child definition in the ComponentType:
<ComponentType name="HHGate">
<Parameter name="power" dimension="none" />
<Child name="Forward" type="HHRate" />
<Child name="Reverse" type="HHRate" />
In this case, <HHGate> would have two <Child> of type HHRate, and the element name is being used to determine which is which.
One can always argue that <X name="aX"> is nicer to type than <Component type="X" name="aX">, but being able to bend the rules again and use <aX> (if and only if it is a <Child>) seems abusive to me. Consistence is not only good for us writing parsers/interpreters -- which will have a lot of ad-hoc checks to cope with those special cases -- but for users as well, as changing notation in "magic" places tends to be confusing and frustrating.
Keeping the discussion here in mind, I suggest (@robertcannon) to stick to the <X name="aX"> notation (even though I'd like to be radical on the consistency side and abolish the shorthand notation altogether...).
@pgleeson will probably say we have to live with it since it is used all around NeuroML2 - but actually, this seems to be the case (multiple <Child> with the same type) only for Gate opening / closing rates.
- Lingua principale
- Java
- Stelle
- 13
- Fork
- 11
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di LEMS/jLEMS
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
-
As a user I want to set a recording frequency different from the simulation/integration time stepApertaenhancement help required
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
Issue simili
-
bug follow-up lane:backlog
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Sanne/incus-spawn#1576 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
checkstyle/checkstyle#22069 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 86/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
it-at-m/eNoVa-Editor#79 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno