<select> tag?
Yes, just like in a standard select.
Only a single level of nesting is allowed per the HTML specification.
<optgroup> tags be made selectable?
No. This is a limitation of the HTML specification and is not a limitation that Select2 can overcome.
<option> and <optgroup> tags serialized into data objects?
Select2 will convert the <option> tag into a data object based on the following rules.
{
"id": "value attribute" || "option text",
"text": "label attribute" || "option text",
"element": HTMLOptionElement
}
And <optgroup> tags will be converted into data objects using the following rules
{
"text": "label attribute",
"children": [ option data object, ... ],
"elment": HTMLOptGroupElement
}