tagdictionary-TagDictionaryService

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 adefault 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 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 19.   TagDictionaryService is located in the Services directory
    Image
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: 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. This dictionary has a 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. 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. 

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 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 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), which is used if there is no namespace provided as part of a query. For example, if the default namespace is set to “hs”, a search query that includes only “ahu” would return all objects that are tagged with “hs:ahu”.
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.
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”.

Actions

  • Clear Tag Rule Index allows you to manually clear the Tag Rule index.
     NOTE: Typically, you would not need to invoke this Clear Tag Rule Index action because the index is cleared automatically whenever changes are made in the Tag Dictionary Service. It is provided so that you can reset everything when you are not seeing the expected results. 
  • Invalidate All Tag Indexes resets (clears) all tag indexes.
  • Invalidate Single Tag Index resets (clears) the specified tag indexes.
 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.