Reputation: 935
When comparing two different bags using an Any-of-Any function, is XACML Version 3 able to identify which was the element that produced the match (signalled by the boolean true value). Beside this return value, is there an index value available, or as integer, or as a list of integers?
Upvotes: 1
Views: 149
Reputation: 13834
No, there isn't any such mechanism. As you know, in XACML (and ALFA), attribute values are always bags of values. You can convert a single-valued bag into a single atomic value but you can never know the order of a bag nor can you pick a specific value by first, last, or any index. Bags are unordered.
You could potentially introduce a function that would sort a bag e.g. alphabetically and then return the first element or the last.
Consequently, you cannot know which value produced the match. If, for instance, you have a function that says stringAtLeastOneMemberOf(userQualifications, requiredQualifications), you cannot know which one triggered the match.
HTH, David.
Upvotes: 0