else
else if (obj != null)
  public EStructuralFeature getEStructuralFeature(Node node)  {    short type = node.getNodeType();    switch (type)    {      case Node.ELEMENT_NODE:        return (EStructuralFeature)nodeToFeature.get(node);      case Node.TEXT_NODE:      case Node.CDATA_SECTION_NODE:        return (EStructuralFeature)nodeToFeature.get(node.getParentNode());      case Node.ATTRIBUTE_NODE:       {        EObject obj = (EObject)nodeToEObject.get(((Attr)node).getOwnerElement());        if (extendedMetaData == null)        {          return obj.eClass().getEStructuralFeature(node.getLocalName());        }        else        {          return extendedMetaData.getAttribute(obj.eClass(), node.getNamespaceURI(), node.getLocalName());        }      }      default:        return null;    }  }