Rather than derive the types from the parser via a separate transform,
collect them when building the parser and remember them in a
`<html:dl>` which can be queried with X·Path.
This is a prerequisite to accessing this information at parse time,
but also a useful optimization in its own right.