Your journal isn't doing anything wrong, this is actually a documented (albeit very minimally) limitation of the plugin. From the plugin's README:
- because of ambiguity in the pagination functionality in OJS, <FirstPage/> and <LastPage/> tags may potentially be generated incorrectly
More specifically, the problem stems from the issue that there is some ambiguity for online journals as to what "page numbers" are; for example, some journals (eg. JMIR) use the "e-location ID" as the "page numbers" in PubMed. Other, print-based journals use sequential page numbers across articles within an issue.
PubMed *requires* that both FirstPage and LastPage exist in the XML, so the plugin tries to get these from the "pages" property of the article. The solution for articles that have known page numbers is to put them here when publishing an issue (Home > User > Editor > Issues) in a format like "239-248". The plugin is tolerant of changes here, ie. "p. 239- 248" will also work correctly. Similarly, journals that use a format like "e123" can use that for the page number property. If the first page is always "1", then you could simply do something like "1-7" for each article in this field.
For articles where the "pages" property is not specified, or cannot be determined correctly, the plugin "falls back" to using the article ID - using the public ID if possible, and the internal ID as a last resort, to satisfy PubMed's requirement of filling the FirstPage and LastPage fields.
Regarding article numbering, PubMed does not require each article to have a number, so a journal can publish any number of volumes and issues in any way it chooses. The thing to note is that PubMed assigns a PMID *after* article XML is received, and because OJS doesn't currently support PMIDs internally, if the same XML for an article is submitted to PubMed twice, it will register as a duplicate submission -- they don't like this, and I believe too many can be grounds for removal from PubMed.
There are a couple of ways of dealing with this:
a) Give each article a unique public ID when publishing an issue (same as page count above), this could even be the same as the page count, or something such as a DOI, etc. It will at least allow an article to be identified uniquely between OJS and PubMed.
b) Alternately, you could use the assigned PMID for each article as the public ID by modifying the issue after you've made the XML submission and recieved the confirmation email from PubMed.
The key thing to keep in mind is that each article XML should only be submitted to PubMed *once*. This is easiest done by submitting an issue worth of XML when an issue is published, but this will obviously vary depending on a jorunal's publication schedule.
As for the pub date history, PubMed cares about 3 dates: the date of submission, the date of revision, and the date of acceptance. The plugin will export these in the XML if they exist in the database, but they are considered optional by PubMed.
Unfortunately if you're back-entering articles, I think you'll have to edit the dates in the database directly to alter them. In the vast majority of cases, we haven't seen a need to manually change dates, although if it was a highly-desired feature, someone could probably write a plugin / patch to do so.
Hope this helps -- please feel free to ask for clarification if I've missed something.
Open Journal Systems Team