This chapter provides guidance on how to use the reference documentation. Each section used in the documentation is described below.


The main index page is composed of the following sections:


This section lists each of the entity base terms. This includes the primary four entity types: site, space, equip, and point. Each term links to a taxonomy tree for the term's subtypes. You can add new entity terms into this section with the docTaxonomy marker.


This section lists key terms with a link to an index of the term's subtype tree. You can add new terms into this section with the docTaxonomy tag (if the term is an entity, it will go into the entities section).


This section contains links to miscellaneous listing pages. Some of the appendices include:

  • conjuncts: all terms composed of multiple tags
  • tags: all terms composed of an atomic name
  • terms: all tags and conjuncts listed together
  • lib: listing of library modules
  • filetype: listing of Haystack filetype encodings


Section within a lib index that lists the terms defined by the lib module.


Manuals are hand written documents that provide design details to augment the auto-generated reference documentation. Manuals are composed of chapters which correspond to individual HTML pages.

A manual index is composed of two sections:

  • manual: summary information including name and brief overview
  • chapters: index of the manual's chapter pages


Each def has its own reference page in the documentation composed of the following sections:


The def section contains summary information for the definition including its identifier formatted doc description.


This section is used only for conjuncts. It provides a link to the definition of each of the conjunct's parts.


The meta section documents the normalized tags for the definition's representation as a dict. Each tag present in the definition is listed here, although some values such as the doc or enum may reference another section.


This section is used only on entity terms. It lists the required marker tags which must be applied to a dict to correctly implement the term. It takes into account conjuncts and supertypes with the mandatory marker.


If the definition has the enum tag then this section provides a listing of the documented enumerations and their summary.


This section lists the term's supertypes. The supertypes are organized as an indented tree down from most general to most specific. The first item is the root type, which is typically marker or val. The last item will be the definition's declared supertype matching the is tag. If the term has multiple supertypes then this tree will have multiple leaves.


This section lists the term's subtypes. The subtypes are organized in an indented tree structure.


This section lists the value tags associated with the entity via the tagOn association. This section also includes tags which are registered on the entity's supertypes.


This section lists terms which use the given association. Its provides a nice mechanism to cross-reference usage of association tags.


This section lists children prototypes which are "contained" by the given entity type.


Prototypes are dict instances which model a predefined collection of tags.


The proto section defines the prototypes tags.


The definitions implemented by the prototype.