p = target.getProperty(SUB_CLASS);
if(p != null){
for(IClass child: getClassList(target,cls.getPropertyValues(p))){
if(!cls.hasDirectSubClass(child)){
// add string as a true superclass
cls.addSubClass(child);
child.addSuperClass(cls);
// if superclass is not root, then add this class
// as a child and remove root as parent
if(child.hasDirectSuperClass(target.getRoot())){