venerdì 15 gennaio 2010

SharePoint 2007 & XHTML

Per esperienza personale, oltre al fatto che è anche dichiarato da Microsoft, SharePoint 2007 non è in grado OOTB di generare codice XHTML valido, indipendentemente dal DOCTYPE utilizzato. Fortunatamente qualche espediante per raggiungere un buon grado di aderenza allo standard XHTML c'è.

Parlo principalmente della carateristica di publish del MOSS, di cui ho più esperienza. I problemi derivano per esempio dal rendering dei campi RitchImage, che aggiungono attributi deprecati e scrivono il tag in maiuscolo. Per risolvere questo problema si può ricorrere agli adapter. Molti progetti presenti in Codeplex inerenti all'accessibilità fanno ricorso a questo espediante; consiglio:
Tutti progetti che affrantano il problema della resa del codice conforme allo standard XHTML; dal mio punto di vista non esiste il progetto risolutore, un mix delle soluzioni è l'approccio migliore.

Un altro consiglio per generare del buon codice è di usare il più possibile le Content by Query WebPart, che generano il codice html tramite XSLT. Questo permette al programmatore di maggior controllo sul codice generato. L'unica accrotezza da tenere presente è che gli XSLT usati dalla CQWP generano HTML pertanto il consiglio è di modificarli per fargli generare in output del codice XML. Per avere un controllo maggiore, tramite browser, delle CQWP, ho usato una WebPart che le estende e che espone anche quelle proprietà che altrimenti sarebbero visibili solo esportando la webpart stessa; la webpart è la Extented CQWP di Waldek Mastykarz (Paging Content Query Web Part).