Weather – Project Haystack




Haystack standardizes the modeling of weather stations and their associated observations. The stations themselves are modeled using the weatherStation marker tag. The observations are modeled as normalized points along with the weather marker tag.


Weather stations model a geographic location where observations are taken. Stations might be an official government location; for example in the US the NOAA provides an extensive database of station locations and their associated data. Many online weather services are virtual which approximate data using several physical stations. Or it is possible to model site local weather sensors using the Haystack weather model.

All weather stations must define the weatherStation marker tag along with the appropriate geoPlace tags. The tz tag must also be defined.

Here is an example of a weather station entity:

id: @richmond
dis: "Weather for Richmond VA"
geoCoord: C(37.542979,-77.469092)
geoCity: "Richmond"
geoCountry: "US"
geoState: "VA"
tz: "New_York"

When a weather station is available for a site, the site should define the weatherStationRef tag to model the relationship.


All weather observation points must define the following tags:

  • weather: marker to indicate entity is a weather point
  • weatherStationRef: parent weather station associated with the point
  • sensor: all observation points are considered sensor points

Additionally the standard point tags must be defined including point, kind, unit, and enum.

The following are the standardized weather points which may be defined for a given station:

Example of a weather observation point:

// air temperature with a current value
id: @richmond.temp
dis: "Temperature for Richmond VA"
unit: "°F"
kind: "Number"
tz: "New_York"
weatherStationRef: @richmond
curVal: 56°F
curStation: "ok"