factory parse(String text, [XPathType type = xsDouble]) => tryParse(text, type) ?? (throw FormatException('Invalid float/double: "$text"'));