'Appends attribute data to edges or nodes, and stores type information
to be added later. See add_graph_element.'

def add_attributes(self, scope, xml_obj, data, default):

    for (k, v) in data.items():
        self.attribute_types[(make_str(k), scope)].add(type(v))
        self.attributes[xml_obj].append([k, v, scope, default.get(k)])
