Use 'pid' rather than 'article_id'.
Updated some comments and print statements.
Determine the repository type.
Check to see whether the software has already been published inside the Publisher class.