def process_discriminators(effect):
    """
    Determine which discriminators apply to each effect
    """
    discriminators = {
        'faction': False,
        'class': False,
        'tonnage': False
    }

    # Effect has a discriminator; Faction discriminator is default
    if effect.attrib['value'] == '0.0':
        discriminators['faction'] = True
        # Iterate over faction classifiers
        for faction in effect.iter('Faction'):
            # Faction has no base value; Class discriminator in place
            if faction.attrib['value'] == '0.0':
                discriminators['class'] = True
                for weight_class in faction.iter('WeightClass'):
                    # Weight has no base value; Tonnage discriminator in place
                    if weight_class.attrib['value'] == "0.0":
                        discriminators['tonnage'] = True

    return discriminators