refactor newsitem model