An implementation of javax.servlet.jsp.tagext.PageData which
builds the XML view of a given page.
The XML view is built in two passes:
During the first pass, the FirstPassVisitor collects the attributes of the
top-level jsp:root and those of the jsp:root elements of any included
pages, and adds them to the jsp:root element of the XML view.
In addition, any taglib directives are converted into xmlns: attributes and
added to the jsp:root element of the XML view.
This pass ignores any nodes other than JspRoot and TaglibDirective.
During the second pass, the SecondPassVisitor produces the XML view, using
the combined jsp:root attributes determined in the first pass and any
remaining pages nodes (this pass ignores any JspRoot and TaglibDirective