Uses component query instead of access items directly