refactoring & preparing for microdata