anchor.diff:    private
       { TODO: This is wrong, we must have one Data Storage object }
       FDataList: TObjectList;
  -    FFormats: TStrings;
       FUrlList: TList;
  -    FHTML: TfpgString;
       function    Geturls: TList;
       procedure   Seturls(const AValue: TList);
       function    GetText: TfpgString;
  
positive.code: end;
  
  function TfpgMimeDataBase.GetHTML: TfpgString;
  begin
    { TODO: We should only return data related to MIME type:  text/html }
    Result := FHTML;
  end;
  
  procedure TfpgMimeDataBase.SetHTML(const AValue: TfpgString);
  begin
    FHTML := AValue;
    FFormats.Clear;
    Formats.Add('text/html');
  end;
  
  function TfpgMimeDataBase.GetFormatCout: integer;
  
negative.code: begin
    inherited Create;
    FDataList := TObjectList.Create;
  end;
  
  destructor TfpgMimeDataBase.Destroy;
  begin
    FDataList.Free;
    inherited Destroy;
  end;
  
  procedure TfpgMimeDataBase.Clear;
  begin
    FUrlList.Clear;
    FDataList.Clear;
  end;
  
  function TfpgMimeDataBase.HasFormat(const AMimeType: TfpgString): boolean;
  var
    i: integer;
  begin
    Result := False;
    for i := 0 to FDataList.Count-1 do
    begin
      Result := TfpgMimeDataStruct(FDataList[i]).format = AMimeType;
      if Result then
        break;
    end;
  end;
  
  function TfpgMimeDataBase.Formats: TStrings;
  