Sfondo
Recentemente ho assunto un nuovo lavoro come sviluppatore in un'azienda in cui ho ereditato un CMS interno costruito circa 5 anni fa. Il CMS costruisce le pagine in XML che vengono quindi inviate alla pagina come HTML. Alcuni dei markup sono generati all'interno del PHP back-end, mentre altri sono esposti all'utente nel livello di amministrazione, per consentire la modifica. Finora ho osservato che nessuno dei markup è semantico: il 95% di esso è testo semplice racchiuso nei tag, in questo modo:
<div>
This is a heading
</div>
<div>
This is a subheading
</div>
<div>
This is a paragraph.
<div>
<a href='#'>This is a button</a>
</div>
</div>
(Il markup ha div annidato dove richiesto e utilizza le classi, ma quanto sopra è inteso come una dimostrazione che i tag semantici non sono in uso.)
Sono l'unico sviluppatore responsabile del lavoro front-end in questa azienda: il precedente sviluppatore front-end è uscito. Sono stato informato che il markup semantico non dovrebbe mai essere usato e che dovrei mantenere lo stile di markup in futuro. Non sono riuscito a ottenere spiegazioni tecniche per questa decisione strutturale, e anche gli altri dipendenti dell'azienda non lo sanno.
Per ora manterrò il sistema in modo coerente, ma nel frattempo sto indagando sul motivo per cui questa scelta strutturale potrebbe essere stata fatta. Originariamente la piattaforma avrebbe supportato IE8, ma al giorno d'oggi supportiamo IE9 e versioni successive. Esperimenti con il sistema di template dimostrano che CMS può gestire l'HTML semantico e il mio test dimostra che le pagine web generate funzionano come previsto. Non riesco a rilevare alcun problema causato dall'introduzione di elementi semantici HTML5 in qualsiasi browser moderno (sebbene non abbia ancora provato a eseguire il test in IE8).
Domanda
Quali sono le possibili ragioni tecniche per escludere deliberatamente l'uso del markup semantico da un progetto web?
NB. Alcune aziende hanno regole interne atipiche e lavorare in quelle aziende implica seguire le regole, indipendentemente dall'opinione. La mia domanda non è se dovrei mantenere lo status quo o modificarlo, ma quali motivi potrebbero aver influenzato le scelte di progettazione in primo luogo.