doubleSetEquals Function Description
Description
This method returns true if both sets of attribute values of type double are equal. Technically, it uses the subset function on the first and second arguments ANDed with the subset function and the second and first argument. Note that duplicate values have no impact on the comparison. For instance, the following 2 sets are equal: [a,a,c,b] and [b,c,a,c].
doubleSetEquals belongs to the ALFA function reference's
Set functions category. It maps to the XACML function identifier
urn:oasis:names:tc:xacml:1.0:function:double-set-equals, takes 2 arguments and returns a value of type boolean.
| Property | Value |
|---|---|
| Category | Set functions |
| # Arguments | 2 |
| Arguments |
|
| Return Value | boolean |
| Expressed As | pre-fix |
| Representation | ALFA short name |
| Allowed In Target | false |
| ALFA Shorthand | None |
| Commutative | true |
Example
/**
* Permit if the user has the exact set of parts required to assemble the product - no more, no less
*/
rule doubleSetEqualsExample{
condition doubleSetEquals(parts.numbers, product.requiredParts)
permit
}
In this example, the user needs to assemble a product (e.g. an IKEA piece of furniture). The user is only allowed to assemble the product if they have the exact set of parts needed for the product.
Related Functions
Other functions in the Set functions category: