Wer erzeugt denn bei Dir Content? Sind das beliebige Benutzer, so ist eine redaktionelle Aufarbeitung unerläßlich. So erstellen unbekannte Nutzer auch keine Tabellen mit Markup, vielmehr stellst Du da eine Maske bereit wo die Daten einzutragen sind und wo ggf. neue Zeilen hinzugefügt werden können.
Was den semantischen Aufbau einer Seite selbst betrifft, beschreibt ja das View bzw. das Template. Da jede Seite, sofern Content-Type: text/html, gleichermaßen einen <head>, <body> bzw. <main> Bereich hat, ergeben sich schon mehrere Templates die stets in derselben Reihenfolge ausgegeben werden. Von Außen nach Innen gesehen qualifiziert Deine MVC-Klasse z.B. nur noch den <body>, alles Andere ist ja auf jeder Seite gleich.
Von weiteren und von text/html abweichenden beliebigen Content-Types abgesehen, die ein CMS natürlich auch auszugeben hat, bspw. eine Ajax-Response in application/json.
MfG