Returns if given attribute exists in the node.

        Usage::

            >>>	node_a = AbstractNode("MyNodeA", attributeA=Attribute(), attributeB=Attribute())
            >>> node_a.attribute_exists("attributeA")
            True
            >>> node_a.attribute_exists("attributeC")
            False

        :param name: Attribute name.
        :type name: unicode
        :return: Attribute exists.
        :rtype: bool

def attribute_exists(self, name):
        """
        Returns if given attribute exists in the node.

        Usage::

            >>>	node_a = AbstractNode("MyNodeA", attributeA=Attribute(), attributeB=Attribute())
            >>> node_a.attribute_exists("attributeA")
            True
            >>> node_a.attribute_exists("attributeC")
            False

        :param name: Attribute name.
        :type name: unicode
        :return: Attribute exists.
        :rtype: bool
        """

        if name in self:
            if issubclass(self[name].__class__, Attribute):
                return True
        return False