anchor.diff:  translate_resource(#gri{aspect = qos_summary, scope = private}, QosSummaryResponse) ->
       maps:without([<<"status">>], QosSummaryResponse);
   
  -translate_resource(#gri{aspect = dataset_summary, scope = private}, #file_eff_dataset_summary{
  +translate_resource(#gri{aspect = dataset_summary, scope = private}, DatasetSummary) ->
  +    translate_dataset_summary(DatasetSummary).
  +
  +
  +-spec translate_dataset_summary(lfm_datasets:file_eff_summary()) -> map().
  +translate_dataset_summary(#file_eff_dataset_summary{
       direct_dataset = DatasetId,
       eff_ancestor_datasets = EffAncestorDatasets,
       eff_protection_flags = EffProtectionFlags
  
positive.code:                 <<"providerId">> => ProviderId,
                  <<"ownerId">> => OwnerId,
                  <<"hasDirectQos">> => HasDirectQos,
                  <<"hasEffQos">> => HasEffQos
              }
      end.
  
  
negative.code:     translate_value/2,
      translate_resource/2,
  
      translate_dataset_summary/1,
      translate_distribution/2
  ]).
  
  