Best Practices for Tags

Tags are identified using four parts: name, area, description and placement in the tag hierarchy. You are advised to use all four. (Equipment type is also available as an identifier but applies only to I/O and Calculation tags and may have a very specific purpose.) The following rules and recommendations will help you keep your tags well organized, even if their numbers run into the hundreds of thousands.

Plan your tag structures carefully

There are considerable advantages to be gained by grouping tags according to their purpose in your application. Whether it be by state, zone, station, mechanism or controller, there is always a logical way to organize tags. In particular, make use of Context tags as a parent to group tags that relate to one another. Instructions are provided in: Design Your Own Tags

For large applications (many thousand tags) you might need extra Alarm Databases, in which case those should be the parent tags of I/O within a region.

If the tag is a child of another tag, the parent names will be displayed in a separate area before the name field. The current tag's name, excluding its parents, is also called the "short name".

Tag naming (See also: Naming Rules)

  • The name of a context (the parent of a hierarchy) should be specific, such as "Site A" or "Mixer 1".
  • The name of a tag describing an I/O address should either use a standard such as ISA-5.1 - Instrumentation Symbols and Identification, or it should be generic. "Flow Rate" rather than "Site A Flow Rate".
  • Do not repeat information in a child tag name that exists in a parent name.
    For example, if the tag measures flow within a pump, just name it Flow.
    \Station 1\Primary Pump\Flow
    ...is better than...
    \Station 1\Station 1 Primary Pump\Station 1 Primary Pump Flow
  • VTScada allows spaces within names but some installations may prefer to avoid them.
  • Tag names must be no longer than 64 characters in length

This rule refers only to the tag's immediate name, not its full name, which may include a lengthy list of parent tags.

  • Full tag names must be no longer than 253 characters in length

This rule refers to the tag's full name, which may include many parent tags.

  • Tag names must not duplicate other named items (reserved words).
    • You cannot name a tag "TagBrowser" or "Test", since those names are used elsewhere in VTScada.
    • A tag may not be named "Value" or "Area" since those are the names of tag properties.
    • Tag names may not duplicate Type names - you cannot name a tag "Calculation" or "Analog Status".
    • Tag names may not duplicate any function names. Refer to Function Reference.
    • In general, it is safest to avoid using common words unless you add a prefix or suffix.
  • Valid tag name characters include:
    • Any combination of alphanumeric characters (i.e. A through Z, and 0 through 9)
    • Spaces, except at the beginning or end of the name.
      (Some installations choose to avoid spaces as they can cause confusion. For example, "A B" looks like "A  B" but the second has two spaces and is therefore a different name.)
    • Period
      (Legal but discouraged.)
    • Symbols other than those listed below.
      (Underscore _ and dash - characters are used in place of spaces at installations where spaces are avoided.)
  • Invalid tag name characters include:
    • Backslash (\ which used to separate parent names)
    • Forward slash (/)
    • Colon (:)
    • Asterisk (*)
    • Question mark (?)
    • Double quotes (")
    • Less than (<)
    • Greater than (>)
    • Vertical bar (|)
    • Leading spaces
    • Trailing spaces
  • Tag names cannot be purely numeric.

"51" is not a valid tag name but "Station 51" is.
An interesting side effect of this rule is that you cannot name a tag "E1" or similar since this is a valid numeric expression: ("E1" == "0E1" == "zero exponent one").

In the event that you have entered an invalid tag name, VTScada will notify you with a warning dialog and will clear the Name field so that you can try again.

This note is relevant only to those with a multilingual user interface:
When editing any textual parameter (description, area, engineering units...) always work in the phrase editor. Any changes made directly to the textual parameter will result in a new phrase being created rather than the existing phrase being changed.
In a unilingual application this makes no difference, but in a multilingual application it is regarded as poor practice.

Use the Area property to help organize tags

The Area property, although not required, is strongly recommended. The area property helps you filter your tags for reports and other tag selection dialogs. This will help you to locate tags quickly, especially in larger applications where there are hundreds of tags.

When working with Parent-Child tag structures, the area property of all child tags will automatically match the area of a parent. Naturally, you can change any tag's area as required. In the case of a child tag, the field background will turn orange to indicate that you have applied an override.

The area can be used to identify differences within a context ("primary", "secondary"), or it can be used to identify similarities across contexts ("filtration system").

If you are using child tags, note that their area will automatically be the same as the nearest parent with an explicitly configured area. You can override this if a child tag should have a different area value than its parent. If you decide to remove your override, right-click on the Area property and select "Inherit from parent" from the menu that opens.

For customers whose VTScada license includes the Alarm Notification System option: Roster tags, which control the list of operators to be contacted in the event of an alarm, are linked to tag areas. That is, all tags sharing an area will use a matching roster.

Areas can be used to reduce the amount of memory required to run an application or to stay below licensing restrictions by allowing you to exclude certain tags from being loaded into your application at startup, on the basis of the area configured for their Area property. This is done using the [AREAS] section of the Settings.Startup configuration file for your application.

Areas can also be associated with user groups to restrict configuration access to part of an application when users are connecting over the Internet from a VTScada Thin Client.

Note that for Modem tags that are to be used with the Alarm Notification System, it is required that the area field be left blank.

To define a new area, type the name in the field. It will immediately be added to the list of existing areas. To use an existing area, use the drop-down list feature. Re-typing an existing area name is not recommended because a typo or misspelling will result in a second area being created.

There is no tool to remove an area name from VTScada because such a tool is unnecessary. An area definition will exist if any tag uses it and will stop existing when no tag uses it (following the next re-start).

In I/O and Calculation tags, use the Equipment Type to help filter or display tags

As an example, if you set the Equipment Type to "Pump" for all digital I/O tags that indicate the running state of your pumps, then in the Reports page, the Pump Activity Report will filter for and find just these tags.

Any tag that has been assigned an equipment type will use the labels and display characteristics defined for that type in a Style Settings tag. (Note that this may override the default style for the tag such as "digitals" or "analogs".) You can then use the I/O Multi-Text widget to display those labels. Equipment types may also be useful for filtering tag selection, such as in reports.

You are free to create as many equipment types as you need, and you may do so from within either an I/O tag on the ID tab or a Style Settings tag on the Equipment tab. The instructions are the same in both cases:

  1. Place the cursor in the Equipment Type field.
    (It does not matter whether the field is blank or shows an existing type.)
  2. Type the name of your new equipment type.
  3. Press the [tab] or [Enter] key on the keyboard.
  4. Click the Apply button.
    The new type is saved.
    If the field had shown an existing type before you started, it is not changed.

The Equipment Type of an I/O and Calculations tag is a powerful feature when used with care. Do not assign Equipment Types casually, without a clear plan for how you intend to use this feature.

There is no tool to remove an equipment type from VTScada because such a tool is unnecessary. An equipment type definition will exist if any tag uses it and will stop existing when no tag uses it (following the next re-start).

Write a clear description

Tags should be given a description that identifies the tag using plain language. The tag description appears throughout VTScada in tool tips, and in the Tag Browser, to help users determine the tag's name and its function. The Alarm Notification System will identify alarms using the description rather than the name (subject to your configuration choices), therefore it is vital that you provide a clear, unambiguous description for tags that are alarmed. This is especially important if using a naming standard that creates cryptic names such as "26PHDL\VC-0001\FCVY1".

Help Search Key

Used only by those who have developed their own Compiled Help Module (CHM) documentation. To see this system in action, right-click on any tag, as drawn on any page. The pop-up menu will include a Help option. Select that and you'll be reading VTScada's documentation about the selected tag. You could be reading your own documentation instead.

This is not commonly done. Refer to Custom Help Files in the reference topics at the end of the VTScada documentation for further information and other options.