Property | JSON/Scripting Name | Description | Data Type | Applicable Tag Type |
---|
Basic Properties |
Name | name | How the Tag will be presented and referenced in the system. The Tag path will be the provider, the folder structure, and this name.
| String | OPC, Query, Expression, Derived, Client, Reference, Memory |
Tag Group | tagGroup | The Tag Group that will execute the Tag. The Tag Group dictates the rate and conditions on which the Tag will be evaluated. For more details, see Tag Groups. | String | OPC, Query, Expression, Derived, Reference, Memory |
Enabled | enabled | Whether the Tag will be evaluated by the Tag Group. If false, the Tag will still be present, but will have a bad quality. | Boolean | OPC, Query, Expression, Derived, Reference, Memory |
|
Tag Type (unlisted) | tagType | The type of the node. See the Tag Object Types table for more information.
Note: This property does not appear in the Tag Editor, but is accessible via scripting.
| String | OPC, Query, Expression, Derived, Reference, Memory |
Type ID (unlilsted) | typeId | Returns a path representing which UDT this node is derived from. If the node is not a UDT, then this property will return a None object.
Note: This property does not appear in the Tag Editor, but is accessible via scripting.
| String | OPC, Query, Expression, Derived, Reference, Memory |
Value Source | valueSource | Specifies how the Tag determines its value. In other words, sets the type of the Tag (Memory, OPC, Expression, etc). Click here to see valid values Value Source | JSON Name |
---|
Derived | derived | Expression | expr | Memory | memory | OPC | opc | Query | db | Reference | reference |
| | OPC, Query, Expression, Derived, Reference, Memory |
Data Type | dataType | The data type of the Tag. It is important that this be set as correctly as possible with regards to the Tag's underlying data source. The Tag system will attempt to coerce any raw incoming value (for example, from OPC or a SQL query) into the desired type. For detailed information, see Tag Data Types. Click here to see valid values Data Type | String Value | Integer Value |
---|
Byte | Int1 | 0 | Short | Int2 | 1 | Integer | Int4 | 2 | Long | Int8 | 3 | Float | Float4 | 4 | Double | Float8 | 5 | Boolean | Boolean | 6 | String | String | 7 | DateTime | DateTime | 8 | Text | Text | 10 | Byte Array | Int1Array | 17 | Short Array | Int2Array | 18 | Integer Array | Int4Array | 11 | Long Array | Int8Array | 12 | Float Array | Float4Array | 19 | Double Array | Float8Array | 13 | Boolean Array | BooleanArray | 14 | String Array | StringArray | 15 | DateTime Array | DateTimeArray | 16 | Binary Data | ByteArray | 20 | Dataset | DataSet | 9 | Document | Document | 29 |
Note: Regarding Array data types, Alarming, Scaling, and Historical settings applied to an array Tag are propagated down to elements in the array.
| | OPC, Query, Expression, Derived, Reference, Memory |
Value | value
| The value of the Tag. Can only be modified if the Tag allows value writing and the user has sufficient privileges. | Object (depends on the data type of the Tag) | Memory |
OPC Server | opcServer | Only p resent for OPC Tags. The server against which to subscribe the data point. Only present for OPC Tags. | String | OPC |
OPC Item Path | opcItemPath | Only present for OPC Tags. The path to subscribe to on the server. The point will be subscribed at the rate dictated by the Tag Group.
The following feature is new in Ignition version 8.1.5
Click here to check out the other new features
It's possible to escape curly braces {} in the item path by using additional curly braces. For example: {{device_name}} would evaluate to {<device_name value>} , allowing you to include braces in the Item Path. | String | OPC |
Source Tag Path | sourceTagPath | The path to the Tag that this Tag is referencing. Only present for Reference and Derived Tags. | String | Derived, Reference |
Execution Mode | executionMode | Only present for Query and Expression Tags . Determines how when the Tag executes. - Event Driven - Updates when something happens (i.e., value event or alarm event) within the expression.
- Fixed Rate - Tag will be executed at the set or fixed rate. Adds the Execution Rate property, which determines how often the Tag executes in milliseconds.
- Tag Group - Tags are executed by Tag Groups, which dictate the rate of execution.
Execution Mode | JSON Name |
---|
Event Driven | EventDriven | Fixed Rate | FixedRate | Tag Group | TagGroupRate |
| | Expression, Query |
Expression | expression
| The expression the Tag will use to determine its value. | String | Expression |
Read Expression | deriveExpressionGetter
| The expression that determines how the value on the Derived Tag is displayed. | String | Derived |
Query | query | The SQL query to be run, which drives the tag's value. Queries doing database reads and writes are possible, see the Query Type property description for details. |
|
|
Write Expression | deriveExpressionSetter
| The expression that determines how the value on the Derived Tag is displayed. | String | Derived |
Datasource | datasource
| The database connection that the query Tag will execute against. | String | Query |
Query Type | queryType |
The following feature is new in Ignition version 8.1.3
Click here to check out the other new features
Defines whether the query is executing a database read or a database write. Important for determining the value behavior of the Tag. Possible values are: - AutoDetect - Query type is determined from the query itself.
- Select - Dictates that the query is reading data from the database. The query result set will be stored on the Tag's value.
- Update - Dictates that the query is writing data to the database (but does not require an UPDATE statement in the query, specifically). The value on the query Tag will be the number of affected rows.
| String | Query |
Numeric Properties |
Deadband | deadband | A numerical value used to prevent unnecessary updates for Tags whose values change by small amounts. | Numeric | OPC, Query, Expression, Derived, Reference, Memory
|
Deadband Mode | deadbandMode | Defines how the deadband value is used. Valid values are as follows: Deadband Mode | JSON Name |
---|
Absolute | Absolute | Percent | Percent | Off | Off |
| String | OPC, Query, Expression, Derived, Reference, Memory |
Scale Mode | scaleMode | If and how the Tag value will be scaled between the source, and what is reported for the Tag. Valid values are as follows: Mode | JSON Name | Int Value |
---|
Off | Off | 0 | Linear | Linear | 1 | Square Root | SquareRoot | 2 | Exponential Filter | ExponentialFilter | 3 | Bit Inversion | BitInversion | 4 |
| | OPC, Query, Expression, Derived, Reference, Memory
|
Raw Low | rawLow | Start of the "raw" value range. Only present if Scale Mode is set to Linear or Square Root. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Raw High | rawHigh | End of the "raw" value range. Only present if Scale Mode is set to Linear or Square Root. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Scaled Low | scaledLow | Start of "scaled" value range. Raw low will map to Scaled low for the Tag. Only present if Scale Mode is set to Linear or Square Root. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Scaled High | scaledHigh | End of "scaled" value range. Raw high will map to Scaled high for the Tag. Only present if Scale Mode is set to Linear or Square Root. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Clamp Mode | clampMode | How values that fall outside of the ranges will be treated. "Clamped" values will be adjusted to the low/high scaled value as appropriate. Only present if Scale Mode is set to Linear or Square Root. Valid values are as follows: Clamp Mode | JSON Name | Int Value |
---|
No_Clamp | No_Clamp | 0 | Clamp_Low | Clamp_Low | 1 | Clamp_High | Clamp_High | 2 | Clamp_Both | Clamp_Both | 3 |
| | OPC, Query, Expression, Derived, Reference, Memory |
Scale Factor | scaleFactor | For single parameter modes (currently only Exponential Filter), the factor parameter for the equation. Used when the Scale Mode property is set to Exponential Filter | Numeric
| OPC, Query, Expression, Derived, Reference, Memory |
Engineering Units | engUnit | The engineering units of the value. | String | OPC, Query, Expression, Derived, Reference, Memory |
Engineering Low Limit | engLow | The lowest expected value of the Tag. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Engineering High Limit | engHigh | The highest expected value of the Tag. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Engineering Limit Mode | engLimitMode | Dictates how the engineering range should be enforced on the Tag. If not "Off", the Tag will change to bad quality ("limit exceeded"), when the value falls outside the specified range. Valid values are as follows: Limit Enforcement | JSON Name | Int Value |
---|
No_Clamp | No_Clamp | 0 | Clamp_Low | Clamp_Low | 1 | Clamp_High | Clamp_High | 2 | Clamp_Both | Clamp_Both | 3 |
| | OPC, Query, Expression, Derived, Reference, Memory |
Format String | formatString | How the value should be formatted when converted to a string (only applies to numerical data types). Uses # and 0 characters to describe the format. # : If the number in this position is non-zero, then do not show the position. Otherwise, show the number. Useful when you only want to show a decimal position if the value is non-zero. 0 : If the number in this position is non-zero, then show that number. Otherwise, show a zero. Useful to add leading and trailing zeros to a value. See Data Type Formatting Reference. | String | OPC, Query, Expression, Derived, Reference, Memory |
Meta Data Properties |
Tooltip | tooltip | The tooltip provides a hint to visual components as to what should be displayed when the user hovers their mouse cursor over the component that is being driven by the value of this Tag.
The following feature is new in Ignition version 8.1.18
Click here to check out the other new features
Hovering over the Tag itself in the Tag Browser will also display this hint. 
| String | OPC, Query, Expression, Derived, Reference, Memory |
Documentation | documentation | A freeform text property for information about the Tag. | String | OPC, Query, Expression, Derived, Reference, Memory |
Security |
Read Permissions
| readPermissions | Defines the security levels required in order to read values from a Tag. For more information, see Tag Security Properties. Contains the following elements: Name | JSON Name | Description |
---|
Type | type | Represents the selected radio button on the security level UI, determining if all of the elements in the securityLevels array are required, or if any of the elements are allowed. Possible values are: AnyOf AllOf | Security Levels | securityLevels | Represents allowed security levels for this permission. Each level is represented as a JSON object, containing a "name" value that represents the name of a security level, and a "children" array which represents any levels under the current. The actual "selected" levels are any levels that have an empty "children" object. See the example below for more information.
|
Click here to see an example in JSON... The JSON in this example uses the configuration shown in the image below. Permission is granted if the security levels on the request are from either an "Administrator" user, or if the request originated from the "Zone A" Security Zone. 
"readPermissions": {
"type": "AnyOf",
"securityLevels": [
{
"name": "Authenticated",
"children": [
{
"name": "Roles",
"children": [
{
"name": "Administrator",
"children": []
}
]
}
]
},
{
"name": "SecurityZones",
"children": [
{
"name": "Zone A",
"children": []
}
]
}
]
}
| JSON Object | OPC, Query, Expression, Derived, Reference, Memory |
Read Only | readOnly | Defines whether a Tag is read-only or writeable. For more information, see Tag Security Properties . | value: boolean | OPC, Query, Expression, Derived, Reference, Memory |
Write Permissions | writePermissions | Defines the security levels required in order to read values from a Tag. For more information, see Tag Security Properties. Contains the following elements: Name | JSON Name | Description |
---|
Type | type
| Represents the selected radio button on the security level UI, determining if all of the elements in the securityLevels array are required, or if any of the elements are allowed. Possible values are: AnyOf AllOf | Security Levels | securityLevels
| Represents allowed security levels for this permission. Each level is represented as a JSON object, containing a "name" value that represents the name of a security level, and a "children" array which represents any levels under the current. The actual "selected" levels are any levels that have an empty "children" object. See the example below for more information. |
Click here to see an example in JSON... The JSON in this example uses the configuration shown in the image below. Permission is granted if the security levels on the request are from either an "Administrator" user, or if the request originated from the "Zone A" Security Zone. 
"writePermissions": {
"type": "AnyOf",
"securityLevels": [
{
"name": "Authenticated",
"children": [
{
"name": "Roles",
"children": [
{
"name": "Administrator",
"children": []
}
]
}
]
},
{
"name": "SecurityZones",
"children": [
{
"name": "Zone A",
"children": []
}
]
}
]
}
| JSON Object | OPC, Query, Expression, Derived, Reference, Memory |
Scripting |
Tag Event Scripts | eventScripts | Each Tag has the option to have Tag Event Scripts on it. When you edit a Tag, you can navigate to the Tag Events screen to see a list of all of the Tag scripts. You can then select which event you would like to write a script for. You can even write a script for multiple events if you like. For detailed information, see Tag Event Scripts . When interacting with a Tag from a script, the Tag Event Scripts are represented as an array of JSON objects. Each JSON object is described in the expandable area below: Click here to expand... Key Description Key | Description |
---|
eventid | A value representing the type of event script | script | A value representing the content of the script |
Possible eventid values Event Script | eventid value |
---|
Quality Changed | qualityChanged | Value Changed | valueChanged | Alarm Active | alarmActive | Alarm Cleared | alarmCleared | Alarm Acknowledged | alarmAcked |
| JSON Array | OPC, Query, Expression, Derived, Reference, Memory
|
Alarms |
Alarms | alarms | Tags have the ability to define any number of alarms. Each alarm is a condition that will be evaluated when the value of the Tag changes. When the condition becomes true, the alarm is said to be active. When it becomes false, the alarm is said to be cleared. For detailed information, see Tag Alarm Properties. | JSON Array of JSON objects. For detailed information, see Tag Alarm Properties . | OPC, Query, Expression, Derived, Reference, Memory
|
Alarm Eval Enabled | alarmEvalEnabled | Determines if alarms will be evaluated on this tag. | Boolean | OPC, Query, Expression, Derived, Reference, Memory |
History |
History Enabled | historyEnabled | Whether the Tag will report its history to the Tags Historian system. | Boolean | OPC, Query, Expression, Derived, Reference, Memory |
Storage Provider | historyProvider | Which Tag Historian data store the Tag will target. A particular Tag can only target one history store. For more information, refer to History Providers on the Tag History Gateway Settings page. | String | OPC, Query, Expression, Derived, Reference, Memory |
Deadband Style | historicalDeadbandStyle | There are three styles to choose from: Auto, Analog, or Discrete. When set to Auto, this setting will automatically pick from Analog or Discrete, based on the data type of the Tag. - If the data type of the Tag is set to a float or double, then Auto will use the Analog Style
- If the data type of the Tag is any other type, then the Discrete style will be used.
More information on the Analog and Discrete types can be found on the Configuring Tag History page. Valid values are as follows: Deadband Style | JSON Name |
---|
Auto | Auto | Analog | Analog_Compressed | Discrete | Discrete |
| | OPC, Query, Expression, Derived, Reference, Memory
|
Deadband Mode | historicalDeadbandMode | Defines how the deadband value is used. Deadband Mode | JSON Name |
---|
Absolute | Absolute | Percent | Percent | Off | Off |
| | OPC, Query, Expression, Derived, Reference, Memory
|
Historical Deadband | historicalDeadband | A deadband that applies only to historical evaluation. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Sample Mode | sampleMode | Determines how often a historical record should be collected. - On Change - Collects a record whenever the value on the Tag changes.
- Periodic - Collects a record based on the Sample Rate and Sample Rate Units properties.
- Tag Group - Collects a record based on the Tag Group specified under the Historical Tag Group property.
Valid values are as follows: Max Time Between Records Mode | JSON Name |
---|
On Change | OnChange | Periodic | Periodic | Tag Group | TagGroup |
| | OPC, Query, Expression, Derived, Reference, Memory |
Sample Rate | historySampleRate
| When the Sample Mode property is set to "Periodic", this property (working in conjunction with the Sample Rate Units property) determines how often a record should be collected. | Numeric | OPC, Query, Expression, Derived, Reference, Memory |
Sample Rate Units | historySampleRateUnits
| When the Sample Mode property is set to "Periodic", this property (working in conjunction with the Sample Rate property) determines the unit of time that will be use in record collection. Click here to see valid values Unit of Time | JSON Name |
---|
Milliseconds | MS | Seconds | SEC | Minutes | MIN | Hour | HOUR | Day | DAY | Week | WEEK | Month | MONTH | Year | YEAR |
| | OPC, Query, Expression, Derived, Reference, Memory |
Historical Tag Group | historyTagGroup
| When the Sample Mode property is set to "Tag Group", this property determines which Tag Group will be used to collect records. | String | OPC, Query, Expression, Derived, Reference, Memory |
Min Time Between Samples | historyTimeDeadband | Minimum time between records. Useful in restricting the number of records collected when the Sample Mode is set to "Tag Change". Prevents multiple consecutive Tag changes from triggering consecutive record collections. Works in conjunctions with the Min Time Units property. The Value is calculated off of the value timestamp. | Integer | OPC, Query, Expression, Derived, Reference, Memory |
Min Time Units | historyTimeDeadbandUnits | Units of time to use with the Min Time Between Samples property. Click here to see valid values Unit of Time | JSON Name |
---|
Milliseconds | MS | Seconds | SEC | Minutes | MIN | Hour | HOUR | Day | DAY | Week | WEEK | Month | MONTH | Year | YEAR |
| | OPC, Query, Expression, Derived, Reference, Memory
|
Max Time Between Samples |
historyMaxAge
| Maximum time between samples. Works in conjunction with the Max Time Units property. If a sample has not been collected by the time range specified by these two properties, then a record will be collected on the next sample interval. Setting this value to 0 will disable automatic record collection. Default is 0.
Note: This setting will be ignored if the Sample Mode is set to Tag Group, and the targeted Tag Group is using non-default values for its Max Time Between Samples setting. The implication being that non-default values on the Tag Group settings take precedence over this setting.
| Integer | OPC, Query, Expression, Derived, Reference, Memory
|
Max Time Units | historyMaxAgeUnits | Maximum time in units is defined as: Milliseconds, Seconds, Minutes, Hours, Days, Weeks, Months, and Years. Click here to see valid values Unit of Time | JSON Name |
---|
Milliseconds | MS | Seconds | SEC | Minutes | MIN | Hour | HOUR | Day | DAY | Week | WEEK | Month | MONTH | Year | YEAR |
| | OPC, Query, Expression, Derived, Reference, Memory
|