code: def read(self, payloadType, elsClient):
          
          if elsClient:
              self._client = elsClient;
          elif not self.client:
              raise ValueError('''Entity object not currently bound to elsClient instance. Call .read() with elsClient argument or set .client attribute.''')
          try:
              api_response = self.client.exec_request(self.uri)
              if isinstance(api_response[payloadType], list):
                  self._data = api_response[payloadType][0]
              else:
                  self._data = api_response[payloadType]
              ## TODO: check if URI is the same, if necessary update and log warning.
              logger.info("Data loaded for " + self.uri)
              return True
          except (requests.HTTPError, requests.RequestException) as e:
              for elm in e.args:
                  logger.warning(elm)
              return False
docs: Fetches the latest data for this entity from api.elsevier.com.
              Returns True if successful; else, False.