veras, si quieres hacerlo con codigo valido estas limitado a los atributos validos, ya eso @caricatos lo menciono. entonces, ¿en cual atributo de los validos? pues es muy dificil indicarte cual. primero tendrias que conocer cuales son los atributos validos para el elemento en que quieres emplearlo. dado que estas hablando de celdas, asumo que sera <td>, los cuales tienen los siguientes atributos en xhtml transicional.
Código:
id ID #IMPLIED
class CDATA #IMPLIED
style "CDATA" #IMPLIED
title "CDATA" #IMPLIED
lang "NMTOKEN" #IMPLIED
xml:lang "NMTOKEN" #IMPLIED
dir (ltr|rtl) #IMPLIED
onclick "CDATA" #IMPLIED
ondblclick "CDATA" #IMPLIED
onmousedown "CDATA" #IMPLIED
onmouseup "CDATA" #IMPLIED
onmouseover "CDATA" #IMPLIED
onmousemove "CDATA" #IMPLIED
onmouseout "CDATA" #IMPLIED
onkeypress "CDATA" #IMPLIED
onkeydown "CDATA" #IMPLIED
onkeyup "CDATA" #IMPLIED
abbr "CDATA" #IMPLIED
axis CDATA #IMPLIED
headers IDREFS #IMPLIED
scope "(row|col|rowgroup|colgroup)" #IMPLIED
rowspan "CDATA" "1"
colspan "CDATA" "1"
align (left|center|right|justify|char) #IMPLIED
char "CDATA" #IMPLIED
charoff "CDATA" #IMPLIED
valign (top|middle|bottom|baseline) #IMPLIED
nowrap (nowrap) #IMPLIED
bgcolor "CDATA" #IMPLIED
width "CDATA" #IMPLIED
height "CDATA" #IMPLIED
de todos ellos, el unico que considero apropiado para introducir "datos" es
title. pero de nuevo, depende que tipo de datos sean. en conclusion, segun tus directrices no le veo otra alternativa que introducir la informacion dentro de la celda. si la idea se trata de mantener oculta dicha informacion hasta que sea solicitada, una alternativa ya la conoces, un elemento oculto. otra posible alternativa que se me ocurre, introducir la informacion dentro de un comentario y luego con javascript lo recuperas. por si las dudas, los comentarios tambien son nodos en DOM. en mi opinion, no deja de ser redundante a la alternativa anterior. tambien puedes hacer combinaciones con ajax pero supongo que todo sera controlado desde el cliente.
saludos!