anchor.diff:    ['{9E1AB274-707A-4770-94B9-659945547A19}']
       function Success: Boolean;
       function Data: IDataParams;
  +  end;
  +
  +  IDataResultOf = interface
  +  ['{312900FF-997C-45D2-9FF1-5C1454CEB937}']
  +    function Value: IDataResult;
     end;
   
     IDataConstraint = interface
  
positive.code:     function Text: RawUTF8;
    end;
  
    IDataParam = interface
    ['{2C6B41D7-CB75-488A-85D4-59CE4D5388E5}']
      function Name: string;
      function DataType: TFieldType;
      function Value: Variant;
      function IsNull: Boolean;
      function AsParam: TParam;
      function AsBCD: Currency;
      function AsBlob: TBlobData;
      function AsBoolean: Boolean;
  
negative.code:     function AsString: string; overload;
    end;
  
    IDataParamsOf = interface
    ['{D4471122-05CA-46D1-A3E7-95BCB7245406}']
      function Values: IDataParams;
    end;
  
    IDataGuid = interface
    ['{F7269A91-B5E7-4067-BB8E-8712BC99EE08}']
      function Value: TGuid;
  