Data Binding is a coding term for “binding” _data_ to some aspect of a user interface. It is not provided out of the box with [[HTML CSS and JavaScript]], and that’s arguably one of the main reasons [[JavaScript Frameworks]] exist… although you don’t need a framework to handle data binding.
The term data binding could easily apply to _templating_, as well. The construction of graphics with a data-based backend, with aspects[^1] of the graphic [[Information Mapping|mapped]] to the data model, possibly via some [[Piping]]/transform mechanism. In more sophisticated libraries (e.g. GoJS) the graphic-to-binding can be made 2-way, which offers a natural means of updating the data model by updating the graphics in a graphical editor.[^2]
![[Pasted image 20240717141553.png]]
# Tools
[[DrawIO]] offers data _import_ which will inflate a diagram based on tempting logic one-time. I don’t believe there are means of creating two-way bindings in DrawIO or keeping an _enduring_ data model under the hood (aside from utilizing their in-built model).
****
## Source
- self
## Related
[^1]: Which I've seen in various context referred to as "adornments", "annotations", "decorations", or simply "styling"
[^2]: this is actually the **only thing computers with user interfaces do**