Semánticamente, ¿sirve la fila vacía para un propósito, o es solo para el diseño? En este último caso, puede valer la pena descartar la fila vacía y proporcionar la separación mediante CSS. P.ej.
<tr class="separate-below">
<td>Data before separater</td><td>More Data</td>...
</tr>
<tr>
<td>Data after separater</td><td>More Data</td>...
</tr>
Con el siguiente en la hoja de estilo:
TR.separate-below TD,TR.separate-below TH {
border-bottom: 1em solid white; /* use the background colour of a cell here */
}
Alternativamente, puede utilizar múltiples <tbody> elementos a bloques de grupo de filas juntos (Adición de reglas = "grupos" para el elemento de tabla hace que <tbody> elementos para obtener un borde horizontal en la parte superior e inferior, y <colgroup> elemento para obtener un borde a su izquierda y derecha):
<table rules="groups">
<thead>
<tr><th>Header</th><th>Header</th>...</tr>
</thead>
<tbody>
<tr><td>Data</td><td>Data</td>...</tr>
<tr><td>Data</td><td>Data</td>...</tr>
...
</tbody>
<tbody>
<tr><td>Data</td><td>Data</td>...</tr>
...
</tbody>
...
</table>
El uso de una fila vacía para el espaciado rompe la estructura de datos. Probablemente sea mejor que envuelva los diversos bloques de datos en elementos thead o tbody y los diseñe para lograr el espaciado. – Quentin