p.s: The F1 key help says "The Query Data Source Columns property is valid only when the Query Data Source Type property is set to Table, Sub-query, or Procedure". So, please explain in each context of Query Data Source Type.
IMHO those properties are very self-explaining: It is the data source of the block, or in other terms: how it is populated.
Table means the data block is based on a table and subsequently will be populated by
select col1, col2, col3 from your_table
With sub-query the block will be populated with your subquery; forms will issue
select col1, col2, col3 from ( -- this is your subquery select col1, col2, col3 from tab1, tab2 where [....] )
With Procedure in short you'd have a stored procedure which returns a ref cursor and the block will be populated by the ref cursor.
As for your question about the name: this actually should matter; the default is NULL which means that there needs to be a column which has the exact name as the item so in the above sample with table the item associated with your_table.col1 should be named col1. If it isn't the property should be named like the column. If this property also doesn't reflect the name this shouldn't work IMO.