public override void Refine(ItemDefinition currentDefinition, IList<ItemDefinition> allDefinitions)
 {
     currentDefinition.ClearAllowedChildren();
     foreach(ItemDefinition definition in allDefinitions)
     {
         if(IsAssignable(definition.ItemType))
             currentDefinition.AddAllowedChild(definition);
     }
 }