docs: def update_txn_with_extra_data(self, txn):
          """
          All the data of the transaction might not be stored in ledger so the
          extra data that is omitted from ledger needs to be fetched from the
          appropriate data store
          :param txn:
          :return:
          """
          # For RAW and ENC attributes, only hash is stored in the ledger.
          if get_type(txn) == ATTRIB:
              txn_data = get_payload_data(txn)
              # The key needs to be present and not None
              key = RAW if (RAW in txn_data and txn_data[RAW] is not None) else \
                  ENC if (ENC in txn_data and txn_data[ENC] is not None) else None
              if key:
                  txn_data[key] = self.attributeStore.get(txn_data[key])
          return txn