@Override
 public ErrorCollector getErrorCollector() {
   final ModelDescription model = getModelDescription();
   if (model == null) {
     return null;
   }
   return model.getErrorCollector();
 }
 /** @see msi.gama.common.interfaces.IDescription#getSpeciesDescription(java.lang.String) */
 @Override
 public SpeciesDescription getSpeciesDescription(final String actualSpecies) {
   final ModelDescription model = getModelDescription();
   if (model == null) {
     return null;
   }
   return model.getSpeciesDescription(actualSpecies);
 }
 @Override
 public IType getTypeNamed(final String s) {
   final ModelDescription m = getModelDescription();
   if (m == null) {
     return Types.get(s);
   }
   return m.getTypeNamed(s);
 }
 @Override
 public ModelDescription getModelDescription() {
   if (enclosing == null) {
     return null;
   }
   final ModelDescription result = enclosing.getModelDescription();
   if (result != null && result.isBuiltIn() && !this.isBuiltIn()) {
     return null;
   }
   return result;
 }
 @Override
 public boolean isDocumenting() {
   final ModelDescription md = getModelDescription();
   if (md == null) return false;
   return md.isDocumenting();
 }