========================================= 3.0.0 - 7 November 2019 ========================================= Publishing of finalised release ========================================= 3.0.0 Release Candidate 4 - October 2019 ========================================= * Fixed WMO Code Registry mistakes, enabled schematron rules for checking nilReason codes, and revised examples failing validation (issues #155 and #175) * Revised TAC-to-XML-Guidance.txt to introduce addtional guidances (issue #183) * Extracted TACs from examples and put them into separate files to reduce the likelihood that real messages will include TAC in a comment, or include wrong TAC as a result of following examples published by WMO (issue #170) ========================================= 3.0.0 Release Candidate 3 - April 2019 ========================================= * Fixed Volcanic Ash Advisory deficiencies (issue #153) + Added schematron rules in all reports to contrain the use of 2 dimensional coordinate systems that are compatible with WGS84 in spatial objects (issue #140) * Revised TAC-to-XML-Guidance.txt to improve readability ========================================= 3.0.0 Release Candidate 2 - October 2018 ========================================= * Fixed representation of 'NO VA EXP', etc. in VAA and SIGMET (issues #94 and #128) * Aligned element naming and ordering across different types of reports including TAF, SIGMET, TCA and VAA (issues #121 and #127) * Modified the documentation for iwxxm:extremeClockwiseWindDirection and iwxxm:extremeCounterClockwiseWindDirection in METAR and SPECI to clarify the relationship with their TAC counterparts (issue #123) * Modified TropicalCycloneSIGMET and VolcanicAshSIGMET and associated schematron rules to better align with cancellation messages of their TAC counterparts (issue #122) * Fixed issues with regard to the placement of iwxxm:extension (issue #118) * Modified the documentation for attribute cloudAndVisibilityOK and iwxxm:windgustSpeed in METAR, SPECI and TAF and UML association target role in all reports (Items 4, 5 and 8 in issue #115) * Renamed iwxxm:seaState in METAR and SPECI to iwxxm:seaCondition (issue #106) - Removed the redundant iwxxm:previousReportAerodrom from TAF (issue #104) + Added attribute fromPreviousReport in METAR and SPECI to signify the condition identified by runway state code figure 99 (issue #101) - Removed iwxxm:geometryLowerLimitOperator and iwxxm:geometryUpperLimitOperator from SIGMET and AIRMET, iwxxm:windLowerLimit, iwxxm:windLowerLimitReference, iwxxm:windUpperLimit and iwxxm:windUpperLimitReference from VAA and iwxxm:locationLowerLimitOperator from SWA, all of them could be represented by the upper and lower limit descriptions in aixm:AirspaceVolume (issue #100) * Use entries in code list http://codes.wmo.int/common/nil for nilReason descriptions ========================================= 3.0.0 Release Candidate 1 - July 2018 ========================================= * Restructured and simplified to remove the Observations and Measurements model (O&M) (issue #27) * Incorporated ICAO Annex 3 / WMO No.49 changes (issue #49): + Space Weather Advisory has been added as a new product * Tropical Cyclone Advisory (TCA) sequence numbers are now of the form "2004/13" instead of simple numbers - TCA observed movement speed can no longer be reported as "moving slowly", per the Annex change * Updated AIR/SIGMET structure to support TC and VA SIGMETs with multiple TCs/volcanoes, and to support the Amd 78 provisions for reporting both a TC location along with CB location and movement (#49) * All METAR/SPECI fields are now nillable in support of cases of observing system failures, such as a broken rain gauge (issue #16) * All gml:ids are now UUIDs, and this is supported by Schematron rules. This allows IWXXM message intermediaries to re-assemble COLLECT advisories freely without requiring IWXXM message modifications en route (issue #31) * SIGMET sub-types (VA and TC) elements are now optional to allow cancellations to be reported along with the SIGMET type (issue #18) * All Schematron files were combined into iwxxm.sch, including the WMO Codes Registry validation which were formerly in iwxxm-collect-codelists.sch (issue #60) * Made a number of fields nillable to support the minimum set of required information for failed translation cases (issue #41) + Added issue times onto IWXXM messages in support of standalone IWXXM messages (without WMO or Collect headers) (issue #47) * Snow closure of all runways is now properly indicated, rather than being a snowClosure boolean on a single runway state. The snowClosure boolean was removed, and full aerodrome/all runways snow closure is now indicated with a nilReason of "http://codes.wmo.int/bufr4/codeflag/0-20-085/1" with a single runwayState element (issue #48) * AerodromeObservedClouds was renamed to AerodromeCloud for consistency with other portions of IWXXM (issue #81) * Added an iwxxm:AirspaceVolumePropertyType to allow for http://... nilReasons to be used with AirspaceVolume references (issue #94) + METAR/SPECI now have an optional timeIndicator which may be used to indicate FM/TL/AT explicitly (issue #7). * Enhanced documentation on TAF phenomenonTime to clarify the meaning with timeIndicators of BECOMING (issue #13). Note: Starting from version 3.0.0, references are made to issues mentioned on GitHub at https://github.com/wmo-im/iwxxm/issues as far as possible ========================================= 2.1.1 - November 2017 ========================================= - Removed Schematron rules SIGMET.SEC3, SIGMET.SEC4, AIRMET.AEC9 and AIRMET.AEC10 to fix vertical extend encoding for all allowed TAC combinations * Split Schematron rule TAF.TAF18 to create TAF.TAF19 to allow for missing iwxxm:cloud when CAVOK is reported. Slight enhancement to other Schematron rules for TAF + Added the missing quantity information in AIRMET.xsd * Fixed minor issues in the examples and added bulletin examples with COLLECT * Added a new schematron file iwxxm-collect-codelist.sch for offline checking of codelist items for pre-implementation testing ========================================= 2.1.0 - March 2017 ========================================= * Modified AIRMET and SIGMET to correctly handle complex cases where there are multiple OBS/FCST elements and forecast position elements. See http://bit.ly/2lZroAM for more information * AIRMET and SIGMET analysis results are now Collection types which may include up to two sets of conditions as allowed by ICAO Annex 3 Amendment 77 Table A6-1A Note 27 on "AND" elements. AIRMET and SIGMET XML elements were renamed to be more consistent. The OBS/FCST time indicator was moved to the Collection types, and all other information may be repeated on EvolvingCondition types. EvolvingCondition types may now only have a single geometry + New elements: SIGMETEvolvingConditionCollection and AIRMETEvolvingConditionCollection * Renamed elements: (SIGMET) EvolvingMeteorologicalCondition -> SIGMETEvolvingCondition, AIRMETEvolvingMeteorologicalCondition -> AIRMETEvolvingCondition, SIGMET MeteorologicalPosition -> SIGMETPosition, SIGMET MeteorologicalPositionCollection -> SIGMETPositionCollection * AIRMET and SIGMET analysis elements are now 0..1 and there must now be exactly one geometry element per member element. Multiple polygons for an OBS or FCST are represented as multiple member elements in the result * No significant change (NSC) is now represented on TAFs as a nil reason of "http://codes.wmo.int/common/nil/nothingOfOperationalSignificance". The TAF ForecastChangeIndicator "NO_SIGNIFICANT_CHANGES" has been removed and "changeForecast" references are now nillable * The TAC to XML Guidance document has been updated to be more internally consistent and readable * Added translation failed examples for each product and slightly improved SIGMET Schematron rules to properly support these types of messages * Per AIXM developer feedback, all AIXM snippets now use the correct "SNAPSHOT" terminology for time slices instead of "BASELINE". This required changes to a number of examples * The METAR LKKV example has been updated to include a wind shear section * Made relevant elements mentioned in TAC-to-XML-Guidance.txt nillable to allow the inclusion of nilReason as indicated in the text * Corrected syntax errors in contraints METAR_SPECI.ASW6 and COMMON.ACF2 * Fixed issues with regard to the placement and associated constraints of extension blocks ========================================= 2.0 - August 2016 (for approval only, not for operational use) ========================================= + Added two new sets of metadata on all reports: * Permissible usage information has been added to indicate operational and test messages * Translation information has been added for IWXXM messages that were converted from TAC, such as the translation centre and translation time * Updated from AIXM 5.1 to AIXM 5.1.1, which fixes issues with differing versions of xlink in GML * In accordance with ICAO Annex 3 / WMO No.49-2 Amendment 77-A: * AIRMETs can now report both wind speed and direction instead of just wind speed * SIGMETs can no longer report both a forecast position and expected movement + Added extension blocks for non-standard content. These blocks should be used in accordance with ICAO policy and are limited in size + Added an XML schema file and a Schematron file to facilitate validation of "bulletinized" IWXXM reports by certain validators * Forecast positions are now allowed on all SIGMETs, not just VA and TC SIGMETs (bug fix) + More than one geometry may now be reported for multiple areas of phenomena on VA and TC SIGMETs * AerodromePresentWeather and AerodromeForecastWeather CodeLists were updated to reflect changes to WMO Code Registry locations (now http://codes.wmo.int/49-2/AerodromePresentOrForecastWeather) + AIR/SIGMET locations may now indicate approximate locations ('approximateLocation') + meanWindSpeedOperator and windGustSpeedOperator were added to AerodromeSurfaceWind to allow the reporting of wind speeds above a value * Changed variableDirection properties to variableWindDirection for consistency between IWXXM products + SIGMET cancellation reports may now report when volcanic ash has moved to a new FIR in cases when the prior (cancelled) VA SIGMET has moved * METAR trendForecast can now represent "VV///" + Added geometryUppperLimitOperator and geometryLowerLimitOperator to AIR/SIGMETs to indicate phenomenon which have tops/bottoms above/below reported heights + Added an explicit OBS/FCST indicator to AIRMET and SIGMET (timeIndicator) * Removed surfaceFrictionUnreliable and estimatedSurfaceFriction, which have been replaced with a single CodeList estimatedSurfaceFrictionOrBrakingAction which encapsulates information for both cloudAndVisibilityOK is now optional on MeteorologicalAerodromeTrendForecastRecord and constraints were corrected with NOSIG and CAVOK cases + Added documentations to XML attributes in the schemas + Added "Missing Value" to VisualRangeTendency of METAR/SPECI - Duplicate surfaceWindSpeed and surfaceVisibility were removed from AIRMET * AIRMETEvolvingCondition speedOfMotion is now optional * AIRMETEvolvingCondition directionOfMotion is now nillable * Corrected content type of DistanceWithNilReason and LengthWithNilReason in measure.xsd * VAA variableWindDirection is now being generated correctly as an XML attribute, similar to other variableWindDirection flags in other reports * Implementation of METCE 1.2 structural requirements - Removed Schematron rule TAF.TAF10 for checking BECMG and FROM groups followed by a PROB group. * Clarified and fixed a number of examples, including the proper encoding of degree minutes and seconds as decimal degrees and incorporation of updates from Annex 3 Amendment 77 * Simplified Schematron contexts - Removed redundant Schematron rule SIGMET.SIGMET6 for checking sampled features in SIGMET - Removed Schematron rule TAF.TAF7 and updated others to allow validation when bulletinized ========================================= 2.0 Release Candidate 1 - April 2016 ========================================= * Added Volcanic Ash Advisory, Tropical Cyclone Advisory, and AIRMET products * SAF was replaced by AIXM 5.1 in IWXXM schemas. SAF will no longer be released as part of the TT-AvXML schema package * Rules added to restrict units of measure on individual fields (such as air temperature) to those allowed by ICAO Annex 3 / WMO No.49 * A GML 3.2.1 profile was created for use with IWXXM, this is distributed in the release package * Examples updated to remove unnecessary AIM data portions which are unlikely to be of operational use * UML model changes performed to support Enterprise Architect as the primary mechanism for generating XML schema * METAR/SPECI depth of deposit is now nillable to allow for representation of both '//' and '99' from ICAO Annex 3 / WMO No.49 * Forecast position analysis is now only available on TC and VA SIGMETs * METAR/SPECI autoHeightUnobservableByAutoSystem has been removed - this can be represented with a nilReason of http://codes.wmo.int/common/nil/notDetectedByAutoSystem * SIGMET speedOfMotion and intensityChange are now optional. This matches what is specified in ICAO Annex 3 / WMO No.49 ========================================= 1.1 - June 2015 ========================================= * References to Common Code Table C-15 was changed to Common Code Table D-2 * Multiplicity of forecastPositionAnalysis in SIGMET was changed from [1..1] to [0..1] * XMI of the package was imported into and aligned with the UML profile for GML in Enterprise Architect 12 ========================================= 1.0 - September 2013 (for approval only, not for operational use) ========================================= * Cloud type (CB/TCU) was moved onto CloudLayer with cloud base and cloud amount + ABV/P and BLW/M (at least and at most) conditions are now reportable on prevailing visibility and mean RVR * minimumVisibilityDirection quantity now has the appropriate registry entry and markup * METAR/SPECI runway contamination is represented as a CodeList of fixed options in the registry instead of as an unconstrained Measure type * Updated documentation to be explanatory rather than regulatory. "SHALL BE" and "WILL BE" wording was replaced with alternative text * Corrected informative notes on diagrams whose contents have changed in Amd 76 * Fixed incorrect link from MeteorologicalAerodromeReport to its trendForecast type to the proper type (MeteorologicalAerodromeTrendForecast) * MeteorologicalAerodromeTrendForecast may now (correctly) reference up to three weather conditions instead of only one ========================================= 1.0 Release Candidate 2 - May 2013 ========================================= * Updated IWXXM to match anticipated changes in ICAO Annex 3 Amendment 76 * Moved forecastPosition from VA/TC SIGMET onto SIGMET (all SIGMETs may have forecast positions) - removed braking action from METAR/SPECI * renamed frictionCoefficient to estimatedSurfaceFriction - removed 1-minute minimum/maximum for RVR + added significant wave height onto METAR/SPECI * Package renamed from "ICAO Weather Information Exchange Model" to "ICAO Meteorological Exchange Model" to address translation issues. The abbreviated model name "IWXXM" remains unchanged * SIGMET amended to allow for cancellations, including supporting constraints * TAF amended to properly allow for CORRECTED, AMENDED, and CANCELLED status with the appropriate rules on present and missing information * Significant updates to documentation to improve correctness and clarity * Added support for METAR/SPECI and TAF NIL reports * CodeLists moved from MetBasic and METCE into IWXXM * Measure types from MetBasic were changed into GML Measure types * METAR, SPECI, TAF, and SIGMET now have the <> stereotype * Removed <> stereotype from a number of classes * Corrected surface wind properties on TAF, including fixes to variable wind directions and averages * AerodromeHorizontalVisibility fixed to no longer require a minimum visibility direction when minimumVisibility is reported + Added new constraint to MeteorologicalAerodromeObservationRecord to ensure that if prevailingVisibility is less than 1500m then rvr must be reported + Added constraint onto AerodromeObservedClouds to ensure that if amountAndHeightUnobservableByAutoSystem is true then no cloud layers are reported - Removed constraint on reported surface winds on METAR, SPECI, and TAF when CAVOK is reported + Added constraint to ensure that reported clouds and weather are missing when CAVOK is true * Renamed "Context Diagram: Present Weather" to "Context Diagram: Surface Wind" * Fixed METAR/SPECI, TAF, and SIGMET to ensure that XML element order more closely matches that of the corresponding ICAO Annex 3 Templates - Removed humanReadableText from all reports * Clarified documentation on how "TX" and "TN" maps into IWXXM * Corrected documentation and constraint to indicate that SIGMETs are reported on FIRs, UIRs, and CTAs rather than just FIRs * MeteorologicalAerodromeForecastRecord amended to ensure the CAVOK constraint on horizontal visibility refers to the correct name ("prevailingHorizontalVisibility instead of horizontalVisibility) * METAR/SPECI amended to allow any number of runway states * MeteorologicalAerodromeObservationRecord.recentWeather now has cardinality 0..3 * AerodromeRunwayState.estimatedSurfaceFriction now has a constraint to restrict values between 0.0 and 0.9 * Renamed ceilingAndVisibilityOK to cloudAndVisibilityOK on all classes * AerodromeObservedClouds stereotype changed so it is nillable * "Terminal Aerodrome Forecast" changed to "Aerodrome Forecast" to match current ICAO definition - Removed HTML-like styling from many parts of the documentation to ensure proper translation to XML + unreliableFrictionCoefficient boolean flag added to AerodromeRunwayState * Added a boolean onto AerodromeRunwayState to support runway conditions being reported on all runways at once. Changed the names of similar constructs on AerodromeWindShear for consistency * Removed nilReason URIs from the model. All nil reason base URIs changed from http://data.wmo.int/def/nil-reason to http://codes.wmo.int/common/nil * Changed SAF references to mirror changes to simplified AIXM representations - cloudType removed from CloudLayer ========================================= 1.0 Release Candidate 1 - December 2012 ========================================= Initial model release including complete representations of METAR, SPECI, TAF and SIGMET from ICAO Annex 3 Amendment 75.