Some component params are passed via the block (::alert{:type="type"}), while others require {{$doc.meta.param}} in bindings.
Example:
---
type: "warning"
---
::alert{:type="type"}
Your warning
::
{{type}}:{{$doc.meta.type}}
<alert type="warning">
Your warning
</alert>
:warning
Proposal: harmonize so that dynamic params work consistently both in component blocks and in bindings.