Recursive retrieval and redering per type