'Get a dict with the same keys as the template and values
validated according to the value types.'

def value(self, view, template=None):

    out = AttrDict()
    for (key, typ) in self.subtemplates.items():
        out[key] = typ.value(view[key], self)
    return out
