I want to flatten XML so the full path of each element is easily visible.
I'm sure this sort of thing must have been done before:

so,
<Order>
<OrderHeader>
<OrderNumber>
<BuyerOrderNumber>ABC123</BuyerOrderNumber>
<SellerOrderNumber>XYZ456</SellerOrderNumber>
</OrderNumber>
<OrderIssueDate>20061120T03:05:17-05:00</OrderIssueDate>
<OrderReferences>
<AccountCode>
<Reference>
<RefNum>RRRRR</RefNum>
</Reference>
</AccountCode>
</OrderReferences>
</OrderHeader>
</Order>

produces:

Order
Order/OrderHeader
Order/OrderHeader/OrderNumber
Order/OrderHeader/OrderNumber/BuyerOrderNumber/ABC123
Order/OrderHeader/OrderNumber/SellerOrderNumber/XYZ456
Order/OrderHeader/OrderIssueDate/20061120T03:05:17-05:00
Order/OrderHeader/OrderReferences
Order/OrderHeader/OrderReferences/AccountCode
Order/OrderHeader/OrderReferences/AccountCode/Reference
Order/OrderHeader/OrderReferences/AccountCode/Reference/RefNum/RRRRR

Thanks