AssociationOverride does not produce foreign key constraint as expected

We are making heavy use of class inheritance and generics to produce a general purpose relationship type (AbstractRel) that can describe specific a specific parent-child relationship between to classes. For example XToYRel is a relationship between an X that owns a dependent Y.

Simplified code excerpts of our type hierarchy follow that highlight our JPA annotations.

 * Describes a relationship between two entities with a required system-defined role and optional expiration date.
@SequenceGenerator(name = "rel_seq", allocationSize = 1)
public abstract class AbstractRel<T extends DirEntity> {

  /** The type of relationship between the two entities. */
  @Column(name = "role", length = 10, nullable = false)
  private Role type;

  /** The dependent subject that fills a role in the owning entity. */
  @ManyToOne(fetch = FetchType.EAGER)
  private DirSubject dependent;

  /** Relationship expiration date. */
  private ZonedDateTime expiration;

  /** Owner of the relationship. */
  public abstract T getOwner();
 * Base class of all relations to an [Org].
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class AbstractOrgRel extends AbstractRel<Org> {
  /** The org that owns the relationship. */
  @ManyToOne(fetch = FetchType.EAGER)
  @JoinColumn(name = "owner_id", nullable = false)
  private Org owner;

  public Org getOwner() {
    return owner;
 * Relationship between an owning [Org] and dependent [Person].
@Table(name = "org_to_person")
    name = "dependent",
    joinColumns = {@JoinColumn(name = "dependent_id", table = "person", nullable = false)})
public class OrgToPersonRel extends AbstractOrgRel {

Given that Person entities map to a person table, I expected the AssociationOverride to create a foreign key between org_to_person and person when schema generation is enabled. We were surprised to note that no foreign key was generated as expected. Is this behavior by design or are we missing something in our annotations? Note that we MUST specify the dependent field in the base class in order to make it available for JPA metamodels where it is used as a query discriminator.