ResolverRegexSplitAttributeDefinition
Regular Expression Based Split Attribute Definition
This attribute definition creates its individual values by splitting an existing source attribute's values using a regular expression.
1. Create the Definition
The definition is created with the element <resolver:AttributeDefinition xsi:type="RegexSplit" xmlns="urn:mace:shibboleth:2.0:resolver:ad">
with the following required attributes:
- id: A unique identifier used within the IdP's resolver and filter to reference this definition.
- regex: A Java 5 regular expression used to split the value(s) of the source attribute. The first match group is used as the value for this attribute.
and an optional attribute:
- caseSensitive: A boolean flag that indicates whether the regular expression is case sensitive. Defaults to
true
. - sourceAttributeID: The ID of an attribute to split with the regular expression. (default value: ID of this attribute)
- dependencyOnly: A boolean flag that indicates the attribute produced by this definition is used only by other resolver components and should never be released from the resolver. Defaults to
false
.
Regex Split Attribute Definition
<resolver:AttributeDefinition xsi:type="RegexSplit" xmlns="urn:mace:shibboleth:2.0:resolver:ad" id="UNIQUE_ID" sourceAttributeID="ATTRIBUTE_ID" regex="REGULAR_EXPRESSION"> <!-- Remaining configuration from the next step goes here --> </resolver:AttributeDefinition>
2. Define Dependencies
You must express, as a dependency, the attribute definition or data connector that produces the source attribute. Dependencies are declared using a <resolver:Dependency>
with a ref
attribute whose value is the unique ID of the dependent attribute definition or the data connector.
Regex Split Attribute Definition with Dependencies
<resolver:AttributeDefinition xsi:type="RegexSplit" xmlns="urn:mace:shibboleth:2.0:resolver:ad" id="UNIQUE_ID" sourceAttributeID="ATTRIBUTE_ID" regex="REGULAR_EXPRESSION"> <resolver:Dependency ref="DEFINITION_ID_1" /> </resolver:AttributeDefinition>