# IBNFDef Interface

Namespace: [Qlik.Engine](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.htm)  
Assembly: Qlik.Engine.dll

## Syntax

```
[ValueClass]
public interface IBNFDef
```

## Properties

| Name | Description |
| --- | --- |
| [AggrFunc](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.AggrFunc.htm#Qlik_Engine_IBNFDef_AggrFunc) | If set to true, the definition is related to an aggregation function.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qAggrFunc |
| [Bnf](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.Bnf.htm#Qlik_Engine_IBNFDef_Bnf) | Array of token references that all together build up the definition of the current token.<br><br>Generally, if the array is not empty, the definition is a BNF rule (`qIsBnfRule` is set to true). However, some BNF rules do have an empty array (`qIsBnfRule` is set to true, but `qBnf` is empty).<br><br>JSON property name: qBnf |
| [BnfLiteral](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.BnfLiteral.htm#Qlik_Engine_IBNFDef_BnfLiteral) | If set to true, the definition specifies a literal token.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qBnfLiteral |
| [ControlStatement](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.ControlStatement.htm#Qlik_Engine_IBNFDef_ControlStatement) | If set to true, the definition specifies a control statement.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qControlStatement |
| [Depr](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.Depr.htm#Qlik_Engine_IBNFDef_Depr) | Indicates whether a script statement, a chart or a script function is deprecated (not recommended for use).<br><br>If set to true, the script statement or the function is not recommended for use in Qlik Sense.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qDepr |
| [FG](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.FG.htm#Qlik_Engine_IBNFDef_FG) | Group of the function.<br><br>JSON property name: qFG |
| [FGList](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.FGList.htm#Qlik_Engine_IBNFDef_FGList) | List of groups the function belongs to.<br><br>JSON property name: qFGList |
| [FieldFlag](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.FieldFlag.htm#Qlik_Engine_IBNFDef_FieldFlag) | If set to true, the definition is related to a field.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qFieldFlag |
| [HelpId](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.HelpId.htm#Qlik_Engine_IBNFDef_HelpId) | Reference identifier to a function described in the documentation. The identifier is stored in the definition of the token containing the function name.<br><br>Is not used in Qlik Sense.<br><br>JSON property name: qHelpId |
| [IsBnfRule](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.IsBnfRule.htm#Qlik_Engine_IBNFDef_IsBnfRule) | If set to true, a list of related rule tokens is assigned to `qBnf` .<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qIsBnfRule |
| [MT](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.MT.htm#Qlik_Engine_IBNFDef_MT) | Type of the data.<br><br>JSON property name: qMT |
| [Name](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.Name.htm#Qlik_Engine_IBNFDef_Name) | Token name.<br><br>One of:<br><br>\* A rule name<br><br>\* An identifier<br><br>\* A literal value<br><br>JSON property name: qName |
| [Nbr](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.Nbr.htm#Qlik_Engine_IBNFDef_Nbr) | Number of the current token definition.<br><br>JSON property name: qNbr |
| [PNbr](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.PNbr.htm#Qlik_Engine_IBNFDef_PNbr) | Number of the parent rule definition.<br><br>JSON property name: qPNbr |
| [QvFunc](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.QvFunc.htm#Qlik_Engine_IBNFDef_QvFunc) | If set to true, the definition is related to a Qlik Sense function. It cannot be an aggregation function.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qQvFunc |
| [ScriptStatement](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.ScriptStatement.htm#Qlik_Engine_IBNFDef_ScriptStatement) | If set to true, the definition specifies a script statement.<br><br>This parameter is optional. The default value is false.<br><br>JSON property name: qScriptStatement |
| [Str](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IBNFDef.Str.htm#Qlik_Engine_IBNFDef_Str) | Literal string of the token.<br><br>Examples: 'Round' and '('.<br><br>JSON property name: qStr |