When a new record is added on the main table, InfoPath will default a new record for each child. The user can complete these, ignore these, or add more than one. That is why the records need an ID as well as a pointer to the parent, to enable multiple children. A new record would need the pointer set to submit properly but it would be blank initially. Child tables cannot be created on their own without an associated parent.
When a record is queried the related children will be returned as well.
Update your table as I laid out and then create a new form and I think you will see as you experiment with it.