We now have an XHTML document as the child of [t:]tide-data.
We need the second XHTML pre element parsed into [t:]tide-level elements.
Let's focus on the XHTML by limiting the scope to the XHTML html element.
<p:subtree select="t:tide-data/h:html"> ... </p:subtree>
This makes the XHTML html element the document element for the contained steps.
Inside that element we can "project a view" so that only the XHTML pre elements remain:
<p:subtree select="t:tide-data/h:html"> <p:view select="/h:html/h:body/h:pre"/> </p:subtree>
Now only the XHTML pre elements remain.