replace clumsy implementation to retrieve property information