As far as I remember published turned into 'state' which describes the state of an article. This is core specific change, as mentioned above you may call it current_state/whatever.
In third party ext. you make your own tables and you manage them yourself, so you don't have to keep core standards. Threat component as single app - that's all - your own app. Just get as much as you can from built-in API and keep MVC so later you'll change less, or more:)