if (frameSlots.getProperty(name) == null) frameSlots.put(name, "");
if (frameSlots.get(name) == null) frameSlots.put(name, f.getValue(name));
  public void set(org.cougaar.core.qos.frame.Frame f) {    this.frame = f;    this.frameSlots = (f instanceof DataFrame ? ((DataFrame)frame).getAllSlots() : frame.getLocalSlots());    if (f instanceof PrototypeFrame) {        Properties sdefs = ((PrototypeFrame)f).getSlotDefinitions();        String name;        if (sdefs != null) {             for (Enumeration ee=sdefs.propertyNames(); ee.hasMoreElements();) {                 name = (String) ee.nextElement();                 if (frameSlots.getProperty(name) == null)                     frameSlots.put(name, "");//sdefs.getProperty(name));                 slotDefs.put(name, "");//sdefs.getProperty(name));             }        }    }    Properties locSlots = frame.getLocalSlots();    this.frameSlotNames = new ArrayList();    String name;    for (Enumeration ee= frameSlots.propertyNames(); ee.hasMoreElements();)  {        name = (String) ee.nextElement();        frameSlotNames.add(name);        if (locSlots.getProperty(name) == null && inheritedSlots.get(name)==null)            inheritedSlots.put(name, frameSlots.getProperty(name));        else if (locSlots.getProperty(name) != null && localSlots.get(name)==null)            localSlots.put(name, frameSlots.getProperty(name));    }    if (frame instanceof DataFrame) {            SlotDescription sd;            for (Iterator ii=((DataFrame)frame).slotDescriptions().values().iterator(); ii.hasNext();) {                sd = (SlotDescription) ii.next();                slotDescriptions.put(sd.name, sd);                //System.out.println(sd.name+" Prototype: "+sd.prototype+ " "+ (sd.is_overridden ? "overridden" : "inherited"));            }    }    if (table != null)        setupColumns(table);    fireTableStructureChanged();  }