def comments(self, value):
        """
        Setter for **self.__comments** attribute.

        :param value: Attribute value.
        :type value: OrderedDict or dict
        """

        if value is not None:
            assert type(value) in (OrderedDict, dict), "'{0}' attribute: '{1}' type is not \
            'OrderedDict' or 'dict'!".format("comments", value)
            for key, element in value.iteritems():
                assert type(key) is unicode, "'{0}' attribute: '{1}' type is not 'unicode'!".format(
                    "comments", key)
                assert type(element) in (OrderedDict, dict), "'{0}' attribute: '{1}' type is not \
                'OrderedDict' or 'dict'!".format("comments", key)
        self.__comments = value