Because empty value(empty string) is still value, and while you do not trigger binding by touching input, value does not come to Data Model. By default data model is an empty object.
So you can bind the incoming data and the outgoing submit data.
If you bind your input to a Page Data property for example. And fill this property from your DB, input will react on it, and change the shown value. When you touch input and change value, that would change bound Page Data property.
That names two-way data binding. Here is a little example, where you could bind data from input to storage, and from storage to input(by clicking a button) - link
There is also “value” which lets you set the value from a DB or whatever…
…The input field in UI-builder doesn’t have a name field
This is not a native feature, and I can’t be sure, but this might be two-directional binding(and we provide it). Or initial value for component - we also give this possibility.
Regards, Dima