Skip to content

Publication

Publications are the primary way in which models enter into the allometric ecosystem. Publications are represented as YAML files containing a metadata field (publication) and one or more model entries (models or model_sets). The following is an example of what a publication file might look like:

publication:
  key: doe_2024
  bibtype: article
  title: "Growth and yield of a mixed conifer stand"
  author: "Doe, Jane"
  year: 2024
  descriptors:
    country: US

models:
  - name: hstix50
    type: fixed_effects
    response: { hstix50: "ft" }
    covariates: { atb: "year", hst: "ft" }
    taxa:
      - family: Pinaceae
        genus: Tsuga
        species: heterophylla
    parameters:
      a: 22.6
      b: 0.014482
      c: 0.001162
    prediction_function: "4.5 + a * exp((b - c * log(atb)) * (hst - 4.5))"
    description: "Site index equation; Table 1, eq. 1"

model_sets:
  - name: cuvol
    type: fixed_effects_set
    response: { cuvol: "ft3" }
    covariates: { dsob: "in" }
    prediction_function: "b_1 + b_2 * dsob^2"
    description: "Stem volume by species; Table 2, eqs. 4-5"
    specifications:
      - parameters: { b_1: 122.77, b_2: 0.4148 }
        taxa: [{ genus: Pinus, species: resinosa }]
      - parameters: { b_1: 0.25, b_2: 1.3 }
        taxa: [{ genus: Acer, species: saccharum }]

Each of the following sections specifies portions of the schema and its possibilities. Note that a publication section is required, and at least one of models or model_sets is required.

publication

This section contains the bibliographic metadata for the publication. The key is a unique identifier for the publication, codified typically as author_year (e.g. doe_2024). The bibtype is one of the standard BibTeX types, and the remaining fields are standard bibliographic fields. The descriptors field is a free-form map of key/value metadata that can be used for further specification of the publication.

Field Type Required Notes
key string yes unique citation key
bibtype string yes one of the BibTeX types below
title string yes
author string yes
year integer yes validated to 1000–2100
journal string no
volume string or integer no
pages string no
doi string no
url string no
publisher string no
institution string no
address string no
month string no
note string no
school string no
organization string no
series string no
booktitle string no
editor string no
edition string no
howpublished string no
number string or integer no
descriptors map no free-form key/value metadata

bibtype is one of the standard BibTeX types: article, book, booklet, inbook, incollection, inproceedings, manual, mastersthesis, misc, phdthesis, proceedings, techreport, unpublished.

models

A set of individual allometric model, most useful when specifying one or a few models. Each model has a prediction_function and a set of parameters, along with a response and covariates.

Field Type Required Notes
name string yes unique within the file
type fixed_effects yes
prediction_function string yes
response map or object yes {name: units}; see below
covariates map or list of objects no {name: units-or-kind}; default []
parameters map → float yes {name: value}
taxa list of taxon no
region list of string no
component string no
covt_defs map of string → string no covariate definitions
response_definition string no
descriptors map no free-form key/value metadata
description string no prose on what the model is
notes string no
id string no [0-9a-f]{8}; see Identifiers

response and covariates accept either the compact map form (response: { hstix50: "ft" }) or the object form (response: { name: hstix50, units: ft }). Covariates may also be a list of objects. In the compact map form, covariate values that are not units — e.g. { atb: "year" }, meaning "year" as a kind/definition — are preserved as-is; covt_defs can then spell out the definition.

model_sets

A set of models that share a prediction_function, response, and covariates but differ in their parameters. Each row in the specifications list is one parameter combination, as well as other identifying information such as taxa etc.

Field Type Required Notes
name string yes unique within the file
type fixed_effects_set yes
prediction_function string yes
response map or object yes {name: units}; see the models section for accepted forms
covariates map or list of objects no {name: units-or-kind}; default []
specifications list of specification yes at least one row; see below
taxa list of taxon no
region list of string no
component string no
covt_defs map of string → string no covariate definitions
response_definition string no
descriptors map no free-form key/value metadata
description string no prose on what the set is
notes string no
id string no [0-9a-f]{8}; see Identifiers

Each specification row is one parameter combination and may carry its own optional taxa, region, component, and descriptors scope:

Field Type Required Notes
parameters map → float yes {name: value}
taxa list of taxon no per-row scope
region list of string no per-row scope
component string no per-row scope
descriptors map no per-row scope

Parameter keys are derived from the rows

Every specification row must use identical parameter keys — this is validated. Parameter names are therefore derived from the rows, not declared separately.