@@ -1,5 +1,10 @@
-return !!(
-	node.getAttribute('lang') ||
-	node.getAttribute('xml:lang') ||
-	''
-).trim();
+const { isXHTML } = axe.utils;
+
+const langValue = node.getAttribute(`lang`);
+const xmlLangValue = node.getAttribute(`xml:lang`);
+
+if (!langValue && !isXHTML(document)) {
+	return false;
+}
+
+return !!(langValue || xmlLangValue || '').trim();
return !!(
	node.getAttribute('lang') ||
	node.getAttribute('xml:lang') ||
	''
).trim();

Why aren't you trimming here?