Can I load data into Select2 using an array?

Yes, but only when you are initially creating it.

What properties are required on the objects passed in to the array?

How should nested results be formatted?

How many levels of nesting are allowed?

Why are <option> tags being created?

The data option is a shortcut that Select2 provides which allows you to load options into your select from a data array.

My objects don't use id for their unique identifiers, what can I do?

My objects use a property other than text for the text that needs to be displayed