The Tag Dictionary Service, located in a station’s Services directory, is the container for all tag dictionaries installed
in the station.
Tag Dictionary Service
The Tag Dictionary Manager is the main view for the Tag Dictionary Service. The service has a property for defining a default namespace so that queries that do not specify a namespace are resolved on this default namespace. For example, if you execute a NEQL
query for "point" (instead of "n:point"), and the default namespace ID is set to "n", your query returns all objects tagged with "n:point".
Note the following information about the Tag Dictionary Service:
- The tags license is required in order to use the TagDictionaryService and tag dictionaries on a station.
- A station can support only one tag dictionary service.
- Neither the tag dictionary service nor any tag dictionaries are strictly required for tagging or for performing NEQL queries.
However, without tags or tag dictionaries, a station is not be able to take advantage of most of the functions available from
tagging objects. Tags and tag dictionaries are fairly lightweight and therefore are included by default in all stations created
by the new station wizard.
- Installed tag dictionaries belong under the TagDictionaryService. They are not allowed anywhere else in the station.
Figure 4. TagDictionaryService is located in the Services directory
NOTE: In
Niagara 4.9 and later, tagging enhancements include added support for tag-based Px bindings which resolve NEQL query Ords instead of
slot path Ords. The purpose of this is to enable you to create reusable graphics that can be installed on any component in
any station where the bound components are properly tagged and related correctly to the base component. Tag-based Px bindings
use a NEQL query and a new single scheme that resolves the query result to a single entity. The TagDictionaryService includes
new configuration properties to support this functionality. For details, see the “Neqlize Options” section.
NOTE: In
Niagara 4.6 and later, the tagdictionary palette includes two smart tag dictionaries that support the System Database and System Indexing features. The dictionaries
allow you to easily exclude portions of a NiagaraStation from indexing operations, which you might want to do for licensing
reasons. The SystemIndex dictionary works on stations running
Niagara 4.6 and later. This dictionary has a new smart tag, the scoped tag. If you add this dictionary to your station, you can drop
a systemIndex:excluded marker tag on a component and any descendants will have this same tag implied on them. To prevent implying this tag on all
descendants you can apply a systemIndex:included marker tag where necessary. The Pre 4.6 SystemIndex dictionary works for stations running versions
Niagara 4.3-
Niagara 4.6. This dictionary has a scoped tag rule that can be configured to imply the systemIndex:excluded tag on portions of the station as specified in one or more Ord scopes.
In
Niagara 4.3 and later, the Tag Dictionary Service includes the following indexing features both of which reduce the amount of re-evaluation
of tag rules, which improves response time for obtaining results of NEQL searches and traversing hierarchies:
- Tag Rule Index, enabled by default. For complete details, see Tag Rule Index.
- The Implied Tags Index, disabled by default, can be configured for user-selected implied tags. For complete details, see Implied Tags Index.
Tag Dictionary Service properties
| Property |
Values |
Description |
| Enabled |
true or false |
Activates and deactivates use of the function. |
| Status |
text |
Read-only field. Indicates the condition of the component at last polling.
- {ok} indicates that the component is polling successfully.
- {down} indicates that polling is unsuccessful, perhaps because of an incorrect property.
- {disabled} indicates that the
Enable property is set to false.
- fault indicates another problem.
|
| Fault Cause |
text |
Read-only field. Indicates why the network, component, or extension is in fault. |
| Default Namespace Id |
Text string |
This TagDictionaryService property provides a field that is used to indicate a default tag namespace (tag dictionary) that
is used if there is not a namespace provided as part of a query. For example, if the default namespace is set to “hs”, then
a search query that includes only “ahu” would return all objects that are tagged with “hs:ahu”.
|
| Indexed Tags |
text string |
Entering tag ids in this field enables those tags to be indexed for each component in the station. Use a semi-colon separated
list for multiple tag ids that should be indexed. This field can be cleared to clear the implied tag index and prevent any
further indexing.
|
| Neqlize Options |
additional details |
Contains sub-properties that list default excluded relations and tags, enable/disable use of the default exclusions, custom
excluded relations and tags. You can specify whether to use the default exclusions along with any custom exclusions or to
use only the your custom exclusions. For details, see the following section on “Neqlize Options”.
|
| Tag Rule Index Enabled |
true (default) or false |
Enabled by default, the Tag Rule Index is an index on the Tag Dictionary Service which improves performance in evaluating
tag rules for implied tags during NEQL searches. Setting the property to false automatically clears the index, as do any changes
in the service.
|
Actions
NOTE: These actions do not discontinue indexing for the tagIDs listed in the Indexed Tags property. The index will be rebuilt the
next time a search for one of the indexed tagIDs is executed