Paul Madsen on his ConnectID blog links to a Shibboleth based flash demo that walks through an identity federation sequence where the user also selects the attributes that can be shared with the service provider. Also, the page dynamically shows how his level of access at the service provider changes depending on the attributes he shares. A very interesting idea!
Paul wonders whether this is an extension to SAML or something pre-determined between the providers when the attribute contract is established. I am thinking it is most likely the latter. But again, Shib has added many extensions to SAML and I do not know enough about it. But, the feature looks quite enticing even if it has to be done in out-of-band.