The existing XSLT file for processing ESD "Controlled
List" files is
ccm-ldn-terms/doc/esd/xslt-1.04/ControlledList2hierarchy.xsl
This file has a couple of limitations:
1) doesn't correctly handle the difference between root
nodes and orphaned nodes (important when using IPSV)
2) doesn't sort items by name, so your navigation items
appear in seemingly random order on the website.
The attached file (ControlledList2hierarchySort.xsl)
fixes item 1 and sorts items alphabetically.
ccm-ldn-terms/doc/esd/xslt-1.04/ControlledList2hierarchySort.xsl