loadExternalDtd method
Attempts to load all external DTD references contained within any nested XmlDoctypes and XmlEntitys, load the pages they reference, and parse the DTD elements contained within.
Implementation
Future<void> loadExternalDtd() async {
if (children.isEmpty) return;
for (var i = 0; i < children.length; i++) {
final child = children[i];
if (child is XmlConditional) {
await child.loadExternalDtd();
} else if (child is XmlDoctype) {
final externalDtd = await child.loadExternalDtd();
if (externalDtd != null) children[i] = externalDtd;
} else if (child is XmlElement) {
await child.loadExternalDtd();
} else if (child is XmlEntity) {
final externalEntities = await child.loadExternalEntities();
if (externalEntities != null) children[i] = externalEntities;
}
}
return;
}