You could try something like this instead class ChangeAttribute: implements(IRenderable) def __init__(self, attr): self.attr = attr def getRenderingFor(self, props): try: return getattr(props.getBuild().allChanges[0], self.attr) except: return "" And then instead of using WithProperties, you use ChangeAttribute. Tom P.S. The code above is untested.