readMetadataFromDocument(doc) {
    for (let n = /** @type {Node} */ (doc.firstChild); n; n = n.nextSibling) {
      if (n.nodeType === Node.ELEMENT_NODE) {
        const metadata = this.readMetadataFromNode(/** @type {Element} */ (n));
        if (metadata) {
          return metadata;
        }
      }
    }
    return null;
  }
@param {Document} doc Document.
@return {GPXMetadata | null} Metadata