Below is an example of a simple Site Map that shows only public pages in tree format.
Just include these 2 actions in your configuration and you're all set:
1) Query Template -
SELECT t.TabOrder, t.TabName, t.[Level], dbo.ReWriteURL(t.url,t.tabid) as NewURL
FROM Tabs AS t
INNER JOIN
TabPermission AS tp ON t.TabID = tp.TabID
WHERE (tp.RoleID = - 1) AND (t.TabOrder < 10001) AND (t.IsDeleted = 0) AND (t.PortalID = [Portalid,System]) AND (t.IsVisible = 1)
ORDER BY t.TabOrder
2) Detail Template –
<div style="margin:10px 0 10px {MATH, "[level]*20"}px;">
<a href="[NewUrl]">[TabName]</a>
</div>