refactored Article class into subclass system with publication specific parsing