Tach!
Ich versthe es nicht. Wahrscheinlich stehe ich davor, aber ich blick wirklich nicht durch...
Warum machst du dir das Leben so schwer? Die Antwort auf die Frage, warum es HTML 4.01 (XHTML 1.0) sein muss, bist du schuldig geblieben. Stell doch den Doctype um auf <!DOCTYPE html> und freu dich über die Möglichkeiten der data-*-Attribute. Oder lass den Doctype auf XHTML1.0 und ignorier die Nicht-Validität beim Einsatz von data-*. Validität ist doch kein Selbstzweck, und es ist auch kein Verbrechen, wenn man bewusst an bestimmten Stellen Invalidität in Kauf nimmt, wenn es denn unbedingt noch die alte HTML-Version sein muss.
dedlfix.