anchor.diff:      Long id;
       String name;
       @ManyToOne
  -    Animal favouritePet;
  +    Animal favoritePet;
   }
   
   @Entity
  
positive.code: ----
  SELECT p.name, c.name
  FROM Person p
  JOIN TREAT(p.favouritePet AS Cat) c
  ----
  
  The result list will contain *1 tuple*, that is the cat person's name and the name of the cat.
  
negative.code: ==== Hibernate
  
  Hibernate itself does not support the treat operator very well but instead has support for implicit/automatic downcasting which is very powerful.
  {projectname} _emulates_ the `TREAT` operator on top of Hibernate by applying type constraints to surrounding predicates or wrapping in `CASE` statements.
  
  The only problems that might arise are related to Hibernate bugs.
  * multiple joins to associations that use the _table per class_ inheritance strategy will result in ambiguous SQL
  