'Returns a frame copy which is suitable for writing into a v2.3 tag.
kwargs get passed to the specs.'

def _get_v23_frame(self, **kwargs):

    new_kwargs = {}
    for checker in self._framespec:
        name = checker.name
        value = getattr(self, name)
        new_kwargs[name] = checker._validate23(self, value, **kwargs)
    for checker in self._optionalspec:
        name = checker.name
        if hasattr(self, name):
            value = getattr(self, name)
            new_kwargs[name] = checker._validate23(self, value, **kwargs)
    return type(self)(**new_kwargs)
