public RootPackage getRoootPackage(UML.Extended.UMLItem item)
{
//if the item is a RootPackage or null we return the given item
if (item is RootPackage || item == null) return item as RootPackage;
//else go up in the hierarchy
return (getRoootPackage(item.owner as UML.Classes.Kernel.Element));
}