A declared parameter wins a name collision with a dynamic port
The rule
Normative: this is the rule
- Where a dynamic port's name is also the name of a parameter the node's processor declares, the declared parameter wins and the dynamic port is ignored.
- An author cannot shadow a declared parameter by adding a dynamic port of the same name.
What it means
A node instance can name a dynamic port whatever it likes, so nothing stops an author choosing a name the node's processor already declares as its own parameter. Where that happens the two do not blend and neither takes turns: the declared parameter's own resolution — its wiring, its default — is what the node receives, and a value arriving for the same name over the dynamic channel is discarded outright, never held as a fallback.
Example
A node instance declares a dynamic port named static_param, the same name
the node's processor already declares as its own parameter, and a value
arrives for that name over the dynamic channel:
"smuggled_must_lose"{ "value": "static_default", "source": "default" }Rule identifiers are permanent and are never renumbered. Each implementation publishes its own standing against these rules; this specification does not.spec 1.0-draft · DYN-5 · changed in spec 1.0