After working throw the "Invalid SQL" problem, I returned to plan to try a parent-child insertion having renamed the child table so that it was alphabetically after the parent table. No luck. I also tried mapping the parent key field to the DTO in both the parent and child levels, hoping that that would make the shared nature of the key more apparent to the updater. It didn't work.
The exception is:
java.rmi.RemoteException: EJB Exception: ; nested exception is:
com.bea.ld.dsmediator.DataServiceException: Primary key attribute ITEM_ID on Object FACT is not provided.