<div dir="ltr">We're migrating from the older style attribute definitions with their encodings to the newer attribute registry method and its transcoders.<div><br></div><div>We have our own version of "mail" because it turns out some SPs don't' deal well with the potentially multivalued inetOrg mail. Our version was defined thusly:</div><div><br></div><div>    <AttributeDefinition xsi:type="Simple" id="uhEmail"><br>        <InputDataConnector ref="UH_LDAP" attributeNames="uhEmail"/><br>        <AttributeEncoder xsi:type="SAML2String" name="urn:oid:0.9.2342.19200300.100.1.3" encodeType="false" /><br>        <AttributeEncoder xsi:type="SAML2String" name="uhEmail" encodeType="false" /><br>        <!-- SPs that require single-valued mail attribute to be named "mail" --><br>        <!--   conditional predicate defined in activation-condition.xml      --><br>        <AttributeEncoder xsi:type="SAML2String" name="mail" activationConditionRef="singleValueMailSPs" encodeType="false" /><br>    </AttributeDefinition></div><div><br></div><div>Our initial dumb translation of this with the attribute registry was:</div><div><br></div><div>        <bean parent="shibboleth.TranscodingProperties"><br>            <property name="properties"><br>                <props merge="true"><br>                    <prop key="id">uhEmail</prop><br>                    <prop key="transcoder">SAML2StringTranscoder</prop><br>                    <prop key="<a href="http://saml2.name">saml2.name</a>">urn:oid:0.9.2342.19200300.100.1.3</prop><br>                    <prop key="<a href="http://saml2.name">saml2.name</a>">uhEmail</prop><br>                    <!-- ** add "mail" unconditionally until we know how to do it more efficiently based only on necessary relyingParties --><br>                    <prop key="<a href="http://saml2.name">saml2.name</a>">mail</prop><br>                    <prop key="saml2.friendlyName">uhEmail</prop><br>                    <prop key="displayName.en">UH Email (guaranteed to be single-valued)</prop><br>                </props><br>            </property><br>        </bean><br></div><div><br></div><div>We've already discovered that with the multiple saml2.names, only the last one appears to be effective. I think ultimately we want to eliminate the "<prop key="<a href="http://saml2.name">saml2.name</a>">uhEmail</prop>" and just leave the friendlyName for that.</div><div><br></div><div>But is there a way to use an activation condition in the TranscodingProperties so we can still conditionally provide the name="mail" alternative? I couldn't find examples of doing so. Or would it be better to simply define a new attribute and use that where required?</div><div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><font face="arial, sans-serif">Baron Fujimoto <<a href="mailto:baron@hawaii.edu" target="_blank">baron@hawaii.edu</a>> ::: UH Information Technology Services<br>minutas cantorum, minutas balorum, minutas carboratum descendus pantorum</font></div></div></div></div>