N1 Service Provisioning System 4.1 Reference Guide

Boolean Operators

This section lists elements that serve as boolean operators, and appear within the condition of an <if> step. Boolean operators have the property that they evaluate to true or false.

istrue Boolean Operator

A boolean operator used to determine if a particular value is true. It contains a single attribute "value" and has no child elements. It evaluates to true if and only if the value of the "value" attribute case-insensitive equals "true".

istrue Boolean Operator Attributes

Name 

Type 

Required 

Configurable 

Description 

value 

string 

Yes 

Yes 

The value to compare against "true".  

istrue Boolean Operator Examples

Element 

Result 

<istrue value="True"/> 

true 

<istrue value="yes"/> 

false 

<istrue value=":[var]"/> 

true if the value of var is true 

equals Boolean Operator

A boolean operator used to determine if a particular value is equal to another value. It contains attributes "value1", "value2" and "exact", and has no child elements. It evaluates to true if and only if the values of the "value1" and "value2" attribute are equal. If "exact" is true, then they must be case-sensitive equals, otherwise they must be case-insensitive equals.


Note –

<istrue value="..."/> is a syntactic shorthand for <equals value1="..." value2="true"/>.


equals Boolean Operator Attributes

Name 

Type 

Required 

Configurable 

Description 

value1 

string 

Yes 

Yes 

A value to be compared.  

value2 

string 

Yes 

Yes 

The other value to be compared. 

exact 

boolean 

No 

No 

True if a case-sensitive match should be performed, false otherwise. Defaults to false. 

equals Boolean Operator Examples

Element 

Result 

<equals value1="True" value2="true"/> 

true 

<equals value1="True" value2="true" exact="true"/> 

false 

<equals value1="apple" value2="apple" exact="true"/> 

true 

<equals value1="apple" value2="orange"/> 

false 

<equals value1=":[var1]" value2=":[var2]"/> 

true if the value of var1 is equal to the value of var2. 

matches Boolean Operator

A boolean operator used to determine if a particular value matches a pattern. It contains attributes "value", "pattern" and "exact", and has no child elements. It evaluates to true if and only if value of the "value" attribute matches the glob-style pattern contained in the value of the "pattern" attribute. If "exact" is true, then they must be case-sensitive match, otherwise they must be case-insensitive match.

matches Boolean Operator Attributes

Name 

Type 

Required 

Configurable 

Description 

value 

string 

Yes 

Yes 

The value to be matched against the pattern.  

pattern 

string 

Yes 

Yes 

The pattern that should be matched. 

exact 

boolean 

No 

No 

True if a case-sensitive match should be performed, false otherwise. Defaults to false. 

matches Boolean Operator Examples

Element 

Result 

<matches value="True" pattern="true"/> 

true 

<matches value="True" pattern="t*"/> 

true 

<matches value="blue" pattern="*u"/> 

false 

<matches value="True" pattern="t?ue"/> 

true 

<matches value="Tue" pattern="t?ue"/> 

false 

<matches value="True" pattern="t*" exact="true"/> 

false 

<matches value=":[var1]" pattern=":[var2]"/> 

true if the value of var1 matches the pattern of var2.  

 

not Boolean Operator

A boolean operator which negates the result of another boolean operator. It contains no attributes, and a single boolean operator child element. It evaluates to true if and only if the value of its contained operator is not true.

not Boolean Operator Examples

Element 

Result 

<not><istrue value="True"/></not> 

false 

<not><equals value1="apple" value2="orange"/></not> 

true. 

 

and Boolean Operator

A boolean operator which logically ands results of other boolean operators. It contains no attributes. It may contain any number of boolean operator child elements. It evaluates to true if and only if all of its child elements evaluates to true.

and Boolean Operator Examples

Element 

Result 

<and/> 

true 

<and><istrue value="True"/></and> 

true 

<and><equals value1="apple" value2="orange"/></and> 

false 

<and> <matches value="apple" value2="ap*e"/> <istrue value="TRUE"/> <not><equals value1="apple" value2="orange"/></not></and> 

true 

<and> <matches value="apple" value2="ap*e"/> <istrue value="TRUE"/> <equals value1="apple" value2="orange"/></and> 

false 

or Boolean Operator

A boolean operator which logically ors results of other boolean operators. It contains no attributes. It may contain any number of boolean operator child elements. It evaluates to true if and only if it contains at least one child element that evaluates to true.

or Boolean Operator Examples

Element 

Result 

<or/> 

false 

<or><istrue value="True"/></or> 

true 

<or><equals value1="apple" value2="orange"/></or> 

false 

<or> <matches value="apple" value2="p*e"/> <istrue value="FALSE"/> <equals value1="apple" value2="orange"/></or> 

false 

<or> <matches value="apple" value2="p*e"/> <not><istrue value="FALSE"/></not> <equals value1="apple" value2="orange"/></or> 

true