A product is an extractive attribute that is generated as a conseqence of applying a management treatment. Product attributes are defined in the products.csv core file.

The products.csv file is very similar to the features.csv file, in that it contains fields for TRACK, LABELS and CURVES. Tracks can contain multiple treatments, so the product file also contains an extra field to specify the type of treatment the products apply to.

See Table 11, “Products file format” for a detailed description of the products file format.

Table 11. Products file format

AttributeData TypeDescription
TRACKString An alphanumeric label that matches a track label from the treatments file (see the section called “Treatments”). It is an error to include products for non-existent tracks.
TREATMENTString An alphanumeric label that identifies the treatment. The label can contain no special characters. This label must match a corresponding label in the treatments file (see the section called “Treatments”).
LABELString An alphanumeric label that provides a semantic description of the attribute values. The label commonly starts with the prefix product., but otherwise there are no restrictions on feature labels. Labels may employ a hierarchical classification where path components are separated by a period . charater (eg. product.Yield.managed.SPF).
CURVEString An alphanumeric identifier that provides a link to a curve in the curve file (see the section called “Curves”).

Products are attributes that are associated with a specific track and a specific treatment, and are described by unique curves found in the curves.csv file (see the section called “Curves”).

The product file lists the outputs of management that occur when a treatment is applied. Multiple outputs are often generated as a consequence of management (for example, the yield of several species, as well as several cost components or revenues).

Example 15. Sample products file records

	  TRACK           TREATMENT       LABEL                        CURVE
	  Track.3         Exten           product.Area.managed.SB1        57
	  Track.3         Exten           product.Yield.managed.Po        58
	  Track.3         Exten           product.Area.managed.LC1        59
	  Track.3         Exten           product.Cost.silv.managed.Exten 60
	  Track.3         Exten           product.Origin.managed.Exten    61
	  Track.3         Exten           product.Yield.managed.OC        62
	  Track.3         Exten           product.Yield.managed.SPF       63
	  Track.3         Exten           product.Yield.managed.Bw        64
	  Track.3         Exten           product.Area.managed.SF1        65
	  Track.3         Exten           product.Treated.managed.Exten   66
	  Track.3         Basc1           product.Treated.managed.Basc1   104
	  Track.3         Basc1           product.Area.managed.SB1        105
	  Track.3         Basc1           product.Yield.managed.Po        106
	  Track.3         Basc1           product.Area.managed.LC1        107
	  Track.3         Basc1           product.Cost.silv.managed.Exten 108
	  Track.3         Basc1           product.Origin.managed.Exten    109
	  Track.3         Basc1           product.Yield.managed.OC        110
	  Track.3         Basc1           product.Yield.managed.SPF       111
	  Track.3         Basc1           product.Yield.managed.Bw        112
	  Track.3         Basc1           product.Area.managed.SF1        113
	  Track.3         Basc1           product.Treated.managed.Exten   114
	  Track.3         Basc1           product.Cost.silv.managed.Basc1 115

Product attributes are derived from the products.csv file in the same way feature attributes are calculated. The LABEL field displays the product attribute names that are associated with the TRACK and the unique product curve. For a particular point in time (when a management treatment is applied), the value from the product curve is multiplied by the managed area for the block in question. The value of the product attribute will appear in the Block Table for the planning period in question.


Product values are only assessed when the treatment is applied. This is different than feature values that represent extant conditions and are assessed in every period. The values are determined by computing the curve intersection at the offset of the block at the time of harvest.

Treatments are assumed to be applied uniformly to the entire managed area in a block. The area treated will always be the managed block area. Product attributes can be defined with single point (0,1) curves to record the area treated by forest type, treatment type, or other stratification variables. Although these attributes seem trivial, they can be aggregated into accounts (see Accounts) that summarize forest level activities.

It is possible for product attributes to share the same curves as their corresponding feature attributes. For example, if the entire block was harvested using a clearcut treatment, the product yields could be identical to the feature yields, and the same curve numbers could be used in each case. If a treatment left a certain amount of volume unharvested, the product yields would be reduced from the feature yields, and a unique set of curves would be required.