code: public static Constraint moreControllerThanParticipant()
  	{
  		return new ConstraintAdapter(1)
  		{
  			PathAccessor partConv = new PathAccessor("PhysicalEntity/participantOf:Conversion");
  			PathAccessor partCompAss = new PathAccessor("PhysicalEntity/participantOf:ComplexAssembly");
  			PathAccessor effects = new PathAccessor("PhysicalEntity/controllerOf/controlled*:Conversion");
  
  			@Override
  			public boolean satisfies(Match match, int... ind)
  			{
  				PhysicalEntity pe = (PhysicalEntity) match.get(ind[0]);
  
  				int partCnvCnt = partConv.getValueFromBean(pe).size();
  				int partCACnt = partCompAss.getValueFromBean(pe).size();
  				int effCnt = effects.getValueFromBean(pe).size();
  
  				return (partCnvCnt - partCACnt) <= effCnt;
  			}
  		};
  	}
docs: Makes sure that the PhysicalEntity is controlling more reactions than it participates
  (excluding complex assembly).
  @return non-generative constraint