Table naming question...

Conisdering the naming conventions of ActiveRecord tables...

I have a parent table called "Jobs" and a child table to it called
"JobItems" which holds the line items on any give "Job" that we process.

Now I'm dealing with the Invoice table, which is a Parent-type of table
("Invoices"), and I have an "InvoiceItems" child that is related to it.

However, in some ways, each Invoice is also a child record to a Job.
(Some Jobs build up multiple Invoices if we do progress billing of
partial shipments).

So, one could argue that the "Invoices" table should be named
"JobInvoices", and the child invoice items would go in a table name


Invoices and InvoiceItems


JobInvoices and JobInvoiceItems

Which way is the accepted way?

I would consider the language that the client (or yourself) uses when
talking about the objects in the tables. For example if you talk
about job invoices then that should be the name of the table. If you
just call them invoices then that should be it. The objects in the
system should map to real world objects in as intuitive a way as
possible. That way you may hope to minimise confusion.