XACML ALFA / 在多值比较中具有匹配的任何条件 / 哪个是匹配元素?

XACML ALFA / Any-of-Any Condition with a Match at Multi Value Comparison / Which is the matching Element?

当使用 Any-of-Any 函数比较两个不同的包时,XACML 第 3 版是否能够识别哪个是产生匹配的元素(由布尔真值表示)。除了这个 return 值,是否有可用的索引值,或作为整数,或作为整数列表?

不,没有任何此类机制。如您所知,在 XACML(和 ALFA)中,属性值始终是值包。您可以将单值包转换为单个原子值,但您永远无法知道包的顺序,也无法通过第一个、最后一个或任何索引选择特定值。袋子未订购。

您可能会引入一个函数来对包进行分类,例如按字母顺序排列,然后 return 第一个或最后一个元素。

因此,您无法知道哪个值产生了匹配项。例如,如果您有一个函数 stringAtLeastOneMemberOf(userQualifications, requiredQualifications),您无法知道是哪个函数触发了匹配。

HTH, 大卫.