@Override
  public void addAttribute(String key, String nsPrefix, String nsURI, String value, String type) throws Exception {
    if (!StringUtil.isEmptyOrSpaces(nsURI) && !HTTP_WWW_W3_ORG_2001_XMLSCHEMA.equals(nsURI)) return;
    if ("base".equals(key)) {
      if (myCurrentComplexTypeName != null && myInsideContent && (myInsideExtension || myInsideRestriction)) {
        putTypeDataToMap(value, myCurrentComplexTypeName);
      }
      else if (myCurrentSimpleTypeName != null && myInsideRestriction) {
        putTypeDataToMap(value, myCurrentSimpleTypeName);
      }
    }
    else if (myInsideSchema) {

    }
    else if ("name".equals(key) || "ref".equals(key)) {
      if (SIGN.equals(myCurrentElementName) &&
          !myInsideContent &&
          !myInsideExtension &&
          !myInsideRestriction &&
          myCurrentComplexTypeName == null &&
          myCurrentSimpleTypeName == null) {
        myCurrentElementName = value;
      }
      else if (SIGN.equals(myCurrentComplexTypeName) &&
               !myInsideContent &&
               !myInsideExtension &&
               !myInsideRestriction &&
               myCurrentSimpleTypeName == null) {
        myCurrentComplexTypeName = value;
      }
      else if (SIGN.equals(myCurrentSimpleTypeName) &&
               !myInsideContent &&
               !myInsideExtension &&
               !myInsideRestriction &&
               myCurrentComplexTypeName == null) {
        myCurrentSimpleTypeName = value;
      }
    }
  }
@Override
  public void addAttribute(String key, String nsPrefix, String nsURI, String value, String type)