Hive.g: Can we use "rowFormat", "rowFormatDelimited", "rowFormatSerDe" instead of "serde", "serdePropertiesFormat", and "serdeFormat"? I think that will be much more intuitive. We can also replace "tableRowFormat" with "rowFormat".
SemanticAnalyzer.genScriptPlan looks a bit ugly - can we add one level of nesting for inSerDe and outSerDe in Hive.g, and use a single loop over the children in genScriptPlan to get all corresponding children?
We can also add a "null" placeholder in case inSerDe / outSerDe is missing, so we don't need to calculate the child positions.
Otherwise it looks good.