Class FirstOrderBagFunctions


  • public final class FirstOrderBagFunctions
    extends Object
    First-order bag functions, as opposed to the higher-order bag functions (see HigherOrderBagFunction); such as the Bag functions of section A.3.10, and the Set functions of A.3.11 of the XACML spec.
    Version:
    $Id: $
    • Constructor Detail

      • FirstOrderBagFunctions

        public FirstOrderBagFunctions()
    • Method Detail

      • getFunctions

        public static <AV extends AttributeValueSet<Function<?>> getFunctions​(AttributeDatatype<AV> paramType)
        Creates/gets all first-order bag functions taking a given primitive datatype as bag's primitive type, i.e. the equivalents of standard urn:oasis:names:tc:xacml:x.x:function:type${suffix} functions, where urn:oasis:names:tc:xacml:x.x:function:type is replaced by a given prefix (functionIdPrefix ) and the suffix takes the following values (one per created function):
        • -one-and-only: converts a given singleton bag to a the single primitive value in the bag
        • -bag-size: gives the size of a given bag
        • -is-in: tests whether the bag contains a given primitive value
        • -bag: creates a singleton bag from a given primitive value
        • -intersection: intersection of given bags
        • -at-least-one-member-of: tests whether one of the values in a given bag is in another given bag
        • -union: union of bags
        • -subset: tests whether all values of a given bag are in another given bag
        • -set-equals: tests whether bags are equal regardless of order
        Parameters:
        paramType - parameter datatype
        Returns:
        first-order bag functions taking the given primitive datatype as bag's primitive type