Not quite, the table PROVIDER has a primary key, but in the entity relationship diagram it is not used as the foreign key, instead the people before me (may they roast in a very special hell for IT abuse) have used two other columns as a natural key to link the tables. The database is certainly older than Hibernate and JDBC and they had a concept that all database access had to be done through stored procedure calls.
Anyway, almost all relations to the provider table use two columns as foreign key, none of which is the primary key.
In the ManyToOne relationships this works in JPA/Hibernate, but the OneToOneType seems to be hardcoded to use the PK as LHS join, not any JoinTable annotation.