@NaturalId does not work if applied to an inherited field.
In fact when trying to load
Section section = session.bySimpleNaturalId(Section.class).load(name);
an exception is thrown.
I tried several variants with and without repeating the name, @AnnotateOverwrite, getter with and without setter, adding the @NaturalId to the super class - nothing worked.
From my understanding it could and should work as long as the derived entities do not share the same table space.
JEE7, hibernate-core-5.1.10.Final, wildfly-11.0.0.Final, postgresql10, macos10.12.6