Since 2007, we have used a local DTD to add a tag-pair and to define several attributes for PayPlal and google++. This is the local DTD...
<!ELEMENT havindex EMPTY>
<!ATTLIST havindex id CDATA #REQUIRED>
<!ENTITY % head.misc "(script|style|meta|link|object|isindex|havindex)*">
<!ENTITY % html.transitional PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- =========== 3 div attributes for googleplus share button ====== -->
<!ATTLIST div data-action CDATA #IMPLIED>
<!ATTLIST div data-annotation CDATA #IMPLIED>
<!ATTLIST div data-height CDATA #IMPLIED>
<!ATTLIST div data-id CDATA #IMPLIED>
<!-- =========== 2 script attributes for paypal support ========== -->
<!ATTLIST script data-pp-pubid CDATA #IMPLIED>
<!ATTLIST script data-pp-placementtype CDATA #IMPLIED>
%html.transitional;
... We recently converted the site to https (not sure that has anything to do with it, but just as an aside) and all of a sudden, it seems that the local DTD breaks the W3C validation - it fails immediately on the DTD. When I use a standard DTD, of course, the new tag and attributes are seen as validation errors. Any thoughts on how to use the local dtd or to define the attributes, at least?