import 'dart:core'; import 'package:xml/xml.dart'; XmlElement findElementOrNull(XmlElement element, String name, {String namespace}) { try { return element.findAllElements(name, namespace: namespace).first; } on StateError { return null; } } List findAllDirectElementsOrNull(XmlElement element, String name, {String namespace}) { try { return element.findElements(name, namespace: namespace).toList(); } on StateError { return null; } } bool parseBoolLiteral(XmlElement element, String tagName) { var v = findElementOrNull(element, tagName)?.text?.toLowerCase()?.trim(); if (v == null) return null; return ["yes", "true"].contains(v); }