Disregard my other comment.
readInnerXml does not advance the cursor, so you can call it more than once. I made a mistake testing this.
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
XMLReader::readInnerXml — Retrieve XML from current node
Reads the contents of the current node, including child nodes and markup.
Esta função não possui parâmetros.
Returns the contents of the current node as a string. Empty string on failure.
Esta função só estará disponível quando o PHP for compilado com a libxml 20620 ou superior.