Question on observe_form

It seems like the observe magic is more about noticing changes to the form, as opposed to be able to discriminate what’s being done.
To clarify what I’m saying since I’m tired and probably not making any sense -
The form knows when a user makes a selection, but when the user de-selects it detects a change and sends things through However what it can’t do is detect that nothing should be sent, meaning blank values.
Hope I’m making some sense here. Perhaps there is a better way to control it?