anchor.diff:  
       property Key : TListDatumKey read FKey;
       property Description : string read FDescription write FDescription;
  -    property Value : TNullableValue read FValue;
     end;
   
   
  
positive.code: 
  class procedure TListDatum.FillVirtualFieldDefs(aFieldDefs: TmVirtualFieldDefs; const aPrefix: String);
  begin
    with aFieldDefs.AddFieldDef do
    begin
      Name := aPrefix + FLD_ID;
      DataType:= vftInteger;
    end;
    with aFieldDefs.AddFieldDef do
    begin
      Name := aPrefix + FLD_DESCRIPTION;
  
negative.code: end;
  
  function TListDataProvider.FindDatumByStringKey(const aStringKey: string): IVDDatum;
  var
    i : integer;
  begin
    Result := nil;
    for i := 0 to Count - 1 do
    begin
      if TListDatum(FList.Items[i]).Key.Value.AsString = aStringKey then
      begin
        Result := TListDatum(FList.Items[i]);
        exit;
      end;
    end;
  end;
  
  procedure TListDataProvider.Clear;
  