dateUnion Function Description
Description
This function takes two or more arguments that are both a bag of date values. It returns a bag of date such that it contains all elements of all the argument bags. The function gets rid of duplicates, as determined by the equality functions.
dateUnion 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:date-union, takes 2 or more arguments and returns a value of type A bag of values of type date with no duplicates..
| Property | Value |
|---|---|
| Category | Set functions |
| # Arguments | 2 or more |
| Arguments |
|
| Return Value | A bag of values of type date with no duplicates. |
| Expressed As | pre-fix |
| Representation | ALFA short name |
| Allowed In Target | false |
| ALFA Shorthand | None |
| Commutative | true |
Example
/**
* Permit a user to book a date if it isn't in the reserved dates or the blackout dates
*/
rule dateUnionExample{
permit
condition not(dateIsIn(dateOneAndOnly(requestedDate),dateUnion(reservedDates, blackoutDates)))
}
In this example, we use the dateUnion function in conjunction with dateIsIn to determine whether a single atomic value is in the union of 2 bags of values. This also shows how functions can be combined together in ALFA.
Related Functions
Other functions in the Set functions category: