Current Weather Project

The aim of the project was to develop an XML data exchange format to (1) transfer a weather observation that could include both automatically and manually observed data, and (2) display the combined weather observation in HTML using XSL transformation (XSLT).

The new XML Weather Obs Document would be based on the XML Data Transfer Document that was developed as an experimental data exchange format for automatic weather data. The display would ideally include graphical representation of the weather data in the form of a station weather plot.

Development was a multi-stage process:

  1. Match variables with the required station details, automatic weather data and manually observed weather data,
  2. Create an XML Schema Definition (XSD) document specifying the structure of the new XML document,
  3. Investigate the feasibility of creating a station weather plot from the XML document using XSLT,
  4. Create graphics to represent the weather data reported as WMO code figures,
  5. Create a style document (XSL document) specifying how the weather data would be displayed in HTML,
  6. Finalise the XML template files for (1) routine XSLT, and (2) XML validation, and
  7. Create HTML pages to describe a station weather plot and the weather symbols and code figures.


The variables used in this project are listed below. Select a variable to view the complete XML element definition, including: the element name and description, the expected data type, the permitted values where explicitly defined, and whether the element is mandatory or optional.

The variables in the template file are replaced with the equivalent output tags from the PWS software. If a variable has no equivalent output tag from the PWS software, the options are to: (1) create a user-defined output tag for the PWS software containing the appropriate value, or (2) replace the variable in the template file with the appropriate value. If an optional variable is permanently unavailable, the template file is edited as per this example - replace <foo>%variable%</foo> with <foo />.

Top of page up arrow

XML Schema Definition

View the XSD diagram for this project.

Weather Graphics

Almost 300 graphics were created for the graphical representation of the weather data. This includes about 200 graphics to replicate the WMO weather symbols, including symbols for: total cloud cover, types of low cloud/middle cloud/high cloud, wind direction, wind speed, past weather, present weather and pressure trend, and about 100 graphics to show descriptive text corresponding to the WMO code figures for visibility and base of lowest cloud.

More information: weather symbols and code figures

Data Presentation

The combined weather observation can comprise a mix of raw values and WMO code figures. The code figures are displayed as reported, but are also represented by the appropriate weather symbols or by concise descriptive text.

The XSL document that specifies the tabular and graphical presentation of the XML data in HTML is almost 13,500 lines of code.

See an example of a complete automatic and manual observation with default styling.

Project Status

The XML Weather Obs Document is generated routinely. It displays our current weather including an occasional full manual weather observation.

This 2020 project is active and still in development.

Top of page up arrow