Function Reference for Policy Modeling Rules (English)

This topic lists the functions that can be used when writing rules in Oracle Policy Modeling.

Note that the list separator ',' may change depending on the region of the policy model.


Logical connectors

Table 1 lists the logical connectors that can be used in Intelligent Advisor rules.

Table 1. Logical connectors
Syntax Description
if
Optional term that can appear at the end of a conclusion line that has a following proof
and
Logical conjunction between two attributes
or
Logical disjunction between two attributes
any
either
one of
at least one of the following is true
any of the following are satisfied
Grouping element used with disjunctions where two or more attributes need to be grouped
all
both
all of the following are true
all of the following are satisfied
Grouping element used with conjunctions where two or more attributes need to be grouped
otherwise
Term that appears at the end of a table rule to indicate the otherwise clause
is
Term that is used in a legend entry between the abbreviated phrase and the full attribute text

Logical functions

Table 2 lists the logical functions that can be used in Intelligent Advisor rules.

Table 2. Logical functions
Syntax Description
Not(<condition>)
it is not true that <condition>
Operator used to return true if an attribute or condition has a value which is false
Certain(<condition>)
<attribute> is certain
it is certain whether [or not]<condition>
Operator used to return true if an attribute or condition has a value which is not uncertain
Uncertain(<condition>)
<attribute> is uncertain
<attribute> is not certain
it is uncertain that <condition>
it is uncertain whether [or not]<condition>
it is not certain that <condition>
Operator used to return true if an attribute or condition value is uncertain
Known(<condition>)
<attribute> is known
<attribute> is currently known
it is known whether [or not]<condition>
it is currently known whether [or not]<condition>
Operator used to return true if an attribute or condition has any value
Unknown(<condition>)
<attribute> is [currently] unknown
it is [currently] unknown whether [or not]<condition>
Operator used to return true if an attribute or condition has no value
If(<condition>,<value-if-true>,<value-if-false>)
Returns one of two values, depending on whether a condition is true or false.
Default(<value>,<default>)
Returns a value unless the value is uncertain, in which case a default value is returned instead.
DefaultWithUnknown(<value>,<default>)
Returns a value unless the value is uncertain or unknown, in which case a default value is returned instead.

Logical constants

Table 3 lists the logical constants that can be used in Intelligent Advisor rules.

Table 3. Logical constants
Syntax Description
true
Constant true value used for table rules.
false
Constant false value used for table rules.
uncertain
Constant uncertain value used for table rules.

Comparison operators

Table 4 lists the comparison operators that can be used in Intelligent Advisor rules.

Table 4. Comparison operators
Syntax Description
<x> < <y>
Less than
<x> > <y>
Greater than
<x> <= <y>
Less than or equal to
<x> >= <y>
Greater than or equal to
<x> = <y>
Equals
<x> <> <y>
Not equal

Numerical functions

Table 5 lists the numerical functions that can be used in Intelligent Advisor rules.

Table 5. Numerical functions
Syntax Description
<x> + <y>
Mathematical addition
<x> - <y>
Mathematical subtraction, unless it appears to be embedded inside a word (with letters or numbers on both sides). Add spaces to make sure it is recognised as a mathematical symbol.
<x> * <y>
Mathematical multiplication
<x> / <y>
Mathematical division, unless it appears to be embedded inside a word (with letters or numbers on both sides). Add spaces to make sure it is recognised as a mathematical symbol.
Number(<text>)
Convert the specified string into a number value
Maximum(<x>,<y>)
the greater of <x> and <y>
the latest of <x> and <y>
Returns the greater of two values
Minimum(<x>,<y>)
the lesser of <x> and <y>
the earliest of <x> and <y>
Returns the lesser of two values
Remainder(<x>,<y>)
Returns the remainder after dividing x by y.
Xy(<x>,<y>)
x to the power of y
Ex(<x>)
Constant e to the power of x
Abs(<x>)
the absolute value of <x>
Absolute value of x
Ln(<x>)
Natural logarithm of x
Log(<x>)
Logarithm base 10 of x
Sqrt(<x>)
the square root of <x>
Square root of x
Round(<x>,<n>)
<x> rounded to <n> decimal place
<x> rounded to <n> decimal places
Rounds x to n decimal places
Trunc(<x>,<n>)
<x> truncated to <n> decimal place
<x> truncated to <n> decimal places
x truncated to n decimal places
Sin(<x>)
Sine of x
Cos(<x>)
Cosine of x
Tan(<x>)
Tangent of x
Asin(<x>)
Arcsine of x
Acos(<x>)
Arccosine of x
Atan(<x>)
Arctangent of x

Date functions

Table 6 lists the date functions that can be used in Intelligent Advisor rules.

Table 6. Date functions
Syntax Description
CurrentDate()
the current date
Returns the current date at the start of the session.
Date(<text>)
Converts the specified string into a date value
MakeDate(<year>,<month>,<day>)
Returns a date formed from the specified year, month, and day.
ExtractDay(<date or datetime>)
Returns the day component of a date/datetime attribute.
ExtractMonth(<date or datetime>)
Returns the month component of a date/datetime attribute.
ExtractYear(<date or datetime>)
Returns the year component of a date/datetime attribute.
NextDayOfTheWeek(<date or datetime>,<day of week>)
the next Monday on or after <date or datetime>
the Monday on or before <date or datetime>
the next Tuesday on or after <date or datetime>
the Tuesday on or before <date or datetime>
the next Wednesday on or after <date or datetime>
the Wednesday on or before <date or datetime>
the next Thursday on or after <date or datetime>
the Thursday on or before <date or datetime>
the next Friday on or after <date or datetime>
the Friday on or before <date or datetime>
the next Saturday on or after <date or datetime>
the Saturday on or before <date or datetime>
the next Sunday on or after <date or datetime>
the Sunday on or before <date or datetime>
Returns the date of the next weekday on or before/after a date (depending on the syntax used).
NextDate(<date>,<day of month>,<month>)
Returns the next instance of the given day and month after a date.
AddDays(<date or datetime>,<number of days>)
the (date | time)<number-of-days>(days | day) after <datetime>
the (date | time)<number-of-days>(days | day) before <datetime>
Adds/subtracts a number of days to a date. When using the terse syntactic form, the number must be a positive integer in order to add days to the input date, or a negative number in order to subtract days from the input date.
AddWeeks(<date or datetime>,<number of weeks>)
the (date | time)<number-of-weeks>(weeks | week) after <datetime>
the (date | time)<number-of-weeks>(weeks | week) before <datetime>
Adds a number of weeks to a date. When using the terse syntactic form, the number must be a positive integer in order to add weeks to the input date.
AddMonths(<date or datetime>,<number of months>)
the (date | time)<number-of-months>(months | month) after <datetime>
the (date | time)<number-of-months>(months | month) before <datetime>
Adds a number of months to a date. When using the terse syntactic form, the number must be a positive integer in order to add months to the input date.
AddYears(<date or datetime>,<number of years>)
the (date | time)<number-of-years>(years | year) after <datetime>
the (date | time)<number-of-years>(years | year) before <datetime>
Adds a number of years to a date. When using the terse syntactic form, the number must be a positive integer in order to add years to the input date.
WeekdayCount(<date>,<date>)
the number of weekdays (inclusive) between <date1> and <date2>
Counts the number of weekdays between date1 and date2. That is, the number of days falling between Monday and Friday.
Note: The earlier date is inclusive and the later date is exclusive.
YearStart(<date or datetime>)
the first day of the year in which <date or datetime> falls
Returns the first date in the year in which a date falls.
YearEnd(<date or datetime>)
the last day of the year in which <date or datetime> falls
Returns the last date in the year in which a date falls.
DayDifference(<date or datetime>,<date or datetime>)
the number of days from <date1> to <date2>
Returns the number of whole days between date/datetime1 and date/datetime2. The order of the two dates does not affect the result.
DayDifferenceInclusive(<date>,<date>)
the number of days (inclusive) from <date1> to <date2>
Returns the number of whole days (inclusive) between date1 and date2. This calculation includes both endpoints. Where the dates are the same, the result is 1. The order of the two dates does not affect the result.
DayDifferenceExclusive(<date>,<date>)
the number of days (exclusive) from <date1> to <date2>
Returns the number of whole days (exclusive) between date1 and date2. This calculation excludes both endpoints. Where the dates are the same, the result is 0. The order of the two dates does not affect the result.
WeekDifference(<date or datetime>,<date or datetime>)
the number of weeks from <date1> to <date2>
Returns the number of whole elapsed weeks between date/datetime1 and date/datetime2. The order of the two dates does not affect the result.
MonthDifference(<date or datetime>,<date or datetime>)
the number of months from <date1> to <date2>
Returns the number of whole elapsed months between date/datetime1 and date/datetime2. The order of the two dates does not affect the result.
YearDifference(<date or datetime>,<date or datetime>)
the number of whole years which <date2> is after <date1>
the number of years between <date1> and <date2>
Returns the number of years between date/datetime1 and date/datetime2. The order of the two dates does not affect the result.

Time of day functions

Table 7 lists the time of day functions that can be used in Intelligent Advisor rules.

Table 7. Time of day functions
Syntax Description
TimeOfDay(<text>)
Converts the given string into a time of day
ExtractSecond(<time or datetime>)
Returns the second component of a timeofday/datetime attribute.
ExtractMinute(<time or datetime>)
Returns the minute component of a timeofday/datetime attribute.
ExtractHour(<time or datetime>)
Returns the hour component of a timeofday/datetime attribute.

Date and time functions

Table 8 lists the date and time functions that can be used in Intelligent Advisor rules.

Table 8. Date and time functions
Syntax Description
CurrentDateTime()
the current date time
Returns the current date and time at the start of the session.
DateTime(<text>)
Converts the specified string into a datetime value
ConcatenateDateTime(<date>,<time>)
Sets the date time by joining the date and time of day together.
SecondDifference(<datetime1>,<datetime2>)
the number of seconds from <datetime1> to <datetime2>
Returns the number of seconds between datetime1 and datetime2.
SecondDifferenceInclusive(<datetime1>,<datetime2>)
the number of seconds (inclusive) from <datetime1> to <datetime2>
Returns the inclusive number of seconds between datetime1 and datetime2.
SecondDifferenceExclusive(<datetime1>,<datetime2>)
the number of seconds (exclusive) from <datetime1> to <datetime2>
Returns the exclusive number of seconds between datetime1 and datetime2.
MinuteDifference(<datetime1>,<datetime2>)
the number of minutes from <datetime1> to <datetime2>
Returns the number of minutes between datetime1 and datetime2.
HourDifference(<datetime1>,<datetime2>)
the number of hours from <datetime1> to <datetime2>
Returns the number of hours between datetime1 and datetime2.
ExtractDate(<datetime>)
Extracts the date from a datetime attribute.
ExtractTimeOfDay(<datetime>)
Extracts the time of day from a datetime attribute. Can be used to set the value of a timeofday attribute to the time the rule is executed by extracting the time from the current date and time.
AddHours(<datetime>,<number of hours>)
the time <number-of-hours>(hours | hour) after <datetime>
the time <number-of-hours>(hours | hour) before <datetime>
Adds a number of hours to a date time.
AddMinutes(<datetime>,<number of minutes>)
the time <number-of-minutes>(minutes | minute) after <datetime>
the time <number-of-minutes>(minutes | minute) before <datetime>
Adds a number of minutes to a date time.
AddSeconds(<datetime>,<number of seconds>)
the time <number-of-seconds>(seconds | second) after <datetime>
the time <number-of-seconds>(seconds | second) before <datetime>
Adds a number of seconds to a date time.

Text functions

Table 9 lists the text functions that can be used in Intelligent Advisor rules.

Table 9. Text functions
Syntax Description
<text1> + <text2>
Appends text1 with text2 to form a single text value.
Contains(<text>,<substring>)
Returns a Boolean value indicating whether the given text value contains the given text sub-string. The text comparison is case-insensitive.
EndsWith(<text>,<substring>)
Returns a Boolean value indicating whether the given text value ends with the given text sub-string. The text comparison is case-insensitive.
IsNumber(<text>)
Returns a Boolean value indicating whether the given text value represents a valid number.
Length(<text>)
the length of <text>
Returns the character length of the given text value.
StartsWith(<text>,<substring>)
Returns a Boolean value indicating whether the given text value starts with the given text sub-string. The text comparison is case-insensitive.
Substring(<text>,<start>,<length>)
Returns the substring of text that starts at the given offset, that is the specified length in characters. Fewer characters are returned if the end of the string is reached.
Text(<value>)
Convert the specified number or date attribute into a text value.
Upper(<text>)
Returns the uppercase version of a string
Lower(<text>)
Returns the lowercase version of a string
Find(<text>,<substring>)
Returns the index of where a given text sub-string occurs in a string.
Quote()
Returns a quote punctuation character: ".
NewLine()
Returns a newline character.

Entity and relationship functions

Table 10 lists the entity and relationship functions that can be used in Intelligent Advisor rules.

Table 10. Entity and relationship functions
Syntax Description
For(<relationship>,<value>)
in the case of <relationship>, <condition>
<value>, in the case of <relationship>
Used to refer from one entity to another entity in a "One To One", "Many To One" or "Many To Many" relationship where there is only one condition.
ForScope(<relationship>,<alias>)
ForScope(<relationship>)
in the case of <relationship>
in the case of <relationship> (<alias>)
Used to refer from one entity to another entity in a "One To One", "Many To One" or "Many To Many" relationship where there are one or more conditions. This function is not supported in Microsoft Excel rules.
ForAll(<relationship>,<condition>)
for each of <relationship>, <condition>
for all of <relationship>, <condition>
Used to refer from one entity to another entity in a relationship, when you need to determine whether all members of the target entity group need to satisfy the rule.
This form is used when there is only one condition in the rule.
ForAllScope(<relationship>)
ForAllScope(<relationship>,<alias>)
for all of <relationship>
each of <relationship>
for each of <relationship>
for all of <relationship> (<alias>)
each of <relationship> (<alias>)
for each of <relationship> (<alias>)
Used to refer from one entity to another entity in a relationship, when you need to determine whether all members of the target entity group need to satisfy the rule.
This form is used when there are one or more conditions in the rule. This function is not supported in Microsoft Excel rules.
Exists(<relationship>,<condition>)
for at least one of <relationship>, <condition>
Used to refer from one entity to another entity in a relationship, when you need to determine whether any members of the target entity group need to satisfy the rule.
This form is used when there is only one condition in the rule.
ExistsScope(<relationship>)
ExistsScope(<relationship>,<alias>)
at least one of <relationship>
for at least one of <relationship>
at least one of <relationship> (<alias>)
for at least one of <relationship> (<alias>)
Used to refer from one entity to another entity in a relationship, when you need to determine whether any members of the target entity group need to satisfy the rule.
This form is used when there are one or more conditions in the rule. This function is not supported in Microsoft Excel rules.
IsMemberOf(<target>,<relationship>)
IsMemberOf(<target>,<alias>,<relationship>)
<target> is a member of <relationship>
<target> (<alias>) is a member of <relationship>
<target> is not a member of <relationship>
Used as a conclusion to infer that an entity instance is a member of a relationship. Used as a condition to test that an entity instance is a target of a relationship for which a second entity instance is the source. The negative form of this function is only supported as a condition, not as a conclusion. This function is not supported in Microsoft Excel rules.
InstanceCount(<relationship>)
the number of <relationship>
Counts the number of instances that exist for an entity.
InstanceCountIf(<relationship>,<condition>)
the number of <relationship> for which it is the case that <condition>
Counts the number of instances there are of an entity for which a particular entity-level attribute has a particular value.
InstanceMaximum(<relationship>,<attribute>)
<date-attribute> which is the latest for all [of]<relationship>
<attribute> which is the greatest for all [of]<relationship>
the latest of all <attribute> for <relationship>
the greatest of <attribute> for (all of | all | )<relationship>
Obtains the highest/most recent value of an entity-level variable for all instances of the entity.
InstanceMaximumIf(<relationship>,<attribute>,<condition>)
<date-attribute> which is the latest for all [of]<relationship> for which it is the case that <condition>
<attribute> which is the greatest for all [of]<relationship> for which it is the case that <condition>
the greatest of <attribute> for (all of | all | )<relationship> for which it is the case that <condition>
Obtains the highest/most recent value of an entity-level variable for all instances of the entity for which a particular entity-level attribute has a particular value.
InstanceMinimum(<relationship>,<attribute>)
<date-attribute> which is the earliest for all [of]<relationship>
<attribute> which is the least for all [of]<relationship>
the earliest of all <attribute> for <relationship>
the least of [all]<attribute> for [all][of]<relationship>
Obtains the lowest/least recent value of an entity-level variable for all instances of the entity.
InstanceMinimumIf(<relationship>,<attribute>,<condition>)
<date-attribute> which is the earliest for all [of]<relationship> for which it is the case that <condition>
<number-attribute> which is the least for all [of]<relationship> for which it is the case that <condition>
the least of all <attribute> for <relationship> for which it is the case that <condition>
the earliest of all <attribute> for <relationship> for which it is the case that <condition>
Obtains the lowest/least recent value of an entity-level variable for all instances of the entity for which a particular entity-level attribute has a particular value.
InstanceSum(<relationship>,<number>)
<number-attribute>(totaled | totalled) for all [of]<relationship>
Obtains the sum of all instances of an entity-level variable.
InstanceSumIf(<relationship>,<number>,<condition>)
<number-attribute>(totaled | totalled) for all [of]<relationship> for which it is the case that <condition>
Obtains the sum of all instances of an entity-level variable for which it is true of the entity that a specific entity-level Boolean attribute is true.
InstanceValueIf(<relationship>,<value>,<condition>)
Obtains a value from a unique entity instance, identified from the target entity instances of a relationship by a condition.
  • If the condition identifies a single target entity instance, then the value is the value calculated against that entity instance.
  • If more than one target instance meets the condition, then Uncertain is returned.
  • If no target instances meet the condition and the relationship is known the value is Uncertain.
InstanceEquals(<instance1>,<instance2>)
<instance1> is <instance2>
Determines if two instances of an entity are the same instance. This function is not supported in Microsoft Excel rules.
InstanceNotEquals(<instance1>,<instance2>)
<instance1> is not <instance2>
Determines if two instances of an entity are not the same instance. This function is not supported in Microsoft Excel rules.
InferInstance(<relationship>,<identity>)
<relationship>(<identity>) exists
Used as a conclusion to infer that an entity instance exists and is a member of a relationship.
InferInstanceFor(<entity>,<relationship>)
InferInstanceFor(<entity>,<alias>,<relationship>)
<inferred-entity> exists for <associated-relationship>
<inferred-entity> exists for <associated-relationship> (<alias>)
Used as a conclusion to create an entity instance as a counterpart to an existing entity instance.

Temporal reasoning functions

Table 11 lists the temporal reasoning functions that can be used in Intelligent Advisor rules.

Table 11. Temporal reasoning functions
Syntax Description
IntervalCountDistinct(<start date>,<end date>,<value>)
Counts the number of known distinct values for the variable, in the interval from the start date (inclusive) to the end date (exclusive).
IntervalCountDistinctIf(<start date>,<end date>,<value>,<condition>)
Counts the number of known distinct values for the variable, in the interval from the start date (inclusive) to the end date (exclusive), only including times when a Boolean filter is true.
IntervalDailySum(<start date>,<end date>,<number>)
Calculates the sum of a currency or number variable, in the interval from the start date (inclusive) to end date (exclusive). The attribute is assumed to be a daily quantity.
IntervalDailySumIf(<start date>,<end date>,<number>,<condition>)
Calculates the sum of all the daily values for a currency or number variable, in the interval from a start date (inclusive) to an end date (exclusive), only including times when a condition is true.
IntervalMaximum(<start date>,<end date>,<attribute>)
Selects the maximum value of a variable in the interval from a start date (inclusive) to an end date (exclusive).
IntervalMaximumIf(<start date>,<end date>,<value>,<condition>)
Selects the maximum value of a variable in the interval from a start date (inclusive) to an end date (exclusive), only including times when a condition is true.
IntervalMinimum(<start date>,<end date>,<value>)
Selects the minimum value of a variable in the interval from a start date (inclusive) to an end date (exclusive).
IntervalMinimumIf(<start date>,<end date>,<attribute>,<condition>)
Selects the minimum value of a variable in the interval from a start date (inclusive) to an end date (exclusive), only including times when a condition is true.
IntervalWeightedAverage(<start date>,<end date>,<number>)
Calculates the average value of a currency or number variable in the interval from a start date (inclusive) to an end date (exclusive) weighted by the time span to which each value applies.
IntervalWeightedAverageIf(<start date>,<end date>,<number>,<condition>)
Calculates the average value of a currency or number variable in the interval from a start date (inclusive) to an end date (exclusive), only including times when a Boolean condition is true (weighted by the time span to which each value applies and where the filter is true).
IntervalAlways(<start date>,<end date>,<condition>)
Returns true if and only if a Boolean condition is true at all times in the interval from the start date (inclusive) to the end date (exclusive).
IntervalAtLeastDays(<start date>,<end date>,<number of days>,<condition>)
Returns true if and only if a Boolean condition is true for at least the specified number of days (not necessarily consecutive) in the interval from the start date (inclusive) to the end date (exclusive).
IntervalConsecutiveDays(<start date>,<end date>,<number of days>,<condition>)
Returns true if and only if a Boolean condition is true for at least a given number of consecutive days in the interval from the start date (inclusive) to the end date (exclusive).
IntervalSometimes(<start date>,<end date>,<condition>)
Returns true if and only if a Boolean condition is ever true in the interval from the start date (inclusive) to the end date (exclusive).
ValueAt(<date>,<value>)
Returns the value of the given attribute at the specified date.
WhenLast(<date>,<condition>)
Returns the date on which a Boolean condition was last true, looking backwards from (and including) a specified date.
WhenNext(<date>,<condition>)
Returns the date on which a Boolean condition will next be true, looking forwards from (and including) a specified date.
Latest()
Returns a date value equivalent to the latest possible date - namely a date guaranteed to be later than any other date that a date attribute may take or an expression may evaluate to.
Earliest()
Returns a date value equivalent to the earliest possible date - namely a date guaranteed to be earlier than any other date that a date attribute may take or an expression may evaluate to.
TemporalDaysSince(<start date>,<end date>)
Returns a number variable that varies every day and is the number of full days since the date.
TemporalWeeksSince(<start date>,<end date>)
Returns a number variable that varies every week and is the number of full weeks since the date.
TemporalMonthsSince(<start date>,<end date>)
Returns a number variable that varies every month and is the number of full months since the date. Note: Where the supplied date is after the 28th day of the month, and a subsequent month has fewer days than the supplied month, the change point for the anniversary month will be created on the last day of that month. For example, if the supplied date is 28, 29, 30 or 31 January 2007, the first change point will be 28 February 2007.
TemporalYearsSince(<start date>,<end date>)
Returns a number variable that varies every year and is the number of full years since the date.
TemporalAlwaysDays(<days>,<condition>)
Returns a Boolean attribute that varies over time and is true if and only if a Boolean condition is true for all of a given number of preceding days, not including the current day.
TemporalConsecutiveDays(<required days>,<search days>,<condition>)
Returns a Boolean attribute that varies over time and is true if and only if a Boolean condition is true for at least a minimum number of consecutive days at any time within the preceding set number of days, not including the current day.
TemporalSometimesDays(<days>,<condition>)
Returns a Boolean attribute that varies over time and is true if and only if a Boolean condition is ever true within a specified number of preceding days, not including the current day.
TemporalAfter(<date>)
Returns a Boolean attribute that varies over time and is true after a date and false on and before.
TemporalBefore(<date>)
Returns a Boolean attribute that varies over time and is true before a date and false on and afterwards.
TemporalOn(<date>)
Returns a Boolean attribute that varies over time and is true on a date and false before and afterwards.
TemporalOnOrAfter(<date>)
Returns a Boolean attribute that varies over time and is true on or after a date and false before.
TemporalOnOrBefore(<date>)
Returns a Boolean attribute that varies over time and is true on and before a date and false afterwards.
TemporalFromStartDate(<relationship>,<date>,<value>)
Returns a single temporal attribute (at the source entity level) from a relationship and a value attribute on the entities, with values that take effect from a start date attribute.
TemporalFromEndDate(<relationship>,<date>,<value>)
Returns a single temporal attribute (at the source entity level) from a relationship and a value attribute on the entities, with values that take effect up until an end date attribute.
TemporalFromRange(<relationship>,<start date>,<end date>,<value>)
Returns a single temporal attribute (at the source entity level) from a relationship and a value attribute on the entities, with values that takes effect from a start date attribute (inclusive) until and end date attribute (exclusive). The value is uncertain if it expires before the next start date.
TemporalIsWeekday(<start date>,<end date>)
Returns true on dates that are weekdays and false on dates that are weekends from the specified start date (inclusive) to the end date (exclusive). Returns uncertain outside of the date range.
TemporalOncePerMonth(<start date>,<end date>,<day of month>)
Returns true if the day is equal to the day-of-month parameter and false on all other days of the month from the specified start date (inclusive) to the end date (exclusive). Returns uncertain outside of the date range. When the day-of-month exceeds the number of days in the current month, the value is true on the last day of that month, so that the function returns a value that is true exactly one day per month.

Validation event functions

Table 12 lists the validation event functions that can be used in Intelligent Advisor rules.

Table 12. Validation event functions
Syntax Description
Error(<text>)
An error event is used to pass a message to the user, and prevent them from continuing an investigation until the condition which triggered that error no longer applies.
Warning(<text>)
A warning event is used to pass a message to the user, but permits them to continue despite the condition which triggered that warning.

Other functions

Table 13 lists other functions that can be used in Intelligent Advisor rules.

Table 13. Other functions
Syntax Description
CurrentLocale()
Returns the language locale of the session.
DeploymentVersion()
If running the policy model from a deployment, returns the deployment's name. Otherwise returns uncertain.
DeploymentName()
If running the policy model from a deployment, returns the deployment version. Otherwise returns uncertain.
Value(<attribute>)
Returns the value of an attribute. If the attribute type is a value list, the value of the value list item is returned.