Haystack Equip Import File format
The Equip Import File (equipMerge.csv) is created by the Make Import Files action on the Haystack tag dictionary. This file is used to add a new tagGroup, modify an existing tagGroup or remove an existing tagGroup to/from the haystack dictionary.
The Equip Import File is a CSV file that can be edited using MS Excel (or other CSV-compatible software).
Important: For editing purposes, the import files can
be located anywhere on your PC. However, to use the import files you
must copy them to a folder on the target station.
About the rows
Header rows: Rows 1 and 2 — Header rows that contain the column headings.
Data rows: Rows 3 and beyond — Each row has 12 columns. In a text editor each column is separated with a “,” (comma). The column definitions follow. Each row defines an individual tag or relation (Ref kind).
Note: Initially, all data rows are commented-out (rows start with “
**” or “##” characters), and as such they will be ignored on import. To edit a row, you must remove the comment characters so that your changes will be recognized and imported. 

Data columns:
| Column | Description |
|---|---|
| Name | Name of the tagGroup defined by this row. If the tagGroup with this name already exists in the haystack dictionary, the tagGroup definition will be overwritten by the definitions in this row. If the tagGroup with this name doesn’t exist in the haystack dictionary, a new tag will be added with this row’s tag definitions. |
| Remove | Entering the word “Remove” in this column causes this tagGroup to be removed from the haystack dictionary. |
| ValidityRules (columns) | This group of columns is used to define the validity for a tagGroup. The validity is used by UI components to filter tagGroups that may be added to a component. Used in creating the TagGroupInfo entry for the tagGroup in the TagGroupDefinitions of the Haystack dictionary. |
| hasTags | Contains a
list of space delimited tags. It generates a Boolean filter with
an “or” between each tag. It indicates that this
tagGroup may be valid to be applied to the given component if it has
one of these tags. If haystack tag, only enter the tag name. |
| isType | Generates the
IsTypeCondition using the type provided. Written in the form of module:typeName. This tagGroup may be valid to be applied
to the given component is of this type. |
| hasAncester | Generates a
HasAncesttorCondition using the tag(s) specified. If more that one
tag is specified then an Or function will be used
to evaluate. This tag may be valid to be applied to the given component
if it has an ancestor with one of these tags. If it is a haystack
tag, only enter the tag name. |
| filter | Generates a
BooleanFilter using the contents of this filter. The filter must be
a fully qualified NEQL predicate. It is typically used to traverse
a hs:equipRef relation to validate that this point
is related to a specific type of equipment.Note: You must include
the nameSpace for tag and relation entries. |
| TagGroup Tags | Contains a
space delimited list of discrete tags that are associated with this
tagGroup. Most of these tags will be Marker tags. If a tag is a value
tag, a value can be specified by using tagName(tagValue) format. Example: cool stage(2) cmd specifies tagGroup
tags : cool stage cmd with the stage tag having a value of 2. |