lxml.objectify действительно прост.
Принимая ваш образец текста:
from lxml import objectify
from collections import defaultdict
count = defaultdict(int)
root = objectify.fromstring(text)
for item in root.bar.type:
count[item.attrib.get("foobar")] += 1
print dict(count)
Выход:
{'1': 1, '2': 1}