* drop items with gr:autosub="true" (these are JIDs who were never explicitly added by the user) * drop items with gr:inv="A" (these are e-mail addresses an invitation has been e-mailed to) * drop items with gr:alias-for != NULL (these are e-mail addresses who have replied to an invite, and now have a different JID) * drop items with gr:t="H" (these are JIDs who the user has indicated via webmail that they do not want to see via gtalk, although oddly the server still allows them to see your presence) * allow items with gr:rejected="true" (these are addresses who have rejected a subscription request, and are hence valid JIDs) * allow items with ask="subscribe" (these are JIDs we're waiting for a subscription reply from) * allow items with subscription != "none" (these are JIDs we have a subscription to, from or both) * drop the rest (these can only be e-mail addresses)