The 'count' relationship is used for listing endpoints where a specific attribute
        might hold the value to the number of instances of another attribute.

def count(self, source, target):
        """
        The 'count' relationship is used for listing endpoints where a specific attribute
        might hold the value to the number of instances of another attribute.
        """
        try:
            source_value = self._response_holder[source]
        except KeyError:
            # Source value hasn't been determined yet, we need
            # to generate the source value first
            raw = self.fake_response[source]
            source_value = self._parse_syntax(raw)
        if isinstance(source_value, str):
            source_value = int(source_value)
        target = self.fake_response[target]
        values = []
        for _ in range(source_value):
            self._is_empty = False  # Remote state for re.sub to switch in case it hits a None value
            mock_value = self._parse_syntax(target)
            mock_value = str(mock_value)  # Treat the value as a string regardless of its actual data type
            _target = mock_value[1:-1]  # Remove extra quotation
            _target = _target.replace("'", '"')

            try:
                mock_value = json.loads(_target)
            except:
                mock_value = _target

            # If uniqueness is specified and this mock value isn't
            # in the store yet, then we can append it to the results
            if not self._is_empty:
                values.append(mock_value)
        return values