BigQuery extends the standard SQL model by supporting Records and Repeated fields (and, if you add those two things together, repeated records). Domains in JasperSoft have no support for these whatsoever.
While workarounds (derived tables) can be used in some cases, they are mostly less than ideal, and almost always much more expensive to use (BigQuery charges by the amount of processing time/data used)due to how derived tables must be written.
A repeated record can be thought of as a pre-joined table (without the need for foreign keys). In BigQuery SQL, repeated records are accessed using the
UNNEST() function, and can be treated similarly as a table join. They can be
OUTER LEFT joined, etc. They can have an
ON condition (helpful for pre-filtering). They can have multiple level of nesting. They are, in essence, very handy structures.
Likewise, records are helpful grouping structures, but Domains don't understand them, either. They leave out the record container name, which creates problems when multiple records have the same inner field name. It makes them unusable in Domains, unless used as a derived table, and, as stated above, this can be a very expensive workaround with BigQuery.