public List<ObjectSetUse> getDirectObjectSetUses(SystemObjectType type) {
   List<ObjectSetUse> directObjectSetUses = new ArrayList<ObjectSetUse>();
   ObjectSet set = type.getObjectSet("Mengen");
   if (set != null) {
     for (SystemObject systemObject : getElements(set)) {
       directObjectSetUses.add((ObjectSetUse) systemObject);
     }
   }
   return directObjectSetUses;
 }
 /**
  * Liefert eine Liste der Typ-Objekte die von dem angegebenen Typ-Objekt erweitert werden.
  *
  * @return Liste von {@link SystemObjectType Typ-Objekten}
  */
 public Collection<SystemObjectType> getSuperTypes(final SystemObjectType type) {
   Collection<SystemObjectType> superTypes = new ArrayList<SystemObjectType>();
   NonMutableSet set = (NonMutableSet) type.getObjectSet("SuperTypen");
   if (set != null) {
     final Collection<SystemObject> elements = getElements(set);
     for (SystemObject systemObject : elements) {
       superTypes.add((SystemObjectType) systemObject);
     }
   }
   return superTypes;
 }
 private static boolean checkType(
     final SystemObjectType type, final AttributeGroup attributeGroup) {
   return type.getAttributeGroups().contains(attributeGroup);
 }