def get_value(self, choice_id, choice_key, raise_exception=True):
        if self._choices_id is None:
            self._choices_id = {item["id"]: (key, item) for key, item in six.iteritems(self)}

        choice_name, choice = self._choices_id[choice_id]
        if choice_key is None:
            return choice_name
        elif raise_exception:
            return choice[choice_key]
        else:
            return choice.get(choice_key)
decode the contents of the PDU into the BVLCI.
dataset/ETHPy150Open rewardz/django_model_helpers/model_helpers.py/Choices.get_value--crossover with--dataset/ETHPy150Open JoelBender/bacpypes/py27/bacpypes/bvll.py/BVLCI.decode