def all_taxa_have_attribute(phylogeny, attribute):
    """Do all taxa in the given phylogeny have the given attribute?

    Args:
        phylogeny (networkx.DiGraph): graph object that describes a phylogeny
        attribute (str): a possible attribute/descriptor for a taxa (node) in
        phylogeny

    Returns:
        True if all taxa (nodes) in the phylogeny have the given attribute and
        False otherwise.
    """
    for node in phylogeny.nodes:
        if not (attribute in phylogeny.nodes[node]):
            return False
    return True